2/25
The reason to study software engineering is changing. Writing code is becoming something that you delegate to AI. But that’s not an argument against learning it. It’s an argument for learning it for a different purpose—not as vocational training for a job that’s being automated, but as a way to master systems thinking. The real value of software engineering isn’t coding; it’s learning to see the world as a layered puzzle of inputs, outputs, and consequences.
Software engineering is unique because it forces you to confront interconnected systems. When you build even a simple app, you're not just writing code—you're architecting decision flows between databases, servers, and user interfaces. This discipline transforms how you perceive complexity: you start recognizing the world as a dynamic network of relationships and incentives.
As Jobs said, the world is a system built by people "no smarter than you,” and you can poke life and reshape it. Software engineering embodies this ethos. Mastering systems doesn’t just mean understanding your place in the world—it means seeing which parts can be changed and how, and with what downstream effects. It’s not about becoming a programmer; it’s about becoming a thinker—the kind who doesn’t just live in the world, but can change it.