Helping Developers Master PowerBuilder Classic and .NET

Yakov Werde

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

Top Stories by Yakov Werde

I grew up in a Brooklyn NY apartment building. As a young kid, one of my rainy day after-school pastimes was playing card games with the other kids in my building. One of the games we played was crazy eights. If you're curious about this simple card game, check out the Wikipedia description at Recently I was tasked with migrating a legacy application with distant roots in version 4, up to PowerBuilder 12 .NET. The trip over to version 12 Classic went fine with nary a hitch. The ride over to .NET was not too bumpy either. But then I started to exhaustively drive the code. Figure 1 shows a screenshot of part of a DataWindow that forced me over to the liquor cabinet to get the gin. Most of the numbers look normal, but then I noticed those crazy [8]s in the balance, weight and price objects. To make sure it wasn't something I h... (more)

What Will They Think of Next?

Today I was doing housekeeping chores on a PowerBuilder .NET application. I was moving libraries from one folder to another. Much to my chagrin, I discovered that what used to be a simple chore is now a more time-consuming operation. In good ol' Classic, after moving the PBLs, with the IDE closed (or the target now in the current workspace), I'd edit the Library list in the PBT file to reflect the PBL's new folder path, reopen the target and voilà, change done! Perhaps in a worst case scenario, I'd copy the PBL and then edit the Library List in the IDE by simply changing the PBL... (more)

What Are Assertions?

PBDJ Blog on Ulitzer PowerBuilder Developer's Journal - The crux of Test Driven Development and refactoring is writing assertions to test your code.   So what's an assertion?  The dictionary says that an assertion is "a positive statement or declaration."  According to the computing dictionary (this is definition you're looking for) it's "An expression which, if false, indicates an error."  In unit testing you are formulating assertions to catch not supposed to happen coding errors.  So you write the assertion first in a test - then you write simple code in the method under test... (more)

Refactoring Corner: Partitioning DataWindow Technology

One of the main goals of PowerBuilder Classic application refactoring is to divide the code into logical partitions. Although you will likely not gain significant performance increases in exchange for your efforts, you will achieve two other highly significant gains. First, your logic will gain interoperability; you will have the ability to share application business and data logic with other applications developed in other .NET languages. (I say ability because you still need to make your method interfaces Common Type System compliant.) Second, your code maintenance activities w... (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)