Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Looming demise of the 10x developer – an era of enthusiast programmers is ending (testdouble.com)
111 points by rrampage on July 14, 2023 | hide | past | favorite | 138 comments


I think folks’ general understanding of the 10x engineer is that “some people have it and some don’t”.

I think it’s more like “I’m working on a bunch of stuff I already know, I have all the designs and business logic clearly identified, and my colleagues and I are all on the same page about how to work together so I’m really productive” vs “this codebase I just adopted is completely unreadable, the designs change every 3 days and the other teams I’m interacting with are adversarial”.

People aren’t 10x engineers, situations are.


I disagree. I'm not saying saying that I'm a 10x engineer, but I've sometimes found myself working with folks who feel like they're a 0.1x engineer, so compared to them the 10x difference still applies.

It's not that they were worse engineers or less intelligent or anything like that, it's just that they would opt for the unnecessarily complex decision at every step of the way, and seemingly in other aspects of their life as well. The kind of folks where you find yourself saying "Why don't you just ..." constantly.

I imagine a 10x engineer as someone who can consistently identify the fastest, cleanest and least complex way to get from A to B, reliably, in different situations professionally and personally. That includes making quick decisions and tradeoffs. These people do exist, they get stuff done, and some folks don't want to acknowledge it because they don't want to be seen as the 1x in comparison.


> I imagine a 10x engineer as someone who can consistently identify the fastest, cleanest and least complex way to get from A to B, reliably

Yes but... in today's software culture, the fastest cleanest and least complex solution is very rarely appreciated or even tolerated.

If you can solve all the requirements with a couple $5/mo VMs, you'll still be run over by the buzzword-compliant solution that requires 30 instances in a kubernetes cluster.


I’ll always appreciate the simple solutions, and that comes from being a solo, overstretched developer for much of my early career. What I observed is when more people get involved the solutions always take on extra complexity. This could be due to the need to make work for everyone on the team. To delegate responsibility. One person who has to set up a VM and push code and talk to customers does not need to complicate their life. But when you have a manager and a new hire and an IT department and have meetings then all of a sudden you divide and conquer and there needs to be enough churn to justify everyone’s role in the project. The one person who speaks up and says something like “yo we don’t need this CI and buzzword tech stack and containerizations, microservices and cloud functions, I have a LAMP VM already coded up that meets the requirements” they will certainly be shut down by the rest of the team.


> Yes but... in today's software culture, the fastest cleanest and least complex solution is very rarely appreciated or even tolerated.

Funny how this sentiment is as old as "kids these days".

There are reasons why complex solutions are needed. These reasons are so much valid, that certain areas legally mandate the complexity. While majority of those reasons are safety related, one of the aspects behind safety is reliability and maintainability.

Usually (!), there is a balance. What is the least amount of training you have to supply the person doing maintenance that they could grasp all the assumptions, constraints and links with other components to successfully work on a component? The more complex the system, the less complex an individual component, in a way it interacts with the rest of the system.

For example electrical power supply units. Some fields require PSUs to have galvanic isolation, which makes them much more complex than $2 aliexpress part. However, galvanic isolation means that there are e.g. no weird, parasitic interactions over grounding - it just provides power like a battery would. Swapping a battery with a medical grade PSU would not introduce hidden interactions with the rest of the world.

Likewise, in a software system, a single component becomes (or at least can become. Complexity does not necessarily yield that, but complexity is required to provide this) more isolated, easier to work on alone without introducing breaking changes in different subsystems.

Do you need complexity? Not necessarily. Maybe the project is small and relatively short lived. Maybe you are thrown into a decade old project with requirements and teams having been changed several times in that timeframe. Component isolation backed by complexity would probably be highly appreciated.


> legally mandate the complexity

That's often the rewards of lobbying by entrenched interest taking advantage of a captured congress.


> If you can solve all the requirements with a couple $5/mo VMs, you'll still be run over by the buzzword-compliant solution that requires 30 instances in a kubernetes cluster.

Officially triggered. Cuz lord knows that's how all my meetings go.

Why use a simple VM setup and some Ansible to keep it up, when we can put 4 more layers of abstraction in there and pay AWS / Azure / GCP extra money?

Who is gonna get that money? Depends on which provider "wined-and-dined" (cough cough) recently.


I’ve worked with a dev (extreme example) that said why “don’t you just…” and delivered at 10x from A to B only to find the going from B to C is now a daunting task, because of how we got to B. It is a lot like the sysadmin that gets praised for saving the day every time his servers crashes. Sometimes the extra complexity in getting to B is the preparation to keep on going. It is a trade off, and the optimal answer may not always be predictable.


I know exactly the type you you mean. Looping back to OP, this can create a lot of viscosity in the project.

Your 10x engineer in one situation will grind to a halt if they work with a few of these 0.1x engineers, if they have to interface with each other.

The person that increases the compile times of the project to near infinity to save a runtime instruction with the C++ type system has an effect on the whole system.

10x IME is only possible if you have very fast feedback loops, that means fast unit tests, fast incremental compilation times. You can only be fast if you can iterate fast. And if you're working with enough people that slow down your feedback you'll get slower.

I've seen it happen plenty of times. The situation aspect still holds.

I think it's a combination of both. There are potential 10xers, but the environment needs to be right for them to flourish.


True, I can’t stand over-engineered solutions, I don’t think those people are ever going to get a high velocity. Maybe it’s safer to say the situation is a necessary but not sufficient.


> it's just that they would opt for the unnecessarily complex decision at every step of the way

But this does not invalidate the previous point about the environment. If the environment is loose and with low accountability, those unnecessarily complex decisions receive a big pass; if the environment has strict principles about simplicity and made that as an incentive, those practices faces much hard time to spread in that particular environment.

