Archive for May, 2008


Future Projects

I enjoy writing code. I’m not very good at it, and my experience is that I don’t work well when coding in a group, but the point is that I enjoy building things that run on a computer. I enjoy the feeling of accomplishment that comes from seeing a system work and knowing that my handiwork was involved. Most of it isn’t really my effort, of course: the heavy lifting is done by the folks behind PHP and WordPress. I merely ride on the back of giants.

But that’s talking about web development work. More specifically, the enhancements I’ve made to my client Antonio’s site in recent weeks. What I’ve been dreaming of doing, however, is something similar but not quite the same.

I want to write a desktop application. Or rather, two desktop applications.

The first is a cross-browser, cross-platform bookmark synchronizer. The idea is simple: as part of my work, I use multiple browsers on multiple operating systems on multiple computers. It might seem like a silly thing, but I want the bookmarks in every one of those browsers to be exactly the same. I bookmark sites all the time, and it drives me crazy when I can’t access a bookmark because it’s living on a different partition.

The second application is a simple mouse-button to keyboard-shortcut mapper for OS X. A number of such applications already exist, but they’re shareware, and I want to write one that’s open-source. It would also be a great opportunity for me to learn about the Carbon API as well.

I don’t expect that writing either of these applications is going to be easy. While I have written modestly-sized web applications in the past, I have never succeeded to building a non-trivial desktop application from scratch. There’s just too much complexity. Traditional applications have to deal with threading, event handling, and all sorts of other dross. Web applications are hosted by a web server which handles most of this complexity—I just have to handle the POST data and I’m done! This is a gross simplification, I know, but web development just seems easier to me somehow.

Now that I’ve laid these plans out, however, it’s time to get started working on them. You know the mantra: Release early, release often.

New Design

Done using CSS only—no images here, baby.

Update: Or perhaps I spoke too soon. The page was looking too drab so I decided to add some gradients and drop shadows. Oh well, the image-free version wasn’t that bad.