Phil Wright of Crownwood Software is a microISV who has developed a .NET control library that he sells commercially. For those of you who have wondered how to have a day job and build a successful microISV, then keep reading.
How many people are involved in your company (development, support, etc.)?
You cannot get more microISV than Crownwood Software. I am the only employee and therefore do all the development, support, website design and anything else that comes along. Not only that, I also have a full time job as a programmer and so run the company entirely in my spare time. The only outside help has been the use of a graphic designer to come up with the company logos and basic outline for the website scheme.
Why did you decide to build components instead of a full-blown application?
I strongly believe that your best chance of success is to stick to an area that you know something about. Not just from a technical point of view but from the users perspective. I could sit down tonight and decide there is a niche in the market for a program that calculates dive times. Although I have the technical ability to write the app I don’t actually have any interest in diving. Without that specialist user perspective I am unlikely to create something that sells into that market. I certainly find it easier to keep motivated on a project when it is an area that happens to also be a hobby.
This takes me back to the original question. I chose to build user interface components because it is an area I have alot of experience in from both sides of the fence. Having written many such controls over the years as well as using third party libraries. Plus I enjoy working in this area. Spending hours on end writing a control in my spare time feels ike fun and not a chore. Hopefully you have more interesting hobbies to draw from when deciding what to write!
How did you decide on the price for your products?
Trial and error. I started out charging $199 for a single user licence but over the first year I increased the price on two occasions to become $399. Despite doubling the price the number of copies I sold remained constant. I guess this is because my customers are corporations and not individuals. If a company decides they want your software then the difference between $199 and $399 is not significant. If a software company needs to worry about a couple of hundred dollars cost then they must be in serious financial trouble. Obviously for a consumer market this works entirely differently.
What has been your best marketing strategy to date?
I have done virtually no advertising at all because most of my customers have already heard of the product from the days when it used to be given away for free during its initial development. So I had already built up a recognisable name with many developers.
One month I did manage to double my sales with a simple tactic. When I was putting up the price of the product I decided to put a warning on my website for a month in advance. The idea was to be a good citizen and give a fair warning rather than just spring it upon people. During that month sales doubled and I assumed that sales in the following month would drop dramatically because companies had bought ahead of the increase. To my surprise the number of sales after the increase stayed at the usual level. My theory is that the price increase forced companies to make a definite decision and so some of them decided to buy, whereas normally they are not forced and so procrastinate. The longer a person or company has to make a decision the more likely it will never be made at all.
There are a lot of other companies selling component libraries similar to yours, what differentiates your product from the others?
I deliberately ensured that my controls have some features that are not in any of the rivals and so any customer that really needs those features cannot find it anywhere else. If you create a product that is a strict subset of your rivals then you can only compete on price, which is never going to work when selling to corporations. Instead make yours a bit different from everyone elses, give it a different focus. This might only attract a small percentage of the market but this can still be good money for a one man outfit working from his spare bedroom.
How do you handle support for your products?
Having a full time job means I can only provide email support. Although occasionaly I get a call at 3am because the customer rings my contact number from the website and does not realise I am in a different time zone! The advantage of selling software to other developers is that they are technically savvy and so the majority of my customers have never asked for any support.
One danger to look out for is providing support that is too good. Sometimes you answer a customers questions so quickly they start to get lazy and instead of trying to work things out for themselves, they use you as the first port of call. The best solution to this is to always answer a customers first couple of emails very promptly, but if they start to get lazy then deliberately delay further answers for 24 hours. This slower response means they only email when they are genuinely stuck and not because they are too lazy to look in the documentation.
ry week to you estimate that you spend on support?
It varies but usually only about 5 or 6 hours per week.
You mentioned in your original email that your microISV income doubles your employment income. Why keep the day job?
On paper it seems easy to make a decision to quit your job and work for yourself. In practice, for me at least, it has been difficult. I have always viewed the income from the company as a nice bonus but did not expect it to last very long. Maybe this is because the product started as a simple hobby project rather than being a commerical venture right from the outset.
How have you set up your business in order to handle the demands of running a business and being employed?
The biggest problem is one of time. I have very little time and so need to concentrate on what matters the most. So making the whole process automated is the top priority. My website consists on entirely static content and so can easily be hosted by a standard third party. No need for any online database of registered users. I use a third party to handle the e-commerce so that I do not have to do anything myself to handle payments, invoices, credit card fraud and so forth. Therefore my time is mostly spent on email support and new development.
What advice do you have for others who are employed but would like to create a microISV that provides income that equals or surpasses full time employment?
I would suggest that you try and involve your customers right from the outset of development. Start by writing a simple version of your application and give it away for free. Use internet groups to advertise the location of your website, the groups do not mind an advert for something that is free. Make sure you release a new update on a regular basis, say every 6 weeks, to anyone that registers as being interested. Over a period of time you build up a loyal following that provides great feedback on the best way to improve the product. At the right time you can then create a ‘Professional’ version that you charge a fee for and then consider advertising via Google Adwords or trade magazines. This way you can bootstrap your work in sure knowledge it is being developed in the right direction. The last thing you want is to spend a year of your space time writing an application and then finding nobody is interested.
What’s the biggest mistake you’ve made since you began your microISV?
I definitely delayed too long before going commerical. It took two years of developing the free version before I decided to charge for it. It is better to have an imperfect product making you some money than trying to gold plate the first release.
What are your future plans for your company?
I am looking to create some extra products that broaden the income base so that I am not reliant on the existing one product. In a few weeks I will be releasing a new product that is currently in Beta which is a control that is completely new with no rivals in the market. Only time will tell if this is because no one else has thought of it or because there is no demand!
—————- About Crownwood Software —————-
Crownwood Software was founded in 1997 by Phil Wright. Phil is the creator of the DotNetMagic library aimed at .NET user interface developers. DotNetMagic started as a free library under the name of Magic Library for the first two years of development before becoming a commerical product.