Friday, January 25, 2013

I believe H.L. Mencken once said, “every newspaperman has a novel in him, and that’s where it belongs.” The same could be said of programmers and software products. When a coder looks out at the world of successful products and web sites, it always seems very simple to create the next Twitter, the next Angry Birds, or for you old folks, the next Microsoft Word. But the reality is very different, for a number of reasons. If you’re a programmer and you want to create and market a product, you should know that:

Your idea actually sucks, even though you think it can’t miss. If you haven’t run your idea by some potential customers to get feedback, you definitely should not write any code yet.

It’s going to take you a lot longer to code this than you think. It isn’t just writing a simple application that works well, there’s plenty more that you’ll need to think about if you going to release a product. Do you have an error handling strategy that’s going to make support incidents bearable? What about licensing and collecting your purchase price? Will users know how to use your product intuitively or will they email you and ask for your money back instead?

This is the killer: creating your application is the smallest portion of the work that’s ahead of you. In a typical software or web company, the developers are a very small proportion of the staff. That’s because most of the work required to launch and maintain a successful product or web site is not software development work. So, if you’re a solo developer, you’ll have to split yourself in 10: 1/10th of you will get to write code, 4/10ths of you will be in marketing, 3/10ths of you will work in tech support, and 2/10ths of you will be a product manager. Is this not sounding as fun as you thought?

I’ve seen other consulting companies get bogged down in this trap, so I was wary of releasing a product for many years. Then, last spring, Tim Grant of Business Solution Providers (BSP) came to me with a simple need. BSP specializes in inventory solutions for QuickBooks®, including QuickBooks Enterprise Solutions Advance Inventory. QBES Advanced Inventory allows QuickBooks user to track serial and lot numbers in their inventory, and there is good coverage of receiving and selling of inventory items that are numbered. But there’s one big gap in this system: there’s no easy way to take an existing inventory that was created before Advance Inventory was enabled and add lot or serial numbers to it. That’s what Tim needed help with.

And so Lot Mop was born! I decided to go ahead with Lot Mop mainly because of one thing: this was a very simple product to build. I had a working prototype up in a week, and I got good feedback from Tim and some other QuickBooks Pros that I showed it to. I should note that once I committed to productizing the 1 week prototype, it took another 3 months of development, legal, and administrative work before it was ready. But overall the effort was small enough to be survivable.

I haven’t yet broken even on Lot Mop, considering all the time and money that I spent on it. But it is already paying dividends. What I’ve found is that the ability to deliver a product makes a subtle but powerful impression on people, and my consulting business has picked up considerably. Overall, Lot Mop has definitely been worth the effort.

QuickBooks is a registered trademark of Intuit Inc. in the United States and other countries, used under license.