Software Side Hustler

Software Side Hustler

Share this post

Software Side Hustler
Software Side Hustler
Programming Language Advice to My Daughter, Part 4: Java

Programming Language Advice to My Daughter, Part 4: Java

Although Java is declining in popularity, it still has valuable merits that make it worth learning.

Zhimin Zhan's avatar
Zhimin Zhan
Jul 21, 2025
∙ Paid
1

Share this post

Software Side Hustler
Software Side Hustler
Programming Language Advice to My Daughter, Part 4: Java
Share

Medium version of this article.

In this “Programming Language Advice to My Daughter” series:

  • Part 1: Ruby

  • Part 2: C++

  • Part 3: Shell Script *

  • Part 4: Java

  • Part 5: Wrap-up and FAQ *

I (and therefore my family) made a living mostly with Java. I started using Java since v1.0.2 as my research project for my master's degree in 1997, and since then, with a total of 2 years of working in C++ and C# in between, most of my day work is using Java (and some JavaScript). So, I am a Java-lover, but for the future of my daughter, as a software engineer, I rate it behind Ruby, C++ and Shell Script.

Web Development: Transitioning from Java to JavaScript

For enterprise web development, there has been a transition from compiled languages to scripting languages. Successful examples as Facebook (PHP) and Airbnb (Ruby). Google’s bet on Java with its App Engine has failed.

Java’s decline can be traced back to wrong architectural decisions made by Sun itself and incompetent software architects, such as EJB and schema-generated objects. The language itself is fine. However, incompetent senior software engineers needed a scapegoat. So, Java took the fall. This led to the rise of its scripting cousin, JavaScript, beginning with Angular.js (which ultimately failed), and followed by a wave of JavaScript frameworks, most notably React.js.

Some might also argue that Ruby and C++ share some overlap with Java — for example, Ruby is popular among web developers, and Java’s object-oriented features were heavily influenced by C++.

Why does Java still matter?

Still, I believe Java is worth learning (especially for beginners) for the following often-overlooked reasons.

Refactoring support in Intellij IDEA

I enjoy coding in Java using Intellij IDEA, an excellent Java development IDE. When working on my own apps in Ruby with TextMate (a great programming editor that likely inspired Atom, Sublime Text, and VS Code), I sometimes miss the powerful refactoring features available in Intellij IDEA.

I’ve memorized nearly all of Intellij IDEA’s keyboard shortcuts, allowing me to code in Java with high efficiency — almost entirely mouse-free. To highlight just how valuable refactoring and Intellij IDEA can be, here’s a thank-you message I received from a former mentee after he landed a job at Google as a Senior Program Manager.

Keep reading with a 7-day free trial

Subscribe to Software Side Hustler to keep reading this post and get 7 days of free access to the full post archives.

Already a paid subscriber? Sign in
© 2025 Zhimin Zhan
Privacy ∙ Terms ∙ Collection notice
Start writingGet the app
Substack is the home for great culture

Share