Let’s talk about Java. More specifically, let’s talk about the fact that – although it’s still one of the most widely-used programming languages on the web – it’s somehow immensely unpopular. For one reason or another, there’s a very large camp of people – developers and businesspeople alike – who vehemently despise Java. In short, it’s got a very serious image problem.
The answer is a complicated one, tied as much to the community as it is to Java itself. It’s by no means a weak language, after all – Android, currently the most widely-used mobile operating system in the world, is Java-based. Minecraft, one of the most popular sandbox games in the world, is coded in Java.
What’s the problem, then?
To answer that, we’re first going to have to look way back to the language’s origins. Back in the 90s, most languages were developed by hobbyists and communities; they were designed, above all, to get work done. Then along came Sun Microsystems with Java – a language it developed primarily to get people using its products.
It made a very concerted marketing push which put Java on a pedestal as the ideal and professional way to do things. Unfortunately, part of this push involved promoting the language as a “best practice” for things it was anything but suited for. That in turn led to no small amount of resentment among developers, many of whom ended up being forced to use the language. A lot of those same developers are still working today, and have continued to carry that resentment; some have even transferred that resentment over to those they’ve taught.
When Oracle purchased Sun, things got worse. To say that it mismanaged its subsidiary would be putting it somewhat lightly. Many outside the development world will forever associate the name “Java” with a series of buggy, insecure, bloatware-laden forced updates. Of course, on the development side of things, Oracle’s purchase was the next step in what some have termed “Shop Politics;” a state of affairs which some have argued represents everything that’s wrong with programming.
Strike two against the language – and the second factor in the unfair hatred it tends to receive.
It’s not just Java’s past that’s a problem. The community that’s grown up around the language has its dark side; a ‘culture of bloat’ that many developers would rather avoid dealing with. Many somewhat wrongly associate this culture with the Java development community as a whole, operating on the mistaken belief that it’s quicker to program and prototype applications in a different framework like Python.
Perhaps the best way to sum all of this up is by looking to a quote from the creator of C++, Bjarne Stoustrup: “There are only two kinds of languages: the ones people complain about, and the ones nobody uses.” Certainly, Java has a bit of an image problem; certainly, it’s not necessarily perceived as one of the ‘coolest’ programming languages, and the community could be a bit better. All of this, however, does nothing to diminish Java’s power – or its widespread use for both web and mobile development.
As for what we can do about all the hate Java receives?
Nothing – and we needn’t worry about it, anyway. With the number of development communities, corporations, and startups that have begun using Java, the perception of the language as bloated, outmoded, and poorly-optimized is quickly becoming a thing of the past. In other words, Java’s image problem is becoming obsolete.