Hmm... I would probably have said "debugging", as that's when you have to deal with coding errors, misunderstandings, ... The design process is critical, but it has always been a flexible, analog process for me. Coding, mostly, is typing - it's the "ok, now we start" aspect of the initial tests and runs that take time and effort.<p>And if you're not quite sure of where you're going, the code will get worse and the debugging will get longer.