Java was not underhyped in 1997 (2021)

Context of the 1990s Java Hype

  • Many recall Java as wildly overhyped: “rewrite everything in Java” including office suites, browsers, and cross-platform desktops.
  • Others argue the hype was partly justified: Java promised VM-based portability, memory safety, and network-centric programming at a time of Microsoft dominance and fragmented OS platforms.
  • A useful framing: 1997 hype was selling the Java (and Internet) of ~2007; ideas were right, timing and maturity were wrong.

Technical Strengths and Weaknesses

  • Strengths highlighted:
    • Memory safety and GC vs C/C++, especially important for enterprise reliability.
    • Early support for distributed systems (RMI, JNDI, serialization) and a serious VM/JIT story.
    • JVM sandboxing and security model (later mostly abandoned as applets died).
  • Weaknesses and early pain:
    • Slow startup, heavy RAM use, frequent crashes in applets and Swing-era tools on 1990s hardware.
    • Immature libraries and clunky cross-platform GUIs (AWT/Swing vs native toolkits).
    • Core language limitations in early Java (no generics, awkward collections, boilerplate).

Industry, Enterprise, and Academia

  • Java became a default for backend and “enterprise” systems, displacing COBOL/Ada and much C++; still dominant in Fortune 100/500 backends and on mainframes/midrange.
  • Enterprise frameworks (EJB, then Spring) brought both power and excessive complexity; Spring is seen as simultaneously enabling and obscuring.
  • Sun’s deliberate push into universities seeded an entire generation of Java-trained developers.
  • Java lowered total cost of ownership for big organizations by enabling large, average-skill teams to build reliable systems.

Comparisons and Legacy

  • Compared with Rust/“rewrite in Rust”: Java and Rust are both justified by safety, but operate in different niches; many doubt Rust will reshape general business software as Java did.
  • Other safe languages (VB, PowerBuilder, xBase, Perl, Python, PHP, JS) also eroded C/C++’s reach; Java is one of several, but had unique reach via the JVM and J2EE.
  • Modern debates focus on GC performance, lack of unsigned primitives, and the “Java-enterprise mindset,” but many tools (IDEs, DB clients, Android stack) and major clouds still rely heavily on Java.
  • Several comments connect Java’s 1990s hype cycle to today’s AI/LLM and crypto hype: some claims will prove prescient, others wildly overstated.