Sometime back Prateek Jain posted a link to an article title 'Signs that you're a good programmer' on Geometric's internal portal. It has list of 'signs' that you are a good programmer. It made me introspect and see how many signs actually apply to me. Turns out that by this checklist, I am a reasonably good programmer. :-)
I realized I have done following from the list.
- side projects.
- Dabbling in other programming languages, especially ones from a different "family".
- A tendency to suggest wacky and unrealistic solutions in meetings.
- Willingly throws away weeks or months of work in order to adopt another programmer's superior code.
- Refers to it as "the code" rather than "my code", unless accepting blame
- Doesn't take the spec by its word and tries to find out who wrote it and what they were thinking
- Owns a book written by a guy called Martin Fowler. (Actually I own multiple books by Martin Fowler)
- At least 10% or more of their commits reduce the line-count of the project without adding new functionality
- Shoves through a crowd at a party to get near someone who just used the word "Bayesian"
- Envies but doesn't resent people with degrees in something they don't know
- Blogs about their work
- Not hesitant to pick up a marker and approach a whiteboard
- Commits changes to the repository that consist only of comments (but not commented code)
- Is oblivious to how many times their cubicle-mate has gone for coffee, the bathroom, or the hospital (I don't even hear any sound if I am concentrating on the code).
- Not bothered by office politics
- Can predict a bug before the code is ever run (Done that a few times)
- Assumes their own code is the source of a bug before blaming the compiler, library or operating system
- Disinterested by the outcome of elections
- Stock options and bonuses are ineffective 'retain'-ment techniques
- In casual conversation their readiest metaphors come from programming constructs (some time back I gave an example of classes/instantiation while explaining 'business offerings')
- Spends the majority of their time "goofing off", but commits more bug-free code each day than their colleagues
- Glances over your shoulder and points at a bug in your code with their finger
- Correctly diagnoses bugs over the phone while drunk or in bed
- Comes up with their best code while taking a shower*
- When confronted with an obstinate bug, their instinct is to get up and go for a walk
- They suddenly pause and stare into space in the middle of a conversation, then abandon you to hurry back to their terminal with no explanation (AKA "A Columbo Moment" or "Gregory House behavior")
- Getting into arguments with the CEO (done that, probably multiple times, still in Geometric because I like working with Geometric CEO, Manu Parpia)
- Quitting on principle
- Organizing teams without permission (I believe its easier to say 'sorry' than get permission)
Overall not a bad score.
1 comment:
Wow Nitin! What a way of reflecting on your ownself! It was a very interesting read - especially the last part. ;) easier to relate to for me at-least!
Great post!
Post a Comment