This is a rambling brain dump of a post, it may be big, but it definitely isn’t clever. Some might find much better use of their time by quickly skipping this post, you won’t hurt my feelings, honest. You have been warned!!!
Post Release Review
I released CaseDetective 1.2 for FogBugz a week and a half ago, so I thought it was about time I wrote a little update on how things have gone with this release.
This new release has proven to be very successful, I’ve had only one support request since it’s release, and unfortunately haven’t been able to solicit any useful information from the correspondent to find out what specifically their problem was. It’s a shame, as if I could get just a little info from them such as a 1 minute debug log run I might be able to see where the problem was, fix it and maybe turn them into a customer.
On the subject of “making” customers, last month (September 2006) was my best month so far for total number of orders, which was nice (although December 2005 was best financially due to volume orders). And doubly nice was that last week was my best single week of orders too, obviously some people trialling CaseDetective have been waiting for some of the goodies in CaseDetective 1.2 before buying. Maybe they’ve just bought it straight off knowing that there is a 90 day money back guarantee so it’s a “safe” purchase? I guess I’ll find that out within the next 3 months!
Either way, keeping the amount of changes in CaseDetective 1.2 to a couple of sizable features and a handful of minor improvements and bug fixes seems to have worked out well, especially as my available development time has been significantly cut recently.
The Next Version
Now it’s time to decide on the feature set for the next version of CaseDetective, which is proving very difficult to pin down. There are some relatively minor niggles that I know I need to address to help make things a little more “standard” (especially on Windows), I believe these minor cosmetic issues could actually be turning people off and need to be sorted sooner rather than later.
Then come the real features, the “value add” that makes people take a look at CaseDetective for the first or second time, these are a little harder to decide on.
For obvious reasons I’m not going to talk about the features I’m considering here, until said features are ready to go I’ll keep them close to my chest just in case they get pulled before the final release. However, what I can say is that I’m considering two different classes of feature, “brand new” to CaseDetective and more “improved” existing features.
Brand New Features
There are a couple of really big features that I just know will be popular, but of course the problem is they will take a considerable amount of time to develop, and I just don’t know if I’m happy to wait many months before I can release the next version. Maybe I should develop these “on the side” when I need a context switch and get them ready for a big release a little further down the line.
There are a few smaller new features that I could conceivably get completed in shorter time frames, none of them have the same “wow” factor of the larger features but on the flip side put them all together and they add up to more useful functionality and therefore reasons to try CaseDetective.
There are features in CaseDetective that customers really like, but want more from, and just like the “Brand New” stuff some could take considerable effort and others not so much. These are important, as it’s all very well being able to do something, or having the promise of being able to do something, but if it falls short of expectations it leaves a nasty taste in your mouth that’s difficult to remove, and therefore very bad for CaseDetective’s image.
Of course, things get a little bit muddier when you take into consideration the prospect of a new version of FogBugz somewhere down the line, and the changes that may force on CaseDetective.
I have absolutely no idea what is coming up in the next release of FogBugz, or when it will be released. Like everybody else I have to just keep an eye on the FogBugz discussion group to try and glean what’s going to change. And from what I can tell, it looks like there might be some changes in the next version of FogBugz which will require changes to CaseDetective.
This will hopefully be somewhat mitigated by my development style, whereby in general CaseDetective improves bit by bit during development, always in a near release ready state with each new bit of development tested before check-in. This means if FogBugz 6.0 comes along quicker than expected I should be able to finish off (or cut) the current feature I’m developing and work on compatibility, which is always top priority.
Brand New Application
For a long time I’ve been itching to kick off development of a brand new application, possibly with brand new tools. There are three particular applications that have been bouncing around in the back of my mind waiting for an opportunity to be put into practice.
One of these applications is fairly simple and has no dependencies on other applications or systems, it would therefore be a nice little bit of development that I could chip away at in my “spare” time (ha ha, ‘cos I have so much spare time you know). However, there are three possible implementation methods for this app, desktop only, web only, or web with desktop app. I’m leaning towards at least starting off as web only, as it should then be possible to add a desktop app later if the need still remains.
The other two apps are Mac only, nothing particularly new, just “better mouse traps”. Both could start off fairly simple and grow organically although there is a definite level of features that I would require before I could start using them full time, which might mean a pretty lengthy development schedule. And there might not be much call for what I’m thinking of developing anyway.
Either way, each of these new developments requires that I start to use a new technology, most likely Ruby On Rails for the web app and Objective-C/Cocoa for the desktop apps. I could use REALbasic for the desktop apps, but to be honest I fancy learning something new and that Core Data stuff looks pretty neat for what I’m thinking of doing. Having said that, although there are plenty of Windows apps in the application spaces I might be targeting, I dare say I could take a slice of the action with a cross-platform application written with REALbasic. The desktop apps definitely have more marketability than the smaller web one, but I really want the web one!
What to do?
So, as you see I have a bit of a dilemma.
I really would like to start development on the web application, but frankly I just haven’t got the time just now and am very unlikely to conjure up anymore in the coming months. I could sacrifice one evening a week to it, but I’m not convinced that’s enough to learn a new language without being frustrated by lack of use hampering the learning curve. There’s also the problem that the new development is pretty much for my own edification, as there quite likely isn’t a market for what I intend to develop, even if I know I would pay for it myself. I guess I could always test that though, no harm in trying.
As it stands, I’m leaning towards improving current CaseDetective features in the next release, with a few smaller “new” features that have been most requested. But, I’m going to take a few days to properly sketch out and estimate the changes I’m considering from the huge heap of feature requests to make a better informed decision on which to do, and make sure to leave some slack for catching up with FogBugz just in case it gets rev’d within my release time frame.
I did warn you!
So if you’ve made it here, sorry, but I did warn you!