Atlas · Details
Ten Predictions
AI Notes
November 2004, framed not as forecasting but as what Steve calls mining for insights — the trick of making yourself state a guess out loud in order to discover what you've been quietly thinking. The predictions don't have to be right, and most won't be, but the exercise is the point. The hits: someone will make a fortune hosting open-source web applications (PaaS, self-graded 1.0); a new internet community hangout will appear; you and I will frequent it (written before Facebook had its UW launch, also 1.0); Java's "market share" on the JVM will drop below 50% caught the direction (Scala, Groovy, Clojure, Kotlin) without quite the numbers; people will voluntarily pay Google; and multithreading will fall out of favour caught the cultural shift without the timeline. The misses are bigger and funnier: XML databases overtaking RDBMS by 2011, Lisp in the top ten by 2010, mobile being five years out (it was three), Apple laptops out-selling the combined PC vendors. The famous tenth: most programmers will still be average — "that's just how the math works out."
The 2015 update appended at the top — a self-graded 57%, with the note that the predictions don't matter, the practice does — is itself the model for how Steve handles his old work in public: keep the original, score it honestly, append a postscript, don't rewrite history. The piece has aged into something more interesting than a hit rate; it reads as evidence of an instinct, and as the warm-up for the louder, more confident Next Big Language essay in 2007.
Related listings
-
2007
The Next Big Language
Three years later, Steve writes the JavaScript-is-NBL essay he didn't quite write here. Ten Predictions was the warm-up; NBL is the swing.
-
2007
The Pinocchio Problem
Same predictive instinct, narrower scope — both essays use the trick of stating something the industry hasn't said yet, then watching for who confirms or argues.
-
2004
Ten Great Books
The other November-2004 list. The two pieces bracket the season — what Steve was reading and what he expected to come of it.
Where it was argued
- Hacker News Feb 2013
- Dan Luu Sep 2015 — Graded the 2004 predictions 11 years on.
From the peanut gallery
Read the rest of the thread · 2 more
-
Interesting stuff all around. I just thought I would mention that I got the hairs raising on the back of my neck feeling when I reached number 4. Just this morning I dusted off my copy of "Jython Essentials" in another attempt to sneak into the world of Java development by using a different language, and had been enjoying it immensely.
Do you happen to know the names of any of the LISP dialects that are available on the JVM?
-
Cool. Last time I got that feeling was after watching The Ring by myself one night.
Jython's a good choice, possibly the best one right now. Clean, simple, powerful language, and it doesn't have anything missing; you can do anything in Jython that you can in Java, including subclassing Java classes. And there are at least two books out on it, maybe three. I've done a lot of programming in Jython, and I still enjoy it quite a bit.
Armed Bear Common Lisp is (apparently) the best-supported CL implementation for the JVM. I'm going to be experimenting with it over the next week or two. Kawa Scheme is by far the most complete Lisp implementation for the JVM, and has bells and whistles you'd scarcely believe. It's even got CL-style macros and the ability to use static typing, which even Jython doesn't have. It's amazing.
Kawa's main problem is that it's not yet a drop-in replacement for Java; for instance, when I checked 2 months ago, there was no way to declare a non-default constructor that took parameters, although Per Bothner was allegedly going to add it soon. But I don't think anyone has made a concerted effort to check whether Kawa matches Java feature-for-feature. Needs to happen at some point, or there will be certain Java APIs you simply can't use.
A secondary problem with Kawa is that the docs don't teach you Scheme; they just explain the diffs between Scheme and Kawa, and give you a brief overview of what the JVM integration looks like. I think the only way to get up to speed on it, really, is to work your way through the examples in a Scheme book (or books) with Kawa, and whenever something doesn't work, look at Kawa's docs to figure out how Kawa does it.
Those are the two I'm planning on using from now on. I've decided that I can't waste any more time; if Lisp is the future, then I need to master it, and the only way to do that is to program in it. So I'm going to do ALL my personal coding in Lisp and Scheme from now on (*gulp*), mostly on the JVM though, so I can at least ease into it by knowing the libraries already.
Hello Anonymous Commenting Person,
Paul Graham has to be that way. Not just because he's a rich bastard who (with two friends) implemented an application in Lisp that we've been unable to match at Amazon, and Yahoo bought him out for $40 million in stock that proceeded to soar. That's not the main reason he comes off the way he does, although as far as I'm concerned, it gives him at least a halfway decent excuse.
Paul comes off the way he does because he's good at marketing, and he realizes that in a world full of egotistical programmers, the only way to be heard in all the noise is to be an arrogant bastard.
Stroustroup's the same way, and James Gosling has a big company that can set him up on a pedestal, or he'd have to be that way too. And Larry Wall - well, Larry outdoes them all. Larry says that God talks to him and tells him He only likes Perl programmers. If Paul Graham appears to be delusional to you, read some of Larry's speeches sometime, like this one: http://www.wall.org/~larry/pm.html
We work in a fashion industry, and marketing really matters. Paul's marketing is getting the appropriate attention, so you can't fault his methods. I'll stick with my prediction.
— Steve Yegge · November 15, 2004 11:21 PM
Steve, you got yourself a bad case of 'Paul Graham'-itis... You need to seriously stop reading/buying into his Lisp self-indulgence. Lisp and the like have existed for years... you don't see them taking over yet, do you? They haven't and they won't. I admire the guy don't get me wrong, but sometimes I think he's on the verge of being delusional...
— Anonymous · November 15, 2004 08:17 AM