Road to Beta
This was initially sent to the macsb mailing list. A couple of people suggested I post it here as well. It’s the same other than the addition of some links to previous posts.
After a bit over four months, I’m excited to share that I released a public beta of my new company’s first software product today. NewsHawker integrates with NetNewsWire to speak your news in a fairly configurable fashion. Any feedback is much appreciated!
I thought I’d share a couple of thoughts that may be of interest to those macsb folks in a similar situation. First, I decided that NewsHawker would be my first app because it met two criteria previously mentioned on this list: one, it is an app that does something I personally want (which provides motivation) and, two, its implementation isn’t too complicated (which results in a greater chance of actually releasing). I’m relieved that I didn’t start with a more complicated application since the effort required to reach beta is more than I expected and the amount of time I have been able to dedicate is less than I had hoped. It seems like other commitments often trumps my development efforts.
I knew that there was a lot of “infrastructure” that would need to be researched and developed or integrated, but I didn’t realize how much. There were the technical tasks of setting up a source control system, learning Cocoa programming, deciphering AppleScript, integrating with Apple Help, scripting a build process, and leveraging Sparkle-Plus. There were the design tasks of creating a web site, writing documentation, and finding someone to design an icon. There were the business tasks of incorporating the company, finding a hosting provider, figuring out accounting, and writing software licenses. I still have to figure out how to set pricing, send press releases, and implement time-limited demos, registration keys, and payment processing. Needless to say a lot of my time was not spent implementing the core features of NewsHawker. This was particularly shocking to me since I used to develop software for a large company where most of this infrastructure is done for me by someone else. That said, it’s amazing to be responsible for every aspect of your product.
A major lesson learned is that my time is not free. That is, it often makes sense to integrate an existing solution or pay for an added service than to try and do it all myself. I’m going to apply this lesson as I prepare for release. I was really tempted to integrate Google Checkout into my web site for payment processing and write my own registration key solution. Instead, I’m going to spend the extra money to have Kagi do it all for me. I’d rather have the time to work on enhancing my application.
A second major lesson learned is that the macsb community is amazing. I’ve directly and indirectly received a lot of great advice and solutions both through this list and on #macsb. Hopefully, I’ll be able to contribute something back….

January 20th, 2007 at 5:41 pm
I also started doing shareware. I have experience writing software for companies and such. I had no idea that writing and testing the software was just very minimal work on the while picture. I still havent written a manual.
This is not easy, and sometimes it feels like the whole thing is totally not worth the time you need to put into this, but then you get an e-mail from a client that explains how your software is just what he wanted, makes it all worth while, at least to me
January 21st, 2007 at 2:27 am
You might want to check out Read It To Me, which we open sourced since neither of us could maintain it.
http://alexking.org/projects/read-it-to-me
Perhaps it is of some use to you.