I think this is a case of “Show me the incentives and I will show you the outcome.”


There are 10x people in every field. It’s not “everyone is average and there are 3 Einsteins”.

It’s a bell curve and eventually you’ll meet someone on the farther ends of both sides.

Chances are there’s always someone much better or much worse than you.


> There are 10x people in every field.

I very, very strongly doubt that. That's just not how human performance works. There is a lot of variation for sure, but not by arbitrarily high amounts.

Instead, there is a maximum humanly achievable performance, and the performance of individuals varies between zero and that value.

As a trivial example, the world champion in weightlifting doesn't lift 10x as much as the average person – and they certainly don't lift 10x as much as other professional weightlifters. In most fields, the world's top performers are a few percentage points better than the average professional.

I consider any software engineer who performs just twice as well as the average engineer to be part of the elite. And I consider claims of "10x" performance to be complete and utter bullshit concocted by people who have no idea what they are talking about.


Well, Usain Bolt has infinitely more current world records in the 100M than anybody else. He probably also makes more than 10x more money in sponsorship deals than the second fastest or whoever is the fastest currently active sprinter.

I know plenty of software developers who can solve bugs or design systems that the average developer would never be able to do. Those people are infinitely better at those tasks than the average.

10x performance is easy as long as you do not constrain it to something inane. Impact and the ability to solve problems that others can not are functional and practical examples of that.


>Usain Bolt has infinitely more current world records in the 100M than anybody else

And he isn't even 10X faster!


Oddly enough the world champion deadlift is exactly 10x the amount I feel comfortable deadlifting right now (I haven’t been doing it for long) https://en.m.wikipedia.org/wiki/The_World_Deadlift_Champions...


Those guys weigh 150+ kg though, since deadlifting is a rather informal competition without weight classes. Unless you weigh the same, comparing yourself to them doesn't make sense.

I am not physically active at all, and the world record for weightlifters in my weight class is around 3 times what I am able to lift with zero training.


> Unless you weigh the same, comparing yourself to them doesn't make sense.

Of course it does. The “10x developer” claim is that some people have 150+ kg equivalent brains when it comes to programming. In the right environment they’re lifting 10x more code. Just like with weightlifting, it might not be healthy or useful to compare your productivity to theirs because it hurts and it doesn’t really matter anyway. But just like with weightlifting, the comparison can still be made.

Most of us work with other people in our “intellectual weight class” - so you might not meet many developers that much smarter than you. But they’re out there. The Jeff Deans of this world aren’t spending their time closing jira tickets for simple web apps.


> The “10x developer” claim is that some people have 150+ kg equivalent brains when it comes to programming.

Software development on a team is more than bashing code; a 10× developer is probably most often a 3× coder who helps makes seven 1× teammates into 2× coders.


I think both types exist. There are certainly 10x managers, who write no code but make their entire team multiple times more effective than they would be otherwise.


I've never understood 10x to be an exact quantitative attribute. Treating it like that is missing the point in my opinion. Extreme outliers can exist in any field.


But it's an analogy. For software engineers. About software engineers.

It's going to be abused and stretched and misread and taken overly literally until it breaks.

Even a 0.1x engineer can do that, though it may take a little longer.


I don’t think the point is to get hung up on the actual number “10x.” There’s not even a metric so how can there can be a number?

10x just refers to those top performers for sake of discussion. The point is not the semantics.


But it really only happens when you compare the top to the bottom and the comparison particularly useful.

When you get the top, differences are more perception and other factors over skill/knowledge/intelligence. See: The Olympics, do you often see an Olympic competitor 10x a competitor?


> See: The Olympics, do you often see an Olympic competitor 10x a competitor?

Yes, the Olympics mostly consists of 10X athletes. It’s pretty much a competition made for them.


Olympic athletes don't outperform average athletes by 10x. I'm sorry, but that's just complete bullshit.

The world record for 100 meters sprint is 9.58 seconds. High school athletes routinely break 11 seconds. There are one-legged people, 90-year-olds, and other highly handicapped individuals who have come within a factor of 2 of the world record set by elite professional athletes. 10x my ass.


A concept can still be generally true even if there are exceptions. It's useless anticommunication to pretend to be unaware of that. Almost no statement ever made can be said to be true without exceptions, and it would be impossible to communicate at all if you actually tried to enumarete every possible qualification to every statement. Pedantry is if anything a worse crime than hyperbole.


The 10x concept isn't "generally true", it's generally false, and reeks of ignorance and hero worship. "10x" is a quantitative claim. If you really meant 1.15x, why not say so? Is it because that sounds rather unimpressive by comparison, and therefore is not conducive to your elitist rhetoric?

The truth is that the gap between average and peak human performance is actually rather modest, and this is reflected by hard numbers wherever they are available. There is no need to invoke 10x ubermensch nonsense.


If by "competitor" we mean "everyone who competes in the sport" and not just "everyone who competes well enough to qualify for the Olympics" then yes, Olympic athletes frequently perform 10x better than some of their competitors.


Please name a single sport where the world record is 10x of what average hobby athletes perform at.

To show how ridiculous that idea is, that would make "average" 100 meters sprint times more than 1.5 minutes, and "average" long jump distances less than 1 meter.


Fencing. I’m a “hobby athlete” at fencing (Sabre) and I’d play with about a 10x point multiplier if I wanted to compete with an Olympic level athlete. We had a couple people like that at our club.


That's comparative performance vs. absolute performance. Yes, there are people who can beat others 10x more often than those others can beat them. That doesn't mean they perform 10x as well. In fact, it can be enough for them to be just slightly better in order to achieve such comparative results.

