The Pragmatic Programmer by Andrew Hunt and David Thomas, Addison Wesley (1999) ISBN: 978-0-2016-1622-4
Is an excellent book on the art of programming, I mostly agree with suggestions and I fully agree with the idea behind the book.
Programming is an art that is quite abstract, a bit like Mathematics, but more applied. There are many solutions and any interesting problem requires choosing tradeoffs, also in a larger project the social and management part cannot be ignored.
There is no true perfect way to approach a problem, some thinking is always required, and but there are some strategies that have been validated time and again, and are worth being applied when possible. This book gives some of these tips that worked well.
I strongly believe that in a project one should try to keep the mind open, try to motivate the participants, evaluate the options, set deadlines, and do stuff, and after a bit re-evaluate things.
Pragmatism is very important here:
- Discussion of options is needed, some thinking prior to building can spare a lot of wasted effort.
- Deadlines and their pressure to deliver is also needed, and sometimes one needs also to stick to a suboptimal solution to deliver something. The perfect balance is difficult, but luckily, not really needed, one has to find a reasonable point in there, and think and correct if needed, not finding this balance at all is much worse.
Paul Ford What is code? is really a nice starting point to dive into coding…