* Choose the project that you find the most fun and interesting. If you do something that you enjoy and are passionate about, it becomes hard to pull away from it; hence, you'll get further on it. Set up small goals and milestones while for you to accomplish during the project. I try to break things down in a hierarchy, where I am looking at goal in a monthly, weekly, and daily perspective. These are not hard deadlines, but they give me metrics of success, and its ok to adjust these as the project matures.<p>* You will have to deal with the ADD, or you will not get anywhere, speaking from personal experience. In my case, I hit walls and managed to work around them. But sometimes new and easier things came along, and then I would pursue those interests. Unfortunately, when I did this, the work I did got tossed, and I started back at square one on the new stuff. Don't be me.<p>* In general, I begin an idea that may not be great or novel, but I try to build on it, iteratively, add new concepts or features to it. This process heavily depends on the project though. Generally, as I work along these lines, I am bumping into random problems that need to be solved or need a better solution. (this advice point may not be strong).<p>* Don't be afraid to fail. Failing is half the battle.<p>Hope these four points help.