Archive for the ‘RPG’ Category



First a bit about my programming background.

I’ve been programming since 1987 in RPG on various IBM midrange systems (System/38, AS/400, i5). Save your comments about how dismal my existence has been with RPG/AS/400–I’ve heard them all. The fact of the matter is, that RPG has paid the bills for the last (almost) 20 years.

Smalltalk, part 1

My first exposure to Smalltalk was in 1996 at an IBM users group (Common). Those were the days before Java, when IBM was convinced Smalltalk was the way for their midrange users to go in order to have sexy graphical front ends for their applications. There were a lot of sessions at the conference related to Smalltalk (VisualAge specifically) and I decided to sit in on one and hear what it was all about. I walked out of that hour-and-a-half long session with a ton of mixed emotions. I realized that I had always had a notion that the way we programmed was flawed and clumsy but couldn’t put a finger on what was wrong with the conventional wisdom. When I saw Smalltalk, I knew we’d been doing it all wrong. I had found the most elegant programming solution I’d ever seen.

Within a few months we (the company I work for) purchased a copy of VisualAge and I was sent to training with The Object People. I walked out of the training ready to take over the world with Smalltalk, but, unfortunately, reality set in, urgent demands took precedence over learning a new language, and dust built up on the Smalltalk books.


Around the 1999 time frame I began playing with Java on my own. Not because I though the lanuage was any better then Smalltalk, only because the price was right (free!). These were in the good old days of typing code into text files and compiling them. I don’t even think NetBeans was out at the time. When I did stumble across NetBeans I started using that for development (even without a GUI builder) and switched to Eclipse when that came to my attention.

I didn’t have a problem with either tool, but I did have problems with Java. What never settled well with me was, even though it was called an object-oriented language, not everything was an object. For instance, every time I wanted to perform some Integer behavior with an integer (int) I had to cast the int into an Integer. This seemed wrong! The other thing that bothered me was the complexity with the language. I eventually wrote an application in Java (it organizes my CD collection and produces a random album playlist) but never really felt comfortable in the language. Quite frankly, there were a lot of things I got working in the application but really didn’t know how–and that bothered me.

Smalltalk, part 2

At the beginning of 2006 I came up with the idea of writing an application to sell as an “off the shelf, shrink-wrapped product”. I’ve had a need at work for a system that would let me track non-recurring and recurring tasks like MS Project does (with sub-tasks, precedence, etc.). I just couldn’t find anything that does this, so I though, I’ll write one and sell it.

The prospect of doing this in Java didn’t thrill me so I decided to take a look at Smalltalk again. I was surprised how many free or non-commercial offerings there are now of Smalltalk environments.

I dabbled around with Smalltalk/X for a while and, while I think it’s a great tool, I didn’t meet my needs. I work in Windows and want to produce packages primarily for Windows but the Windows version of ST/X, I’ve found, is a bit buggy and the documentation related to using it under Windows is scarce. I also need, since I’m such a novice at this, a strong user community to fall back on if I run into problems. I did however like the fact that you could develop for a number of platforms and compile exe’s out of your packages.

I’ve finally decided to focus on VisualWorks as my development platform. It supports multiple OS’s, the performance is good and there is a huge user community. The one choking point I had was on the price but I do like their creative licensing model.
Two other candidates I did look at seriously were Dolphin and Squeak. Dolphin is great for Windows development but doesn’t have the cross platform capibilities that I want and Squeak, well, lets be honest, doesn’t have “the look” that most business people would feel comfortable with. If it doesn’t look like XP, they won’t buy it. I may be wrong on all this, and there is a way to get native Windows look and feel (without any open source licencing issues) but that’s the conclusion I came to.

So my journey into learning and exploiting VisualWork and Smalltalk begins. I’m exhilirated by the prospect!