Monday, November 12, 2007

MoneyWell Maturing Quickly

I love the internet! Not so much for the shopping, surfing, and news gathering aspects, but for streamlining my business.

There is no way I could have created No Thirst Software ten years ago and have it run this lean. We were still shipping software on floppy disks and mailing everything. Updates were time-consuming, expensive, and a major hassle. There were several times that late testing caused us to trash a set of disks that came back from the duplicator and start over. There was no such thing as posting a patch for downloading and we certainly couldn't afford to do a second mailing.

Now I know some of you are thinking that we tested software better back then. You'd think so, but no. We just spent more money fixing our mistakes. My software today is tested much more thoroughly than it was in the past. I can run a beta test, where a select group of users get early versions of a software product, and give my testers daily updates as they report problems. Testers can give me problem reports several times a day by sending an email to a list that notifies all the testers of a found bug. It's a beautiful thing!

After shipping MoneyWell 1.1, a couple of problems were found. One had to do with Leopard and another with a specific type of OFX import file. Within 24 hours of hearing about these bugs, a patch was posted. Then another issue was found on Tiger and quickly resolved with another patch. Please understand that I'm not bragging about having to ship two patches within a week of shipping a product, but the fact that I had the infrastructure to do this is wonderful. This means that when customers have problems, I can fix them and alert everyone using the software immediately by updating a single file on my website (still lovin' your Sparkle, Andy!). I sleep better at night knowing that this is possible.

The ability to deliver software via a website posting gives me freedom to throw away the old model for maturing a 1.0 product. When shipping a product was expensive, we had to plan for 6- to 8-month delivery cycles (which always turned into 12- to 18-month cycles). This meant packing in enough features to warrant spending that much time in development and testing. Now? Fahgetaboutit! Let's talk 6-week delivery cycles for minor updates and shipping on time because we can cut features without feeling guilty. The missing ability will show up in a couple of months so it's no big deal.

Case in point: MoneyWell 1.0 was shipped the evening of August 31, 2007. The first minor release followed on November 7, even though there were delays for Leopard compatibility testing. MoneyWell 1.2 will be out before the end of the year and it will be a much more mature product than the original release. That's a 4-month cycle to mature a software product! This really blows my mind (yeah, okay so it's not hard to shake up my remaining half-dozen active brain cells—I'm easily excited lately).

Much of this has to do with the internet providing a rapid two-way street for information. Customers email me with ideas and requests or post questions on our user forum and I can start a dialog quickly to discover if design changes are necessary or if I simply need to re-prioritize features. There's a good amount of discipline required to stay on task with all this electronic and mental traffic flying by, but I wouldn't trade it for the dead silence of the old days—wondering if anyone has installed the latest update and whether or not they liked it.

The internet also helps me adapt quickly to the rapidly changing landscape of the computer software industry. As a Micro-ISV without a large staff, I need to constantly learn better ways to code my software, structure my company, and market my products. Most recently, I've stumbled upon Late Night Cocoa to improve my Mac OS X programming skills (excellent work, Scotty!) and I'm still hanging with the MacSB group and monitoring several blogs for the latter two.

What does all this mean for our customers? It means MoneyWell is quickly becoming an excellent product because my 25 years of software development is greatly amplified by the wealth of knowledge being shared on the net and the immediate feedback from each customer or prospect who uses it.

Peace.