
Programming is terrible – Lessons learned from a life wasted (2013) [video] - pmoriarty
https://www.youtube.com/watch?v=csyL9EC0S0c
======
encoderer
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 coding 10x faster than I could but it's probably close. And my
ego is... healthy sized. But it ignores the truth that few of us work as
"programmers." A software engineer has many responsibilities and doing the
other things well brings a force multiplier to your work.

I personally subscribe to the belief that we all have a superpower or two, and
figuring them out and pressing their advantage is a strong catalyst to
success. So figure out what you 10x at and be happy for it.

~~~
sheepmullet
"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 simply not able to get through
the system. If we got rid of the bottom 70% of developers we wouldn't be
having these 10x conversations either.

~~~
malkia
Last time I checked you need much more engineers than doctors.

~~~
eatpb
I think his point was that the doctors vs engineers analogy was flawed BECAUSE
we have more engineers than doctors.

------
Aldo_MX
The slides for those who prefer to skim through them before deciding if
watching a 1-hour conference or not:

[https://github.com/tef/emfcamp2012/raw/master/programming_is...](https://github.com/tef/emfcamp2012/raw/master/programming_is_terrible.pdf)

~~~
derekp7
Thanks -- the slides in the video are kind of hard to read.

------
pawelkomarnicki
I find the whole idea of using "writing speed" as the factor describing how
good is a programmer, plainly: stupid. Honestly, you can be a mindless person
making weird, overblown constructs all day, and then you can be a smart
developer that thinks before writing few characters and solving the same
problem. I would rather consider efficiency as the factor: process and output
efficiency.

Process efficiency is how organised is the process of the development — a.k.a.
getting things done. If somebody keeps shipping stuff, they are process
efficient. Even if it's the smallest thing ever, just keeping the flow going.

Then there's the output efficiency — how efficient is the thing that was
shipped. Is the code high quality? Is the algorithm performing well in the
problem's domain? Is the code running "fast"?

I personally think that the best developers optimise their work on these two
fields: they keep delivering great output code most of the time. Because what
is better: lots of bad code in short time, or good code taking more time?

------
AndrewDucker
If you liked this, then you'll like the associated blog:

[http://programmingisterrible.com/](http://programmingisterrible.com/)

------
binarytrees
Who 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.

~~~
forloop
1) This sounds like rationalisation. Clearly there's advantages to being 10x
at something valuable.

2) The premise of the 10xers not being around in 50-100 years could be
correct. It depends on the amount of money invested in anti-ageing technology.

Coming down on one side or another, in a binary fashion: I think your comment
is false.

~~~
shawn-furyan
2) Well, given the associated uncertainty, that's not strictly true. The
relationship between money spent on aging research and lifespan extension
could converge on a marginally higher average lifespan rather than growing
infinitely long with infinitely increasing expenditure. Until better than
marginal gains are realized, I would say it's premature to hold massive
lifespan lengthening out as a realistic possibility since we don't know what
road blocks lie ahead. Sure, it's possible in the 'anything is possible'
sense, but, IMO, not as a practical consideration.

~~~
forloop
Say a 10xer is 30, and the average lifespan is 80 years. If ageing could be
halved, then the remaining 50-year-left-pre-intervention results in 100 years
of life. But has there already be any substance which has doubled lifespan?
Yes[0]! In rats. Humans aren't rats; but it's a clue to what's possible in
mammals (verses C. elegans, or yeast).

> Until better than marginal gains are realized, I would say it's premature to
> hold massive lifespan lengthening out as a realistic possibility since we
> don't know what road blocks lie ahead. Sure, it's possible in the 'anything
> is possible' sense, but, IMO, not as a practical consideration.

People are working on the problem of radical live extension today. So even if
you consider it impractical, that's certainly not a view held by everyone.

Plus, a gradual improvement is all that's needed. As long as someone can live
long enough to reach longevity escape velocity[1], that's the problem solved!

[0] [http://www.kurzweilai.net/fullerene-c60-administration-
doubl...](http://www.kurzweilai.net/fullerene-c60-administration-doubles-rat-
lifespan-with-no-toxicity)

[1]
[http://en.wikipedia.org/wiki/Longevity_escape_velocity](http://en.wikipedia.org/wiki/Longevity_escape_velocity)

------
Animats
He'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.

~~~
nocman
Um, I'm assuming that you are purposefully avoiding mentioning Paul Graham's
name. You know, they guy who wrote the software that runs the site on which
you are posting your comment. :-D

(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)

------
ffn
This is one of the funniest tech-talks I've heard (the funniest is XOXO's
lottery collective talk). Thanks OP.

------
Havoc
Programming is great. It helped me streamline my thinking so to speak.

Once your passion becomes your job it becomes tainted though.

------
billions
10X developers have and exercise vision. Similar to how a CEO is arguably the
best business person in the company, a developer may have the same
differentiation in performance without the business domain counterpart's
visibility in the organization. A CEO knows not to enter a competitive market,
a great dev knows not to increase code complexity. A CEO knows to choose
opportunities worth pursuing, a great dev knows which resources to use and
avoid. A great dev makes decisions based on 100s of datapoints instead of 10s.
It's like chess-and there are certainly 10X chess players.

------
csours
Putting aside all the ad-hominem and everything-is-terrible, I think I learned
a lot from following the references Tef makes in this talk.

Some references (sorry for the formatting, if this becomes _a thing_ I'll do
the wiki and the logo):

