In a comment to another post, Andrey sent in a link to this blog post, titled “Never judge a programmer by their commit history”. It’s very similar to something that I wanted to write for quite some time now.
It’s been a very long time since I judged any programmer based on their commit history and I believe if you think you can judge a programmer’s ability by reading his/her code YOU ARE WRONG.
As technical folk, we are often fast to judge an implementation purely on its technical merits, forgetting, that there are other factors often at play. Mehdi Khalili, the author of the post, goes over just some of them, including:
- Abiding by bad coding standards
- Bad leader and project manager
- Junior devs
- Business reality
- Brain fart
- Personal issues
- Synergy or lack thereof
- Physical issues (which is similar to the Personal issues above)
- Imposters! (which is funny and, something I didn’t think about)
I’ve seen (and done) almost all of these. Business reality and junior devs are the two I’ve come across the most.