Where absolute performance is concerned (that is, performance measured against an external, objective standard), no elite athlete in any sport is anywhere close to 10x'ing their hobbyist peers. Even beating them by a factor of 2 is unthinkable in most sports.


No.

Some people (almost no one) can stand up a new app from scratch and some people (almost everyone) can't.

No idea why there is such pushback against this. It really is true.

Not everyone is a superstar.


I disagree... I think Nx scale is actually more of a personal characteristic. The easiest way to detect it, even for small Ns, is to notice the situations like when you are addressing all the questions you have for a sibling team to one person in that team. Instinctively from past interactions, you know they have a good mental model of their service and can give useful informed answers, or good pointers when they don't know. I've worked with teams where somehow the entire rest of the team is either useless, or will BS you with "I think it probably..." "It should...", so you have to read their code yourself anyway to verify. Ditto for e.g. scrums, there are people who, even though they are earnestly trying to e.g. fix something, have trouble explaining what they are doing and what problems they are facing, there's just some mental clarity that is 0.Nx (or Nx or 1x for normal, I guess), and that translates into the work being slow (or fast).

I think something similar applies for most development tasks... some people just do everything better, and it's often not even a trade-off - they produce cleaner code that is also faster and do it in less time...


And the wild thing is, we have more control to change the situations we pursue than the quality of talent at our disposal.


This all sounds a lot like ADHD:

> I stumble on a problem like this one and I stay up late every night until I find the solution. I wake up early each morning with new ideas of things to try. I don’t take enough breaks, but when I do, they’re tactically-designed to exploit my brain’s asynchronous processor to generate solutions for whatever I’m currently stuck on. I irresponsibly defer responsibilities from other areas of my life. Eventually, I realize I’m only at the 20% mark and that a pattern is repeating where a month or more of my life is about to disappear from the calendar. Towards the end, I find myself rushing to find the maze’s exit because my desire to unlock the puzzle’s final secret starts to be overtaken by the shame of all the other balls I’m dropping. It’s excruciating as I approach that inflection point—as intense as an overbearing manager’s “do or die” deadlines ever were, except in this case the pressure I feel is entirely self-imposed.

> I ruminate endlessly under stress, so I wrest back some control by manufacturing stress responses over things I’m building to trick my brain into ruminating on work that’s useful to me.

> I’m a terrible listener and struggle with auditory processing,

> Parsing others’ sentences often feels like I’m filling in the blanks to make sense of them,

> I’m a really bad learner—disinterested, distractible, and disagreeable. I’ve never enjoyed learning and generally avoid it, especially learning for its own sake. At the slightest discomfort when struggling to understand something, I’ll grasp for any distraction that might offer me a momentary escape.

I don't see any mention of ADHD in the post, so I think I should say: if the author happens to read this, please consider speaking to your doctor and seeking an assessment.

Treatment can be massively beneficial to your quality of life.


Yeah I'm not going to diagnose some illness from a quote, but by their own admission they are low on sleep. A lot of the symptoms they describe also happen to sleep deprived people. Fixing the sleep schedule alone would yield countless benefits, and ultimately I think the best way to fix your sleep schedule if you work a desk job is to work out exhaustively. Your tired body will overpower your restless brain and put you to sleep.


That’s a chicken-egg problem in ADHD, because ADHD is cause of sleeping problem and managing sleep pattern is one of the challenges.

On the other hand proper night rest decreases severity of the symptoms.

So yes, I agree that getting proper sleep is beneficial, consider that one might not be able to get it without managing ADHD first.

https://www.sleepfoundation.org/mental-health/adhd-and-sleep


Personal anecdote: Quit caffeine. Worked wonders for me. Seems that I have some big sensitivity to it, so when I quit my sleep was better than it has ever been. Not going to work for everyone, and yes the headaches are pretty bad, but it's worth a shot.


ADHD internet diagnoses have been up 8000% in the last 10 years.


Literally saying seek a professional opinion, not diagnosing themselves.


Sadly psychiatric conditions like ADHD remain quite stigmatised. I assume keyle wouldn't speak so derisively of someone suggesting to speak to a medical professional about a list of physical symptoms.


Well since you call my name, I'm just saying: any time someone complains about focus or learning on the internet, here comes the old "probably ADHD" guy/gal.

The internet is making everyone productivity addicts, can't just live anymore and be different.

If the author does not bring ADHD in the conversation, I think it's rude to find him a condition on the back of his post, which is far more interesting than isolating a paragraph and pulling a diagnosis on him.

It's a great blog post.


It has nothing to do with the blog post quality or being different the guy has multiple key sentences which map to key ADHD experiences/symptoms. For those of us living with ADHD its just an empathy response as many of us have suffered from experiences which closely map to what he described in that paragraph. We are often just looking to share as many of us have improved our lives substantially after someone suggesting we should get ourselves checked out.

On this part in particular while it can be great to deeply follow your passion with extreme focus; pursuing things regardless of their importance in your overall life and at the cost of other interests, relationships, or responsibilities can be an empty and unfulfilling existence in the end. Furthermore life can be markedly better with the correct interventions and treatment.

People seemingly get offended by even a suggestion because many people have extreme stigma against conditions like ADHD as well as a lot of misinformation from people have very little understanding of the actual traits, diagnostic criteria, treatment and prevalence of it.


(happily) psychiatric conditions like ADHD remain quite (profitable). I assume (anyone getting paid because of this) wouldn't speak so derisively of someone suggesting to speak to a medical (professional) about a list of physical symptoms.


This. His story is very similar to mine. I was super lucky that my (persistent ASD) special interest got fixed to computers from a young age, and ADHD has been both my superpower and my nemesis. But I wasn't aware of all of this, just got my diagnosis this year and started treatment. Everything changed, both in terms of work output quality and consistency, and all other things like social stuff. If you have any suspicion that you might have ADHD, *go test it*.


