The notion of 10x programmer was first mentioned by John Brooks (of, Brook’s law fame) in his essay No Silver Bullet, according to which, ‘there is as much as a tenfold difference between an ordinary designer (programmer) and a great one’. The idea has been widely debated, sometimes refuted and many times defended which is unsurprising for it is impossible to accurately measure a programmer’s productivity.
Sadly, the idea of 10x coder is usually visualized as a screen glued junkie, moving fingers over keyboard without a break. While the picture may be popular for sci-fi films, it is hardly close to reality.
At my previous company we needed a system to integrate a CRUD system for rich text posts in the existing website which means a lot of creating lots of forms and a long laborious coding process; a sucky job in short. We already had a WordPress blog, so I suggested that we could instead use WordPress itself with a plugin to output posts in JSON format and custom tag to identify where the posts are to be shown. It took merely two days to complete the whole task.
I won’t claim it was an exceptionally good idea but it saved the company more than a week of time. I am not claiming myself to be the 10x guy but I believe ideas are what defines him.
Conceiving the idea
On a cognitive level it is nearly impossible to describe how could a complex interaction of billions of neurons result in something like an ‘idea’. Let’s try a more simpler abstraction.
- I thought that WordPress already has process to achieve all we want, we just need a way to integrate it into the website.
- I realized because WordPress has a plugin for everything, it must have a plugin for JSON API too.
- I linked 1 and 2.
An abstraction accurately described by, popular sci-fi author, Issac Asimov, in his article, “How do people get new ideas?”, in 1959.
The Good Programmers
“Good programmers dig Haskell on the weekend, know dozens of languages and are fan of trying hands on every new technology”. At least that seems to be the well-conceived notion of a good programmer – heavy insistence digging horizontally. I don’t discourage such enthusiasm and neither I claim it to be counter-productive but I believe it gives a false impressions about your progress (that you are very good). Obviously, you are only finding multiple ways to reach the same goal.
The 10x Programmers
So who are these 10x developers? I believe they are the ones who have better ideas when finding solutions and how do they get these ideas? for me, by doing different things, reading what other people wrote, digging deep into stuff, and most importantly having an urge to constantly challenging one’s current skill-set.
Good ideas come by bashing different things and moulding them in unordinary ways. Finding such ways, requires much more than just knowing latest fad, it requires lots of ‘hacking’. As Edward Weismann observes in his free ebook, The Best of edw519, “the more I meet ‘famous’ hackers and the more I meet people from this community (online and offline), the more I realize that there’s not really all that much that separates us.”, brilliance spurs out of challenging endeavours.
But why are they so rare? The simple reason is not many people are interested in doing things beyond their scope. Lots of people want to make games, but how many actually start making one? and more importantly, how many actually finish it? Quite less, I believe. I am not implying lack of brilliance but inapt determination may hinder one’s path towards moving up the ladder, as it is with case for most of the people.
So if you love tinkering around things, and have a discipline to always go beyond what you already know, I believe you are a 10x developer.