I Happened to Learn Programming at a Strange Time
The timing of when I started learning software development was unusually interesting.
I began taking programming seriously just as generative AI was starting to grow rapidly. So I still experienced what it felt like to build software almost entirely from scratch.
My first time using Flutter, connecting an API, designing a database, or deploying a service usually meant reading documentation, searching through old forum posts, and fixing errors one by one. Sometimes a tiny bug could take half a day.
I remember what it felt like when simply making something work was already difficult.
But my learning journey also happened to overlap with the rise of generative AI.
At first, I used AI to explain error messages. Then I started using it to understand unfamiliar frameworks, compare technical approaches, and learn concepts more quickly. Today, I can describe an idea and get surprisingly close to a working prototype in a very short amount of time.
In a way, I have been watching programming become easier while I was still learning how to program.
That makes this change feel very personal to me.
I used to assume that becoming a better builder mainly meant learning another framework, another language, or another layer of system design.
I am no longer sure that is enough.
What Happens When More People Can Build?
AI does not make technical knowledge irrelevant.
I still believe fundamentals matter. Without understanding how systems work, it is difficult to know when an AI-generated answer is wrong, and even harder to build something genuinely complex.
But something else is happening at the same time:
Implementation is becoming cheaper.
In the past, someone could have a great idea but never turn it into anything because they did not know how to code. That distance is shrinking very quickly.
And it makes me wonder:
If being able to build something becomes less rare, what becomes more important?
I do not think I have a complete answer yet.
But increasingly, I think part of the answer exists outside technology.
What Do You Have to Bring Into Technology?
I used to spend most of my learning time on things directly related to software.
Recently, I have found myself exploring subjects that I would not have considered "useful" for an engineer before: classical music, forest therapy, psychology, space, human perception and experience.
None of these things make me write code faster.
But they make me ask different questions.
When I learned about forest therapy, for example, I started wondering whether parts of a restorative natural experience could be recreated through VR, spatial audio, or other interactive technologies.
A real forest contains many things that a digital environment cannot reproduce. But that is not actually the part I find most interesting.
The interesting part is this: if I had never learned anything about forest therapy, that question would probably never have entered my mind in the first place.
Technology gives me a way to build something.
But what I decide to build often comes from somewhere outside technology.
I have only recently started appreciating that distinction.
The Humanities Are Not Decoration for Technology
I used to find phrases like "technology and the humanities" a little abstract. They sounded like something people added to the final slide of a technology conference.
Now I think I understand them differently.
If you are technically strong, you can become very good at answering:
How do we build this?
But many of the questions that come before that are not technical at all:
- Why does someone need this?
- What makes an experience meaningful?
- Why do people trust one interface and ignore another?
- What makes someone feel calmer, more connected, understood, or motivated to change their behavior?
- Is a product actually solving a problem, or are we simply adding another feature?
Computer science alone cannot answer these questions. They sit somewhere between psychology, design, education, art, culture, and ordinary human experience.
I used to think "human-centered" meant making sure technology ultimately serves human needs. I still believe that.
But now I think human-centered thinking starts earlier than that.
It is not:
We have this technology. How can we make it work better for people?
It is closer to:
We understand something about people. Is there a place where technology can help?
I Do Not Want to Become Only Better at Writing Code
This is probably the biggest change in how I think about learning right now.
I still want to become technically better. I still care about database design, distributed systems, agent architectures, and good software engineering. I can still get genuinely excited by an elegant system design.
But I no longer want to spend all of my time becoming only "better at writing code."
If AI continues moving in its current direction, I suspect the difference between people will not simply be who can implement something the fastest. It may also depend on:
- What you understand.
- What you care about.
- What you pay attention to.
- How much of the world you have actually explored.
And when you are given a tool that can turn ideas into reality much more easily than before, whether you have anything worth turning into reality at all.
That is why I have started spending time listening to music I would not have listened to before, learning about fields far away from computer science, and paying more attention to things that seem unrelated to software.
Not because I want to move away from technology.
Actually, it is the opposite. I still want to build technology.
I just hope that what I build in the future exists for a reason beyond the fact that I know how to build it.