I just spend almost two days with a bug fix at work. The fix was just a one line code change!

This kind of things make you think. We as developers spend a lot more time reading and understanding code than writing it. Knowing where and how to do the code change is the important bit, but getting to there is the difficult bit. Specially when you are dealing with code which is hard to understand.

Many managers (and sadly also some developers) don't understand that in software development typing is not the bottleneck. It is expected from developers to write loads of code, the more the better, if it's faster even better. But the thing is that we are problem solvers, not code monkeys. The goal of each feature we release is to solve a particular business problem, not to put some code in a server..

Having this in mind is important to take the right approach. Thinking is the bottleneck . Getting to the solution is the hard bit.

That's why things like pair programming should be taking into account, two people will get to a solution faster working together than separately. Things like keeping your code "clean" matters, if you write code that shows its intent and is inline with the business domain it would be easier to understand and get to the solution faster. It's also important to have conversations often with the business because it will make you understand the real problem and get to the solution faster. And many more..

The point I am trying to make here is that you shouldn't think that we are here to write code, we are here to solve problems!