When you launch your web application, desktop software or any other type of software, the biggest problem you are going to face is very simple, but very hard to solve: People will not find your application.

For example, imagine Mr. Huang opens a shoe store and puts it in the corner of the town, in an area where there is no foot traffic. Very few people will find it, he goes broke, and he soon closes down. Mr. Rubenstein, on the other hand, puts the same shoe store on a busy shopping street. People are already there, all he needs to do them is add incentives for them to come in. The first guy has two problems (no people, no incentives) the second guy has one problem only, and he can easily test out different incentives to find the best one.

There may be a guy somewhere in Alaska who really really needs your software. You may really really need his money. But he will never find you. This is what will crush your product – the great big silence after launch.

Assuming you have not yet started working on your product, there is one thing that will make your life so very much easier: build around your discovery mechanism. Build on a busy shopping street, and not out in the corner of the town.

First of all, be very very clear on how you want users to discover your application. Then develop this part first. Then build everything else on top of that. If your application does not match your discovery mechanism, then change one of the two!

For example, if you are planning to gain users by search engine traffic, then make sure your product generates a lot of web pages, make sure the webpages interlink, study SEO FIRST, and THEN build your product.

If you plan to gain users by word of mouth, then focus on polishing the user experience. People will only recommend highly polished and non-frustrating software. Be sure to have some communication method with the initial crop of users.

If you plan to gain users by viral growth, then make sure virality is fundamental to your application, and not tacked on.

If you plan to gain users because you are in a closed eco-system like the Apple app store or Facebook, then find out the fundamental properties of these eco-systems, and make sure these are part of your app. For example, in the app store, you should cross-promote apps. In facebook, your apps should require more than one person to be useful.

Be very clear on how you want your apps to be discovered. Then build your application around this, otherwise your chance of just being ignored is high.

Have you ever noticed that a lot of the time several asian restaurants will open right next to each other on the same street, instead of in some other “unserviced” part of town? They do that because in order to survive, they need to be discovered, otherwise they will be killed by the great silence.