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.
And if you're not quite sure of where you're going, the code will get worse and the debugging will get longer.