I wrote "think about what you're doing".
It comes through in the code, it's messy, there are entire classes and functions that are never used. The logic is all over the place. The code is messy to look at. There are edge cases that haven't been handled.
Well engineered code I should be able to look at understand what the developers thought process was as he was writing it.
I've seen a Dev write a piece of code, that wasn't that big, maybe a few hundred lines then later that day he couldn't explain how it worked in a meeting. Even going through his code line by line he couldn't follow what was happening.
If he can't follow what is happening in his code or explain it coherently, how can anyone else!
And it was because he dived into coding something without thinking.
If the real underlying problem/solution is a shape too big to put in your head, what do you propose? Pen and paper as superior to code for modelling things?