Avoid success at all costs.
Java is the most distressing thing to hit computing since MS-DOS.
— Alan Kay
What a horrible language. What a horrible VM.
— Linus Torvalds
The rise of Java helps turn inferior programmers into
average programmers.
— Erik Naggum
The rise of Java helps turn inferior programmers into
average programmers.
As the number of Java programmers
goes up, the capabilities of the average programmer will
approach that of the Java programmers.
- OO all the things!
- Write once, run anywhere.
- Rich ecosystem.
"The only reason Java has been accepted is because it is a
product of a company, SUN, that has made enormous
advertisement for it."
— Edsger W. Dijkstra
- Java had become so enterprise even Larry noticed.
- Every time Larry acquires a patent, his yacht grows by a foot.
- Kicked Java out of its SUN induced inertia.
- If it's too broken, you can't fix it.
- If it's too big, you can't stop it.
- Build on top of Java and Microsoft's market dominance.
- ???
- Enterprise!
- C# = basically Java with some extras.
- CLR = basically the JVM with some extras.
- Unlike Java, it's been evolving quickly. It was designed to.
- Web apps used to be giant enterprise apps or PHP.
- Ruby on Rails appeared at the perfect time to fill the void.
- Ruby, by accident, turned mainstream by association.
Emacs taught me how to code.
—Yukihiro Matsumoto
It is practically impossible to teach good programming to
students that have had a prior exposure to BASIC.
— Edsger W. Dijkstra
Emacs taught me how to code.
—Yukihiro Matsumoto
- More than 30 different syntaxes for lambda functions
- LISP like metaprogramming through method_missing
- Best of breed package manager
ohai look js ALL the things
Season 1 Episode 10
Swarm of the Century
Philip Wadler's
ComprehendingMONADS
Is there a way to combine the indulgences of impurity and the blessings of purity?
—Philip Wadler
- Purer than Oliver Cromwell in a detergent factory
- Lazy evaluation is best evaluation
- 100% guaranteed Curry-Howard isomorphic
- Zygohistomorphic prepromorphisms
fun funfunfun lol = lol ^ lol ^ lol;
funfunfun "fun";
- Parametric polymorphism!
- Type inference!
- Best modules ever!
I AM THE GREAT QUUX
I CAN DO ANYTHING
- Uncrazify the Lisps
- Optimise ALL the tail calls
- Curry-Howard is for suckers
- BECAUSE GUY STEELE
I just don't make that kind of mistake.
—Daniel Friedman
In the intersection between industry and academia...
- Values first.
- Integrate neatly with the host organism.
- Pragmatism above all else.
- Turn Java into Haskell.
- Turn Java programmers into Real Programmers.
- MONADS!
- Turing complete by 2.9
- Sentient by 2.10
- All humans destroyed by 3.0
- s/JVM/CLR/g
- s/Haskell/OCaml/g
- s/Martin Odersky/Don Syme/g
- F#
- To succeed, build on the establishment's tech.
- If you stare deep enough into the JVM, the JVM stares back.
[...] groups of co-workers dying together.
—Robert Virding
Live fast. Die young.The system stays up.
We already have our success stories.
The enterprise is a factory line.
Java developers are just machine parts.
Only the most passionate programmers ever move beyond the mainstream.
These are the people who build the ideas that change everything.
The enterprise can only imitate, never innovate.
The enterprise is the Roman Empire.
You are the Visigoths at the gate.
We can own the future, or we can relive the past.
Avoid success at all costs.
And always keep them guessing.