Originally Posted by
Salem
Start with a plan of what you want the program to do, then think about how you're going to do it.
Nothing grand to start with, a few notes and a simple class diagram on a couple of sheets of A4 ought to do it. Then implement it and stick to the plan.
If you think "wouldn't this be good..." along the way, then make a note of it for version 2. Resist the temptation to hack it into the design and code it there and then.
Hack it until it breaks doesn't work (as you're finding out).