Develop Yourself
To change careers and land your first job as a Software Engineer, you need more than just great software development skills - you need to develop yourself.
Welcome to the podcast that helps you develop your skills, your habits, your network and more, all in hopes of becoming a thriving Software Engineer.
Develop Yourself
#285 - Listen to This Before You Learn to Code with AI
Thinking about learning to code with ChatGPT, Cursor, or Copilot?
Hit pause for ten minutes.
In this episode, I break down why AI isn’t replacing developers but it is making it harder to learn.
You’ll learn the right time to start using AI as a beginner, how to avoid outsourcing the struggle that builds real skill, and the “teach-back” method that can boost your learning retention by up to 90%.
Referenced study: https://budgetlab.yale.edu/research/evaluating-impact-ai-labor-market-current-state-affairs
Shameless Plugs
👉 Build Your First Website in 30 minutes 👈
✉️ Got a question you want answered on the pod? Drop it here
🧑💻 Apply for 1 of 12 spots at Parsity - Become a full stack AI developer in 6-9 months.
Welcome to the Develop Yourself podcast, where we teach you everything you need to land your first job as a software developer by learning to develop yourself, your skills, your network, and more. I'm Brian, your host. If you're learning to code right now, you've probably been told that AI is going to replace you and that within a year there won't be any jobs left for junior developers. And here's the actual truth. The only people that AI is replacing are the ones who never actually learned to code in the first place. I want to show you how to actually learn in the age of AI without getting left behind as a coder. When I started learning to code about 11 years ago, the internet was a very different place. YouTube had just passed a billion users, there were no thumbnails promising to teach you React in a week or a day. There weren't really any tech influencers, and there weren't also an endless sea of opinions out there. If you wanted to learn to code in 2013, you had three options buy a book, read Stack Overflow, or enroll in a structured course. I did all three. It wasn't glamorous, it wasn't really expensive either, and it worked, mostly because there wasn't that much noise to compete with. In many ways, I was very lucky. The market was much different, and learning to code, honestly, was a lot easier in many ways. Not because actually learning to code was easier, but because there were fewer resources. So picking one and sticking with it had a lot better success rate than enrolling in yet another 100-hour YouTube tutorial. Today, information is basically everywhere and it's free. And paradoxically, I think this is the biggest reason that most people actually never learn to code. You hear things like you don't need a boot camp, you don't need college, just learn with AI and free tutorials. And yes, this can absolutely work. I've seen this work with people, with a minority of people, but most people drown long before they ever build anything remotely meaningful. And now you have AI, which makes it really easy to confuse access with understanding. You can generate code instantly, you can debug without reading errors, you can even ship an entire app, but you're not learning anything. You're outsourcing the struggle that actually builds the skill. I've watched dozens of people try to learn through Chat GPT, and I've even seen people build some decent looking projects, but they can't actually explain the code. These aren't people that I would label as software developers, these are rather prompt engineers and nobody. And I want to make this clear that nobody is hiring for that job. Here's something that very few people on tech YouTube or podcast will tell you when you're just starting out, don't use AI at all. Don't use cursor, don't use Claude, and barely use Chat GPT. At most, I would use GitHub Copilot, and even that I would do so very sparingly. You should be typing out everything by hand. Yeah, it's slow. Yeah, it's frustrating. That's kind of the point. Learning to code is like learning any other language. You don't start with the translator, you memorize vocabulary until it becomes intuition. The intuition then lets you debug and see patterns. If you skip this process, you'll always be guessing why your code works. You can't outsource intuition. This is something you have to earn and learn over years or days or weeks or months of practice. Here's another interesting phenomenon I've seen on YouTube, LinkedIn, and Twitter. Most of the people giving you coding advice online have never actually worked in software. For the most part, from my research, I've seen there are jaded boot camp grads, influencers who wrote code for six months or less than a year or so before realizing it was a lot more profitable to sell you content about coding than actually code. So when you're scrolling through Reddit or YouTube or you hear that AI will replace developers, remember this you're being marketed to, not mentored. Their job is to get clicks, and your job is to get good. These are not always in line with each other. Now I am not an AI basher at all. In fact, I feel very much like an early adopter for a lot of AI tools like Claude and Cursor and working at AI startups where I've literally built apps using AI, integrating AI, and making data pipelines and working to deploy models out into the cloud. I like AI, I think it's an awesome thing. But I don't think you should be using it when you start. Now, there is a point where AI becomes valuable, but it's not when you're building your first to-do app. I think this is a moment you're going to come to, and I think at this particular moment is when you should begin using AI. It's when you finally look at your code and you think, damn, this sucks. I could do better. This is when you're ready. I think you should have built a small full stack app. Maybe it's a project tracker or a blogger, movie finder, whatever. And everything technically works, but the structure is ugly. You recognize that there's a better pattern that could be used. Maybe you think this could use the facade pattern, for example, to clean up repeated API calls or something. You've read about this pattern, you understand it, you see why it's valuable, but doing the refactor manually, basically redoing the code to now use this pattern, would be really, really miserable. It would just suck to do. This is the moment when I think, okay, time to use AI, right? You're not offloading the thinking at this point, you're offloading the typing. And the basic rule of thumb is if you couldn't write it yourself, you shouldn't copy it from AI. Same thing applies 10 years ago when we were all copying and pasting from Stack Overflow. If you can't explain the code, it shouldn't be in the code base. Now, this has happened to me before. Very embarrassing. Got called out, thought I was gonna be fired. Plot twist, I didn't get fired, but it taught me a valuable lesson. Don't copy and paste code that you don't know what it does. Now with AI, you can basically speed run your career of copying and pasting code, and you probably will get fired if you actually do this and think it will result in a career. Because when it breaks, which it inevitably will, and you say, Oh, AI did it, that's not gonna save you. It's still your name on the code that your teammates will see that will live on forever. And when I think about it, I do think there's one exception where beginners can use AI early on and as a thought partner, not a code generator. Let me explain. When I was trying to understand linear algebra, which I don't know anything about math, by the way, and I was trying to learn more about how large language models work under the hood, learning about retrieval augmented generation and vector databases, things that are way outside the general knowledge I've obtained by being a software developer, mostly working on the web, right? I just didn't know this stuff. And I'm like, I want to know this stuff, I want to sound smart, I want to know how these things work a little bit under the hood. So I read papers, I read books, I looked on YouTube, I did all the things that you're probably doing to learn also. Here's another thing I did which really accelerated my learning. I talked to Chat GPT, like I literally talked to it. Sometimes I'd record myself in Loom or Voice Notes, and I use ChatGPT's voice recorder all the time. I rarely ever type into it. But if you don't have that option or you don't pay for ChatGPT, I would record myself in something that would take a transcript, so maybe voice notes or use something like Loom or whatever you want to use. Whisper is another great tool that will take your voice, your thoughts, and transcribe them and then paste this into ChatGPT and ask it, did I get this right? Where am I wrong? And what could I tighten up? Basically, you can explain to it how things like promises or async await work or large language models or vector databases or cosine similarity or dot product or whatever you're trying to learn. You're gonna learn a lot more from teaching. This is called the teachback method, or maybe it's not, I don't know, I just made that up. But studies show that we retain 90% of what we teach. Teaching really forces clarity. If you can explain what your code does, you understand it. If you cannot, then you don't. And AI makes this painfully obvious. In fact, I'll take it a step further. Your ability to articulate your thinking is your superpower as a developer. And I've never met a developer ever that wasn't excellent at communicating technical concepts. Now let's address the elephant in the room, the AI hype machine. And let me be very honest, I make these kinds of videos and I write articles and I talk about this because I'm a bit upset in general with the kind of news we've been getting fed and pushed down our throats lately. I'm not so mad at the technology, which I think is amazing, but the storytelling around the technology is awful. A year ago, we were told that AI would replace developers in about six months. That obviously didn't happen. In fact, there are more jobs open right now than there were at the beginning of the year. And there are more jobs then than there were the previous year. And the company is spreading this replacement myth that you can just replace a team of people, specifically developers for whatever reason. These companies are open AI, Anthropic, Google. They're hiring more developers than ever. If these companies were truly trying to replace us, why would they need to hire so many of us? Don't just believe me, just literally look up OpenAI's hiring trends and see how many software developers they're hiring, front-end, back-end, full stack, AI, and look at the astronomical salaries they're offering for these positions. Doesn't make any sense to me on the surface at all. And maybe it doesn't to you either. If you're very smart and you understand why this may be happening, I would love to hear it. But it seems like there's a lie being told that really needs to become true. AI companies are burning billions of dollars in compute costs, and to justify it, they've basically told investors don't worry, this is going to unlock trillions in productivity by replacing a percentage of the workforce. Otherwise, if this isn't true, then they've just built the biggest bubble in history. The media loves to amplify this because fear sells. And also, it's kind of cool to see software developers getting dunked on. People love it to hear how developers who for years have been touted as having really, really nice positions and getting paid a lot of money, let's be honest, for not always doing what appeared to be a lot of work. I blame TikTok and Instagram and other social media outlets for this by having people showing these day-in-the-life TikToks where they're just drinking coffee and showing up at 11 a.m. to work. For 99.9% of us, that was never the case at all. But it became the image that people saw of software developers. And at the time of recording this, Amazon just laid off like 14,000 people, some astronomical number of people. And they're blaming AI for this. Yet Yale, who just released a study, which I'll have in the show notes, is showing no measurable impact of AI on job displacement. Well, which is true. Is Amazon and all these other companies firing people because AI is replacing them or making their work redundant? Or do they have the best scapegoat possible? And is this AI replacement really more to free up AI investment? Now I could cite other studies, which many people have before, some are truer than others about how AI has slowed down developers, how many projects at companies who have who have invested in AI have not materialized or made any money at all. In fact, the overwhelming majority of them apparently have not. It doesn't even matter because all you really need to do is trust yourself. If you use AI, you probably see it forgets context, it hallucinates things, it could break your code, it could do really gnarly things if you're not careful. It's not replacing developers. In many ways, it's barely helping us. It amplifies the skills of people who already know what they're doing, especially if they're on smaller teams or working on greenfield or beginner projects. And by beginner projects, I mean code that is fairly small and hasn't had a team of developers working on it for years. So basically, a small minority of people are gonna unlock tremendous gains from this, while the majority of us who work in more legacy systems or at companies who are more than a year or two old are not going to see the same productivity gains. So if you're considering getting into coding, let me tell you first of all, it's not a get-rich quick scheme. It's barely a get rich slow scheme. You're probably never going to be rich from writing code. But also don't bet your career on hype and decide what kind of developer you ultimately want to be. Do you want to be a craftsperson, someone who understands systems, patterns, trade-offs, and actually enjoy what you do? Or do you want to be a surface level operator who knows how to prompt but not really think through the code? Now, obviously, I have an opinion on this, and I do think there is a place for prompt developers and vibe coders, mostly for creating prototypes and doing business level experiments and running companies of one or two people. This is an excellent case for doing prompt development or vibe coding or vibe-driven development. If you're not working on a larger team or maybe you're an entrepreneur, I think there's an excellent case to be made for doing exactly this. But if your goal is to switch careers or be a software developer, you don't want to fall into this trap. Because when AI gets better, and I'm not super sold on the idea that it's just gonna get better and better and better. No technology in our lifetime has gotten exponentially better. I don't know why people keep saying this silly thing that this is the worst AI we'll ever get. What if it's the best AI we'll ever get? We don't know. But either way, if it does get better, the first people it replaces aren't gonna be the really skilled people. It'll be the ones who didn't learn the fundamentals. The crafts people will adapt. The prompt engineers will die an even quicker death than they are already. So, what's really changed? I think the only thing that's really changed, honestly, if you're trying to learn to code, is learning how to put the blinders on. Ignore the nonsense you're reading on social media. Stop trying to be lazy with your learning and thinking you can offload everything onto AI to teach you, and then use it in ways that actually make sense, like as a thought partner or using it to reinforce what you've already learned by speaking into it. And I really do hope you do this because speaking out your thoughts and verbally articulating these concepts that you're learning is gonna be super useful. It's gonna be one of the most powerful ways to learn and enforce and retain that information because the people who understand the why behind the code are gonna outlast the people who only know how to ask what. Hope you found that helpful. See you around. That'll do it for today's episode of the Develop Yourself podcast. If you're serious about switching careers and becoming a software developer and building complex software and want to work directly with me and my team, go to parsity.io. And if you want more information, feel free to schedule a chat by just clicking the link in the show notes. See you next week.
Podcasts we love
Check out these other fine podcasts recommended by us, not an algorithm.