It’s not uncommon for software engineers to miss deadlines; in fact it’s far too common. As the end of the year rolls around I wanted to share some internal stuff regarding TimeTable. TimeTable development began in early March of 2009. Since that data I set an internal deadline for myself of shipping TimeTable 1.0 by my birthday, December 31st of 2009.
It was hard to bring myself to rewrite something which I had put so much time into, but it was painfully obvious I wasn’t really happy with where TimeTable had gone. So it was around the middle of May I found myself looking for new options. It was about this time that 280North introduced a new product called Atlas which took the internet a storm at the Future of Web Apps conference. Atlas in short is a web app Integrated Development Environment (IDE) for the new web application framework Cappuccino. Coupled with the new Aristo theme designed by Sofa I became very interested in Cappuccino when developing my 2nd iteration of TimeTable.
I spent the next several months hacking together some ugly code. It got to the point where I began to wonder if using such a cutting edge technology was such a good idea for TimeTable. Cappuccino was obviously incomplete, specifically missing a key component: the TableView! How could I actually choose a framework which didn’t even have a component necessary for the product I was going to ship? Well after a few days of stalling I went and looked to see what SproutCore was doing about the tableview, only to find that Sproutcore through it would be a good idea to ship a 1.0 framework without a decent method of displaying tabular data. The TableView for Cappuccino had already seen quite a bit of work from 280North, but development had kind of stalled a little bit. It was at this time that I contributed my first bit of code to an open source project. I brought the tableview up to spec enough that it could actually display data as needed and look decent too. After several weeks of work I push the new CPTableView up to my Cappuccino repository and it was merged into the main branch. Since then, several other parties have contributed features including theme-able cells (included the selected state) and inline editing to the TableView. I also added things like keyboard support, better support for scrolling to rows and columns, and automatic resizing of columns. You should see these features merged into the main Cappuccino repository come the first of the year. The TableView is a key component for many different projects so don’t expect development to stop; I’m sure many people will contribute to the TableView and TimeTable will only get better because of it.
Over the many months of working with Cappuccino I gained access to the private Alpha of Atlas. Before the beta went out I got to see exactly what Atlas could do. Again, I was impressed, but more so because of what I saw I could do with my application after I compiled it. It wasn’t until the public beta of Atlas shipped that I was able to talk about it, but I saw TimeTable running on the desktop, side by side with my native applications. It’s pretty amazing to see it in person and got my head spinning with ideas. It was at this time I knew my “gamble” with Cappuccino had actually paid off.
As the end of the year rolls around it’s become obvious to me that I won’t be shipping the final version of TimeTable by my internal deadline of December 31st. That’s okay though because TimeTable has simply blown me away. I couldn’t be happier with my decision to move TimeTable to Cappuccino and likewise I couldn’t be happier with the way TimeTable has turned out. I planned on shipping the 2nd release candidate today however there are a couple features I want to implement. Once the 2nd RC is out the door I’ll be locking the feature set down for 1.0. Meaning, there will be no new features added to TimeTable between RC2 and the Gold Master (GM). Gold Master will be the version I ship which will be sold. After I ship the GM I will be focusing my effort on getting the TimeTable website which has been sadly neglected up to spec with the application. This includes getting pricing information, frequently asked questions, up date help files, screenshots, and screencasts online.
I’ve already begun developing a feature set for a 1.5/2.0 release, which will of course be free to most TimeTable users (more details about this when the pricing information goes up). I want to thank all of you who have supplied feedback for TimeTable. You will be receiving coupon codes when TimeTable ships for your discount. I also want to thank all of you who have provided support, you’ve been invaluable. TimeTable will ship as a rock solid product and this couldn’t have been done without the Cappuccino community, and all the support I’ve received from you guys.
I hope you all have a happy holiday season.