Very interesting topic, and a lot of good answers so far. Of course, everybody does it a little differently. I do it this way. First of all, something has to get me started thinking about a new project. Many times, the new project will arise from a need which is recognized from a previous project. --A good example, ---I was always fascinated by steam engines, but only in the last year have I actually started building them. The first two I built were other peoples designs, without any real modification, just to get some experience using a lathe and a mill. The third was based on someone eldes design, but modified--(the beam engine.) The fourth was my twin cylinder horizontal, which was my own design. The need to control the speed at which it ran lead me into the flyball governor project---and that lead me into the Varying load machine which I am currently building. Firstly, I research as much as I can to see what other people have done. This is generally now done by direct internet search---I used to go to the library to research new projects. Then I have to consider if I am technically capable of the new project. I can do a lot of things, but there are many things that I either don't know how to do, don't have the machinery to do, or can't afford to do!!! And then I make a rough sketch--If you read my posts, you have probably seen some of them. Then I set down at my CAD station, and make a working design. Then I create detail drawings. As many others have said, I find the most challenging part, and make it first. This serves two functions---#1-It keeps me from making a bunch of simple parts, then having to abandon the project because there is some aspect of it that I am unable to make. And, #2--Once the hardest part is out of the way, the other parts seem to go more quickly. I only work on one part at a time, and I complete it before moving on to the next part. I generally assemble the parts as I make thm, rather than making all the parts first, then beginning assembly. If it is a complex machine, made up of a number of sub-assemblies, then I try to complete all of the sub assemblies, one at a time untill they are finished. I test run each sub assembly as its own small "mini project", then set it aside untill I have parts made that assemble with it.