
“A little bit of slope makes up for a lot of y-intercept” - vvijay03
https://www.quora.com/What-are-the-most-profound-life-lessons-from-Stanford-Professor-John-Ousterhout?share=1
======
greenyoda
One of Ousterhout's examples of this principle is something that comes up
frequently on HN:

 _" Before I came back to academia a couple of years ago I was out doing
startups. What I noticed is that when people hire they are almost always hire
based on experience. They're looking for somebody's resume trying to find the
person who has already done the job they want them to do three times over.
That's basically hiring based on Y-intercept.

Personally I don't think that's a very good way to hire. The people who are
doing the same thing over and over again often get burnt out and typically the
reason they're doing the same thing over and over again is they've maxed out.
They can't do anything more than that. And, in fact, typically what happens
when you level off is you level off slightly above your level of competence.
So in fact you're not actually doing the current job all that well.

So what I would always hire on is based on aptitude, not on experience. You
know, is this person ready to do the job? They may never have done it before
and have no experience in this area, but are they a smart person who can
figure things out? Are they a quick learner? And I've found that's a much
better way to get really effective people."_

~~~
arjie
Intriguingly, that's the opposite of what's popular on HN. HN and
/r/programming posters prefer the "Look at what I've done. Here are my
projects" approach which is the y-intercept because it describes where they
are. Asking them a question they've never heard before and observing their
approach is a way (albeit imperfect) of seeing how fast one can deal with a
novel problem.

~~~
Furzel
"Look at what I've done. Here are my projects" is definitely not the
Y-intercept "Look I went to <fancy school>" is the Y-intercept. With projects
and experiences you can start to plot someone's work according to it's own
Y-intercept and guess the slope. The hard part is assessing someone's slope
when all you have is it's Y-intercept ( freshly out of school ).

Concerning asking tricky question, you can do it the Google way ( How many
frogs does it take to build a space elevator ) but even they decided to stop
these kind of questions or take a lot of time and find something your
candidate can work on, even if the technology is known to him, seeing how fast
he can appropriate himself the codebase is really a good way to judge your
future new recruit potential

~~~
tptacek
You could try to "guess the slope" if the slope were static, but it's not.
Aptitude and track record are, in my experience, not correlated. I can get
specific about this if you want, but I don't want to be tiresome about this
subject (you can find similar comments in my history).

A short preemptive summary is: the last 10 amazing hires we made would not
have been distinguishable from their online portfolios.

~~~
thewarrior
That sounds very interesting. Could you elaborate ? How did you figure out
their aptitude if their track records weren't so different from the rest ?

~~~
barry-cotter
They appear to be the only software company on Earth to do work sample tests.
It's working out really well for them. The process is extremely well laid out
here.

matasano.com/careers

We'll get on the phone and talk to you about the company and what our work
looks like. At the end of this call you should have a good idea of what we do,
how our hiring process works, and answers to questions about Matasano. Most
importantly, you'll have a contact at Matasano to talk with and bounce
questions off of through the duration of our process. We do 1-3 technical
phone screens. You'll talk to a senior Matasano team member who will ask you
about your technical background and talk you through scenarios and concepts
from our day-to-day work. If you've been doing app security for 5 years,
you'll be talking about your past projects; if you're a developer, you'll be
talking about code. We do a web app challenge. Most software written within
the last several years is web code. Everyone on our team needs to be able to
deliver a solid web pen test. When you're ready, you'll be given an instance
of a vulnerable web application and an hour or so to break it. We timebox
challenges to avoid taking too much of your time. You're doing this on your
own schedule, in your own comfortable setting. We do a custom protocol
challenge. Every Matasano team member routinely runs into exotic network
protocols. We'll throw something at you that you're unlikely to have worked
with before and watch you reason your way through breaking it. This challenge
seems to be everyone's favorite; candidates routinely tell us how they
particularly enjoyed it. That's great! It's part of our day-to-day work here.
Like the web challenge, it's timeboxed and you're doing it remote. We'll have
you write a fuzzer. Everyone here writes fuzzers. We'll give you a file
format. In the language of your choosing, you'll write a fuzzer for it. This
gives us a chance to see how you code and to see what types of things you
automate testing for. Like the other challenges, this one is time limited and
you can do it remote. We've talked. We've done phone screens. We've answered
questions. You've done challenges for us. At this point we both have a pretty
good idea whether you'll be happy working with us. If that's the case, we'll
bring you onsite for an in-person interview, which concludes our hiring
process.

------
tempestn
Good points. I would add to his last point though that hiring at least one
person with a high y-intercept can increase the slope of your other hires
significantly. (It's a lot easier to learn something quickly if you have
someone around who already knows a lot about it.) And people who both know a
lot and learn quickly are expensive and rare, so I expect the optimal hiring
process would look for a large percentage of relatively inexperienced fast
learners, along with a small (but non-zero) percentage of more experienced
people, even if they aren't likely to develop as quickly. (Perhaps consultants
would fit well in that role too.)

