Live data from Hacker News

10X Programmer and Other Software Engineering Myths

blog.fogcreek.com

51–60 of 84 posts

Re: 10X Programmer and Other Software Engineering Myths

#51
post #15

>these papers did not actually bring any original evidence in support of the notion that some programmers are 10X better than others, [...] What I’ve been saying is that the data is not actually there, so we do not have any strong proof of the actual claim. I can agree with the specific observation that there is no consensus on concrete quantifiable data to prove "10x" with mathematical rigor. Ok, let's set aside "10…

To me a 10x programmer has never been the definition of an excellent programmer, but a programmer that allows the overall productivity of his team to be multiplied by 10.

Maybe all programmers in the team have to build a website from scratch in Ruby, and he decides (and delivers) to build a web framework that allows his team to be 10 times more productive, not having to bother with the whole HTTP stack but only care about the application, i.e the added value of the team.

Maybe he created a new programming language that allows the logic to be expressed and deployed 10 times as fast, and allows the code to be X times more maintainable than before; that's where productivity booms and the team (and in the end, the company) can deliver real products in accordance to what the users want.

It does mean that the 10x programmer is better than others, but that's not the way this definition defines him: it only care how much he enables other to be more productive.

Re: 10X Programmer and Other Software Engineering Myths

#52

I don't think people realize how rare 10x programmers are. If you read the book iWoz, you will realize Steve Wozniak was definitely 10x more productive than other programmers. He was doing stuff it would have taken other people years to figure out. I think it's really on the bleeding edge where the 10x productivity shows. In 1997 I think I could have done a web site 10x faster than most people, because I had been obs…

the 10,000 hours it takes to become an expert

Speaking of myths... ;)

Re: 10X Programmer and Other Software Engineering Myths

#53
post #15

>these papers did not actually bring any original evidence in support of the notion that some programmers are 10X better than others, [...] What I’ve been saying is that the data is not actually there, so we do not have any strong proof of the actual claim. I can agree with the specific observation that there is no consensus on concrete quantifiable data to prove "10x" with mathematical rigor. Ok, let's set aside "10…

Where do these guys who deny 10x engineers work? I work in a company with ten devs. There's about a factor of five between the productivity of the top guys vs the bottom guys. That's after the worst performers have been let go. It's impossible for me to deny that some programmers are just really that much better at their trade than others.

Re: 10X Programmer and Other Software Engineering Myths

#54

One of my favorite pieces of research in this space is DeMarco & Lister's "Programmer Performance and the Effects of the Workplace." Basically (go read it! it's short!), they show that the difference between private offices and tiny cube/open floor plans is strongly correlated with being in the top 25% vs. the bottom 25% of developers, which is a difference of around 2.6x. Not 10x, but also non-trivial for those of u…

Maybe the better programmers have more leverage to negotiate better work conditions, so it isn't a causal effect.

Re: 10X Programmer and Other Software Engineering Myths

#55
post #15

>these papers did not actually bring any original evidence in support of the notion that some programmers are 10X better than others, [...] What I’ve been saying is that the data is not actually there, so we do not have any strong proof of the actual claim. I can agree with the specific observation that there is no consensus on concrete quantifiable data to prove "10x" with mathematical rigor. Ok, let's set aside "10…

"If they are a league above other average programmers, what's an acceptable description that you'd use?" Dedicated. These individuals have mastered their domain; they have spent years learning and practicing. They have built knowledge and skills that can be transferred to other domains. I think people need to stop focusing on the label, and start focusing on the process. I don't believe a person is born a 10X program…

You're talking about crystallized intelligence. Fluid intelligence is also a real thing: "the capacity to think logically and solve problems in novel situations, independent of acquired knowledge." Obviously that's important for programming.

A related concept is "general intelligence," which behavioral genetic research has shown to be highly heritable.

http://en.wikipedia.org/wiki/Fluid_and_crystallized_intellig...

http://en.wikipedia.org/wiki/G_factor_%28psychometrics%29

Re: 10X Programmer and Other Software Engineering Myths

#56
post #15

>these papers did not actually bring any original evidence in support of the notion that some programmers are 10X better than others, [...] What I’ve been saying is that the data is not actually there, so we do not have any strong proof of the actual claim. I can agree with the specific observation that there is no consensus on concrete quantifiable data to prove "10x" with mathematical rigor. Ok, let's set aside "10…

