In almost everything I try to do, there's one big problem that I always deal with. That problem is motivation. Now, don't get me wrong; I have no shortage of ideas that I want to try, no lack of motivation to start things over and over and over again. No, there's a bigger problem... I can't maintain the motivation to actually finish anything.
This seems to be a common problem, especially among freelance or hobbyist programmers, though I see the same problem in almost everyone. It's just part of human nature - we think of a cool idea, go to try it, find out it's more work than it seemed like it would be, and just slowly taper off into nothing. My projects folder on my laptop is full of things that I started, that I love the idea of, but that I couldn't work up the motivation to get through the long, hard slog and eventually abandoned - and that's after only a few months! I don't even want to try to count the ones on my desktop. I legitimately can't count the number of projects I've started, tried, gotten bored of, and come back to months later only to realize I have no idea what anything I wrote meant.
There is no perfect solution that I've found. I don't have much advice on this subject. All I have is a simple mantra - try, try again. I personally get far more frustrated with slow progress and demotivation than is probably healthy. But the only thing I can do it dust myself off, pick a new project, and try again. If you have any better ideas, I'd love to hear them. If my short rambling on the subject was helpful, I'd love to hear that too.
Stay motivated, friends.