------
te
[http://web.stanford.edu/~ouster/cgi-
bin/sayings.php](http://web.stanford.edu/~ouster/cgi-bin/sayings.php)

------
calcsam
One hopes that the graph of life is linear and not a differential equation
path-dependent on initial conditions...

------
oaktowner
Ah, Ousterhout. Guess he's at Stanford now; he was a prof at Berkeley when I
was there. He had an amazing knack for presenting CS in an entertaining (and,
at times, hilarious) manner.

Best professor I ever had.

------
tfigueroa
It's a bit of a false dilemma to choose between experience or aptitude.

In the start-up period, though, aptitude is a better strategic choice in that
you need people who can grow as quickly as the venture.

Later, you need the people with experience, even if they're a bit slow.
They're the ones that have been bitten by the edge cases, the deadlocks, the
XSS openings - and know to avoid them.

~~~
thrownaway2424
Really? I'd rather have the experienced but dull people to put together the
minimal product first. Having them onboard gives me more time to find and hire
the right aptitude people, and having them there _first_ keeps the
inexperienced people from sticking in all the deadlocks and security holes in
the first place.

Do people really want their minimally-viable product to be full of deadlocks?
I personally do not. And I don't want to hire promising but new-to-the-
industry people who have to check stackoverflow to remember the difference
between a pointer and a reference, or who spend hours trying to debug why
something in their python program is iterating over a string.

Bottom line, I guess I don't see how anyone can want to bring in aptitude in
the absence of experience. People with both would be fine, or a combination of
both types of people would be fine. Aptitude without experience is not going
to work.

------
EGreg
I happen to disagree regarding the hiring. I prefer to put more emphasis on
the system itself, and not the developers, who should be replaceable. (I say
this as a developer myself, who prefers to be replaceable.)

When a developer forgets to test their code before pushing it to production,
we often blame the developer. But the real problem is lack of automated
testing, lack of processes, and too much responsibility for the developer.

With a good system in place, you hire people who have all the prerequisite
knowledge (the languages, patterns, experience with similar solutions to the
ones they'll do, and preferably good team spirit that matches your culture).
The rest can be learned on the job. But once again, focus on your onboarding
materials!

In short -- you should always look to be optimizing the system. THAT is your
"slope" if you will. Except it's not a slope, it's an exponent! Because it
builds on itself week after week. And you don't risk that one developer
somewhere messing up your code.

We say: people live lives, companies create products.

------
orasis
Said another way: You are perfect exactly as you are, because in this moment,
there is no other way you can possibly be.

However, in this moment, perfect as you are, you can still resolve to
practice.

\- Paraphrased from "The Practicing Mind"

------
crasshopper
Let's race 10 miles. I run each mile in 5:59 and you run each mile in 6:00.
You get a mile head start.

Whoops—this fable is only true "eventually", if the slopes remain the same as
t→∞.

~~~
maxerickson
I'm curious, do you think Ousterhout or the people quoting him are confused
about this?

~~~
crasshopper
Probably everyone knows the math; I just think they're exaggerating the
relevance of this model to real life.

I'm with the commenter (here) who said that real life is more likely to be an
initial-value-dependent or path-dependent PDE. Someone else said having a
high-IV person on your team will raise the slopes of everyone else which seems
also right: the issues are multidimensional, not affine 1-D.

Ousterhout is taking sides (smarter > more experienced) which is fine; he can
make that argument. But using y=mx+b as x→∞ doesn't count as an argument; it's
rhetorical flair, not rhetorical substance. The substance of his reasoning
seems to be "That's my opinion based on my experience in my past jobs".

~~~
maxerickson
I read it more as an illustrative example to open up the following discussion
than a terribly serious model of real life.

He does riff back on it, but it's five minutes of perspective tossed at
teenagers, not anything formal.

~~~
crasshopper
It seems like a way to lend scientificity to his opinion. There are other ways
of saying smarts>experience. Invoking y=mx+b here seems deceptive.

~~~
bduerst
Analogies are inexact by definition, which doesn't mean that the speaker is
being intentionally deceptive by using one.

I don't think anyone took this beyond the anecdotal evidence provided. We can
argue motive and hypotheticals all day but the fact remains that this is just
a blurb thrown at fresh undergraduates.

It's a motivational speech (delivered via heresay on Quora) not a thesis.

------
sillysaurus3
Why do Quora articles continue to make the front page when we can't read them?
I'm greeted with
[http://i.imgur.com/WTeSt8s.png](http://i.imgur.com/WTeSt8s.png) No, I won't
sign in with Google, nor Facebook.

How do the people upvoting this read the article? Do they sign in? What
possible benefit is there to signing in? They're basically holding content
hostage.

When I defended Scribd, people came out in droves to point out how wrong it
was to hold unique content hostage. I'll admit, it made me rethink my
position. But it's strange to see that Quora doesn't get the same stick.

EDIT: If the HN homepage had a popup saying "Login with Google or Facebook to
read all of HN," would you tolerate it?

~~~
mindcrime
Speaking only for myself, I visit Quora so frequently that I pretty much
always have a login cookie stored, so I never see the login page.

That said, given my very public and vocal arguments against "walled gardens"
in the past, why do I tolerate Quora? For the same reasons I tolerate G+,
Facebook, etc. I annoys me and tickles a sore spot regarding the way I want
things to be, but the value of the content is sufficient for me to "grin and
bear it". But if there were a really good Quora alternative that was more
open, I'd work to promote and support it. I don't know of one offhand though,
especially considering network effects (that is, the value of Quora isn't the
Quora software, it's the people posting and answering).

~~~
jlees
I have a similar position. If the content is valuable enough then it's
tolerable to have a gate. Quibb is another similar platform, but I don't know
of anything with the quality of Quora answers - Stack Overflow is the closest,
but it's very specific and Quora covers a lot of content the various Stack
sites don't.

------
thmorton
Link without the annoying Quora-login pop-over: [https://www.quora.com/What-
are-the-most-profound-life-lesson...](https://www.quora.com/What-are-the-most-
profound-life-lessons-from-Stanford-Professor-John-Ousterhout?share=1)

------
hyperliner
Actually, if you are going in the opposite direction, a little bit of slope
makes up for a lot of negative Y-intercept.

