(^74) 97 Things Every Programmer Should Know
Hard Work Does Not Pay Off ........................
Olve Maudal
AS A PROGRAMMER, YOU’LL FiND THAT working hard often does not pay off.
You might fool yourself and a few colleagues into believing that you are con-
tributing a lot to a project by spending long hours at the office. But the truth is
that by working less, you might achieve more—sometimes much more. If you
are trying to be focused and “productive” for more than 30 hours a week, you
are probably working too hard. You should consider reducing your workload
to become more effective and get more done.
This statement may seem counterintuitive and even controversial, but it is a
direct consequence of the fact that programming and software development
as a whole involve a continuous learning process. As you work on a project,
you will understand more of the problem domain and, hopefully, find more
effective ways of reaching the goal. To avoid wasted work, you must allow time
to observe the effects of what you are doing, reflect on the things that you see,
and change your behavior accordingly.
Professional programming is usually not like running hard for a few kilome-
ters, where the goal can be seen at the end of a paved road. Most software
projects are more like a long orienteering marathon. In the dark. With only a
sketchy map as guidance. If you just set off in one direction, running as fast as
you can, you might impress some, but you are not likely to succeed. You need
to keep a sustainable pace, and you need to adjust the course when you learn
more about where you are and where you are heading.