Pragmatic Development
Jan 15, 2010
2 minute read

What does it mean to be a pragmatic programmer, or to program pragmatically? Generally speaking, acting pragmatically or being pragmatic means to act practically. Taking things for what they are, don’t make  things more difficult then they have to be. Take these ideals and apply them to development and you can be a very efficient, very productive, pragmatic programmer.

Andy Hunt and David Thomas have written a terrific book on Pragmatic Programming. They mention many qualities that they have found pragmatic programmers to possess:

  • A fast and early adopter – Pragmatic programmers love drinking the newest flavors of the technology coolaid. Playing with a new technology is like getting to play with a new toy. It’s fun and represents something new and unknown to be figured out.
  • Curious and Inquisitive – Pragmatic programmers are always asking questions. Curious about how and why things work, and what the best way is to solve a problem. The knowledge picked up from these questions almost always becomes more useful in understanding future questions.
  • Grounded and Realistic – Pragmatic programmers have a very realistic view on things. They won’t forget that the webapp you’re building is only a tool for the means, not the end to the means.
  • Jack of all Trades – Being able to wear multiple hats makes pragmatic programmers more adaptable but also more valuable. Pragmatic Programmers have the ability to switch from one task to another pretty often, while still being able to claim a master or some.
  • Care about their craft – As a pragmatic programmer you have to care about what you are doing if you are to really have an appreciation for what you do. A pragmatic programmer has fun crafting their code and finding elegant, yet practical answers to their problems.
  • Always be thinking – A pragmatic programmer tries not to do things out of habit. Always asking “why?”, and “how?” helps to always be thinking about your work and why you are doing it the way you are.

_**The Pragmatic Programmer



Image of The Pragmatic Programmer: From Journeyman to Master