Adventures in lightweight Internet app development

November 20th, 2008

I should be clear up front: I am no programmer. I dabble in JavaScript, and I learned Fortran and Basic (not the visual kind) in 1978 and haven't used either since 1986. My programming style (such as it is) is declarative, not object-oriented. But I'm handy with Dreamweaver.

So when InfoWorld decided to create a lightweight front end for the Windows Sentinel performance-monitoring agents developed by our Enterprise Desktop blogger Randall C. Kennedy, I probably wasn't the safe choice to do the development work. But if you believe in the Web 2.0 promise that business analysts can do lightweight development, then I was the perfect test.

[ Monitor your Windows desktop and server performance with the new Windows Sentinel toolsfrom InfoWorld. Share your questions and experiences in the companion blog. ]

Well, the proof is in the pudding. You can see the results of my work (though vetted and tightened by our Web development team) at our beta Windows Sentinel page. The page is nothing special; it does what Web pages have done for years. But what is new is the creation of mobile and desktop widget components. Here's how they came to be.

Originally, Editor in Chief Eric Knorr's project mandate was to make Kennedy's performance monitors accessible through our site, so readers would have a personal landing page for viewing their data. That was easy enough: iframe the monitors generated by Kennedy's application on his server and add a simple JavaScript line to insert the individual's unique ID, so Kennedy's app would know whose data to stream. To get that ID, our registration server simply included it in the URL, so all I had to do was read it and pull the ID into a JavaScript variable, which would then pass it to the iframe.

Building for mobile Web 2.0
But I had recently bought an iPod Touch and was enamored with its ability to deliver much of the real Web in a handheld form factor. No less-than-Web technologies like WML there -- call it mobile Web 2.0.

Because Kennedy's monitors produced graphical charts from what the software agents recorded and because those monitors offered user configurability, it was clear right off the bat that we needed to focus on mobile devices that support "real" browsers, meaning those that could support the kind of HTML, JavaScript, PHP, and so on that you'd use on the desktop. The iPod Touch and iPhone showed me these devices now existed -- and that people were actually buying them.

I believe the era of a crippled mobile browser is coming to an end very soon (sorry, BlackBerry and all the cellular companies), thanks to the iPhone and the iPod Touch. Yes, Palm has been there too with its Blazer browser, but it was the iPhone that made the idea of the mobile Web real to the world at large. Given the crippled-Web strategies of most mobile devices today, our mobile widget won't work on many. But it will work on the most popular mobile devices: the iPhone/iPod Touch and Symbian 12-based Nokia devices; these two devices account for about 0.23 percent each of Web traffic, versus 0.06% for all Windows Mobile versions combined and nearly 0 percent for Palm OS devices, according to March 2008 data from both Net Applications and StatCounter. Users have quickly migrated to the mobile Web 2.0 devices, and that's where InfoWorld will play.

The Windows Sentinel mobile widget should also work with the Blazer browser on Palm OS-based Treos and the Opera Mini browser available for a variety of mobile devices, though given the wide number of variants, we're not prepared to guarantee that.

When Microsoft releases its Windows Mobile 6.1 platform and its promised truly Web-compatible mobile Internet Explorer, we hope our widget will become available to that community. If you use Windows Mobile 6 or earlier, all bets are off. The RIM BlackBerry is not compatible, even if you fiddle with its settings to simulate a Web browser.

Focusing on mobile Web 2.0 devices also simplified a difficult question: what screen sizes to support. When you take in all the mobile devices that have some graphical capability and Internet connectivity, you discover dozens of variations, using different standards to boot. It's nuts to try to support them all, even if you use a tool such as Adobe Device Central that tracks the dozens of display profiles for you.