Welcome!

Helping Developers Master PowerBuilder Classic and .NET

Yakov Werde

Subscribe to Yakov Werde: eMailAlertsEmail Alerts
Get Yakov Werde via: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Top Stories by Yakov Werde

GIGO (garbage in, garbage out) "A fundamental goal of legacy Information System migration is that the new system not become a legacy system itself" These insightful words were written seventeen years ago by Michael L. Brodie and Michael Stonebraker in their 1993 study called "DARWIN: On the Incremental Migration of Legacy Information Systems". From this goal statement, which I believe is self-evident and universal, it is clear that merely operationally and mechanically pushing a legacy client/server (PowerBuilder or any other language based) system through an automated .NET migration process will not automatically result in a non-legacy system. Even though the goal of all previous intra-Classic migrations was modernization, such modernization was limited to taking advantage of new language features and enhanced O/S support within existing code.  After all Client/... (more)

RESTful Web Services: A Quick-Start How-to Guide - Part 1

Among PowerBuilder 12.5 .NET's new features comes the ability to use WCF to call RESTful web services. This article, the first in a two-part series, provides a PowerBuilder 12.5 .NET developer with the foundational knowledge and skills to rapidly get up and running building PowerBuilder RESTful Web Service clients. Along the way I'll share with you a few tips and workarounds. Introduction PowerBuilder 12.0 .NET provided the ability to call SOAP-based web services using Microsoft's .NET 3.5 WCF API. I encourage those of you not familiar with WCF and SOAP to view my PowerBuilder W... (more)

RESTful Web Services: A Quick-Start How-to Guide - Part 2

Part 2 of "RESTful Web Services: A Quick-Start How-To Guide" explores foundational issues in coding RESTful operations, including Basic Authentication and Exception handling. Along the way I'll share with you multiple real-world coding tips and workarounds. Introduction As a teenager, one of my favorite TV shows was "The Wild Wild West." The show's description goes like this, "... a 60 minute western action series on CBS that was like no other. Special Agents James West and Artemus Gordon were spies for President Ulysses S. Grant shortly after the civil war. In every other way, ... (more)

Refactoring: Best Thing Since Sliced Bread?

PBDJ Blog on Ulitzer After watching my PowerBuilder refactoring eTutorial, you're getting a glimmer of the potential confidence, joy and power of refactoring in a test driven manner.  No doubt, you're already familiar with the uncomfortable feeling of slogging though ponderous legacy code.  Now you are beginning to know the benefits of refactoring; you know the smells, and you know the catalog of techniques. You can't wait get your hands on some legacy code. You know exactly what to do to whip it into shape.  Legacy code, watch out, here I come! But wait, is refactoring always th... (more)

Peering Behind the PowerBuilder .NET Assembly Curtain

Part of the allure of the .NET platform is that all code, no matter what language or grammar it's written in, compiles down to Common Intermediate Language (CIL) that is managed and executed by the Common Language Runtime (CLR). PowerScript code goes through a two-step process before becoming CIL. First it's run through PBCS.exe, which converts PowerScript to the equivalent C#. Then the emitted CS code is compiled by the C# compiler, CS.EXE, into standard CIL. One of the tools that ships with the .NET SDK is a CIL disassembler ILDASM.exe. The tool allows you to explore the emitt... (more)