for adults i can only recommend watching "Should You Be Assessed For ADHD? Psychiatrist, Dr Stephen Humphries - Harley Therapy". [0]

adult adhd symptoms are vastly different than childhood adhd and many people suspecting they might have adhd, might actually have it.

[0]: https://www.youtube.com/watch?v=lSjHYiTEA4M


How????? Childhood testing is easy. Bow how does a 40yo dude get it?


You just go see a psychiatrist or a psychiatric nurse practitioner and ask them to perform an evaluation. Many GPs can also perform/refer you as well. ADHD understanding and awareness was very low before the 2000s/2010s many people in their late 20s/30s/40s went undiagnosed.

I had even stereotypical symptoms as a child but just wasn't tested.


Bro you're 40. Google for list of therapists and psychs in your area, call them.

Mention you've been struggling with these symptoms for years and there has been a lot of discussion online about, you're not sure if you have a real case or something else, but you'd like to do some evaluations.

They'll usually tell you if they'll do that, or not, and could often refer you to someone who would.


> Bro you're 40

Speaking as an almost-40 whose ADHD was untreated until recently: Contrary to your suggestion, being almost 40 did not make the process of navigating the medical labyrinth (Canada) to get assessed/treated any easier. Almost like I had an attention disorder or something.


rofl. hard to find a mental health professional who takes our insurance (US) and has any idea how to help.

if it was easy, id have sought help decades ago. love how people think "oh man its such an easy solution" when it is, in fact, a lot of work. My fiance had periods that lasted months, and not a single doctor would even consider looking at root causes "have you considered that maybe its all in your head?" getting the right treatment is in no way easy, especially when its a mental disorder that you can "cope with".


I'm 30 now, and I got my diagnosis and started treatment at the beginning of this year. I live in a second-hand country, and our culture has been shaped into what it is now by communism and decades of corruption. This has a huge impact on everything, medical system included. Getting diagnosed with ADHD as an adult is pretty rare and only happens in a few places, where the doctors have been keeping themselves up to date and are actually professionals.

The first time I went to the psychiatrist to ask to be tested for this was three years ago. They told me I can't have it, because if I did I wouldn't be able to maintain a job, and being able to do good at work, especially as a dev, should be impossible. They said I'm depressive and put me on SSRIs that fucked me up for 6 months.

I was depressive, been like this ever since I was able to reason for myself and figured out that neither me nor others know what the f* this whole thing I'm waking up is, but my depression is my always-there companion, that keeps me humble and thoughtful of life. What the SSRIs did to me was very different, and much, much worse.

Adult testing is a thing, and I'm not mad at all for not getting a diagnosis earlier, I'm just grateful that it happened at all.


I have the exact symptoms, but in addition I also get easily distracted when I'm working (if it's not super interesting). Which is an actual problem at times. I've not been diagnosed, and I don't feel I need it. I'm doing fine regardless.

Likewise, it seems that the author isn't suffering from his condition, so I don't think medication is necessary.


Consider this:

Most with ADHD are born with it. They don’t know any other world, like many colorblind don’t know they can’t see some colors. They feel just as normal as everybody, because what would they, there is no way to compare, so why diagnose and treat it anyway?

ADHD isn’t only a “now” problem. By small cuts it pushes into aggressive behaviors, megalomanias, depressions and even suicides (2x more incidence). Having ADHD means higher chance to abuse drugs, cheat on partners or die in a car crash due to reckless driving.

Managing ADHD isn’t only the drugs (and the trend is to avoid them unless necessary) but first and foremost a great deal of self acceptance. Small changes in behaviors can help alleviate ADHD symptoms and increase quality of life by removing those small cuts.

One of the symptoms or ADHD is ODD (not expanding acronym on purpose), and I believe ODD is exactly what prevents many ADHD folk from getting help they really could use.


If the guy has a disorder it is certainly not a Deficit of Attention. He's just not interested in what does not interest him. Maybe his lifestyle is not healthy, but not for the lack of attention, maybe in fact too much of it. But who's to know better?


No, “treatment” is going to consist of stimulant medication, which long-term, will decrease quality of life.


This is also just straight up FUD. ADHD is one of the few psychiatric conditions that has numerous effective medications which work reliably for a large part of the effected population.

Stimulants work for a large number of people diagnosed with ADHD with very little negative effects and are safe modulo a few exceptions for long term use.

Some individuals have negative experiences with Stimulant medications but I know from personal experience and from many friends in the ADHD community stimulants have literally been life saving for them.

They don't just reach for them because they are out to get you but they are effective for many people.

Furthermore many people who choose to forgo medication develop lifestyle and substance use issues which negative effects far out weigh low dose stimulants.

As other commenters said they are just a tool you still have to work on interventions, behavior modification, and so on.

At the end of the day in many ways ADHD is a disability (even if sometimes a super power) and you can't just delete it with a prescription.

Even if you forgo meds there are so many ways to boost your attention and quality of life and lots of research on what is effective, treatment can be much more than just medication.


It's important to build skills with stimulants that you can still use while off them. Organizing, using calendars, stuff like that.

There was a point in my life where I was unable to function in society, and the stimulants did save me. I decided to slowly ween myself off of them since, and don't have any regrets about having taken them in the first place.

If I lost 5-10 years from my lifespan from taking stimulants, I still think it was worth it. Staying realistic about them was key for me.


This is not true. Stimulant medication can form part of the treatment, for some people. But it's not the only kind of medication, and not the only kind of therapy.

