He bashes the "myth of the 10x" engineer. Clearly the idea of the 10xer has too big a place in the mythology of our industry. It's oddly masochistic and as far as I know it's unique to us. There are no doctors blogging about "10x doctors" for example. Anybody who has watched N0tch code on Twitch knows that there are certainly people who are far more productive coders than the average engineer. I have no idea if he's…
"Clearly the idea of the 10xer has too big a place in the mythology of our industry. It's oddly masochistic and as far as I know it's unique to us. There are no doctors blogging about "10x doctors" for example." It takes 6-8 years of intense training to become a doctor. This is after already doing well in college and passing a tough skills/general intelligence test. The bottom 70%+ who want to become doctors are simp…
Programming is terrible – Lessons learned from a life wasted (2013) [video]
121–130 of 168 posts
Re: Programming is terrible – Lessons learned from a life wasted (2013) [video]
#122Earlier quoted context omitted.
"Clearly the idea of the 10xer has too big a place in the mythology of our industry. It's oddly masochistic and as far as I know it's unique to us. There are no doctors blogging about "10x doctors" for example." It takes 6-8 years of intense training to become a doctor. This is after already doing well in college and passing a tough skills/general intelligence test. The bottom 70%+ who want to become doctors are simp…
Last time I checked you need much more engineers than doctors.
Re: Programming is terrible – Lessons learned from a life wasted (2013) [video]
#123Earlier quoted context omitted.
>know how to minimize complexity I don't think this gets nearly enough praise when assessing people. I've worked at a few different software companies with a raft of different programmers and among those who were deemed "superstars" there were certainly a few who I wouldn't want to work with (or inherit code from) given the choice due to the hideously complex nature of their output. Despite their ability to produce m…
I'm currently working for a company where "Move Fast" means "Write lots of code". As a result, there's a lot of sloppiness, duplication, and pieces that don't quite fit together right. I'm having difficulty explaining the importance of reductionism; In the words of Antoine de Saint Exupéry: "It seems that perfection is attained not when there is nothing more to add, but when there is nothing more to remove."
The speed you want is rotational, not translational :)
Re: Programming is terrible – Lessons learned from a life wasted (2013) [video]
#124Re: Programming is terrible – Lessons learned from a life wasted (2013) [video]
#125Who cares if you're 10x, we'll all be 10x dead at some point. In 50-100 years I doubt most of your 10x work will still be around. Might as well go enjoy some life before it ends.
Re: Programming is terrible – Lessons learned from a life wasted (2013) [video]
#126Earlier quoted context omitted.
That's like arguing that surgeons are performing a blue collar job when they're given a diagnosis and test results from another physician. In theory they're performing the same repetitive motion, just like programmers are in theory creating an implementation to solve a given problem. However, there are provably good and bad surgeons and provably good and bad programmers. The reality is that you're making a lot of dec…
I agree with you, except for one thing: Surgeons are briefed on the problem, the diagnosis, the patient's medical history, given all the information they need to know about the project. They are then locked in a small room with all the tools and assistants they need, and given complete and total authority and autonomy over the process and results. Because of that, surgeons are some of the most respected people in the…
That doesn't describe my job very well. (OK, I don't have an assistant, but I don't think I need one.)
Or are you deliberately making a contrast between "coders" and "software engineers"?
Re: Programming is terrible – Lessons learned from a life wasted (2013) [video]
#127Earlier quoted context omitted.
> I have no idea if he's coding 10x faster It's a bad myth that "speed" has anything to do with the 10x or 100x programmer. The thing that sets great programmers apart is their ability to instinctively and intuitively design elegant and correct solutions to a given problem while introducing minimal bugs. A great programmer whose code will stand the test of time without needing a total rewrite 6 months later and witho…
> ability to instinctively and intuitively design elegant and correct solutions to a given problem while introducing minimal bugs. That is very important. Code that is not written is just as important importat (maybe more important) than code that is written. What I mean is good programmers will find way to solve something using less code. That is very imporant for understandability, maintenance, and long term suppor…
It's not about less code, it's about simplicity of code. I have known people who have played code golf with production code, either out of bordom or a desire to generate job security. That's not actually solving the core problem of making it easier for someone to port to a new version of an OS in 5 years time, it only looks that way if you aren't paying attention. Short code can be just as confusing as long code.
Your code should, in all places where it is not necessary to do crazy speed optimisations, be understandable by the average intern. Yes, that means comments, and yes, sometimes it means doing something in one line that is more commonly done in 20 lines and yes, sometimes it means taking 20 lines to do something you could do in one line.
Re: Programming is terrible – Lessons learned from a life wasted (2013) [video]
#128Earlier quoted context omitted.
Its rather strange you would bring up Notch, as I wouldn't consider Notch-run Minecraft a marvel of engineering. I'd hate to be the guy who cleans up after him, and while Minecraft works (and it is a really great game), most people consider to be terribly built.[1] So yes, while Notch is a rather speedy engineer, I wouldn't consider the skills of an engineer based on how fast they code. Maintainability is an importan…
game devs like notch have made a conscious and canny decision to value actually making something over code quality. also, notch didn't build minecraft expecting it to be a runaway success. see, you are a programmer - you make code. notch is a game developer. he USES code to make THINGS. the things matter, not the code. the game developer ethic is "nothing matters but getting the game running." it's not that notch is…
These aren't mutually exclusive. When Carmack, Sweeney et al. built Quake/Unreal, they made something that was both fun and had incredible code quality. Derivatives of the Quake & Unreal engines run today and have been for the last 20 years. I'm doubtful that any code written by Notch for Minecraft will be running anywhere 20 years from now. Likewise, don't NASA engineers "actually make something" while adhering to strict code quality? Doesn't Google "actually make something" while adhering to strict code quality? The choice between "code quality" and "actually delivering" is a false dichotomy invented by people who needed an excuse.
Next, I never implied Notch was a shoddy programmer. Notch is a great programmer by his own merits and I don't think anyone can doubt that - however great programmers can produce shitty code. What I was responding to was OPs assertion that 10x programmers exist. Notch produced some pretty great stuff, and iterated quickly, but that speed didn't come free and surely theres a lot of technical debt that others now have to deal with.
Lastly, I'm not saying this is a bad thing. Sometimes its more important that you can ship first, and fix later. Sometimes being first to market is better than being the best. What I want to point out however this is a normal tradeoff and this doesn't make Notch a "10x engineer" (when I say 10x here I mean a mythical man who has achieved enlightenment that none of us can achieve even if we worked for 1000 years). He's a great developer, but we shouldn't pretend that there weren't tradeoffs to his approach and that his style is anyway mythical (like a unicorn).
Re: Programming is terrible – Lessons learned from a life wasted (2013) [video]
#129Earlier quoted context omitted.
> It's oddly masochistic and as far as I know it's unique to us. http://en.wikipedia.org/wiki/Stakhanovite_movement#History "The Stakhanovite movement was named after Aleksei Stakhanov, who had mined 102 tons of coal in less than 6 hours (14 times his quota).[1] However, his record would soon be "broken" by his followers.[1] On February 1, 1936, it was reported that Nikita Izotov had mined 607 tons of coal in a singl…
"Basically all this 10x is just a way to make people produce 10x while paying still for 1x. " Actually, I see it more frequently referenced as reason to pay people more than 1x based on productivity. There are some that deny 10x productivity exists, which is the controversy around it that I am most familiar with. If you are an order of magnitude more productive than your peers, but paid only marginally more, this bec…
Re: Programming is terrible – Lessons learned from a life wasted (2013) [video]
#130He's talking about the guy who did Viaweb, which became Yahoo Store. First server side application which allowed designing a web site via a browser, written in LISP. The way to deal with overoptimistic programmers is to put them on maintenance programming, fixing bugs in the code of others, for a few months or years.
(wasn't sure if you were trying to be funny by doing so, or if there is something else relevant I've missed in the many posts above and below this that I haven't read)