Should You Still Learn to Code in 2025? 11 Honest Rules
A software engineer's talk on learning to code when everyone says AI will replace developers
Everyone's talking about AI like it's the end of coding.
CEOs from Google to NVIDIA are saying learning to code is a waste of time.
Social media is full of people claiming AI will replace software engineers completely.
"Why learn to code when AI just writes it for you?"
Maybe they're right. Maybe they're not. But here's what I know for sure: software engineers are still needed today.
The role is changing, though. It's not the same job it was 5 years ago, and it'll be totally different in the next 5-10 years.
So, should you still learn to code?
Here are 11 honest rules to help you decide.
Rule 1: Use AI. But Don't Let It Use You
AI is wild right now.
I use it daily for work, both ChatGPT, Claude Code, and whatever coding model is popular in CursorAI. It's fantastic when I create new projects from scratch, write SQL queries, or debug errors.
But here's my advantage: I'm a professional engineer with over 10 years of experience. I know when AI spits out garbage and what needs fixing. Everyone who learned to code the "hard way" 5+ years ago has this same edge.
You need to learn to code before you can learn to use AI to help you code.
Here's the problem: if you lean on AI too early, you skip the struggle. You skip the learning. You might get working code, but you won't understand why it works or if there are better ways to do it.
When something breaks, you won't know how to fix it without AI. And AI can hallucinate like crazy.
My take?
Use AI 100%. But use it after you've tried solving things yourself first. Even if it's messy. Even if you fail.
Then ask the AI: "How would I implement this loop?"
Now you've got two solutions. You can compare, refactor, and learn.
Use AI as a force multiplier, not a crutch.
You're Batman. AI is Robin. You drive the Batmobile.
Rule 2: Build Weirdly Specific Projects
If you're learning to code, your first three projects probably looked like this:
A todo list
A weather app
A calculator with buttons that only kinda work
Those projects are fine. They're structured, easy to follow, and teach you the basics.
But they don't teach you to think like a real developer.
Build something weird and specific instead. Have a goal.
My buddy built a device for his washer to tell him when the community laundry was free in college. I built an iOS app (never accepted to the App Store) that compared prices for items like "MacBook Pro" across different online stores.
These projects are unique. You won't find exact tutorials online. But they'll make you a better developer overall. Build something you actually want to use.
Rule 3: Learn in Public
You don't need to be an expert to post online.
I do YouTube and LinkedIn. Creating and learning in public is scary at first, but it ends up being really cool. Most of my content requires me to learn something new first. I have to look things up and figure stuff out.
Some of the best content online comes from people who have just started and share what they're figuring out in real time. It shows their progress and growth.
You might think: "Why would anyone care that I learned how Python decorators work?"
But to someone one step behind you, that's gold. I've created videos thinking they'd flop, only to have them become my best content.
You're documenting, reflecting, helping others, and building a portfolio without even trying.
Visibility compounds. People don't hire mystery developers.
Rule 4: Tools Are Temporary, Thinking Is Forever
Tech stacks change constantly. The fundamentals don't.
How you break down problems doesn't change.
How you structure your logic doesn't change.
How you think about performance or security doesn't change.
That's what separates real engineers from people who watch tutorials.
Frameworks are great and let us build products faster than ever. But they're just layers over fundamentals.
Go deep on core skills:
Learn Python deeply, then FastAPI makes sense.
Learn how the web and HTTP work.
When you understand the why, you can learn any what. The whats are changing. The whys aren't.
Rule 5: You Need Consistency, Not Motivation
Motivation is unreliable.
It's great on Sundays when you binge tutorials. But what about Tuesday after work when you're tired?
That's where consistency matters most.
I didn't become a software engineer right after college. My first job was as a business analysis, someone who works between developers and the business.
But I always knew I wanted to code.
So what did I do? I spent every single night learning to code. Every night, not really knowing what I was doing. I learned through consistency.
That's what puts me in a unique spot now. I know how many of you feel. The only thing that gets you where you want to go is showing up consistently.
You don't have to do exactly what I did. I had no family then. Now I have a wife and 2 children. I couldn't put in the same hours now.
But I'd still be consistent, maybe just to a smaller degree.
Rule 6: Track Progress Like an Athlete
I was a college basketball player.
My whole life was about developing basketball skills. How? I put in work and tracked progress.
If athletes track their progress, why do so many developers wing it?
We bounce from tutorial to tutorial, hoping something sticks. But progress in code feels invisible unless you document it.
You'll spend hours trying to figure out why your form won't submit. Then you'll find a solution, fix it, close the tab, and forget it happened. A week later, you think, "I'm not even improving."
But you are. You didn't track it.
Start a dev journal. Nothing fancy, a physical book or online notes. Spend 3-5 minutes writing what you worked on and what confused you.
When you document your journey, you can reflect and look back.
You won't believe how far you've come in just a few months.
Rule 7: Foundations Beat Frameworks
You can learn FastAPI in a few weeks if you have a strong Python foundation. But without a deep understanding of Python, that FastAPI app is held together by duct tape.
Frameworks are amazing, but they're built on fundamentals.
Learn:
How HTTP works
What REST endpoints do
How databases query data
How routing functions under the hood
Authentication and authorization
The deeper you understand core concepts, the faster you pick up everything else.
Rule 8: Learn Backend and Frontend (At First)
I knew I wanted to be a backend engineer.
However, it was challenging to develop backend projects without a frontend. So I learned both at the same time. This has gotten easier with AI's help. Consider using a CSS framework like TailwindCSS or Bootstrap for added assistance.
This kept me motivated. I wanted to build real projects, something I'd actually use.
For me to use it, there had to be a reliable backend and a good frontend.
Real software that people actually use? It's never just frontend or backend.
It's both. Always.
Rule 9: Don't Wait to Feel "Ready"
If you're waiting to feel ready before building your first project, applying for your first job, or posting your code online... you'll be waiting forever.
You will never feel ready. That's completely normal.
When I was learning to code, I coded every night for at least a year and started applying to jobs after just 2 months of learning.
Each failed interview taught me what people were looking for. Each failed project taught me more.
I remember applying for a junior position. Someone asked what the alternative to an if-else statement was. I had no clue. I said, "I don't know." They replied, "ternary operator."
I went home and researched it.
Don't give up. Everything is a stepping stone to getting better.
Your brain is wired to protect you. When you think, "Should I build this app?" your brain says, "What if it sucks?"
When you think, "Should I contribute to that GitHub issue?" your brain says, "What if you get it wrong and look dumb?"
That's what keeps people stuck.
Rule 10: Build Ugly Before You Build Beautiful
We all want to make professional applications from the start.
I struggled with this too. I wanted to create side projects right away without going through the learning hustle.
But that obsession with polish slows you way down.
The more you chase perfect design upfront, the less actual progress you make. You fall into the trap of endless tweaking, spending hours customizing code that doesn't move the needle.
Three hours later, you've changed 12 different things, but your submit button still doesn't work.
Focus on making it work first. Make it pretty later.
Rule 11: Get Comfortable Not Knowing
Let's be real. You're going to feel dumb. A lot.
You'll hit bugs you can't explain. You'll Google or ask AI about the same error 10 times. You'll copy-paste code you barely understand.
That's okay. Every developer does it. Even seniors.
The difference? Seniors don't panic. They don't pretend to know everything. They ask questions, read docs, experiment, and figure it out.
You're not behind. You're just in the part of the process where growth happens.
The Bottom Line
The rules have changed. The tools are different. The bar is higher and the noise is louder.
But software engineers are still needed. The role is evolving, not disappearing.
So start building. I'll see you on the other side.
Cheers friends,
Eric Roby
Find me online:
LinkedIn / YouTube / Threads
If you enjoyed this read, please share with one person or restack it. This is the absolute best compliment I could receive.