"Should you I learn Java?"
That's a question you may find yourself asking whether you're new to programming or you're a seasoned developer who somehow has not yet worked with Java. It's also an increasingly pertinent question, given that Java's popularity is slowly slipping, and the language arguably feels more and more dated.
I can't tell you whether or not you should learn the Java programming language as of 2022. But I can tell you three reasons why Java still matters, and three reasons why it may be a slowly dying language.
Why Java Is Still Relevant
Let's start with the advantages that Java enjoys in the world of modern programming.
1. Massive Java codebases
Probably the best reason for learning Java in 2022 is the simple fact that a great deal of code has already been written in Java, and someone will need to maintain and update that code for decades to come.
This means that learning Java is a great way to make yourself relevant to employers who need Java programmers. Whether or not you actually think Java is a good language to code in, the fact is that Java codebases — like those written in FORTRAN or COBOL decades ago — are not going anywhere. By extension, neither are jobs for Java programmers.
2. Java runs anywhere
Part of the reason why Java became so popular when it debuted in the 1990s was that it's a very platform-independent language. Typically, you don't have to change your code much at all to get the same Java program to run on Windows and Linux, for example.
This advantage makes Java a strong contender as a general-purpose programming solution. Although newer languages (like Go) are also relatively platform-independent, Java arguably remains the gold standard of programming languages that let you write your code once and run it anywhere.
3. Java is very modular
Another factor that drove Java's popularity when it appeared decades ago was its heavy focus on modularity. Although Java certainly wasn't the first object-oriented language, it was probably the first one to become massively popular.
Java's modularity and object-oriented architecture remain selling points for the language today because they make Java a good solution for developers who want to reuse code across a business. Java makes it especially easy to avoid having to build each new app from the ground up, and instead borrow from existing codebases to create new ones faster.
Why You (Maybe) Shouldn't Learn Java Programming Language
On the other hand, you can make a cogent argument for why Java is increasingly not worth learning.
1. Java is becoming less popular
First and foremost, Java seems to be slipping slowly in popularity. For years, it was the most popular language, but it's now in third place. This means that, over time, fewer and fewer new applications are likely to be written in Java.
That doesn't mean, of course, that Java is going away. On the contrary, as noted, it's likely that businesses across the world will need Java programmers for decades to come to maintain legacy codebases.
Still, if you want to focus your programming career on building new things, as opposed to maintaining those that already exist, Java may not be the best language for you.
2. Platform independence is less important in 2022
The fact that Java is very platform-independent arguably matters less today than it did 10 or 20 years ago.
The reason why is that we live in a software-defined world. Today, virtual machines, containers, and cloud services make it easy to run an application wherever you want, without worrying about the underlying environment configuration.
In other words, you don't have to change your code to make your app work where you need it to work. You can change the hosting environment instead.
This isn't to say that application portability no longer matters. It's just not as critical as it used to be, and that makes Java a bit less important by extension.
3. Java is not simple
Java may be easy to learn, but it's not simple.
The language is easy to learn because Java code is straightforward to write, organize, and compile. But it's not simple because code written in Java tends to be more verbose and more tedious to write. You also have to compile it, which makes Java much less convenient than languages like Python.
So, if you're a college student learning to code for the first time, Java can be a good language to start with. If you're a professional who wants to churn out simple, elegant code and deploy it quickly, Java is not the ideal choice.
It's very unlikely that Java will disappear anytime soon. It remains far too deeply embedded into the programming culture and codebases to be nearing its demise.
Still, Java is not the obvious, go-to, general-purpose programming language that it was back in the late 1990s or 2000s. Arguably, Java's heyday has passed, and it only makes sense to learn the Java programming language today if you have specific goals — like getting a job where you'll maintain legacy Java codebases, or gaining an introduction to programming.
About the authorChristopher Tozzi is a technology analyst with subject matter expertise in cloud computing, application development, open source software, virtualization, containers and more. He also lectures at a major university in the Albany, New York, area. His book, "For Fun and Profit: A History of the Free and Open Source Software Revolution," was published by MIT Press.