Thursday, August 28, 2008

RSS Notification

As we've been upgrading our toolsets at work, we're slowly getting to a point where various pieces of infrastructure offer RSS feeds. These feeds provide notifications of source-control check-ins, build successes and failures, etc. The key word here is "notitficaitons". These are not news feeds in the traditional sense where articles and synopses are disseminated. Rather, these are momentary notices of events.


I began a search for an RSS reader that could act as more of a notification alert system. However, every RSS reader I found wanted to be embedded in your browser, or run as a full-screen in your face application akin to an e-mail application or NNTP news reader. They tend to offer three-pane views, in-application reading, etc. They didn't feel right.

Then I found AlertBear. The authors believe "that RSS is not email, feeds should simply wash by, commonly called the "river of news"". Now that sounds more like it! AlertBear delivers on its promise. It quietly sits in your tray, polling your RSS feeds at a customizable interval. When a new item appears, a color-coded toaster (or stack of toasters) unobtrusively slides into the corner of the screen with the headline. A quick click can open it, discard it, or hide it until later.

I'm now using AlertBear at work to monitor the Hudson builds or our projects that I'm interested in. I soon will monitor checkins to specific SVN project folders via Sventon. Then I plan to have our server start/stop scripts contribute to an RSS feed so people can subscribe to individual server events.

All-in-all, I'm very satisfied. I did have to hack the registry since the AlertBear settings UI won't let you poll more frequently than 30 minutes as a polite courtesy to feed hosters because the private corp of developers who will consume these feeds is manageable.

Hats off to the developers of AlertBear!

Wednesday, July 2, 2008

LWUIT Excuses

A week or so ago, I came across LWUIT -- the Light-Weight User Interface Toolkit. Basically, it's a robust user interface library for JME. Its intended to provide consistent rendering on multiple platforms, allow for pluggable look and feel and offer a Swing-like programming experience. This sounded interesting enough to be to detour me from the Adroid Developer Kit I had just downloaded.

So, I looked for an excuse to build something with LWUIT. I'm quite smitten with purpose-built applications like Google Maps Mobile over web cousins, especially on a limited platform like a mobile phone. Some of the common functions I need to perform (OK, want to perform) on my mobile phone include things like looking up "the name of that one guy in that one movie" on IMDB, or settling a lunch-time argument via Wikipedia. Launching Opera Mini, picking the Speed Dial for Wapedia, anf then finally entering my search is too much of a hassle for this old cloudweaver.

So, I opted to write a first-class Google Search mobile application with LWUIT. I've since realized it is a painful user experience since one you pick a result, it exits the app and launches the mobile platform's browser. Still, it was a valuable learning experience. It was very easy to leverage Sun Java Wireless Toolkit for CLDC, Nokia's Series 40 Platform SDK, eclipse ME, Google's RESTful search API, a JME library for JSON, and LWUIT to build a functional user interface. Come to think of it, buildign it was easy but assembling the technologies was quite a quest! And here were some frustrating things I had to learn since I've not touched JME since it was J2Me, but that is fixed overhead now spent.

It needs some polish, but that won't take long. Ha! Who am I kidding? I never finish these projects -- starting them is the fun part!

Old Man Walking!

Not quite a dead man, but I must be an old man -- finally starting a blog years after all the cool kids did. Now everyone who cares can know what's new. Yes, it's a short list.