> Ok, let's set aside "10x" because many previous discussions about it have shown it to be a distasteful description to some. For those who do not believe in the "10x programmer", how do you feel about programmers such as John Carmack (Doom, Oculus)[1], Fabrice Bellard (ffmpeg, pi algorithm)[2], Linus Torvalds (Linux, Git), TJ Holowaychuk (node.js projects)?

Have you noticed how you have only listed programmers with skillsets that go beyond programming [except for the one I don't know know anything about, TJ]?

The first 3 of these are really programmers with management skills and the ability to build enough of a following to contribute to their projects. Their ability doesn't stem from a unique, magical "10x programmer" capability but rather the ability to get others to buy into their vision.

Linus didn't succeed because he was a better programmer than 99.9% of the population. Linus succeeded because he got other programmers to buy into his vision and was a good programmer.

You remember John Carmack more than Romero, not because of the skillset difference but because of John Carmack's ability to organize other programmers.

I understand there is a desire to honor these people due to technical skill alone but it isn't their technical abilities that made them famous. If it was, you'd be including a bunch of other people with some very impressive list of technologies to their name. Rather than people who are "well known". Its the social skills that allow people to achieve fame that cause you to remember them like this.

Re: 10X Programmer and Other Software Engineering Myths

#57
Convincing evidence for claims regarding software engineering should be based on:

1. A large number of programmers. Statistical significance, also real development is done in teams.

2. A long time - conclusions valid for short snippets do not necessarily translate to large projects where people in a team have to cooperate.

3. Controlled environment - passively getting statistics from existing companies won't cut it.

So you need to pay a programmer's salary to a large number of people for a longish time which is expensive. Perhaps this could be worked around by having deals with existing companies to let you control some factors in their existing processes. Maybe not perfect but still better than anecdata.

Re: 10X Programmer and Other Software Engineering Myths

#58
post #54

One of my favorite pieces of research in this space is DeMarco & Lister's "Programmer Performance and the Effects of the Workplace." Basically (go read it! it's short!), they show that the difference between private offices and tiny cube/open floor plans is strongly correlated with being in the top 25% vs. the bottom 25% of developers, which is a difference of around 2.6x. Not 10x, but also non-trivial for those of u…

Maybe the better programmers have more leverage to negotiate better work conditions, so it isn't a causal effect.

Yes, this is mentioned in the paper, right next to where they talk about the correlation.

The most telling part, though, is where they take some of the lower-25% from cubicle farm/open office spaces and put them in private office spaces. Guess what happens?

Re: 10X Programmer and Other Software Engineering Myths

#59
post #15

>these papers did not actually bring any original evidence in support of the notion that some programmers are 10X better than others, [...] What I’ve been saying is that the data is not actually there, so we do not have any strong proof of the actual claim. I can agree with the specific observation that there is no consensus on concrete quantifiable data to prove "10x" with mathematical rigor. Ok, let's set aside "10…

"If they are a league above other average programmers, what's an acceptable description that you'd use?" Dedicated. These individuals have mastered their domain; they have spent years learning and practicing. They have built knowledge and skills that can be transferred to other domains. I think people need to stop focusing on the label, and start focusing on the process. I don't believe a person is born a 10X program…

Do you believe anyone can become a 10X programmer? Or do you need a certain level of talent in order for the hard work to pay off?

My high school had an introductory programming class. Most students hadn't done any programming before, yet there were a couple of students who quickly understood the concepts and could solve weeks worth of assignments in a single day, whereas the rest of the class struggled. Those students, for whatever reason, were able to learn programming much more quickly than the average student, and I believe those students they'd see a greater return on their investment of hard work.

Here's another anecdote: do you know any experienced engineers who work 12 hours a day and still struggle to do relatively easy jobs? I do. Talent is an important piece of the puzzle. Hard work is also an important part of the puzzle. Both are important.

Re: 10X Programmer and Other Software Engineering Myths

#60
post #17

Earlier quoted context omitted.

Ten times zero is still zero. It's a given that some people are more productive than others. They are faster typists, or they can architect a system of similar quality faster, or they can just write good code faster. But remember the idea of 10x came from studies of similarly experienced programmers. And supposedly, the order of magnitude comes from actual data, although I've never been able to see it. For most trivi…

The whole point of the article is that the original claim from the original data is suspect and quite likely extremely outdated even if it was a valid conclusion in the first place.

That's my point as well (which I probably didn't articulate well enough).
Post reply on HN