Anyway, I suggest that anyone concerned seeks the advice of a doctor, not random internet posters.


>Stimulant medication can form part of the treatment, for some people.

It's usually the first thing a doctor will go for. Not strattera, bupropion, modafinil, therapy ... but adderall.


That would be because Stratteta is a second-line treatment that's less effective and has more negative side effects than Adderall, and Bupropion and Modafinil have a very weak body of evidence supporting their use for ADHD. Bupropion and Modafinil are still stimulants, you might as well give a patient a smaller dose of Adderall for the same effect.

As for therapy, it's not really a great solution for ADHD. It can certainly help, but it's not going to give you the internal drive to do boring things that you were born without. In my experience, therapists also don't know how to treat ADHD, it's not really in their wheelhouse.


> Bupropion and Modafinil are still stimulants, you might as well give a patient a smaller dose of Adderall for the same effect.

Suggesting these substances have the "same effect" makes me think you haven't tried them to know the difference. Saying low dose adderall is effectively the same as them is absurd. They aren't controlled and prone to abuse, which what you are dancing around.


Having gone down that road I completely agree with you, but some who haven't come to that realization have a pretty negative reaction to the suggestion that stims have downsides and can't be used indefinitely.


Ending?

Just that generation is moving on. There have been ardent programmers with each new generation that learns computers, I remember well people who could produce massive amounts of code quickly back in the 1980s. It was a different software environment then, but the enthusiasm was the same.

It used to be that amateur programmers created a lot of new products and services that way, before corporations started stifling everything on the Internet. There wasn't always a way to monetize writing projects like that, but that was okay back then, when it wasn't just the size or ubiquity of something you made that caused it to be seen as a great thing.

This article is just another case of someone not being able to see beyond their own world, who believes they are singular and unique. The truth is that there is nothing new under the sun.


I’m not sure what I even read here. This discussion doesn’t even mention anything about the realities of being a developer now. It seems to assume the modern workplace gives plenty of space for actual programming when it’s anything but the sort. The author should feel lucky they apparently get to program 40 hours a week in the first place.


It was a lot of rambling. I think the argument is that the next generation is only in it for the money and that you can't count on them all being self driven.

My response is, being self driven is not enough to be a "10x" developer and the idea that all your hires would be self driven passionate programmers has never been true..


I totally agree with you. But on the other hand I think the industry as a whole should rethink our management practices such that we should enable those individuals to actually contribute so much.

Today the author might feel lucky they apparently get to program 40 hours a week; can we make it so that tomorrow everyone who wants to program 40 hours a week can actually do so?


It seems more likely they spend 40 hours a week writing.


Reads like an attention seeking rant, anecdotal and full of personal biases.

Useful as a data point of the state of mind of an technical person of some experience, a certain life journey etc. But what else to conclude?

Software clearly has changed quite a bit in the past decades, but arguably quite a bit less than hardware and probably not measurably enough to require a different mental wiring from developers.

What has changed massively is the economics of the tech industry. But that is a different story.


exactly, as if "passionate" people haven't existed before, nor will exist in the future. If however you're working "for free" outside the hours you're paid for. You're the not the sharpest tool in the shed. If you're good at something, never do anything free.

maybe he realizes people around him are creating an actual work/life balance and this is the end of the "10x engineer" whatever that is.


It's not that the enthusiasts are disappearing—they're just harder to find now that the financial incentives for choosing software are so strong. The culture will not be defined by them nearly as much as before, but if anything I suspect that will just make the 10x effect even more apparent by contrast. It's hard to beat the depth of skill you develop when you have a single subject that's defined your life from the age of 10, and there are still plenty of budding developers out there who meet that description.


> they're just harder to find now that the financial incentives for choosing software are so strong

Which has been the case since ye olde dotcom boom.


Like, I'm here for the money. I was good at hackery but don't love it


I think the author is wrong about the demise of the 10x programmer, they are just going to look different. But the author identified many of the attributes they’ll still have- tenacity, tirelessness, and thoroughness. Also an insatiable curiosity.

The best example of a 10x programmer I know went to art school. He’s a UX architect and can produce functional prototypes faster than you can describe what you want. He has all the attributes mentioned by the author, but I’m pretty sure he spent at least sometime being an enthusiast in things other than computers. Today though? He soaks up information about everything related to html, css, and JavaScript and turns it into beautiful interfaces.

The author is right that cultural influences in the late 70s, 80s and 90s resulted fairly specific archetype being in prevalent in the industry. To be too interested in computers had social consequences. Being a “nerd” was a real label and sub group that ended up being both excluded and exclusive. It was hard to be casually into computers like you can be casually in to sports, except perhaps video gaming.

There are plenty of people who have entered the profession now that’s been normalized that see everything as just a job, but there are also many that come in and get bit by the same bug that seized the kids who got into computers in the 80s and 90s- the magic of the machine, the beauty of code, the thrill of getting something to work.

I’ve had the privilege of working with and even mentoring people like this- people who discovered programming relatively late from non-traditional backgrounds but none the less have become extremely competent coders. They look different, they approach some problems different, but they are just as tenacious, tireless, through, and curious as I am. And just as productive, too.


I don't know. I was born in 1980 and first got into programming as a young kid on an 8-bit Apple ][, and basically kept tinkering and coding through successive generations of computers as they became available. No stackoverflow or online tutorials - just books, magazines, and trial-and-error until the light bulb finally went off and you suddenly grokked pointers :)

I started interacting with other like-minded nerds via local BBSes, and first experienced the internet through a dial-up UNIX shell account from a local ISP.

Computers today are great - but you can do quite a bit of programming without understanding how anything really works. Will programmers who grew up with 64-bit machines, GUIs, always-on internet connections and very high-level programming languages be as good as the 80s kids?

