The main point is that I am a programmer and I am willing to work hard at least 20 hours per week to build a web service application that can be valuable to other people. I don't have an idea about service, just a will to work for it. What I should do for that to start efficiently, and to have a result?
Find a need, and fill it.
You can survey people you know, ask experts in the industry (popular bloggers, even), etc. Try calling companies and express interest in what they do and who they are and find out how they're doing certain parts of their operations. Of course you respect privacy and other boundaries in the process, but if the people you network and associate with know you're not trying to sell them on something, but merely are interested in what they're doing, you'll have better results.
Further, examine your own experiences. Is there something you've been doing, or had to do, all this time that's irritating? (e.g. duplicating a certain code library) Is there a search you started but never finished? If so, go back and try that again. Google rocks here.
Make sure somebody else hasn't already performed the task and performed it well. If nobody has, or if you can do it better, then examine how you would do it and come up with a specific plan. Find out what features you'll want, what people need, and how you'll distribute this (pricing, accounts, endpoints, etc).
Make it, test it hard, and when it's ready, talk to those people or companies/organizations you surveyed and thank them. Show them your service, and offer it to them at an introductory rate (if you're confident) or even free. Then ask them to tell, say, 2 or 3 others about it for the compensation you made in the price.
Well, that's how I'd do it, anyway.