
Reviewing Steve Yegge's Prediction Record - ingve
http://danluu.com/yegge-predictions/
======
crdb
> For reasons that seem baffling in retrospect, Amazon understood this long
> before any of its major competitors

I don't think Amazon really "understood". It's more that (according to "The
Everything Store", anyway), accidentally, some emergency servers were
reprovisioned as servers on demand for a bunch of frustrated devs who couldn't
get resources the traditional way. And then demand just exploded and they
thought why not sell it and see what happens.

It is true that Bezos appears to have a knack for spotting great products that
appear accidentally in his org tree, and spinning it out as a separate team
(e.g. the A9 team, Kindle...) but it might be that he thinks like a VC and
backs everything that looks interesting instead of letting the bureaucracy
kill it, and hindsight is 20/20...

~~~
lubos
There was another essay from Steve Yegge some years ago where he was comparing
Amazon vs Google (he worked for both companies) and how Amazon completely
transformed themselves into using internal APIs as the only method of
communication between teams within the company.

Yegge has recalled an email to all Amazon staff where Bezos outlined new
Amazon rules. This was in 2002.

 _1.) All teams will henceforth expose their data and functionality through
service interfaces._

 _2.) Teams must communicate with each other through these interfaces._

 _3.) There will be no other form of inter-process communication allowed: no
direct linking, no direct reads of another team’s data store, no shared-memory
model, no back-doors whatsoever. The only communication allowed is via service
interface calls over the network._

 _4.) All service interfaces, without exception, must be designed from the
ground up to be externalizable. That is to say, the team must plan and design
to be able to expose the interface to developers in the outside world. No
exceptions._

Especially the last point of the memo is very telling because it shows that
Amazon was planning to externalize artifacts of various teams within Amazon at
least 4 years before AWS was actually born.

~~~
Pamar
Here the full Yegge tale (or at least a publicly available copy):
[https://plus.google.com/+RipRowan/posts/eVeouesvaVX](https://plus.google.com/+RipRowan/posts/eVeouesvaVX)

~~~
fizixer
reading it the second time (last time I read it a year ago):

\- Is ad business model a major reason Google is not providing a platform or
hesitant about it? (Out of Amazon/Apple/FB/MS, FB is the only other primarily
ad-based company (or is it?) so I wonder how FB is doing it). Because
programmatic interfaces means developers can program out ads (unless there's a
way for a service provider to avoid that situation, IDK).

\- Or has Google moved towards platform/accessibility model recently? or is it
same old same old?

------
simonh
Prediction #7 about the mobile revolution was particularly interesting to me
at the time. I was working in the telecoms industry and everyone was saying
that super-smartphones were coming out in just a year, 2 at most, that would
revolutionize everything, but that was all marketing hype. The reality at the
time was to my mind looking really bad. WAP was pretty much a conscious effort
by the telecoms industry to trap itself (or actually the users) in a
technological stone age ghetto run by committees of marketing executives. The
fact that Apple forced the carriers to allow an open mobile internet was
utterly shocking to me - in a good way. I was expecting mobile computing to be
a dismal carrier-controlled dystopia for a generation at least.

~~~
TorKlingberg
The phone makers at the time really had no idea how to make a full-featured
mobile computer OS. Nothing happened until Apple giving them a kick and Google
saved their butts by handing them Android on a platter.

~~~
monort
You are forgetting about Windows Mobile for Smartphone and Symbian. There was
a reason to expect smartphone revolution - because early adopters had
smartphones in 2004.

~~~
simonh
Yes, but they were utter crap. Their browsers were crippled, side-loading
software was strictly for geek hobbyists only and their apps were generally
appallingly designed. Mobile internet was restricted by the carriers to a
teletext-style menu driven system with menu space sold to the highest bidder.
It was awful. They had no idea what they ere doing. Mobile payments were
supposed to take over the world in 2001+. The carriers have spent the last 14
years utterly failing to execute on that, and even in 2004 they'd spent the
previous 3+ years being utterly incompetent. Steve saw what was going on, and
he was completely correct that even 5 years wasn't going to be long enough to
sort all that out.

~~~
radicalbyte
That was WAP.

Windows Mobile back then had a fully featured browser. It was all pen driven,
but it actually worked really well. The first iPhone seemed like a step back
at least as far as the browser is concerned.

Data was just extremely expensive, but it was faster than the dial-up internet
most of the country was still stuck with back in 2004.

~~~
billyhoffman
Windows Mobile had a start button! Microsoft was literally shoving a desktop
mindset into any form factor, and not designing for a form factor.

Windows Mobile sucked not because of WAP, but because you had to use it like a
tiny desktop UI and poke at it with a tiny stylus to move a _mouse cursor_
(depending onthe version).

The iPhone wasn't awesome because it had a "full" web browser or whatever
(though it helped). The iPhone was awesome because it was a pocket sized super
computer with a UI/interaction model that actually worked

~~~
ascagnel_
WM6, when designed to knock off Blackberry devices, was a little better. The
"Start" button brought you to an application tray, and it had a 4-way rocker
(and optional resistive, stylus-input touchscreen) for navigation. MS took
some obvious hints from RIM, but they did deliver a good product.

Of course, it released roughly seven months before the iPhone, which beat the
pants off of it. At least it could play NetHack...

------
shalmanese
It's especially important for blog posts like this to have a very obvious
timestamp on the page somewhere. This is a contemporary post but I couldn't
verify that until I went into the archive view.

~~~
violentvinyl
There is a worrying trend in minimlaist design lately. It seems that more and
more blogs are leaving out information about the author (less impotant here)
and when the post was created, two very important pieces of information!

~~~
tinco
That's not a trend, it's been like that since the dawn of the internet.

------
toyg
Yegge has always been worth reading, which makes it sad that he's been
basically silent ever since 2012 (about a year after the infamous "Platform"
rant).

Earth to Major Yegge, Earth to Major Yegge, do you copy? Come back, we miss
you.

~~~
_steve_yegge_
Howdy! Boy, HN is terrible at recovering old accounts, so I made this new one.

I just posted an update to the predictions post, with my own scores. Take a
look!

As far as blogging goes, I've been on a bit of a hiatus. There's been a lot to
learn. The tech world is moving so fast! I've been in Google Cloud Platform
for the past 3 years, and next year I hope to start blogging about the
experience, and about the technology in general.

For now, though, I'm busy both with my day job at Google and with various
personal projects, so there's not much to report just yet. I promise I'll be
back someday. :)