Who knows? Do they even need to be? Most technology companies don't seem to think so based on their hiring practices.


> Computers today are great - but you can do quite a bit of programming without understanding how anything really works.

Did the "computer kids" of the 80s understand the quantum field effects that make transistors work, and how they are physically arranged to emulate logic gates, complete with all the subtle tricks needed to manage signal noise?

If not, that comment is just ignorance dressed up in elitism. All of computing is based on abstraction, and understanding how it "really works" has been beyond the capability of any single individual for many decades.


> I stumble on a problem like this one and I stay up late every night until I find the solution. I wake up early each morning with new ideas of things to try. I don’t take enough breaks, but when I do, they’re tactically-designed to exploit my brain’s asynchronous processor to generate solutions for whatever I’m currently stuck on. I irresponsibly defer responsibilities from other areas of my life. (…)

That’s not enthusiasm. That’s workaholism.


Every generation credits itself with some form of unattainable stoicism and yet progress marches on. I have no problem believing in 10x developers, but in my experience it’s always been down to hard won knowledge of the right architectures, libraries, data structures and algorithms. This helps to reduce suboptimal design and rework, allowing one to make constant, confident progress. It’s no wonder that older, more experienced devs often have this knowledge, but it’s not impossible, nor even very rare, for current and future generations to acquire it (even during their much-maligned Computer Science degrees).


The supply of passionate, engaged, "craftsman" developers is not zero-sum. People can be inspired to take their relationship with their work to a higher level of emotional engagement.

No, this does not require people to develop on side-projects, outside of work (something that is nigh impossible to request from people with other demands on their time, such as academic degrees or newborn children). Neither is such emotional engagement necessarily evidence of a "10x" engineer.

The simple fact of the matter is that Product does not work with code, does not understand code, and will not appreciate the complexities of working with code unless •Engineering stands up for its own interests. You can* inspire Juniors to understand more about their interests, care more about their craft, and lead them on a path to being happier with their career choice more generally. That only happens if you decide to engage with them, mentor them, and give them time to self-develop.


I teach CS at a state university. Anecdotally, I still see the hardcore enthusiasts, maybe 5-10% of the class.

Seems down from when I was in college, but my memory of the 90s is getting hazy. :)


And wrote a sweet guide to network programming?


I make an honest effort. :)


It's how I first learned network programming. Thanks for writing it!


Another way to look at this is that programming as a job has been made manageable. That's in the sense of being controllable by management. "Agile" is all about that. Manufacturing went through this between about 1910 to 1980, replacing craftsmanship with mediocre workers under direct supervision.

I sometimes deride "webcrap" on here. The point I'm making is that much of web-related programming today is bolting together off the shelf parts with a bit of custom glue. Programming has become wider but more shallow as a result. It's necessary to know about, or be able to look up, a huge array of parts. It's usually not necessary to understand how they work inside. Between Stack Overflow and Google, you can usually look it up.

Who has a well-thumbed copy of Knuth immediately at hand any more? I once did, but those books are in the garage now.


I had a similar experience as the OP (but I never was anything close to the 10x developer) but in my case, I recovered my passion for programming, but in different ways.

Back in the day in 2005-2014 I got inspired by several folks around the world and looking back there are some characteristics of all those folks (i) they had a great sense of craftsmanship, (ii) they had a certain level of autonomy to build and they were "listened" in some of the engineering decisions, and (iii) most of those folks are shielded against meta-work (e.g. corporate bloat meetings, bureaucracy, low-value processes/corporate rituals, etc) because they were doing something special that talks with the customers/clients to understand them to build something meaningful.

In my experience, unfortunately, the (ii) and (iii) are the norm and the end product is the vanishing of the (i).

The software development profession changed with more tools accessible to more people, lots of people have access to the SOTA in code generation/assistance, and we had things unthinkable for our predecessors like version control systems, CI/CD, infrastructure as a code, containers and so on, but most of the corporate developers like me are constrained by the environment where not only we have that corporate iron ball on the foot, but we're every day more distant from the clients/customers.

I used to be frustrated due to that, and I ended up fired twice because I naively fought against it, but at the end of the day I channel my craft into my hobby/pet projects or when I do something for my family (for instance, I was using a small script to automatic schedule Hemodialysis for a cousin that has a kidney problem).


This is an article flopping its way around the central point - why is there a 10x demise?

He doesn't answer the question. Instead, we have some nonsense about his past impulsive habits, quibbles about lack of diversity, gender imbalance, "Inter-generational conflict is brewing", 'privileged white man', and other drivel. What a waste of time as an article.


He doesn't even provide any evidence beyond anecdote that there is a 10x demise.


I think the work flow that we have adapted is not something that encourages the long term general solutions. We all have feature to deliver every two weeks. We are being monitored every day in terms of tickets being moved and commits being done. (Thank you jellyfish)

It seems like the actual value is measured wrong in corporate environment and it does not enable focused long term plans and solutions.

I have a friend who negated 8 full Java classes with 50 lines of SQL. But, he did it without telling the management cause if did, then he would have to answer to them everyday. And he was learning his way and experimenting and changing all over the place. I don't thinking deeply about problems for creating better solutions is appreciated or even recognized. And it takes time to learn solving problems that way.

Not attributing this to the corporate environment completely, but if you only care about features and its delivery ASAP, well... you will get them ASAP inspite of what horrors lurks under the hood.


> I have a friend who negated 8 full Java classes with 50 lines of SQL

I wouldn't brag about that. It's trading one headache for another.


I think this is the right design for the scenario. It is for a dashboard and so many queries were fired for a read only operation.

But, generally, I agree, it all depends on context.


