
Java's Cover - vinnyglennon
http://www.paulgraham.com/javacover.html
======
naruhodo
The whole thing strikes me as some kind of weird ad hominem attack on an
anthropomorphised foe, with an out of "but I don't know Java, so what do I
know" (I'm only Paul _fucking_ Graham).

He says "No one loves it. C, Perl, Python, Smalltalk, and Lisp programmers
love their languages. I've never heard anyone say that they loved Java.".
Putting aside the objection that loving Perl is a clear sign of mental illness
( _ducks_ ) I'm sure that back in 2001 I absolutely loved Java and still do to
a degree, though Clojure has taken the top spot.

Being a Lisp guy, PG doesn't understand why Java mattered back in 2001.

Quite simply, because the alternative was C++, or, heaven help us, C. Where I
was working, we were doing cross-platform C++, with GUIs, and Java was a
godsend. Java showed that you could get portable GUIs with performance in the
right ballpark without all the incidental complexity of complex build
toolchains and manual memory management. A whole slew of errors caused by
manual memory management went away. No more corrupted heaps because someone in
your team had a brain fart. No more segfaults and a blank screen where your
running app used to be.

Graham asserts that Java being a simpler C++ was a downside, but out in the
real world where your teammates are fallible, Java let you get things done
without requiring perfection.

People who hate on Java lack context.

~~~
fulafel
"This essay developed out of conversations I've had with several other
programmers about why Java smelled suspicious. It's not a critique of Java! It
is a case study of hacker's radar."

------
MaxBarraclough
Many of these points strike me as negatives from the point of view of a
hobbyist/passion project, but positives from the point of view of the
management of 'enterprise' software development. (Precisely where Java
thrives, of course.)

Yes, Java is designed by a committee in a corporation (with a nod to the
language's community). Java is explicitly designed _not_ to rock the boat with
adventurous new ideas, but instead to be familiar to all programmers, no
matter how skilled.

If your job is to oversee a large, long-lived software project, these are
points in Java's favour.

------
hybrids
2001 was a silly time. Obviously, in any domain, there are times when we must
judge a book by its cover for sake of there being only so little time in the
world; but it seems so bizarre - well, maybe not bizarre for Paul Graham, but
whatever - for someone to write this long-winded article talking about why
"XYZ technology I've never used sucks." (Of course, Java sucks IMO, but this
is a very poor critique)

I find it amusing Paul regards C's origins as being "hacker" and Java being
apparently not. How exactly was Java's original design (as Oak) by James
Gosling that much different under the circumstances by which C was developed
by Dennis Ritchie when Bell had been reworking PDP-11 UNIX?

------
ram_rar
I wonder, how much of PGs point apply in 2019. This article seems very old,
and I would honestly be surprised, if anyone would choose Perl over Java in
2019. its one think to hack and totally another thing to build production
quality system where people are depending on it.

------
commandlinefan
> today's teenage hacker is tomorrow's CTO.

We wish this were true, but this is not true. Not remotely.

~~~
marvy
you're saying this never happens? or rarely? or just not always? or you object
to the word "tomorrow"? or...?

~~~
commandlinefan
Yes, I'm saying this never happens. Clever hackers get four feet of space in a
noisy open office and a JIRA backlog. Well-connected MBA's get CTO positions.

------
copperx
I wonder how many of PG's points apply to Go.

~~~
bjconlan
Yeah, I'm also curious about how ruby would have faired. 15 years ago it was
sillycon valleys poster child (but without being too harsh was actually a very
good citizen and had perhaps had the best open and active community the
internet era may have seen to date). It had many of the points corrected that
have been outlined without stupid amount of corperate support java/.net have
seen

~~~
pjmlp
For many of us it was a synonym to a very slow runtime and being the Rails'
language.

So why throw away the performance and graphical tooling of Java/.NET, when
they shortly thereafter also got their Rails inspired frameworks?

Personally having used an AOLServer inspired framework during the .com wave,
meant that Ruby wasn't something I felt to be usable in production at scale,
without wasting resources making it fast.

------
thoman23
Hmm...he was wrong while not being wrong.

~~~
tosh
shows how difficult it is to predict technology adoption

------
rongenre
Probably want to add 2001 to the title.

------
unhammer
Too bad the site mentioned on
[https://idlewords.com/2009/04/wrong_tomorrow.htm](https://idlewords.com/2009/04/wrong_tomorrow.htm)
isn't up any longer – are there alternatives for tracking pundits'
predictions?

------
baud147258
"I have a hunch that [Java] won't be a very successful language"

Way to be wrong, buddy

------
alexfromapex
Java will be cool with me again when enough time has passed to get better
OpenJDK 11+ support. Nothing is worse for my OCD than installing Spark and
Hadoop and having to install an old version of Java.

~~~
erik_seaberg
What's missing from 8? Does type inference require runtime support? Do you
care about removing pieces of the JRE via modules?

~~~
vips7L
Outside of the syntax upgrades, a lot of the standard library has improved (my
favorite being 11 shipping its own HttpClient implementation).

------
johnyzee
Funny. PG is right on every point (and most of his criticisms hold true
today), yet Java _still_ became one of the most succesful programming
languages ever.

