Most developers are unwilling to spend time on writing a clean code because they want their code to run as soon as possible. For this reason, they immediately want to jump into the coding process. Of course, this is not a good engineering approach; but, let us imagine an ordinary developer and his/her behaviors. Because of their desire to see their creation as soon as possible, they don't have a proper preparation period and they ignore how clean and understandable their code is while trying to have a working implementation.