I think the general thesis of the article is misplaced. The "enthusiast" archetype is not limited to profession and historical context. There will always be "enthusiasts" (intrinsically motivated people) in every profession at any point in time and it is highly unlikely that will change. Sure, we can describe a reality where programmers at a historical point in time had different traits but I'm not convinced the argument adds any value or the traits described in the article accurately describe the generational dynamics. Software is messy just like reality. Attitudes and ideas will change but there will always be people who are more interested in any topic. I think a more realistic description is "things have changed but some people are still obsessive about software and problem solving and that will never change".


Sure, we don't have computers hooked to TVs and tape recorders anymore. But we have other entry points to programming, which are as addictive. More often than not, it's people who were exposed to programming at a young age, and found an endless source of comfort, joy, escape.

Some teenagers get that early exposure, and some find it's a nice place for them. I give some of my time as The Grey Beard to help the local community robotics club at the local fablab : Arduino, BBC micro:bit, laser cutter, electronic components. The magic happened. One boy started to tinker to motorize his skateboard using scavenged parts and duct tape. An other boy got his own BBC micro:bit and went mad with Scratch, spending sleepless nights over it. Now he want to code with actual code and not Scratch blocks.


I would think there are more young enthusiast programmers today than in say 2000. But supply will still be an issue, there are way more funded software ideas than talented people to work on them. Especially now anyone can start their own company for effectively a negative amount of money.


I think the 10x developer is about providing more value than just pure programming.

There are lots of ways a developer can push the needle

maybe producing 10x more code, maybe they develop new features 10x faster and if they are full stack with better UI/UX out of the box. Maybe they can build an entire MVP from scratch on their own. Maybe they can handle DevOps too Maybe they can contribute to product Maybe they implement security best practices and catch security issues of others etc

It could be one item or a combination, but there are definitely developers that just provide 10x+ more value than a typical developer.

Just having one on a team or at a startup especially early on can make a huge difference.


The false dichotomy between "works on weekends for free" and "finds conversation about tools at lunch unbearable" is weird. If you work in a door-making factory, a job presumably very few people are passionate about, you're still going to complain that the number 3 planer is making a rattling noise even though it was just serviced last week.


What most people talking about 10x vs 1x engineers forget is that the last 10-12 years of VC-pumped software engineering has created an insane amount of 10x engineers not because they're better, faster or more intelligent, but just because they're people that care about their job, even if it's boring, and they deliver quality at a constant pace.


As a 0.01X developer I feel entitled to just ask the questions, I shouldn't attempt to answer them, that would be silly.

Why is the software never finished? Why does stuff stop working after a while?

Sounds like a lame thing to ask and I know enough of the answers to make it rhetorical.... but this isn't the only sector building things. We build a ton of stuff! The last few decades others are rushing out products too and they are as cheap as they are crappy but it wasn't always like that. Most things are actually good for a good while.

If you boot up the museum quality computer from back in the days, insert the floppy... woah everything just works!?

programming is just variables, if statements, for loops and function calls. Nothing new happened. The web browser was the last good idea.

Hardware is insanely fast, but everything runs slow? What productivity did we gain if we have to endlessly rewrite everything? (think: Newspeak 11th edition)

Project tool chain, project programming language and project package manager should have been finished by now?

Imagine it to be a race against mr fusion[0] and the flying cars[1].

[0] - https://www.twitch.tv/ecatthenewfire

[1] - https://www.pal-v.com/en/explore-pal-v


Quite possibly one of the weirdest things I've ever read on Hacker News to be honest... hardly even touched on the topic.


I like how the author explicitly says that 10x programmers were a from a flimsy paper from the 1960's and in the original paper, a 10x programmer was only relative to "the worst programmers" - not to average programmers.

I think this generational change will be healthy.


10x is/was a gross concept - https://1x.engineer/ ftw.

*Edit - to clarify I meant what it represented, of course some people nX times more effective/efficient/higher output than others.


I think we just got it wrong.

In my experience, the “10x” developers are just doing their job.

Maybe we should focus on the dev/10 people, they just make people who are gitting stuff done look amazing.

The reality is a subset of engineers are just better, quicker and faster. They known things and can do things faster.

I have worked a verity of teams. However gross it is to you the person pulling in 30k of line of code in a complex system in 3 weeks is definitely something more than the average developer.

I know I know. Everybody is going now pile on with some crazy assumptions about code quality shit. Let me stop you. You were not there, the code was amazing and the code ran rock solid.

Also this was not a one off. Every project I worked with this person simply was the same way. 15 min sync, 3 days later amazing features, 90%+ unit test coverage, all while doing 9-5 and cooking dinner for her family after destroying that PR button.

So whatever you want to call them, they exist, and they are likely better than you in every metric you can measure.

Get over it do better.


This 52yearoldman agrees much with what you say.

The fact is, that for many young people, programming has been “realtor boom” for many years. I’ve been actively involved with my faith’s various youth group offerings over the years, and I have watched a lot of young people I have known grow up and head down various paths, only to pivot from all kinds of career aspirations to software development. They connect with me because I’m an old timer in the same industry as them now. But very few of them “get into it” the way I have for my career. It’s a well paying job that has relatively low entry cost (either degreed or boot camped) and allows them to support their youthful adventures or aspirations to start families.


There are some in the younger generation that get it.

I had an intern last cycle that just consumed this stuff. It was like I was talking to a younger me. She knew things about the company I worked at I did not know.

Anytime I was explaining anything about how to solve problems or how something should work, she would just listen and ask good questions. Next thing you knew she was using whatever we just talked about.


