Hard Work Does not Pay off
As a programmer, working hard often does not pay off. You might fool yourself and a few colleagues into believing that you contribute 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 more than, say, 30 hours a week you are probably working too hard. You should consider reducing the workload to become more effective and get more done.
The statement above is counter-intuitive and controversial to some, but it is just a direct consequence of the fact that programming and software development is 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 wasting energy, you must allow time to observe the effects of what you are doing, reflect over the things that you see, and change your behavior accordingly.
Professional programming is usually not like sprinting a few kilometers, where the goal can be seen in the end of a paved road. Most software projects are like a long orienteering marathon with a very sketchy map. If you just set off in one direction, running as hard as you can, you might impress some, but you are not likely to succeed. You need to keep a sustainable pace and you must adjust the course when you learn more about where you are and where you are heading.
In addition, you always need to learn more about software developement in general and programming techniques in particular. You probably need to read books, go to conferences, communicate with other professionals, experiment with new implementation techniques and learn about powerful tools that simplifies your job. As a professional programmer you must keep yourself updated in your field of expertise - just like brain surgeons and pilots are expected to keep themselves updated in their field of expertise. You need to spend your evenings, weekends and holidays for educating yourself, therefore you can not spend all your evening, weekends and holidays working overtime on your current project. Do you really expect brain surgeons performing surgery 60 hours a week, or pilots flying 60 hours a week? Of course not, preparation and education is an essential part of their profession.
Be focused on the project, contribute as much as you can by finding smart solutions, improve your skills, reflect on what you are doing and adapt your behavior. Avoid embarrassing yourself, and our profession, by behaving like a hamster in a cage spinning the wheel. As a professional programmer you should know that trying to be productive and just splash out code 60 hours a week is not a sensible thing to do. Act like a professional: prepare, effect, observe, reflect and change.