Java Was My First Language — And It Taught Me More Than I Expected
In school, I had a subject called "Introduction to Programming with Java." I expected it to be as dull as any other class. Instead, it became the moment I realized programming was something I could actually do — and actually love.
The First Hello World
I remember the exact moment. The teacher typed the following on the chalkboard:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
I was bewildered. Why was there a class? Why was main inside it? What did static mean? The syntax looked like a completely foreign language — not because I couldn't understand the English words but because the structure of it was alien to everything I'd learned before.
And then we ran it. And it said "Hello, World!" on the screen. And somehow that 13-word output from 5 lines of confusing-looking code felt like magic.
What Java Actually Taught Me
Java is verbose, opinionated, and overly ceremonious for a beginner. But those "flaws" turned out to be surprisingly good for learning fundamentals:
- Object-Oriented Programming — Classes, objects, inheritance, polymorphism. Java forced me to think in terms of entities and behaviors. This mental model shapes how I design systems today.
- Type safety — You had to declare the type of every variable. This was annoying but taught me to think about data types at every step.
- Compile-time errors — Java tells you what's wrong before you run it. For a beginner, this was an incredible feedback loop — I understood exactly what I broke.
- Methods and abstraction — Breaking code into reusable methods, thinking about what "belongs" where in a class — this is still how I approach every backend I build.
The First Real Program I Wrote
Our class assignment was to build a basic calculator. Four operations, an input from the user, an output displayed. I stayed late in the computer lab to not just finish it, but to make it handle division by zero properly. I wanted it to be correct, not just functional.
That instinct — to handle the edge case, to think about what could go wrong — came directly from Java. Strongly typed, structured, opinionated. Those properties force you to think rigorously from the start.
Java → Python → Everything Else
I moved to Python in college, and the jump felt effortless because I already understood what a class was, what a method was, what types and loops and conditions meant at a conceptual level. Python just made all of that lighter and faster to write.
From Python came Flask, then ML libraries, then AWS, then the projects in this portfolio. But every one of those things is built on a mental model that Java built for me in a school classroom.
If you're just starting out as a developer: don't be afraid of "verbose" or "structured" languages early on. The discipline they impose is exactly what builds the foundation for the freedom you'll want later.
See how Java fundamentals evolved into the full-stack and AI work I do today.
See My Projects
