The story of an ISV
1. Introduction
Good morning! My name is Will Rayer, I represent Ubercode Software and I'm going to talk about starting and running a micro ISV. ISV
stands for Independent Software Vendor, a micro ISV has one or a few people, and we make money developing and selling software. In case you wonder what this
has to do with shareware, the business model of a micro ISV and a shareware business have merged [Eric reference] - we are both businesses that sell software
over the internet as well as providing trial copies. So I feel at home in a shareware conference.
The ultimate example of a micro ISV is Microsoft. They started in 1975 with two employees, one called Paul Allen and the other some guy I
can't remember :)
I'm going to talk about starting and running an ISV and the traps I fell into on the way. This may help if you want to start your own
ISV.
2. Where do developers work?
Let's consider the different types of work a software developer can do.
Full-time employment. On a positive note, you get paid regularly. Some employers look after their employees, providing training and
career progression. But others, maybe even the majority offer little or no training, making it difficult for employees to keep up to date. A cynic might say
this makes it easier to outsource you in a few years, or replace you with a younger developer at a lower wage.
In my experience, I have only had one employer offer any kind of regular training.
Contract development work. This is much better paid, although contractors are employed just for their current skills. If
contractors are to stay employable for more than a few years, they have to spend a lot of time managing their own training and career. This is more than just
reading books and attending courses.
Independent consultant. Again this is better paid than full time employment, but it requires good networking and marketing skills.
This can be a viable long term option if you can balance your technical skills with a friendly professional attitude that inspires confidence and if you can
keep up to date and build your business.
Software business. By this I mean an independent business that gets income from developing and selling software - an ISV. This has
highly variable income, and apart from the people in this room it is an unusual form of employment in the world at large. It offers the chance to create
something new, and if successful is a worth while means of earning a living. I'm now going to focus purely on the ISV.
3. Why start an ISV?
I believe several things motivate you to start. One is dissatisfaction with full time employment and its resulting stress. Some jobs offer
low rewards and ultimate burn-out. How many 40 year old programmers do you know? What are they doing now?
Creative impulse. The desire to create something new is an important motivator but it can be a trap. Your new idea can become an
obsession that you just have to make work. Many ideas look easy on the surface but the details suck you in. So avoid a product that is too complicated, and
keep your plans flexible.
To do this, focus on the minimum set of features needed to get the first version out of the door. Your savings divided by the monthly
expenses determine how long you can survive without income, and this determines the maximum complexity of your product. It is likely your first release will
take longer than your worst estimate, so the first release must be kept to the minimum features possible.
I made this mistake in the worst possible way. My initial plan of inventing a computer language was far too advanced and my initial
timescales were wildly optimistic. For example my specification included "write compiler = 4 weeks."
4. Funding
Now for the "F word" - Funding! Your ISV needs money for living expenses, money to cover the start up period, and money for the business
items you need. How do we pay for this?
Start while working full time. The advantages are a regular income, knowledge of the market and potential contacts. But running an
ISV at the same time as having a full time job is very time consuming, and the demands on your time and money can damage your personal relationships. There is
also a danger of being too late to market when the product is finally ready.
Use savings. This is better for getting the product out of the door. It is important to develop in stages, and to release version 1
as soon as possible. The burn rate (expenditure of money per month) determines the maximum initial product complexity. If you run out of money before finishing
you have nothing at all.
Mix contract work with the ISV. You can work on your ISV in between contracts - this is better than the full time approach because
contract income is several times greater than employee income. The problem is the contract market is very cyclical, and it's difficult to keep up to date. You
may be out of a contract for a year or more, and it is difficult to support yourself, keep skills up to date, work on an ISV and look for another contract at
the same time.
Use venture capital or business "angels". You only have to change two letters to convert "venture" into "vulture". In fact venture
capital is worse because vultures wait until you are dead before they peck your eyes out.
You will note I don't like venture capital :) I truly believe it is incompatible with a well run ISV. Your ISV needs money before the
first release, but at this point there is no product, no sales, no assets and nothing tangible, and investors run away. Investors only become interested if the
ISV generates sales - but at this point you don't need their money. Margins on software are so high that a well run software business can grow from its own
income without giving away equity or taking on debt. That is why I oppose venture capital.
Live with minimal expenses. This option involves working from home and cutting costs to a minimum. [Steve Pavlina's article]. If
you are self-funding and you halve your costs, you double the time you can spend on the product. I broke this rule big time, by spending lots of money and time
on trade marks, patents, adverts and other stuff I didn't need.
5. Development
So you've got a product idea, you've got some cash; you're motivated and ready to go. Development is what we do so this bit should be
easy! Well, maybe but there are two big traps - lack of focus and feature creep.
Get focused. In any ISV there is a time for planning and a time for action, and the Development stage is the Action part. Before
the first release, every day and hour not spent developing your product delays potential income and drains your precious cash reserves. So resist the
temptation of non-development pursuits. Don't spend hours browsing the web, doing research, playing with Linux or networks or server administration, or
whatever your favorite distraction is. Instead focus on the core product.
6. Marketing
I haven't talked about marketing yet, but it is an ongoing activity and not something you add at the end. There are lots of things to
think about.
What's in a name? The ideal name should be easily remembered, not too long and not purely descriptive. Instead it can be suggestive
of your market, like google is for search engines. Your name can be used as a trade mark and as a domain name, although it may take a while to find a suitable
name.
In my case I was determined to use Lingo and reluctantly changed it because there were other Lingos out there, and all questions about my
product got bogged down in discussions on trade mark theory. Full credit goes to Eric Sink from Sourcegear for persuading me to change the name, and I'm very
happy with Ubercode.
Product versions. As a minimum you need two versions - a trial version and a full version. If customers like the trial version they
will pay for the full version. The original idea behind shareware was the trial version was the same as the full version and customers were honor bound to pay
for the full version. Human nature being as it is, shareware authors starved and the few survivors now have trial and full versions in the same way micro ISVs
do.
Making Sales. Your website is your sales person, so like all sales people it must be neat and shiny, pushy enough to get the sale,
but not so pushy as to frighten away customers. Keep your website polished and professional, and update it at least monthly to show your ISV is alive. Get the
website up as soon as possible, as Google may ignore you up to 12 months after your site is established.
Keep track of the number of visitors, the number that download your trial software, and the conversion rate into paid customers. These are
important ratios: the percentage of visitors who download, and the percentage of downloaders who buy. These ratios (along with the number of visitors) predict
your income, and you must monitor them and work on improving them.
The nice part of your website is getting paid! The easiest way is using E-commerce providers [reference page] as they can handle different
credit cards, deal with Paypal, and detect fraud. Most customers pay using credit cards, and they can make a charge back if the software is not satisfactory.
Therefore you should provide a one month money back guarantee on your product, since customers could re-charge it anyway.
Technical Support. I include this with marketing, since it's important to make sure the customer is happy with their purchase. If
your product is high-volume low-price, you can deliver support using emails, FAQs and user forums. Don't do forums too early since nothing looks worse than a
forum with one person in it! The higher value products will need telephone support so you must allow for this.
Ongoing marketing. You will find opportunities to tell people about your product, so use them.
We interrupt this talk to being you a short commercial break. Ubercode is a fantastic easy-to-use language, ideal if you want a simpler
way to program. It's available now, is very affordable and has been established for over ten years. And that's not all - as a special deal for this conference
only, I am offering discount coupons for all new customers. So don't delay, act now!
Where was I? Oh yes, never miss a marketing opportunity!
7. Growing bigger
You've got a product; you've got customers and some kind of income. You may be working part-time or full time in your ISV. How can you
help your ISV grow?
Keep costs down. If you have any income at all, you can work at increasing the income and decreasing the costs. Be aware it is
really frustrating having to work in another job because your ISV doesn't generate enough income. So build that income and cut those costs!
Listen to customers. Pay close attention to negative feedback and reasonable complaints. There is a trap here - it is easy to
ignore negative feedback. Most customers only complain once, then you will never hear from them again. You won't hear from any of their friends, family,
workmates or business colleagues either. So listen carefully to the voice of complaint, find what changes are needed, and improve your product through
time.
Learn the pillars of wisdom. You may not see them, but your ISV (in common with all business) is supported by three pillars -
Marketing, Development and Administration. You must have all three, and in the early days you are all of them. Keep them balanced, and if you expand make sure
they stay balanced.
|