Some About Visual Basic readers using VB6 have had it with Microsoft!
"When MS went to VB.NET from VB6, they destroyed several billion dollars of customer investment in development. Not to mention their own market goodwill."
"For me, they killed any potential of excitement when they moved from VB6 to VB.NET. If I knew in late 2004 what I know now, I would have completely abandoned Microsoft technologies for open-source (PHP, Java, etc).
Ooooo!! ... Hard words.
Just for the record, I still think .NET is the best technology going. I have my complaints about Microsoft too, but they're not enough to make me abandon VB.NET. But since I respect the opinions of my readers, I'm highlighting a new product in this review that you just might want to try: Jabaco.
Manuel Siekmann, a developer from Germany, has released a beta version of his Jabaco development system. Siekmann's idea is to allow VB6 programmers to run their code on any system that supports Java. And these days, that's any system, including Windows. Siekmann has used Sun's Java Swing technology to emulate the VB6 interface.
(They say Microsoft never invented anything but they make other people's ideas work really well! That might be the case with Swing, too. Swing is a GUI development technology that ... well ... seems to do a lot of the same things done by WPF - Windows Presentation Foundation. Except that Swing has been part of Java for over ten years.)
Jabaco will read your VB6 code and then compile it to Java J2EE bytecode. If you need your VB6 app to run in Linux, you can tranfer a JAR file directly to the Linux system and execute it there. Only the Java JRE (Java runtime) is required.
Jabaco's user interface includes most of the controls and tools that you know and love in VB6. You can debug by stepping through the code and view your project files, properties, and so forth in the same windows that you see in VB6.
That's the good news.
The bad news is that Jabaco is very clearly beta code and a lot of things just don't quite work yet. For example, there is no documentation at all! But the system is so much like VB6 that you really don't need any to get started.
I decided to start with an old favorite VB6 program, the Tic-Tac-Toe game I wrote for a beginning tutorial a few years ago. Ummmm ... no luck. Jabaco doesn't support control arrays yet. So I switched to the more recent Bingo program. Jabaco doesn't support Option Base 1 yet. But since Jabaco comes with some nice sample programs, I decided to try one of those. That didn't work either because, for some unknown reason, Jabaco couldn't even execute it's native file format on my Vista Business computer. Then I tried to write the classic Hello World application. Jabaco got an access exception at the same place every time entering code and crashed.
But enough of that bad news, here's some more good news. Both the included samples and my own code worked fine on my XP computer. So the problem is some incompatibility unique to Vista. (I hear all the Microsoft haters cheering, "Yeah!") Once I got the code running on XP, it actually looked pretty great!
Another fact about Jabaco is that it's a very international project. Just check out the language selection in the Setup:
--------
Click Here to display the illustration
Click the Back button on your browser to return
--------
English speaking programmers will have to accept a few messages such as ...
"Installation wird vorbereitet"
(Install is complete)
... here and there in the system, but if you select "English" then nearly everything really is in English.
Siekmann has architected his system on the well-traveled template of an open source Framework with a proprietary implementation. In fact, it's quite similar to the model used by Microsoft for .NET. The Jabaco development system is based on something Siekmann calls the Jabaco Framework. That's a completely open and downloadable project that you can check out at Source Forge (http://sourceforge.net). The Jabaco development system, however, is a proprietary and derivative product that Siekmann controls.
Right now, Jabaco is a completely free download. He asks you to register your email address in return for a key that unlocks certain functions (such as the Make function to get an executable).
In the course of all this testing, I exchanged a few emails with Siekmann. Interesting person. His 'Facebook' page (It's a German version of the same idea.) lists his motto as, "Jedes Ziel hat einen Weg." (Each goal has a way.)
I asked him how long he expects that Jabaco will remain free. The answer was several paragraphs long but it boiled down to, "I haven't decided yet." But if you contributed to the project, I think Siekmann would probably take care of you for as long as you want it.
And that brings up what might be the most attractive thing that some of you will find about Jabaco: the opportunity to get in on the ground floor ... well, actually the basement ... of a project that could actually turn into something big. Siekmann is clearly one of those developers who is an endless well of knowledge and an active participant in his own message board. If you decided to help out, this is the kind of project that could turn you into a super developer too. Check out Jabaco at http://www.jabaco.org/.

