Live data from Hacker News

Alan Cooper on the “10x” Programmer

twitter.com

11–20 of 71 posts

Re: Alan Cooper on the “10x” Programmer

#11
post #2

There will always be outliers but it really depends what thing the 10x programmer is making ten times more of. If it's simply lines of code then it can strongly be argued that he's creating 10x more technical debt as well, as one of the stories suggests. I've read that many outlier programmers are on the moderate-to-advanced portion of the autistic scale, at a place where it's actually a superpower in terms of being…

One other thing, software has the benefit that product development occurs in a simulation.

There's a freedom that comes with that, we're unbound by physics - layer upon layer of abstraction make it a lost concern.

It feeds into itself, growing in power at a rate proportional to its surface.

Until that is, it collapses under its own weight. When that happens is a matter of structure, and the extent to which the developer understands what the structure is, where it should be and how it must expand to cater for new requirements.

For simple cases a single largely linear block of code will be fine.

Eventually things get more complex. You'll need to move the lower level functionality to another file and call through to its methods.

Some of the methods in these files will become so heavily parameterised - and with repeat parameters - that you might want to introduce state. Welcome to OOP.

Then with the proliferation of the files you've created you'll need to introduce a directory structure.

Then a module structure.

Then a separation of API and implementations.

Then a division across projects.

At any of these points some will falter.

Some can't even write a single class without copying a pasting massive blocks of code. Some write class after class without consideration of abstraction or structure.

Yes there are 10x developers - those who understand structure and can implement the code accordingly.

Why does this happen in software and not other industries? As I said, we're unbound by reality.

If the best of us were engineers, we would be more tightly constrained by the physical limitations of the world.

If the worst of us were engineers, they would get people killed.

Re: Alan Cooper on the “10x” Programmer

#12
post #6

Earlier quoted context omitted.

> My communication, teamwork, and managerial skills are poor and always will be. Could you elaborate on how they're poor? And why you think it won't/can't change? You seem to have expressed yourself very clearly in this post, so at least when it comes to communication, I can't deduce any shortcomings (from this post).

Autism. So text based communication isn't impaired. Also led me to spend a lot of time on the computer so I naturally got better at using them. I send a lot of emails at work and my co-workers will usually try and deal with walkups. Writing is a strong point for me. There's little problems with communication like having the emotional intelligence to tell when your co-workers are having a hard time and when to back of…

Just know your limitations. I worked with a guy, somewhere on the spectrum.

He was very good at some things, but understanding other people's perspectives wasn't one of them.

He was excellent from a broad architectural perspective, but failed to acknowledge his limitations in regard to API development and user facing content.

There will always be a difficulty in understanding why it is that certain concepts are beyond our grasp, but it might not stop us from understanding that they are.

Re: Alan Cooper on the “10x” Programmer

#13
post #6

Earlier quoted context omitted.

> My communication, teamwork, and managerial skills are poor and always will be. Could you elaborate on how they're poor? And why you think it won't/can't change? You seem to have expressed yourself very clearly in this post, so at least when it comes to communication, I can't deduce any shortcomings (from this post).

Autism. So text based communication isn't impaired. Also led me to spend a lot of time on the computer so I naturally got better at using them. I send a lot of emails at work and my co-workers will usually try and deal with walkups. Writing is a strong point for me. There's little problems with communication like having the emotional intelligence to tell when your co-workers are having a hard time and when to back of…

Thanks for sharing this. It's fascinating to read the article and then have such a blatant counter-view/argument/description in the comments. I've really started to like HN mostly for the comments these days.

Re: Alan Cooper on the “10x” Programmer

#14
post #12

Earlier quoted context omitted.

Autism. So text based communication isn't impaired. Also led me to spend a lot of time on the computer so I naturally got better at using them. I send a lot of emails at work and my co-workers will usually try and deal with walkups. Writing is a strong point for me. There's little problems with communication like having the emotional intelligence to tell when your co-workers are having a hard time and when to back of…

Just know your limitations. I worked with a guy, somewhere on the spectrum. He was very good at some things, but understanding other people's perspectives wasn't one of them. He was excellent from a broad architectural perspective, but failed to acknowledge his limitations in regard to API development and user facing content. There will always be a difficulty in understanding why it is that certain concepts are beyon…

I'm so confused. At times I thought I was a 10X or maybe just a 5X. Being a humble person, I don't self-promote. My current team seems to have few problems dealing with me and we have had a lot of success this year. It's also a really big company, and I think I do best at these big places where things are generally impersonal and the sheer number of employees averages out the rough edges in peoples' skill sets.

My last team, however, was a different story. It was a small shop of only 7 developers and everyone knew everyone else's business and I swear they spent a lot of their time gas lighting me into believing I was somehow "not right" which I found amusing at times and heartbreaking at other times. The one female on the team was an absolute man-hater and the architect, an alcoholic. So clearly other issues going on. I just can't figure why any of it was taken out on me, I didn't do anything to them that I know of. I don't want to say they are assholes, but maybe just "people with major issues?" That would be more kind.

