|
JambaDeveloping in the Gap |
||
|
Jim Murray is the Creative Director of the Web Developer's Journal.
Related Articles: Other Java and Javascript Articles Reviews of Web publishing tools Book Reviews Java Discussion Group |
Let's talk seriously about Java. The undiluted truth is, it's hard. I don't just mean the way, say, learning French is hard because some of the sounds are impossible for an English-speaker to make and there are a lot of things to memorize and it takes a lot of effort over a period of time. It's not like that at all. Java is hard the way it was hard for Richard Nixon to understand Wired magazine, the way it's hard for a muddy dog to comprehend the sanctity of pale carpet. It's hard because it demands a significant restructuring of our faculties. It's an effort that some of us have made, leaving the rest of us on the other side of a gap. Bridging the gap is what it's all about. There are ways to do it visually (Microsoft's Visual J++ is one, Symantec's Visual Cafe another) and ways to do it by filling in blanks (Macromedia's Applet Ace is my favorite of these). But visual metaphors don't really lessen very much of the burden for us code-phobes. Unless you are already pretty familiar with Java, they are about as much help as x-ray photos to someone who knows nothing about anatomy. Fill-in-the-blanks solutions are easy enough so that anyone can use them, but they provide virtually no room for real creative ingenuity – like prefabricated houses, they let you build precisely what someone else has already built for you. Somewhere closer to the middle of the gap, with the abstractions of object-oriented programming on one side and the confines of filling-in-the-blanks on the other side, is Jamba. This is a visual environment without any code to write, and a fill-in-the-blanks environment with a pretty wide collection of forms and values to choose from. The soul of Jamba is a pair of interrelated concepts: objects and events. Objects have characteristics, which you specify in a form; a button control has a label or legend, a text box has characters. Either can be visible or not, and active or not. Every object also has a list of events that it can respond to; a button object has a "click" event, a hotspot object has a mouseover event, and so on. There are sixteen different objects in the Jamba toolbox, including the image, text box, hot spot, combo box, radio buttons, and timer objects you would probably expect. There's also an interesting ImageStrip object that lets you make animated graphics with much more flexibility and control than animated GIFs allow. Some of the more exotic tools are a CGI object and a Java extension, for implementing custom Java code. ![]() Defining a control's behavior in Jamba. To drive Jamba, you do four things
It's a little more complex than that, but not very much. What you see below, assuming your browser is Java-powered, is the final product. Total development time, thirty-five minutes. (OK, I'd already written the story.) This little project was done with version 1.1 of Jamba. By the time you read this, version 2.0 should be on the shelves. Asymetrix/Aimtech promises a slew of enhancements in the near future, including things like database connectivity. I've always loved Java-enabled sites. They aren't always the most attractive from a cosmetic point of view, and sometimes they aren't particularly stable, but I still love the interactivity and the "snap" of Java applets. The thing I haven't loved about Java is that there doesn't seem to be a way to tame it without dedicating your life to the effort. Jamba changes all that. I expect small development houses, who can't afford a fulltime Java developer, and resourceful individuals to create some innovative new Web applications with Jamba. I know they're out there, at this moment, working away.... Jim Murray is the Creative Director of the Web Developer's Journal. |
|
|
Discuss Subscribe Search |