I've tried this approach:
Find something you want -- maybe a time tracking utility that's better than the one you use at work or a web-based recipe program that the s.o. would appreciate.
It really, really helps if you involve others as your explore your initial ideas but before you look at the "competition". You may like what you're doing, but if other people are interested in it, it's hugely motivating (for me at least).
Write some code.
When you've got some ideas down and have some basic functionality in place, start looking at what others have written and see what they've done better and what you can leverage from them.
At this point, I'm usually invested enough and interested enough that I'm willing to chase down how to use Google Gears or some pretty in-depth jQuery stuff.
Your mileage may vary... :-)