Anyhow, yes, I may be austistic or something along those lines although I was never diagnosed as such. The only thing psychologists told my parents was "gifted" and sort of left at that. I've had a troubled career and looking back it was never to do with technical abilities, which I have in spades, but always with the interpersonal skills, empathy, etc. But I've been married for 16 years and I have two kids, so clearly I'm not some hopeless case.

Re: Alan Cooper on the “10x” Programmer

#15

All I can say is, it’s been my subjective experience that competence and productivity are really variable. Some people at my company can produce beautiful, working, end to end solutions for complex problems in the time it takes others to grind out trivial maintenance tickets. Everyone knows who they are. Programmers are not basically all the same, and it’s worth thinking about the nature of the differences if you wan…

Agreed. I've known some very productive, very stable, very nice engineers. I've met the erratic kind too, but they're definitely not all that way.

Re: Alan Cooper on the “10x” Programmer

#16
post #7

One interesting twist is that some problems are completely intractable for most programmers. I mean that they cannot produce a working solution no matter how much time or effort they use, or if they do it's so riddled with bugs it's practically useless. Thus it follows that for certain tasks there are "∞x" programmers. Therefore there are absolutely "10x" programmers as well, which fits in with my subjective experien…

It's certainly task-dependent at least to some extent. If the task at hand is to fix a zillion spelling errors in the UI, there is certainly no 10x variance in programmer's ability (there might be a big variance in motivation though, and individual performance is a product of motivation and ability).

Re: Alan Cooper on the “10x” Programmer

#17
10x discussion aside, I found this quote to be eye opening, and not just about programmers:

“The 10x programmer is essentially a libertarian concept: That is, they do it all by themselves because they don’t recognize how much is done for them by others.”

Re: Alan Cooper on the “10x” Programmer

#18
Definitely, but only because some developers are insanely incompetent.

Sometimes they'll spend days going around in circles, creating files and writing hundreds of lines and introducing a couple of dependencies. When it comes to review time it's like... Wtf are you doing? It's a 5 second one word fix?

It's not 10x code, it's 10x faster to deliver value and solve problems

Re: Alan Cooper on the “10x” Programmer

#19
After working with ~ 30 odd programmers, I would probably classify myself as a 10x. I think a good chunk of HN'ers are 10x, with imposter syndrome of course.

1. Patience - I have the patience to sit through and fix a bug. Googling it, reading the source ... this is fun for me. 1x programmers give up very often and very soon. They either blame others, feel pity for themselves for not figuring it out or hate the computer for giving the wrong answer.

2. Fuck OOP - I stick to the separation between data and code. If I am forced to use OOP, I abuse the command pattern. My code is procedural for the most part. Procedural code is easier to debug .. usually, when I see a bug, I know the exact function. 1x go "wow" at this, whereas I feel like an Imposter.

3. Tools - This would probably be my biggest sin and probably where I could be a bit of a hipster. I stick to tools and libraries that make me productive.

4. News - I try to keep up with the latest news. This often helps me leverage the next best thing for increased productivity.

5. Egoless - I don't care about rewriting, throwing away and deleting code ... trying a new library. 1x programmers get attached to their babies.

6. My code is not a mess, your ideology is a mess - I've found it easier to work with absolute beginners, 0x, than "experienced" programmers who like to throw jargon around. Beginners tend to find my code easy to follow, easy to fix, easy to debug. The first instinct of the "experienced" is to rewrite it because it's not "clean" enough for them. I'd rather you look at the forest than the tree. The whole thing delivers 80% of what business users want! I've had three projects where I did in two weeks what a group 10 programmers took months and that's sad.

Things where I can imporve

1. Testing - I usually do a lot of integration testing for the critical paths.

2. Security - I always tell people to hire pen-testers but no one ever listens!

3. Documentation - My biggest weak point of all. In my defense, I choose functions names reasonably stupidly. I think it's good move to hire great documentation writers.

4. Complex Algorithms and Maths - Always good to know more! This is where I have to rely on 100x programmers to come up with a good library. I aspire to be 100x.

Re: Alan Cooper on the “10x” Programmer

#20
post #19

After working with ~ 30 odd programmers, I would probably classify myself as a 10x. I think a good chunk of HN'ers are 10x, with imposter syndrome of course. 1. Patience - I have the patience to sit through and fix a bug. Googling it, reading the source ... this is fun for me. 1x programmers give up very often and very soon. They either blame others, feel pity for themselves for not figuring it out or hate the comput…

I'm definitely a 10x programmer, but unfortunately 90% of my time is spent on hackernews, so nothing is gained.
Post reply on HN