Slides:

[https://github.com/tef/emfcamp2012/raw/master/programming_is...](https://github.com/tef/emfcamp2012/raw/master/programming_is_terrible.pdf)

Blub Paradox:

[http://www.paulgraham.com/avg.html](http://www.paulgraham.com/avg.html)

[http://c2.com/cgi/wiki?BlubParadox](http://c2.com/cgi/wiki?BlubParadox)

Perl and 9/11:

[http://www.paulgraham.com/hijack.html](http://www.paulgraham.com/hijack.html)

10x:

[http://hfs.sagepub.com/content/16/1/70.short](http://hfs.sagepub.com/content/16/1/70.short)

[http://www.construx.com/10x_Software_Development/Origins_of_...](http://www.construx.com/10x_Software_Development/Origins_of_10X_%E2%80%93_How_Valid_is_the_Underlying_Research_/)

[http://www.construx.com/10x_Software_Development/Productivit...](http://www.construx.com/10x_Software_Development/Productivity_Variations_Among_Software_Developers_and_Teams__The_Origin_of_10x/)

Waterfall (same pdf, linking from 2 sources):

[http://www.cs.umd.edu/class/spring2003/cmsc838p/Process/wate...](http://www.cs.umd.edu/class/spring2003/cmsc838p/Process/waterfall.pdf)

[http://leadinganswers.typepad.com/leading_answers/files/orig...](http://leadinganswers.typepad.com/leading_answers/files/original_waterfall_paper_winston_royce.pdf)

Conway's law:

[http://en.wikipedia.org/wiki/Conway%27s_law](http://en.wikipedia.org/wiki/Conway%27s_law)

Unrelated, Pournelle's Iron Law of Bureaucracy (I just like this law):

[http://www.jerrypournelle.com/reports/jerryp/iron.html](http://www.jerrypournelle.com/reports/jerryp/iron.html)

X-Y Problem:

[http://meta.stackexchange.com/questions/66377/what-is-the-
xy...](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)

Atwood, Don't Learn to Code:

[http://blog.codinghorror.com/please-dont-learn-to-
code/](http://blog.codinghorror.com/please-dont-learn-to-code/)

Wason selection task:

[http://en.wikipedia.org/wiki/Wason_selection_task](http://en.wikipedia.org/wiki/Wason_selection_task)

LMGTFY:

[https://www.google.com/search?q=pieget+constructive+learning](https://www.google.com/search?q=pieget+constructive+learning)
[https://www.google.com/search?q=curry+howard+isomorphism](https://www.google.com/search?q=curry+howard+isomorphism)

Amazon Links, no referral:

[http://www.amazon.com/Mindstorms-Children-Computers-
Powerful...](http://www.amazon.com/Mindstorms-Children-Computers-Powerful-
Ideas/dp/0465046746) [http://www.amazon.com/Peopleware-Productive-Projects-
Teams-3...](http://www.amazon.com/Peopleware-Productive-Projects-
Teams-3rd/dp/0321934113/ref=asap_bc?ie=UTF8)
[http://www.amazon.com/dp/B00B8USS14/ref=wl_mb_recs_2_title](http://www.amazon.com/dp/B00B8USS14/ref=wl_mb_recs_2_title)
[http://www.amazon.com/Design-Essays-Computer-Scientist-
ebook...](http://www.amazon.com/Design-Essays-Computer-Scientist-
ebook/dp/B003DKG5H6/ref=sr_1_2?s=digital-text&ie=UTF8&qid=1426476643&sr=1-2)

~~~
scrapcode
TL;DR: this, and this guy _really_ does not like Jeff Atwood.

~~~
kristianp
He doesn't like PG or Joel Spolsky either!

------
Jamie452
From the first 10 minutes this seems more like standup to me!

------
gtirloni
Previous threads: [http://bit.ly/18tRRMz](http://bit.ly/18tRRMz)

------
barbs
Whilst the video was uploaded in 2013, the title implies that it was presented
in 2012.

(Sorry for nitpicking)

------
lettergram
I started watching it, and had to remember after 15 minutes to come back and
up vote.

------
tluyben2
Watched this quite a while ago; good watch if you like this kind of humor.

------
okasaki
page 10 of the slides says:

> kill yourself now

That's totally inappropriate no matter how funny you think you are.

~~~
bcook
Coming from a link titled "Programming is terrible – Lessons learned from a
life wasted" I expected some humor that may not be Politically Correct.

Strangely, your response bothers me more than the quote. Could you not find
anything positive to say?

~~~
sp332
For an industry with a very high rate of depression, and disproportionately
populated by demographics where suicide is the #2 leading cause of death, it's
a very inappropriate joke.

Source: Men
[http://www.cdc.gov/men/lcod/2011/LCOD_menallages2011.pdf](http://www.cdc.gov/men/lcod/2011/LCOD_menallages2011.pdf)
and women
[http://www.cdc.gov/women/lcod/2011/WomenAll_2011.pdf](http://www.cdc.gov/women/lcod/2011/WomenAll_2011.pdf)

~~~
bcook
I have suffered from chronic depression for almost 20 years now, so I am
sympathetic to your perspective. Most humor is "inappropriate" in my
experience. So, inappropriateness seems VERY appropriate when attempting to be
humorous... Hehe, go watch some stand-up by Louis CK, Richard Pryor, or George
Carlin for example.

------
ScottCraig
Hilarious

