First, I just wanted to say that I didn't realize I had blogger set so that I had to manually approve comments, so the few comments I've had now show up, sorry about that, I wasn't censoring anyone and appreciate the feedback!
Today I wanted to talk about the most important aspect of having a successful product (again IMO). Joel and Google and other newer technology companies have been spreading a lot of rhetoric that if one simply hires the best programmers, they will get the best product and thus the best profit. You can probably look at either of those companies now and think, well they are doing pretty well, so maybe they are right. But was it the developers that made FogCreek the sucess it is today? No. I'm certainly that at least through the first couple of versions of FogBugz no one had any clue how well written or how great the software was. They bought it because they heard it from Joel. Joel writes great articles, people read them, and when he comes out with an idea, be it City Desk or CoPilot, his followers will try it out because he recommended it. Maybe they simply weren't aware of any bug tracking software before they read his articles, but when you have a readership like Joel does, anything you recommend will be taken like advice from a friend. The sucess of FogBugz is almost entirely related to the sucess of Joel's blog. Sure, it has now reached a critical mass where people will stumble upon FogCreek because it has such a high PageRank, but if it weren't for Joel's blog, it would have just gotten lost in the sea of Bug Trackers that are out there.
What's my point? The point is that especially when you are starting out, the software itself is often the LEAST important part of the equation. I've seen people make some pretty impressive products and business ideas in the past, spend months working on them, and then simply put them on the web and wait. And wait. And wait. And then give up. Sometimes maybe they will spend a few bucks on AdWords. You could take every PhD at Google and create the best Bug Tracker around, and I promise you if you simply stuck it on the web and paid for a few AdWords, it would never get as many sales as FogBugz. The absolute number one most important thing when starting a new business is figuring out HOW you will get the word about your product out there. You should be thinking about this the whole time. You can produce the best software ever, and if no one has ever hears of it, it might as well not exist.
Ok, so how does one get the word out? Is purchasing a few AdWords the best and only way? Perhaps AdWords will get you a few sales, but frankly when I search for software on Google, the ones that come up at the top of the search results seem more legit to me then the ones on the sidebar. I would be more inclined to dole out my hard earned money to someone that Google trusts then someone who paid for an ad. Often in my previous IT jobs, we have purchased software from companies that was inferior to something we could buy elsewhere. Why did we buy them? Because the boss had some relationship with the other company. This is the absolute best way to sell your product. A recommendation from a friend. Many people I know won't buy anything computer related without asking me what I think of it first. I could tell them to buy the most expensive piece of junk out there, and that recommendation would carry more weight then a superior company's million dollar ad during the SuperBowl.
"So how does one get these recomendations?" you say. "I'm making software for nuclear engineers, I can't exactly get my mom to plug this to the neighbors". Good point. It is a very hard process to get that ball of trust in your company rolling. FogBugz and Google did not have the usership they have today over night.
There are several things we are trying. First, you really need users of your product to try it out, and get you feedback. This is a great time to get them hooked on your product and give recommendations. As hard as it may be, you should really give a couple copies of your software away. Perhaps find a user that would be less likely to buy it in the first place, find people who's recommendation will mean something. See how they like your program. This is now where the QUALITY of your program comes into play. If the original users of FogBugz had purchased it on Joel's recommendation but it sucked, both the product and the recommender themselves would lose credibility. While I am of the belief that given the correct marketing you can sell the crappiest product out there, it will probably cost you considerably more in support and public image then spending the time creating a great product in the first place. The Chimney Sweeps we have let us our program all have a similar reaction..."Wow!". This is what you want. I promise you a "wow" will result in sales. Seeing their collegues not carrying around maps, equipment and messy forms anymore means a great deal more then some ads with Google.
Recommendations are good for a localized area, but these will spread out very slowly. In many ways this is good. Why did many .bombs fail? They would put an ad out there on the Super Bowl, people would flood the site, it would crash, or the product just wasnt ready for prime time and people were left with bad impressions. You WANT your userbase to grow slowly. Get feedback while its managable. Give great customer service.
I'll continue with more ideas for marketing in other posts, but if you are not worrying about this already, you should start thinking of a comprehensive plan for proactive marketing now.