You might be a skilled programmer, and you may come up with a lot of new and fresh ideas, but the basic point is that, once you have managed to create your software, you will have to find customers in order to sell it and make a profit out of it.
Today’s software market is extremely competitive and besides your programming skills you will also need marketing skills. They go hand in hand together, so there is no way out of this.
You might have created the newest and the most innovative invoicing software system, but if you do not know how to sell it, you might as well throw it in the trash. This is why you need to have a very concise and well-thought-out plan. You must know what you are going to do every step of the way, but you also need to think two steps ahead of your potential customers…