The programming talent myth
lwn.net
lwn.net
The closest they get is arguing by consequence against it - if it were true, people might be discouraged. That's a logical fallacy since some things can be both true and discouraging.
This article is even worse. It drops this paragraph in: The tech industry is rife with sexism, racism, homophobia, and discrimination...This is the "10x programmer" who is so good at his job that people have to work with him even though his behavior is toxic.
Arguing by juxtuposition, it's suggested that a belief in talent will somehow harm diversity. But that makes no sense - if talent is so important that we are forced to work with "toxic" 10x programmers, why aren't we also forced to work with black female 10x programmers no matter how much we might dislike them?
If a hypothetical black female potential 10x programmer finds the first community is unwelcoming then she is less likely to stick around and thus become a 10x programmer.
There are plenty of previous articles on here from individuals who are "tech minorities" about the environment that we unconsciously create which isn't that welcoming to them. From assumptions about where and how we want to socialise, to dress codes, working hours, employee benefits etc.
Unwelcoming: the community dislikes a person and behaves badly towards them. As an example, a recruiter told me not to bother with Warby Parker or Etsy since I'm not a hipster and they'll just reject me. (No idea if this is true, might just be #shitrecruiterssay.)
Not my thing: a person dislikes the community, it's norms and culture, and avoids it. E.g., I don't like banking culture.
You seem to be suggesting that "tech minorities" feel that tech culture is "not my thing" - we socialize and dress in a manner they dislike, work hours incompatible with their preferred lifestyle, and don't give out the right employee benefit package. As a result, "tech minorities" don't put in the effort and don't build the relationships that would help them become 10x programmers. I get the impression you consider this a problem, but it's unclear to me why that is.
How you get from this to the idea that 10x programmers or programming talent are a myth is not something I could figure out from your post.
People constantly talk about racism and sexism being "rampant", but evidence of this would be helpful. Citing statistical disparities is insufficient since, as cmdkeen notes, this could also be caused by "tech minorities" disliking the culture of tech rather than techies disliking them.
My company is about 95% one race (not mine) and there is precisely 2 people here of my race (since last week) and 4 of my nationality. I simply choose not to care, and define my work tribe as "folks who care about uptime and good stats" rather than "folks who are genetically similar".
If, theoretically, 10x programmers were grown, then obviously most of the 10x programmers would be older and more experienced, but that age group is actively strongly discriminated against. Perhaps there are no 10x programmers of 50 yrs, by that age they are all 100x programmers after all that accumulated experience and domain specific knowledge, at least compared to average recent grad noobs. With the obvious exception of people with 25 yrs of experience who've only had 25 first years over and over again, although that failure mode is hardly limited to programming...
With a side dish of the widely held belief that 10x programmers can only come from selection organizations like ivy unis which primarily select (don't get all wound up, I very intentionally selected the word primarily, not solely) based on kids winning the genetic lottery, not by working hard? If the only way to be a 10x is to win the genetic lotto, and if the lotto winners happen to be mostly rich white males, the problem is at the academic uni acceptance dept level and has nothing to do with programming itself. If 10x programmers can by some definition only be recent Stanford grads and Stanford refuses to admit "enough" minorities, the problem is very specifically Stanford, not programmers in general or education in general or culture in general. Ready Fire Aim isn't going to hit the right thing. Find the correct target.
If an individual is "born that way" should he be made to feel unwanted or guilty about who they are? Apparently if they're gay the answer is no, and if they're a 10x programmer the answer is yes. This seems inconsistent, and inhumane.
Also it assumes that programming is only learned at uni in a purely frat boy anti-minority environment yet mythology and anecdote indicates that really good programmers are all self taught before they're 18, and only go to uni to get the paper and polish off the highest end stuff.
As a completely isolated theory, it is internally self consistent, but rubbed up against pretty much every other "common knowledge" of tech or geek or nerd or 10x culture, it no longer is consistent. Either everything else is wrong, or the proposed theory is wrong. Its unlikely everything is wrong (or is it?). Therefore the proposed theory is wrong.
This actually provides a nice concrete way to test whether non-Asian monorities/women/etc are really harmed by outside factors: compare the percentage of autodidacts among non-Asian minorities to Asians/whites. If social factors push non-Asian minorities out, then the percentage of autodidacts should be higher (since social factors are reduced by a lack of social interaction).
We are welcoming if our culture suits you, like any other culture since the dawn of time. Why should we change the way we dress, the way we want to work, that we socialise, if we, that identify with the culture are perfectly happy with it.
They are feeling unwelcome because they are unwilling to adapt, but it's taboo to say so.
What you are advocating is purely and simply destroying a culture because some people do not like it.
That's because the article writers have rarely worked with a 10x programmer. They get shit done, fast, with massively below average bugs. It comes from a deep understanding of the code, the language, and the metal. They're also more likely to innovate and/or find novel solutions.
In the past they were spread around or sometimes in research (Bell), now they're clustered in the big 4 (Google, Apple, Microsoft, FB) and SF.
So unless you are where they are, you won't find them or even know they exist. That guy who can wrote a cool Jquery plugin at your startup probably isn't a 10x programmer. John Carmack would be an example of a 10x.
In the past they were spread around or sometimes in research (Bell), now they're clustered in the big 4 (Google, Apple, Microsoft, FB) and SF.
The issue is that people are mostly context. Some programmers do well at Google and wouldn't do well in another corporate environment, and vice versa. "10x" is real-- hell, sometimes it's 100x or 1000x-- but it ignores the fact that it's not always the same people who are 10x. Drop an R&D innovator into a subordinate role where he's just expected to "get shit done, fast" and churn tickets, and you'll likely have a bored 0.3x or toxic -5x programmer.
10x is shorthand for "as important to the business as an executive", and good engineers often are more critical than many highly paid executives. The problem is that the terminology is a bit negative on "average" programmers and the idea that "10x" is a permanent identity is a bit silly.
This is very true. Another thing is lack of a clear purpose. To wake up every morning and to fix bugs day after day, without any higher or a coherent goal to chase demotivates people badly.
The only other thing I which causes burn out I know of is lack of meaningful rewards. To know that there so much politics around and you are being treated unfairly. And you are failing repeatedly for reasons beyond your control.
I don't know of one single person worth I know of who can't handle a lot of work or can't take long working hours. But at least give us a cause worth fighting for.
"Super star athletes do not exist, because athletic ability is not a scalar. Ask a little league player to hit a tee-ball 15 feet and an MLB player. The ball will get to 15 feet at roughly the same time. Actually since it's too easy, your super-hero might get bored and become even slower then the little league player. Now ask them to hit a home run at Wrigley Field. The little league player would give up, regardless the amount of time you give him."
I have a feeling that, if more people used analogies like this, the world would be a better place, because people would actually understand things they read.
I don't make the claim that 10x programmers definitely exist. My only point is that a) argument by consequence is a fallacy and b) the article is internally contradictory (the more talent matters, the more incentive there is to identify and exploit it regardless of what it looks like).
https://en.wikipedia.org/wiki/Proof_by_contradiction
Also useful reading: https://en.wikipedia.org/wiki/Principle_of_charity
Note the example of Ann Trason, who would surely count as a 10x runner. The normal distribution doesn't preclude this; it merely makes it improbable that any given person is, in fact, a 10x runner.
Of course, it's much easier to identify 10x runners, since there's a clear metric to rank by; how do you do that in programming? I believe I've worked with 10x programmers, but how do I know this isn't just another "I know it when I see it" fallacy on my part?
I have to disagree with this part. I always considered passion to be a huge part of talent. And you can be passionate about anything in life.
Anyone can learn any skills (from painting to solving differential equations). However, if you're passionate about using those skills, you learn faster, easier, and you're more inclined to spend your time honing them and developing a deeper understanding.
How good someone is at programming is a combination of their problem solving skills (natural talent), their existing knowledge, and their ability to seek out and learn answers to problems they don't already know the answer to.
The talent part of the equation is a big factor, and ultimately determines where the individual tops out their skill set and "plateaus".
For an example of this, look at chess players and the ELO rating system. Chess is purely mental and has many similar parallels to programming.
I've met hundreds of chess players who have been playing chess for years, logging thousands of games. Many of them study the game on a regular basis and attend tournaments, and they all have ratings.
A beginner chess player starts with a provisional rating of 1200, which goes up or down depending on wins or losses logged over time. Grand masters are players that have earned a rating of at least 2600 or higher.
For every chess grand master out there (think of them as a 10x or even 100x producer), there are thousands of chess players that have been slogging away for years without their ratings improving past even 1500. They are simply blocked by their lack of natural talent, no matter how much they study or practice.
This is a fact that is objectively measurable and is backed up by millions of data points from officially rated chess games.
There's no reason why the same laws of nature related to raw mental talent (specifically problem solving and memorization) wouldn't also apply to programmers.
Second, the criticised idea that "everyone is either an amazing programmer or a worthless use of a seat" is probably true in capitalism. Either you have skill enough for an organisation to employ you profitably, or you don't.
That difference might be a hairline's breadth. But it acts as a significant tipping point. It doesn't necessarily indicate anything about the true distribution of programming skill. It's just a cut-off point.
"Annual income twenty pounds, annual expenditure nineteen pounds nineteen and six, result happiness. Annual income twenty pounds, annual expenditure twenty pounds nought and six, result misery."
This is based on what? You really think that most people can't be taught the basics of "Hello World", or a function that multiplies two numbers?
Plenty of people write Excel formulas when faced with the need to. That's "beginning to program".
But not that many people write Excel formulas. Up to 50% of people in the West don't have basic numeracy skills enough to do what you describe.
In my mind, the recognition of repeated structures in a spreadsheet count as beginning of programming. This sort of thing: "if I create this pattern of cell references and then repeat it across the grid arbitrarily far, such and such a result/behavior will emerge". It is like recursion unfolded, and on the verge of being codified compactly.
For context the UK used to have CSE and O Level Exams at 16 the CSE ones where for the vocational track kids who would leave school at 16.
As time went on, we started to receive the same input from other sources, who of course had different layouts for the their json. Of course the code broke horribly. Myself being well practiced in recursive descent parsing, rewrote his parsing code in a few days, the original had taken him many months. I was perceived to be a miracle worker, because my implementation fixed the problems, and worked mostly error free from then on.
Was my predecessor a mediocre developer? Not at all, he was actually quiet accomplished in his area of interest, he simply wasn't proficient with this one area (parsing).
I'd like to see these discussions of 'rock stars' and '10x' evolve to recognize that perceived talent is really just experience in certain areas, wether that experience comes from personal interest, or job function is immaterial.
Sometimes a developer implements the bare necessary required solution to the problem, i.e. not an over engineered expensive solution.
We'll then state that his solution was poorly engineered and he wasn't a good developer, but it's not fair to look at his solution in hindsight and judge it by the amount of scope creep it could handle(which it obviously had to handle in hindsight).
Your succesor might write here in some time that your solution, while being appropriate for json, didn't use x technique and so couldn't handle XML input, and had you only known about x...
(This isn't critique of your comment, which I found insightful and positive, just one more factor to consider)
It /is/ actually a critique. It isn't negative, but it is a critique.
These scripts were very brittle, and slightly malformed data could cause them to fail entirely.
After about a year of maintaining these old scripts, one of the data sources got replaced with a shiny new database system, requiring a major rewrite to the scripts. So I just started over from scratch. Having seen the problems running and maintaining the old ones, I made numerous better design decisions, resulting in far more robust scripts, which are (I think) much more easily maintained.
But indeed, my predecessor was no fool. His scripts likely grew and grew and grew until they were a pile of hard to maintain code. I doubt that he himself would have advocated their design, but he just didn't find time / value toward rewriting them. I only rewrote them because I was forced to.
And I'm sure that my future successor could improve upon what I've done. For that matter, I myself could improve upon what I've done, but hey, it works well enough, and I'd be better off spending time on other things...
Be careful with that one. It think it's precisely that type of programmer who has given rise to the 10x myth.
The guy who heard that "software development is a good salary," parroted his way through university and does the job without showing any interest in it is all to common. I've found that if anything is going to make a person barely competent at development (beyond trivial Excel and Hello World stuff) it's interest. If someone becomes a 10x hire it's because they put time into pet projects, reading papers and reading blog posts.
You can never be a good developer if you don't care about development. If you don't take pride in your work it's possible to fly under the radar and get away with doing as little [good] work as possible.
This applies to any industry, you can be a master craftsman if you commit no energy into becoming a master craftsman. If the 10x hire doesn't exist than the 1/10x hire most certainly does.
Other parts of the organization had more mediocre programmers, but they tended to adopt standard, 3rd party supported solutions because of that. At this point, they are in better shape then where the 10x programmer has been working.
The moral of the story is that being a great programmer isn't enough (or even that important) a large amount of the time. The secondary moral is that context is important. The 10x programmer in this story probably should have been in a faster moving sector than central IT for a large institution.
The implicit error here is that the perception of this guy being great was flawed from the start. Anyone implementing one offs instead of adopting standard solutions is incompetent, pure and simple. He was't 10x, he was -100x.
Probably not. They would emerge with a new web browser, not a working web frontend. That's my guess.
The curve is for people who HAVE programmed. It is irrelevant what the barrier is - the curve is only describing people who have crossed that barrier and written some code.
You wouldn't include dogs in a bell curve of human height - the thing being measured first has to be a member of the group that is being described.
Of course there is a /distribution/ and of course it is not shaped like a vertical line -- but it is very unlikely to be a normal distribution.
In general one would assume that a distribution of this type would be normal absent evidence to the contrary right? What is that evidence to the contrary?
For almost any boundary you choose, a majority of people will sneak in just over that boundary, leaving a long one-sided tail.
This skewed distribution would appear even if you cut a Normal distribution.
A Normal distribution occurs when everyone is expected to be at the same average level but could move up and down equally due to many random factors. When learning skills, people generally start at a 0 level and generally move up. That won't be Normal.
If you take a cohort of programmers with exactly the same experiences, that could plausibly follow a Normal distribution of skill. If you take e.g. all professional programmers, that won't.
Aha, yes that's an excellent point.
Where did you pull this assertion from? There are a wide range of skills and behaviors that go into programming, and I see those attributes in people from all walks of life. Programmers are just the ones who've sat in front of a computer long enough to apply them in the same context.
Talking about myth that needs to die. The tech industry is not rife with the aforementioned issues, they might exists, but not any more than other industries.
To use contrived numbers but a common example, if 90% of applications are male and 10% of applicants are female, hiring the women 5% of the time is probably a sign of some latent issue that can be addressed. It is not at all evidence of the same kind of rampant, malicious sexism that would be the case if the applicants were split 50/50 yet still hires were 95% male.
What other industry have you heard of that came up with such a sexist movement like that?
There definitely was a problem, though I think it's getting better. The big problem was that nerd culture, which was predominantly male until recently, was very closely tied to programming for several decades, making the industry fundamentally hostile to people not from that white/asian nerd male culture. Brogrammers were a bit of a backlash against that, but in a still male-orientated way.
EDIT: s/those/then/.
Because you've read testimonials of people who say they've been discriminated against and you haven't casually dismissed them all?
As a white, middle-class male developer who hasn't ever been discriminated against in my entire life I find it hard to empathise with people facing discrimination, but that doesn't mean anything as all the evidence makes it abundantly clear that they do. I hadn't seen it first hand until I heard a manager at a relatively big company talking about how he wouldn't hire women because they'd be a distraction to the rest of his team. If you can ignore the weight of all that then you're quite a big part of the problem. At some point you have to stop dismissing people and start trying to understand what's going on, and try to help make the industry better.
The thing is, I only interviewed 2 females during the whole 5 years. I interviewed 0 blacks or latinos the whole time too (Indians, Asians, other white males - plenty). I just have a hard time buying that it's an "attitude" problem among programmers, and that the core of the problem isn't a broader societal one, where for whatever reason, minorities and women just aren't pursuing programming, or they're being barred or discouraged by society. We should all do our part to help where we can, but continuously blaming other milquetoast white male programmers for this problem seems a) cheap and b) diverting attention from the real cause of the issue.
I think what's really going on is we don't have a way of addressing the problem ("broader societal change") or a very good way of defining it ("broader societal issue"), so people take the easy way out and just point fingers at a group.
I have known several people who were competent, professional, pleasant, open-minded, and kind in every interaction I ever witnessed--but who were eventually fired for well-documented abusive interactions with women or minorities. As one woman colleague said to me, "well of course he was always nice to you. You're a guy."
This comment is just to say: no one is omniscient. It's possible (I would argue likely) that there are negative interactions within the industry that you might not be aware of, because they don't happen around you.
There are a lot of stories available online from people who are women or minorities, documenting many implicit and overt problems they have faced in the tech industry. So, there is a way to learn about these things, but we have to be willing to believe that these people are honestly recounting what they have experienced, even if it is unfamiliar to us personally.
Sorry to be harsh, but your argument about secret evil behavior is ridiculous, as well as relies on a claim that I am naive. I don't know how old or social you are, but I've lived long enough, and being a lot more social than most, gotten to meaningfully know enough types of people to see good eggs from bad, and to tease out their political leanings and relations to "the other" pretty clearly. You obviously never know if someone is in fact a secretly 'abusive' person, but the # of people that are in fact secretly bad flying under the radar despite a full on appearance of sincere care for "the other," is extremely small.
(Your claim about secret evil behavior is probably 1-3 out of 100 at most.)
We need to have the tougher discussions about what political, socio-economic actions can be taken to bolster minorities in tech, not what "subjective changes" we can try to force onto milquetoast white males, which is actually a much "easier" discussion & more "appealing" narrative for a host of reasons, hence people gravitating towards the easy way out.
If you feel strongly that I am wrong, I encourage you to submit citations and data to back up your argument, that there is a huge contingent of oppressive white programmer males, and that such males are the root of the minorities in tech problem.
If you're interested in other perspectives, they are not hard to find. A Google search for something as simple as "experience of women in tech industry" will get you going.
I did say if you feel strongly about this, no doubt you have lots of sources to present which I am more than willing to look at. However, saying 'Just Google it' makes me think maybe you're being driven simply by intuition.
Women must demonstrate double the smarts of a male developer in order to be considered their peers. If a male developer is in a bad mood one day, that's annoying but understandable. If the same happens to a woman, "it's one of those days" -- which is infuriating. Women in most places I've worked are consistently thought of as naive, newbies and "not as good". The very few women who are unarguably good (and therefore assertive in their knowledge) are considered "bitchy".
Sorry, but tech jobs are pretty much boy's clubs, and women still have it pretty rough there.
PS: my anecdotal evidence includes my wife's experience. After three jobs in a row with bad experiences (which match what I see in my own job), it's hard to call this a coincidence. In one job she was the team leader of a small team, but whenever the CEO met with them, he looked at and spoke directly to the senior male developer of the team as if he was the lead, in some cases even "forgetting" to tell my wife he was calling a meeting at all.
Similarly you could argue the industry has a feminism problem, and I could point you out to various news articles of incidents.
I can only say this: I do not know anyone from my own work environment and friends in the tech industry who is male and has the same kind of problems as my wife. Conversely, I know plenty of women mistreated in similar ways. I only need to listen my coworkers ("so-and-so got the job by waving her ass at the boss"). I once had a transsexual coworker -- which is tremendously uncommon -- and all I ever heard about her were jokes about her sexual orientation. Not in her presence, of course. She later quit the job, and to this day I don't know if she was any good at it, because I never worked directly with her and I never heard anyone commenting on her technical skills... I guess they were not relevant to anyone.
Don't take this the wrong way, but I have to say it: the notion that our industry has a "feminism problem" is so ridiculous it leaves me speechless.
Point being I am male too, I don't think I or my coworkers suffers from any -ism, but I might be unaware of it.
I think us male gamers and techies are very insular, even when we think we're not. I'm not implying what we do is done out of malice; I think in many cases we have a cultural blind spot... but this is no reason to stop fighting against it.
In my opinion, the right reaction is to stop and think "well, maybe there is something we can do to make our environment less hostile to women and minorities. Maybe I don't see what's the big deal, but it's there anyway." And it'd be a huge win if we can think "this woman knows way more about $PROG_LANG than I do!" and not get defensive or think she's bitchy or bossy, especially when we would accept a similarly assertive personality from a male hacker.
The wrong reaction is to get all #GamerGate about it, think it's a feminist conspiracy, and get all outraged and defensive about it -- "well, I don't discriminate against women, so this cannot be true!" Unfortunately this reaction seems to be all too common.
The tangent of the theoretical bell curve applied to employers is interesting. Most job positions are mediocre, which explains why things work fine when an average dude gets an average job, despite weird demands for rock stars.
There were also interesting related dating analogies, if there actually were a 1M shortage of (insert your preference) then when everyone's personal ads demand only 10/10 supermodel rock stars need reply, they better get used to being very lonely or start rephrasing their personal ads. "Looking for rock star girlfriend named Taylor Swift, only she need apply" yeah good luck with that, better hope there's some good star trek reruns this friday night cause you aren't going out.
Another tangent was strange selection criteria have strange results where you end up with people having a very high opinion of themselves and being very good at selling themselves, but not being selected for actual real world talent. The author almost but not quite makes the point that short term flashiness in an interview has little correlation, perhaps none at all, with likelihood of successful long term execution. Or you end up with people suffering from feelings of inadequacy and impostor syndrome, what a lovely workplace (sarcasm)
A final interesting discussion tangent was there is no shortage or even theoretical shortage, whenever anyone in management says there's a shortage of a million workers, they always truncate that statement before "at our desired wage of $7.25/hr" or "who are willing to work for lunatics who can't lead starving dogs to raw meat in an open office next to the foozball table" or "willing to take an immense standard of living hit". There are, of course, plenty of fish out there, just not enough desperate or spineless ones. Gimmie an office with a door so I can concentrate, and $350K to handle the staggering cost of living hit, and a "rock star" boss (LOL), and I'm there. Oh wait you're offering less than I get here to work in an insane call center-like environment in one of the worlds most expensive neighborhoods at a rudderless company, LOL enjoy your "shortage", although everyone else is fine.
I wonder if it's common for imperative programmers to associate programming skill with an imperative mindset? The flawed (later withdrawn) study Jeff Atwood linked comes to mind. http://blog.codinghorror.com/separating-programming-sheep-fr...
In my experience, there are 10x programmers (just like there are 10x musicians and 10x doctors and 10x pretty much everything). Of course, a 10x functional developer isn't inherently a 10x OOP developer, just like a 10x trumpeter isn't inherently a 10x drummer.
I don't think we need to kill the 10x developer myth, but that _all_ we need are 10x developers.
I think a much more interesting discussion would be what a really good 1x developer would look like. I.e., what is a good baseline? How do we nurture more people to reach for competency? And in growing the overall talent pool, identify the 5x, 10x, or even 100x developers.
You don't see companies in other industries pretending that their product is a special snowflake and demanding rockstar 10x whatevers. No, they manage to be more mature about the whole process.
If your a rich person with legal trouble you want a rockstar lawyer like Cherie Blair as your Barrister. Just Like the NI journalists who got off from bribing cops - they had the most expensive lawyers money can buy
IOw I have no problem with accepting that not all people are created equal, I just find the way that notion is handled in our industry to be childish
There is no one who can consistently provide a 10X increase to a company's bottom line, period. That might happen in rare cases when the previous setup was so catastrophically bad that any competent developer could have made a big impact with common sense changes. But no one can go from company to company and consistently have an order of magnitude impact on anything.
If the myth were true then a ”10X” developer would be able to go to Google, Twitter or Facebook and make their service 10 times faster or more profitable. Does that sound even remotely realistic to you? Sure, in a small shop one person can have a disproportionate impact. But there are no 10X developers, only 10X situations.
For each position I tend to filter 100 people just to have a couple of real candidates. The real candidates weren't spectacular but they could get the job done in a reasonable time frame.
Once in a while there were a person who can get the job done with less supervision, better quality and faster. Usually that person could build systems within the software. Something like :
That person is the one that gives some gas to the "myth". A good developer that is probably at the %90 percentile.
The problem with people in denial is that they have an strong bias when (s)he compares with their coworkers (who probably are just smart or smarter). Forgetting that for each coworker there were a lot of developers that applied and couldn't solve a fizzbuzz.
If the myth weren't truth I don't think there would be so many people failing the fizzbuzz test: http://blog.codinghorror.com/why-cant-programmers-program/
You could argue that those people are not developers but the truth is, they are often graduated from college and somehow manage to get hired in some place.
Some programmers, in some environments, produce less than they cost to supervise and for others to fix their mistakes.
Some programmers, in some environments, look productive because they do the 20% of the work that gets you 80% of the way there. They start a whole lot of projects which almost work, then it takes a really good programmer a lot of time to repair the relationship with the customer.
At this point in time, however, I see the productivity of the organization as the real issue. Even a 10x or 100x programmer is only going to be that way if they are in a zero-bullshit environment. It takes one bad co-worker or bad boss to turn somebody like that to an 0.1x programmer. A lot of it is choosing your environment.
Such a programmer would be a lot better at selling their labour than a 10x programmer.
Will I be more insecure and anxious because of that? Even if I will, it's none of Mr Kaplan-Moss' business. I don't need him to be protected from the real world where people have different level of skills; sometimes higher than mine, sometimes lower.
It does so with such patently absurd examples (people who's totally obvious programming talent is not recognized for some insane, usually just sexist, reason), that one assumes the author already knows he's making this shit up.
Added to the mix is the red herring about being a "mediocre programmer". Being a mediocre musician still requires talent, mediocrity doesn't mean shit when asking the question if something requires talent. I personally have a talent for drawing an painting, but I'm a shit artist because I have no artistic creativity and I haven't made the effort to hone my skills.
Although I seriously doubt it, there may be a good argument to be made that programming does not require talent. But this isn't is, this is just political garbage with no merit whatsoever.
People who try hard at something and put a lot of time in to doing and learning about that thing, will improve.
Some people are a lot more interested / motivated and so will try harder, spend more time and will be better than others. This should not be mistaken for some innate "talent".
"Oh no, I'm not that talented, I couldn't possibly do that!"
It's just a way of shooting people down prematurely, either by the people themselves because they believe they simply can't, since they believe it's some stupid innate thing, or because others tell them "you're not talented enough, stop trying.".
It's dangerous and it deprives us of a lot of actual talent, who simply believe they could never be.
Not to mention the fact that people move this to a ridiculous degree where they say "10x programmer", but this doesn't necessarily mean they'll be a 10x programmer in all of the field, merely where they've been so far. This needs to stop.
This to me is a bit of a contradiction. "Talent" to me is what says if you will take a long time to aquire a skill or not. Almost anyone can reach a good level of skill of something. Not all can be pro athletes without a certain genetic talent, and I believe the same would hold for, say, being a mathematician. But not everyone has to be a pro athelete, nor a top .1% programmer (or anything else).
> This belief that programming ability fits into a bi-modal distribution
Who believes that? Is it really a widespread belief? I could see why you would think it was a bell curve or a power law of some kind. But bimodal? why?
> Things like design, communication, writing, and debugging are needed.
Yes, those are the things I like to call programming.
I can't be a judge of how smart you are, but being hard-working is a choice you can make. Blocking HN is a good start.
- Kurt von Hammerstein-Equord
I went through the same problem with LinkedIn some years back. I'd start making connections with high school/university/'social circle' chums who were 'already' working at Microsoft and Deloitte and IBM and the New York Times and thinking I was worthless for 'still' being in school.
I've had the pleasure of touching base with some of these folks as they've come back into town over the years and it was so striking to hear some of their frustrations about their careers, and how they were feeling unaccomplished compared to some of their peers and forebears. Moral of the story: perceptions are not reality, and the perception that you are worthless will only hurt your productivity because you will feel that investing time into bettering yourself is not worth it. It's not a race.
It does seem like we've run low on companies willing to invest the time and money in their employees in a way that would create the "10x programmers" that they all want, as opposed to horse-trading the relative few that already exist.
So in my extremely narrow experience, I haven't seen a 'talented' programmer, and I doubt there really is such a thing
So the fact that a businessman, and two actors portraying that same businessman, are all white males means that programming culture has to apologize for the impression of its white-male-ness?
It's really annoying.
The author has a good open source track record and is the head of security at Heroku. I think he was also talking about other skills for success in the tech industry besides just programming.
Obviously there is a vast difference in skill levels between developers, and some people should probably not work in the field, but good attitudes towards work and continual learning go a long way to success.