~~~
sokoloff
> I just posted an update to the predictions post, with my own scores. Take a
> look!

[https://sites.google.com/site/steveyegge2/ten-
predictions](https://sites.google.com/site/steveyegge2/ten-predictions)
(convenience link)

------
wtbob
I was really sad that Lisp didn't take off like it appeared it might in the
early 2000s. With Practical Common Lisp[1], Yegge's articles and Edi Weitz's
software[2], as well as other articles and resources available at the time, it
really looked as though the programming world was beginning to get why Lisp is
such a good idea.

And then the focus became JavaScript, which has all of the bad and many—but
not nearly all—of the good points of Lisp, and one key differentiator: it runs
in the browser, on effectively every computer, tablet and phone on the planet.

Maybe the Lisp-compiled-to-JavaScript efforts will help.

[1] [http://www.gigamonkeys.com/book/](http://www.gigamonkeys.com/book/)

[2] [http://weitz.de/lisp.html](http://weitz.de/lisp.html)

~~~
mkozlows
The move in the center of intellectual gravity from Java/C# to Javascript puts
me in mind of Guy Steele's quote about Java, back in the day: "We were not out
to win over the Lisp programmers; we were after the C++ programmers. We
managed to drag a lot of them about halfway to Lisp."

I think Javascript moves those Java programmers halfway further to Lisp. And
while the Common Lisp revival movement sort of petered out, Racket (which is
honestly much better than Common Lisp to my tastes) is still trucking along
and might be poised to be the next step for a generation of programmers who've
absorbed the Javascript mindset.

~~~
dragonwriter
> And while the Common Lisp revival movement sort of petered out, Racket
> (which is honestly much better than Common Lisp to my tastes) is still
> trucking along and might be poised to be the next step for a generation of
> programmers who've absorbed the Javascript mindset.

While I personally like Racket quite a bit, I think that the Lisp most posed
to pick up the JS crowd is Clojure/ClojureScript.

OTOH, maybe instead of a Lisp we'll get _another_ halfway-from-where-they-are
language for the JS programmers, and continue the Zeno's paradox of Lisp
readiness...

------
robin_reala
Steve’s best prediction for me has always been his bet on JS in ‘The Next Big
Language’: [http://steve-yegge.blogspot.co.uk/2007/02/next-big-
language....](http://steve-yegge.blogspot.co.uk/2007/02/next-big-
language.html) . This is pre-V8 but post- open sourcing of Tamarin.

~~~
davidroetzel
I remember being very intrigued by the article back in the day and I revisited
it at least twice to find out if steve ever confirmed what language he was
writing about.

Today people seem to take for granted that the NBL was in fact javascript, but
I still cannot find any source for this.

Does anyone know more and can point me in the right direction?

~~~
robin_reala
OK, fair enough, but there aren’t any other obvious contenders that fit his
criteria. Also, ES4 was in development at the time and would have been a major
overhaul to the language (something we’re now getting in ES6).

Maybe I am taking it for granted though…

~~~
gjm11
I've seen video of a talk in which Yegge says, in so many words, that "NBL is
Javascript". Google suggests it was a talk at OSCON 2007, which I can't easily
check right now.

~~~
seiji
Citation from the past:
[https://news.ycombinator.com/item?id=2344077](https://news.ycombinator.com/item?id=2344077)

~~~
davidroetzel
Thanks a lot! Exactly what I was looking for.

------
wiremine
Totally unrelated, but I saw Steve present at OSCON probably 10 years ago, and
it was amazing to see him present on his feet:

The video for his presentation was totally messed up, so his slides didn't
load up. He just said "screw it" and went on presenting from memory to a room
of around 4,000 people.

He nailed it.

Afterwards, Tim O'Reilly said he had never seen anybody deal with something
like that and do as well.

If you get the chance to see Steve present, go for it. He's thought provoking
and entertaining.

~~~
raldi
Here's the link to the video (2007), though the site is down at the moment:
[http://blip.tv/play/AZPiFQI.html](http://blip.tv/play/AZPiFQI.html)

~~~
ersii
Unfortunately, blip.tv is gone. There's no sure indication that all the
content will be migrated, but the odds are low - there was a lot of content at
blip.tv. Luckily, most of it is archived and being uploaded to archive.org and
will be available sometime.

------
xyproto
After reading the article, I am left with the impression that Steve Yegge was
mostly wrong.

~~~
qznc
I'd say he was correct on #3, #6, #7, #8. That is 4/9, because #10 was just a
joke. So he got roughly half of it right, which is not too shabby.

~~~
jsmeaton
Do you not consider #1 to be at least close to accurate? Instead of XML we got
JSON databases (NoSQL) which are very popular in some circles. They definitely
do not surpass the number of relational database installations, but I wouldn't
be terribly surprised if they stored more data in absolute terms.

~~~
qznc
No. Yegge bet on XML specifically with all its XPath, XQuery, DTD stuff. I
don't believe he was thinking about anything like NoSQL or JSON.

~~~
kbenson
The quoted reason is “Nobody likes to do O/R mapping; everyone just wants a
solution.” From that point of view, I think it's at least arguable that he
chose XML databases as a stand-in for NoSQL, which wasn't really a thing yet.
The fact that many NoSQL databases use JSON, which is the successor to XML for
data interchange, lends a bit more support as well IMO.

In other words, I think saying XML databases are the future in 2004 is like
saying JSON document stores are the future now. I don't view either as all
that correct, but there's definitely been a surge in interest.

------
qznc
> I try to avoid making predictions. It’s a no-win proposition: if you’re
> right, hindsight bias makes it look like you’re pointing out the obvious.
> And most predictions are wrong.

If you are right, then you can point people to your correct predictions. If
you are wrong, then silently delete the records or just let people forget
about them.

------
insulanian
> Sure, Mongo may lose your data, but it’s easy to set up and use.

Umm... I'm probably too old, as I feel anger when I read something like that.

~~~
ajankovic
I think it was meant as supportive argument to "popularity contest". So that
statement is probably sarcastic in nature.

------
100k
Yegge's "It's not software" from 2004 has a nice bit about microservices --
pretty ahead of the hype curve on that one:

> What if every "API call" were hosted by a different server? Well, you'd have
> a lot of flexibility in fixing any given call without needing to impact
> clients that don't use it. And it'd be easier to distribute it over multiple
> machines — it seems like it'd be a better design than the BEA WebLogic
> design, which is to run a few copies of your MonolithService on each of a
> handful of machines. There would be new problems to solve, but who's to say
> it wouldn't be a better design overall? We won't know unless we ask the
> question.

[https://sites.google.com/site/steveyegge2/its-not-
software](https://sites.google.com/site/steveyegge2/its-not-software)

------
PaulHoule
I'm amazed he didn't predict that pot would be legal or decriminalized in many
states.

~~~
helper
The reference, for all those who think this comment is off topic, is a blog
post by yegge in 2009 entitled "Have you ever legalized marijuana?"[1]

[1]: [http://steve-yegge.blogspot.com/2009/04/have-you-ever-
legali...](http://steve-yegge.blogspot.com/2009/04/have-you-ever-legalized-
marijuana.html)

~~~
jdminhbg
That's fun to go back and re-read now. He correctly describes "Shit's Easy"
Syndrome, but maybe there's an opposing fallacy that's heavily status quo
biased. Legalizing marijuana is in fact pretty easy, as bureaucratic
undertakings go. Lots of his "what ifs" only make sense for something that's
illegal in the first place -- What if illegal smugglers just pull up on the
beach and start selling coffee? Why would they do that if you can just stop in
at Starbucks?

~~~
caskance
That's the whole point of that list. Transitioning from illegal to legal is
complicated in ways that don't affect things like coffee that have always been
legal - and therefore, many people don't think about, claiming it will be
treated "just like legal thing".

~~~
jdminhbg
I understand the point of the list, it's just that most of the items on the
list are not actually issues, or at least not difficult issues, and
legalization has gone pretty smoothly in multiple states now. What he fails to
take into account is that it actually is easy to just stop throwing people in
jail for possession whenever we feel like it, and then take a year or so
setting up a licensed legal distribution system.

~~~
caskance
It doesn't sound like you do understand the point of the list then. The point
is not that any particular issue is unsolvable or even difficult. It's that
laymen eagerly suggest naive solutions without even realizing that these
issues exist. That's why you need to plan out your project and devote
resources to executing it. Amendment 64 was not a single line "marijuana is
now legal". The governor even set up a task force to oversee its
implementation. And there are still complications due to its contradiction
with federal law.

------
swolchok
Re: predicting the Rise of JavaScript, it's a lot easier to be right if you
know about V8 a year before public release. From "Rule #3: Performance" on
[http://steve-yegge.blogspot.com/2007/02/next-big-
language.ht...](http://steve-yegge.blogspot.com/2007/02/next-big-
language.html):

 _Generally speaking, NBL will have to have a much greater focus on
performance than so-called "scripting languages" have had in the past. I mean,
if it's really the Next Big Thing, it'll have to run on mobile devices, game
platforms, and all sorts of other hardware-constrained devices. It sounds
impossible, I know. But it's not. Those compiler writers are a tricky bunch,
and they have decades of experience. A bunch of them got together and did a
lot of head-scratching over NBL, and the result is going to perform quite
nicely._

------
hyperpallium
Interestingly, for all his insight, Steve Yegge doesn't understand why Java is
popular and lisp is not.

~~~
zeveb
> Interestingly, for all his insight, Steve Yegge doesn't understand why Java
> is popular and lisp is not.

What do you think are the reasons? Some folks might claim that Java enables
mediocre teams of mediocre programs to turn out mediocre code, while they
would turn out utter dreck in Lisp (we know that excellent programmers will
turn out excellent code in Lisp, but there are business and operational risks
associated with a small team of excellent programmers), but I don't actually
know if that's true. Has research been conducted with large teams of mediocre
programmers with mediocre management, using Lisp?

~~~
sbov
Let's be real: most people who make fun of Java aren't using a Lisp, and would
also make a mess of themselves if they had to program in one.

We use Java at work. Obviously all of the following depends upon your use
case.

The main reason we continue to use Java is probably legacy reasons. We have
lots of library code. And we're a small shop, so every extra language we
program in has a real cost associated with it.

The stability and backwards compatibility is great. We have some libraries we
haven't had to touch in almost a decade, being used in apps we just wrote last
week. Of course some of them we've updated to use newer Java libraries (such
as java.time and java.util.stream in Java 8).

IMHO Java's biggest problem is the community. It's a bit enterprise-y. As long
as you don't get caught up in that I think you're OK.

I think the other problem was it went so long between Java 6 and Java 7. With
Java 8 there isn't a lot from the likes of Python and Ruby I miss anymore.

For imperative languages, I generally like Go and Python better, because I
find them "funner". But once I get past myself, meh. I do think Go gets things
a bit more right than Java, but not enough that it merits switching the
language we use. Maybe if we had zero code and had to start out fresh.

~~~
vorg
> With Java 8 there isn't a lot from the likes of Python and Ruby I miss
> anymore.

Groovy will be feeling the heat here for its original use case. With the
lambdas and terseness in Java 8, there's not a lot of reasons for it to exist.

------
kar1181
There's a comment at the bottom of his original predictions blog, and it
reminded me immediately of Alan Kay's 'pop culture' quote

"We work in a fashion industry, and marketing really matters.".

I don't know if I am getting older, but this rings very true to my ears,
especially today.

------
tacone
If you can afford it road-map wise, starting with the easy details and
postponing the hard stuff works sometime. When the easy things are done, the
hard things sometime become less hard, and the project got itself more
rewarding so it's easier to see it in a good light.

------
amelius
If you ask 1000 people to predict 10 coin flips, then there's a 62% chance
that at least one of them is right.

~~~
rfrey
If you ask 1000 people to ask a coin to identify the major trends in a complex
ecosystem and make inferences about their future course... they will look at
you oddly.

~~~
pekk
They don't have to ask the coin. They can just assign different meanings to
heads and tails, flip the coin, and record the result as a prediction. If you
have 1000 people do this, some of them will appear to be miraculous predictors
just by chance. It doesn't matter whether they are talking about major trends
in a complex ecosystem, or whether they believe they are performing
inferences. Sometimes a correct guess is just a guess which turned out to be
correct, rather than evidence of prophecy.

~~~
dredmorbius
Map this to Zuck's infamous statement about Twitter: 'They Drove A Clown Car
That Fell Into A Gold Mine'.

Nothing succeeds like success. Unfortunately, it's difficult to tell luck from
skill quite often.

I'd argue that Zuck didn't do too differently either. Both companies _did_
have technical execution down. But circumstances also mattered hugely.

------
jayvanguard
> Lisp will be in the top 10 most popular programming languages by 2010

Let me lay the raw truth out for any lisp fans. It will never be popular or
widely adopted. Ever.

It has been around for half a century. At no time was it ever widely adopted.
It was always just pushed by a small group of fanboys.

That said, I love it and have learned a ton from as have many others.

~~~
nickbauman
Never? Why will it _never_ be popular or widely adopted?

~~~
jayvanguard
Because 40 years ago people were convinced it would be popular one day. And 30
years there was roughly the same percentage of highly convinced, vocal people
who thought so. And 20 years ago same thing. 10 years ago ditto.

I mean, what is going to take? 10 more years? 20? At what do you conclude that
a language really isn't useful for general purpose programming? (not to say it
isn't brilliant and useful for specific purposes, learning, etc.)

~~~
nickbauman
You seem to define the reason as purely historical. Kinda like how Linux was
going to take over the desktop "any year now" and it hasn't. Yet Linux is
everywhere people don't think it is. It's on most of the world's smartphones,
for instance but people still consider it "failed".

I think Lisp is the same: it's everywhere you don't think it is because it's
opinionless and languages are defined by their community (and community is
held together by the shared values and opinions). Look how many languages are
rapidly adopting functional programming idioms. They're becoming Lisp.
Eventually you start seeing the value of functional idioms in Blub language.
Then you go and look at where it came from and notice, "Hey this is the real
thing". Then you get real yourself. (This has been my experience).

------
andy_ppp
How far off is prediction 9 really? What do sales matter when Apple takes more
profits from their computer business than all those combined; Apple having a
30% plus margin and other computer makers a 2-3%?

~~~
simonh
Indeed. It seems likely that Apple could cut their margins and grab that 50%
if they wanted to, but since that would reduce their overall profits why would
they want to? It seems like Apple can at this point have pretty much whatever
share of the market it chooses.

~~~
alphadevx
It's interesting to me that Apple value profit over market share, unlike many
of their rivals.

~~~
simonh
I'm not entirely certain whether their rivals actually value market share over
profits as such. It's hard to run a company for long if it's not making money,
regardless of what it's market share is.

Market share matters for a lot of companies because economies of scale mean
that your unit costs go down as volumes go up. This gives a natural advantage
to market leaders, in addition to things like increased brand visibility.

Market share is very important to pundits though, because it changes very
rapidly and is often measurable throughout the year on a per-product basis,
whereas company financials are less frequently reported and harder to tease
out. A battle between products that readers can see in the shops and read
reviews for is easier to create a narrative around than corporate financial
performance. I think this is why sales numbers and market share are focused on
so heavily in the media.

