Recipe
How to start a self-funded software company this minute

If you have no paid employees and no sales, you don't need to incorporate.  You don't need to learn about payroll taxes.  You don't even need a business license.  You aren't in business.  Not yet.

That may come as a shock.  Whenever software engineers get together to kibitz about starting their own companies, a great cry always goes up: "Should I incorporate as an LLC (Limited Liability Corporation) or as a standard 'C' corporation?"  Then there is a wailing and gnashing of teeth and everybody runs and hides from the Legal Monster.  No companies are created.

The way to start a company is to start simple.  First, you need an idea for a product.  Second, you need to build the software.  A year or so later, when the software is done, then and only then, worry about the Legal Monster.

If you don't have a product in mind, spend two hours per day for two weeks browsing the Internet, looking at other people's products that you could compete with.  Nothing yet?  Okay, spend another week browsing the Internet, looking at huge software companies and thinking about what product that you could build that would entice one of these companies to buy your company.  Still nothing?  Really?  Okay, go to your garage, dig out that old MONOPOLY® box, scrounge dice from it and use the following table.

Table 1: Your Product Idea
Die
Roll
   Product Idea
1 Grid component
2 Chart component
3 Bug tracking system
4 Database tool
5 Documentation system
6 UML, XP or use case tool

Now, take your product idea and write the software.  Simple, right?

Writing software is both hard and takes a really long time.  You absolutely, positively must ignore this fact.  To start, create a project in your favorite IDE.  Then, spend two hours making a simple blank window.  Then, the next day, add some minor functionality to that window.  Repeat every weekday, two hours at a sitting.

Should you quit your regular job right away?  No, wait two or three months at least.

How do you find the time?  Work at the same time every day, probably early in the morning or late at night.  Make it very clear to yourself and your family that those two hours are for programming and that you are not to be bothered.

What if you get stuck or are lazy?  Sit there at the computer and do something.  Add comments, reformat code, improve the build process, create the installer, hack out throwaway code or whatever.

What if you are unemployed?  Look for a regular job at least two full days per week.  Otherwise, you might blow all your savings before you get the software done or make any money.

Your first product may not be original or sell very well.  That's fine: you'll build more products later.

Don't agonize, don't analyze.  Just start.

Home

E-mail Dan Howard about this article