Deprecated: Function set_magic_quotes_runtime() is deprecated in /home/xeno04/ on line 14
Walker Software Weblog: End of '05 Wrapup

End of '05 Wrapup

Dec 30, 08:02 PM

In case you are wondering whatever happened to the demo app I was writing in the “Tiger Style“ series, I stopped working on it after I found VoodooPad which has most of “first round” features I was going for.

Over the last month I’ve been looking at Ruby and Objective-C. After looking at Ruby for a week, I came to a couple of realizations. First, a lot of Ruby’s “relaxed” syntax could easily be fit into Java via an upgraded/alternative parser. Secondly, I can see how enclosures provide for some interesting options but I’m not really convinced they make code more readable as some people assert. Third, a lot of Ruby’s syntax is because Ruby, unlike Java, allows programmers to override operators. Forth, I realized that this is another language that will have server-side and command-line success but will likely never move beyond that. I know there are binding that allow Ruby to use some graphical toolkits, but I don’t see the move happening. Fifth, I realized that, knowing “the lay of the land”, I’ll probably never get a job or contract using Ruby.

The Objective-C book I ordered arrived today. I know I’ll probably never get a job or contract using Objective-C, but I can make shareware using it. I’ve written some shareware games in Java. Unlike a few Java games that recently received a lot of attention on JavaDesktop, mine are written in pure Java — no JNI libraries needed, no OpenGL, but they use pre-compiled native launchers. Even in the good reviews, I get beaten up for slow startup times. The Windows launcher has a native startup slash screen and I hate to tell the Mustang guys, but users do not find it be acceptable. Most of the third party Java game API lag behind or don’t exist on the Mac and since the Mac is my primary platform, I find this unacceptable. To take this games to the next level, I have to learn Objective-C to use either for the complete game or to make my own launchers and JNI. I used to program in C/C++ for Windows and Linux for 5 years before switching to Java. Objective-C and Cocoa should be pretty easy to learn. I look forward to experimenting with Cocoa but not to dealing with pointers and manual resource handling.

2005 has been a pretty good year for Java on the desktop, but for Java to really shine the “Virtual Machine” need to upgraded to something beyond the Windows 95 style interface that Java aims for. Between OS X, Windows Vista, and Windows XP with Google Desktop Search and Google Toolbar I think the path is pretty clear. Java needs APIs to integrate with the system’s search functionality. Java needs APIs to integrate with Bonjour/Zeroconf (Apple has an API, and check out Howl for a cross-platform native library). Imagine adding Zeroconf setup info to your app server and have your rich-clients easily find the server (or switch test and production servers). Java needs to integrate the system’s spellchecker into the Swing text components (I’ve had enterprise rich-client customers request this many times, but never had anyone request system-tray integration) and provide APIs for the spellchecker to be used in custom components or server-side tools. Java needs a much faster startup time for Swing clients and not just splash screens. A smaller memory foot-print and the ability to create objects on the stack could hurt either.

Commenting is closed for this article.