The Redesign Will Be Televised

September 26, 2008

I recently redesigned Jetrecord on paper and have come to a major decision point: I need to write the code again from scratch.

Why? Two reasons.

One, the redesign is enough of a change that it actually warrants a new foundation for the software. The user system is being changed to support accounts with multiple users, account features, roles, and permissions. I’m setting the base for paying accounts with extended features beyond the free version and these will use an ecommerce subscription system. To top it off the user interface is almost completely new. Plus I’m adding a developer API that will be ready to go from day one of the new design.

Two, now is a good time. I’ve been watching the use of the site trying to determine the usage patterns. Why? Because websites, like buildings, learn. This is why the practice of “release early, release often” works so well. You start writing the software using the best plans you’ve got. You lay down the sod and let users create the well-worn paths. You put the sidewalks in after you know where the paths are.

Also, at the time of writing Jetrecord has about 100 users and everyone is on the free plan. It’s much easier to rewrite the software and perform all the necessary data migrations with a smaller user base.

There are two upsides to this whole process.

The first is that Jetrecord will have a better foundation going into the future. This is not to say we’re on shaky ground right now. On the contrary, aside from some very minor issues that have affected one or two people, Jetrecord has been running smoothly for the last couple months. What I mean is that I’m putting down a better, more flexible sodding system, so to speak. I’ve written a lot of code that was designed to get features up and running fast. After a time it starts getting harder and harder to add new features without repeating your code in too many places. This is also known as code debt. I’m starting to mix metaphors here so just know that Jetrecord is going to be better software.

The second upside is that I’m going to broadcast the process. That’s right. I’m going to cover the rebuilding of Jetrecord in detail in a series of screencasts aimed at developers on my personal website. I’m going to take you behind the scenes of Jetrecord and expose the internal process I’m using to create the best online logbook software around. Code! Aviation! Vulnerability! What more could you ask for? And truly, if you follow along, there’s no reason why you couldn’t create your own logbook software if you wanted. At the very least you’ll get to see what’s coming next for Jetrecord, and, assuming you join the discussion, you can have a say in its direction.

What happens to Jetrecord in the mean time?

Aside from bug fixes and performance improvements, not much. The site pretty much runs itself without any intervention from me because I’ve set it up to be mostly automated. You can continue to use Jetrecord as normal. For the most part I’m going to concentrate on making the new version the best it can be. Since I’m the only person here I’ve got to put myself wholeheartedly into version 2, so I hope you’ll understand and I really hope you’ll stick around for the exciting conclusion.

I’ll keep posting here when I have new things to say about Jetrecord or about the screencasting series. Otherwise, things will be mostly quiet for a while. Maybe that’s a good thing. :)

Cheers,
Harry

Jetrecord is an online logbook for pilots like you.

Yes, Please Leave a Comment