I'm curious how you bifurcate between the two general types in a mentoring/internship relations. As an enthusiast programmer, I connect well with the "diamond in the rough" young enthusiasts. But the here-for-the-job types have been really difficult for me in intern relationships. There's an ingredient that I take for granted in the enthusiast-enthusiast relationship. I'm not going to pick up the slack in a enthusiast-9to5 relationship. I think the relationship just needs to be structured differently, but I haven't figured that out yet (feel free to reach out via email).


To write 30k lines of code in 3 weeks, you're averaging 2k lines/day. At 8 hour days, that's 250 lines/hour. 6 lines/minute. 1 line of code every 10 seconds, for 8 hours straight, for 3 weeks straight. It's definitely possible to type that fast, but I can't imagine what programming that way would feel like.


You don't have to type that fast if you have a multiplying gearbox: IDE autocomplete, and copy-paste.


Anyone can be a 10x engineer, it's just that the majority prefer mediocrity. If you chose to be less than you can be that's on you not the people who improved themselves.


Your first statement is true. But the Ratatouille quote applies here; "Not everyone can become a great artist; but a great artist can come from anywhere"

The majority don't prefer mediocrity. That's all they really can do. We just don't know which of the majority actually has the mythical 10x ability that easily.


No, the majority are not prepared for the absolute obliteration of their ego they will suffer to become a 10x engineer. The problem isn't one of time, ability or whatever ineffable quality, but one of character. Ironically enough I think that a boot camp with the emotional abuse the marines used to get in the 50s while going through Knuth's papers would produce a lot of 10x programmers.


None of the 10x engineers I know (maybe some are 5x) try that hard. They didn't need to be abused. They were just naturally good at coding. I don't believe you can abuse someone into 10x abilities.


I meant more the term 10x engineer and what it's come to stand for over the years.

If we're just talking about the simple root premise some people are 10x more effective / efficient or simply deliver 10x the output at the same or better quality - sure yes I absolutely know those people and while I wouldn't consider myself one of them I certainly tend to get a lot more done than the average engineer I work with.

However - I don't agree with you that _anyone_ can be 10x "better" than the average person as I regularly encounter people that do not have innate logic and troubleshooting skills nor the curiosity required. I do agree that plenty of folks are content with mediocrity - most of them have ended up in "enterprise" companies.


So what if I choose to spend a decent amount of time and resources improving myself along other non software engineering facets?


Then you did not chose to be a 10x engineer. The same way you probably are only mediocre in your hobbies (unless you quit your job and focused on that only)

Don’t be sad. It’s okay that other people do something better than you. Be happy you play disc golf, but the 10x engineer makes more PRs than you. Which do you want more.

What I hear is you envy somebody else choices, and want to vilify them because you can’t compete with them because you made different life choices.

It’s like you are mad that Serena Williams did so much better than you did, but you only played tennis on the weekends with your friend.


10xer can play disk golf too. They might sleep 8 hours and shower too.


Yah for sure. But if you are not a 10x and want to be. Then you got to prioritize what you spend your time on.


True. Now this is where ymmv but time away from the screen and sleep, while slowing down productivity this week is better long term. Not because it is healthy (it is) but programming in a nonlinear endeavour. During downtime you can realize the thing you are even working on is not the best thing. Or reevaluate overall strategy.


Then you're not a 10x engineer and will be filling out your hours in SAP and getting your tickets from Jira.

Personally that sounds like a new circle of hell but I've had people ask me to bring back Jira for a project I was managing so there are truly all kinds.


All the 10x engineers I have come across in my life often had the most non engineering hobbies and after work activities going on. They are like that kid in school who never needs to study to get an A and for whom things just click immediately.


Everything you do in life should be focused on becoming better at computers. All hail computers.


I think we can be honest that neither extreme is correct here.

A lot of people choose to be mediocre developers, but likewise a lot of people try very hard to be good but simply don't have the cognitive capacity or organization to excel.


Also environment has lot to do, give that mystical 10x developer boring ops/feature-factory job and watch him become 0.1x developer.


Give him rich parents and watch him start a company.


This rings so true.

(Cognitive Ability) * (Engineering Ability) * (Problem Solving Ability) * (Attention to Correct Details) * (Eagerness to Labor and Work)

There are real 10x engineers. And there are also 0.1x engineers. And plenty in between.

And lots of things impact job performance. Burnout, life satisfaction, interesting problems, ...


Yes! Absolutely. It is not all or nothing, it very rarely is and the internet is quick to forget that.


A trend I've noticed is that people that use words like "gross" tend to use arguments driven by emotion rather than logic.

The "argument" in that link is a complete strawman. If they are a "10x engineer" but actually make people less productive because their code sucks they aren't actually a "10x engineer".


There's no need to be rude and make personal attacks on someone's use of language.


That description is not a 1x. Probably a 5x or more. (by the way 1x is the worst, 3x average and 10x best. The 10x is best vs. worst comparison)


HN is just full of blogs by the absolute weirdest people on the planet.


Sorry for being off topic, but I really find the fluorescent green border obnoxious. Even if I scroll down, it remains at the top and bottom, which I find distracting.


Is this satire? I find it difficult to believe this can be serious. If so, this is a sad example of the "i am very smart" culture that is rampant in tech these days.


These days? I can’t remember a time in tech that didn’t have that culture.


On the other hand we see the rise of a few select 1000x developers: those who master the math behind neural networks. Also GPT rises some non developers to developers.


Author rambles about 10x programmers, while basically identifying as one.

Not sure what the take away here is other than the author has a high opinion of himself.


Says more about the OP than the reality of the situation.


every company that's hiring is looking for that 10x developer only /s


I like the guy bragging about 41 hour work weeks. Ah kids these days.


Averaged over a whole year with no breaks, that's unhealthy.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: