Wednesday, December 16, 2009

The reasoning behind Lumberjack

So why, in 2009, in a world of RIA frameworks, web-based applications, and a wide variety of blogging engines to choose from, would I write a desktop application in Java targeted exclusively for one company's proprietary blog platform?

First of all, it was tempting to write this as an Adobe AIR application. It would have fit my requirement that it be cross-platform and run as a desktop application, but I've never written anything with Adobe development tools before. Given the limited time I had on weekends to work on it, I wanted to get something written as quickly as possible rather than spending all my time learning a new platform. With Java, I could just hit the ground running, and it was just a matter of referencing the Swing-specific documentation. It boiled down to what was expedient and familiar because it would allow me to build something quickly.

With respect to the issue of making this application web-based, the main point is that I didn't want to start up a browser just to create new posts on Blogger. There's the Blogger Dashboard for that. Now, it's true that one could write a slimmer, lighter, faster-loading web-based client for Blogger without all the heavy clutter of the Blogger Dashboard, but it would still require that I start up a web browser; in the end, I wouldn't end up using it much. I wanted to build something that I would use and keep on using. (I have also been writing web applications for the past five years, and thought it would be fun to write something that ran on the desktop for once.)

Finally, there's the issue of this program being a client specifically for one company's proprietary blogging engine. Why not make it work for WordPress, TypePad, Posterous, and all the other major and popular blogging platforms? For that matter, why am I still using Blogger when there are so many newer, slicker platforms to choose from? I have to admit that I was tempted to switch out from Blogger — WordPress and Posterous in particular have impressed me the most — but when it comes down to it I'd rather have my blog on Google infrastructure than anywhere else. With that said, not everyone feels this way, so they choose newer, snazzier blogging software — which is how Blogger ended up neglected by hobbyist software developers. To this day, I still can't even log in to my Blogger account using Drivel, a desktop client with support for all sorts of blogging engines.

Tuesday, December 15, 2009

Introducing Lumberjack, a desktop client for Google Blogger

Earlier this year, I mentioned that I was working on a desktop application, a client for Google Blogger, written in Java with the Swing GUI toolkit.

I recently found some time to work on the enhancements that I said I wanted to do during my last update, and I'm ready to release the application to the world. Get a ready-to-run file at the Lumberjack download page. Just download the JAR file, save it, and run it; it will work as long as you have a Java runtime installed. If you're running Windows, Mac OS X, or Linux, you probably do.

If you have trouble logging in, you may have to solve a Google CAPTCHA first. You should only have to do it once.

If you're a developer, you'll find the source code at the Lumberjack GitHub repository. Simply run ant to build the application. (Yes, I put a lot of effort into getting this one-step build working.)

Patches, questions, and suggestions are most welcome. Just leave a comment on this post.

Monday, December 14, 2009

Idealism and retreat

When I'm by myself, when it's quiet with no distractions pulling me in a million directions, I automatically start to dream and envision great things. All of my scattered realizations and fleeting memories somehow just coalesce to give me more clarity about myself and what I'd like to do. It's as if a master blueprint is forming in my mind. It's not a time for questions about implementation or feasibility, but for consideration of what should be done simply because it's the right thing to do. There's no cacophony pressing from without, clamoring that it can't be done or that it's not worth the time, effort, or attention.