Feeling Behind as a Programmer ![rw-book-cover](https://img.youtube.com/vi/e-_743sQLa8/maxresdefault.jpg) If I could describe what it was like to be a programmer in the year 2025, um, in a few words, it would be hype and fear of missing out. If you spent any amount of time on the internet, you were hearing about the latest models, the latest tools, how you should be using AI to increase your your output and um, make your your workflows better. And if you're not using these tools or you're not staying up to date, then you're going to be falling behind. Um, but let's let's take a second. Let's take a second and look back at this past year and just kind of think about, well, are you behind? Did did you actually fall behind if you didn't stay up to date? Um, let me know down in the comments like how how are you feeling? Because this is a a feeling that a lot of people have and have been living with for the past year. And I think now that we're we're going into a new year, um it's time to reflect and also think about how do you want to spend 2026? Do you want to be dreading every day as a programmer or having all of this fear of missing out? Um, or do you just want to put your nose down and start building and shipping features and not worrying about what everyone else is doing or where what other people are saying is the the stuff that you should be paying attention to. And really, a lot of this came to a head from the tweet by Andre Karpathy. And if you're not familiar with him, he is actually the person that coined the term vibe coding. Um, he's worked at OpenAI, he's worked at Tesla. if anyone is going to have opinions about this that we could potentially really make us think, it's going to be somebody like Karpathy. Um, and so there they open their tweet with, I've never felt this much behind as a programmer. The profession is being dramatically refactored as the bits contributed by the programmer increasingly sparse and in between. Now, this kind of gets at the sentiment that more and more we are writing less code. Like AI is writing more and more code for us. Now, I don't think we're even close to AI writing all of the code for us. And as I'll talk about, the skill of being an engineer and understanding the AI's output, the code that it's spitting out is still essential and is going to be essential for years to come. Like that that skill has not gone away. But it could it definitely feels like it bec tools and some of these late latest models. It can feel like magic. It can feel like oh my goodness, I'm never going to have to write code again. >> [snorts] >> Um, but as I'm going to talk about th those skills are definitely still needed. Um, and then he says, "I have a sense that I could be 10x more powerful if I just properly string together what has become available over the last year. And a failure to claim the boost feels decidedly like a skill issue." [snorts] This this is the problem. This is the worm that gets into your brain that's like, "Oh my goodness, if I just had 10 more agents running, I could be increasing my output and if I don't, I'm falling behind. No, no. Like, if I don't figure out how to use these tools or how to string them together, I I basically I'm I'm I'm an incompetent developer. This is the thing that we need to stop doing. Obviously, it's it's natural. It's it's human to feel this way. But I am here to urge you to take a step back, take a pause for a second, and realize that you don't have to 10x your your output. What you're just look at what you're doing right now, what you've done over the past year. Was it enough? Would it have been better if it was 10 times more than what you did? Um, I'm I'm proud of what I did this past year. So, like feeling that you needed to be 10 times more productive or that you if you don't have 20 agents running in the background, you're not doing enough. That is the thing that we need to stop doing as a whole and just get more towards shipping things, right? using what we have, what we're good at, and building features and shipping and and that's really what we need to focus on. Now, this next piece that he talks about here, I think is actually he's laid it out. He's basically told us this is all the stuff that you need to know if you want to be an agentic developer, an AI native developer. Um, and it kind of answered his own question or his own concerns. So he says there's a new programmable layer of of abstraction to master in addition to the usual layers below involving agents, sub aents, their prompts, contacts, memories, modes, permissions, tools, plug-in skills, hooks, mcb, LSPs, slash commands, workflows, ID integrations, and a need to build an all-encompassing mental model for shrinks and pitfalls of fundamentally stocastic, fallible, and unintelligible and changing entities suddenly intermingled with what used to be good old-fashioned engineering. Sure, it's a lot. Uh, but we're still early days. [laughter] And the fact that you can list out all of these things means you can learn these things. And this is kind of what I what I what I want to get to and what my main point for all of this is. Consider what it took for you, the person watching this video, to get to where you are in your career. What do you have to do? For me, I had to initially learn how to learn. This field is constantly changing and has always been constantly changing. And the best of us, the best programmers out there are the ones that can adapt and the ones that can constantly learn and progress while all of this stuff is crazy and happening. And when we do it on a daily basis, and I personally have been doing it for years as well. And so this is no different. It feels different because it feels like it's moving faster. Especially with all of the hype there. there's just this is the most hyped thing in the history of programming. So with all of that it can feel more urgent. It can feel like these are things that you can't learn or you're going to fall behind. But that is not the case for that. Let's just let's just break this down. Right? He he carbi has basically listed out all the things that have come out over the past year or so. And these are things that are are potentially learnable. Right? I I have this this nice little mind map here of the AI programming layer. And you can kind of break it down into six categories. You've got orchestration, capabilities, integration, models, control, and communication. Right? Each one of these things you can learn if you're technical, if you're a programmer already, these are all things that fit into to some existing mental model that you have and you can learn more about them. Do you remember when we were being told that if you didn't learn how to prompt, you're going to be left behind. The ecosystem has essentially evolved to a point to where you can type a single sentence that's not even grammatically correct and AI will still know what you want it to do. Right? the models have gotten good enough that we don't have to know how to prompt as well anymore. Now, I'm not saying that this isn't something you can work on because you definitely can write better prompts. But what I'm saying is we were essentially harping on this idea of that if you don't practice prompting now, you're going to be left behind. That is not the case because these models have gotten so good that in a lot of scenarios, you actually don't need detailed prompts to get things done and you don't have to word things in a specific way. Most of the modern models can figure out what you want to do even with like the worst worded thing. And then you combine that with something like plan mode and plan mode can basically take your one sentence crappy prompt into something that actually AI can work with and that is more aligned with what you had in mind in your brain that you couldn't get into the four sentences instead of one sentence. So, all of this to say, these concepts, while they seem like we need to know them all right now, the the ecosystem is moving so fast that a lot of this stuff won't matter even a year from now. And why that's interesting is because when the dust settles, when we've essentially gotten out of this hype cycle and gotten to a point where we know how to effectively use these tools, we're going to be at a point where we don't have to know some of these things. So, we're going to be at a point where a lot of this stuff is even abstracted away. And so, my main bit of guidance here is you don't have to have fear of missing out and you don't have to worry about learning a lot of these things because we're going to reach a point where these things won't matter anymore. The way that we work with AI is going to change. So, you could get bogged down in working on agents and having the best sub agent and and working on your your prompting and and your context management, but currently those are all still just early days. These are not tried and tested ways of working with AI. These are still experimental. And if you put all of your effort into learning these experimental things, you're going to feel like things are changing constantly because they are. So my main bit of guidance is focus on shipping features. Focusing focus on learning and adapting the things that are going to allow you to build faster. And it's not everything, right? You don't have to be 10x your workflow. You don't have to have 20 agents running in the background. You should adopt just enough AI if it makes sense for you for shipping features and building useful things and solving real problems. Because at the end of the day, that's why we do this. That's why we do this job is we solve real world problems. Most of us anyways and we use programming and technology to do that. Now another thing I want to mention here is so I I've laid this out in terms of like six subcategories but everything I've learned so far in my career has also been broken down in this way. Right? So if we look at a mindm map of computer science, there's lots of subcategories here, each with their own intricacies and each thing that you could become an expert in. And when I was in university, sure, this was maybe a little bit overwhelming, but I took it one day at a time. And I think we're still in a place where you can take this one day at a time. And just like uh we're seeing this overview of computer science here, you can dial into any one of these things. And for instance, like a subset of programming and really a subset of computer science is full stack web development. And this is where I spend most of my time. But again, this can be broken down into a lot of other categories like front end and back end and databases and infrastructure and APIs and security and performance. And each one of those things you could be an expert in or learn more about. So I completely understand yes you could get overwhelmed because in my career there are a lot of things but at the end of the day when I focus on shipping features when I focus on just in time learning right learning just enough to get thing the thing done I don't necessarily need to become an expert in any one of these areas when I'm working on a particular project or a particular feature that allows me to keep moving and not get bogged down and not have fear of missing out or not feeling like I need to become an expert in all this stuff just to build useful things. So really, I just I just want to make that parallel for you that even though yes, this seems like new stuff and maybe some of these words you've never heard of, it's just one more thing for you to learn. It's just one more thing that's similar to all the other things that you've already learned. And yes, it's different. Yes, it's moving fast, but fundamentally it is learnable. Now, I want to point out a quote tweet from Adi Asmmani, uh, because he has some really good points in here, and he kind of talks about how what you already know is still going to be vital and useful. So, in his tweet, he mentions, "The best news about this new AI programming layer is that traditional engineering skills are more valuable than ever, not less. It helps us minimize shipping slop." Now, there are debates from people on whether or not shipping slop is okay. be and I I don't even want to get into that because there are people basically saying don't worry about the code itself because eventually AI is going to be so good that it can just clean up all the slop and it it doesn't even matter. But we're so far away from that if that is ever going to happen. So you should worry about shipping good code even if you're using AI to do it. And anybody that tells you otherwise doesn't understand how all of this stuff works. It's literally the Dunning Krueger effect in full effect, right? They essentially overestimate their abilities because they can type a simple prompt and AI outputs something for them, but they don't know how to validate it. And we've seen it time and time again, these vibe coders or people that don't necessarily understand what AI is outputting reach a point where they can't move any faster or they can't move any further because they have hit their wall of understanding and they don't even know how to talk to AI. And so this is where I can potentially see the parallels of prompting or or learning how to become a prompt engineer because you understand the system well enough that you actually can ask AI to fix your bug or add a new feature. But at that point it's not prompt engineering at that point. It's just being a subject matter expert. It's just understanding complex systems or understanding particular programming languages so that you can guide an AI to do what is needed. And that's not something you can learn by just prompting. You have to have hands on the keyboard day in dayout practice learning these things and getting experience with these things without AI to be able to guide AI to do it later on. And you you could argue with me that eventually it won't matter. But I I'm not convinced. And on that point, Addie talks about developers who have already invested in CI/CD, testing, documentation, and code review are having the most success with AI tools. These boring foundations are accelerators. They turn agents from chaos generators into productivity multipliers. Throughout my career, there have been waves and cycles of uh proponents of things like TDD or whenever DevOps became a thing where we're talking about CI/CD and and all of these various ways to improve your workflow and and better ship to production. And we've reached a point where we have solid workflows for a lot of these things. And especially when working with AI, this is the best time than ever to use all of those things because the output from AI is unpredictable. Um, is sometimes bad and needs to be validated and verified. And if you're just shipping AI code all by itself and don't have in some sort of guard rails around it, you're not going to be successful in the long term. And so that's what Addy is talking about here is if you've already invested in these other aspects and as a a software developer that cares, I have. I know about CI/CD. I know how to write tests. I know how to write good documentation. I know how to do an effective code review. All of these things are only going to make working with AI that much easier and that much better. And so again, you can take all of these concepts and blow them out into into a mind map, right? And and if you haven't done these things, now is a better time than ever to learn about these things because essentially if you treat AI output like just the shittiest programmer ever that basically has infinite copy paste ability and infinite memory recall, that's basically what AI output is, right? It's trained on all all of this code it's seen and there's a lot of bad code that it's been trained on and it's going to output bad code. So when you start to put these guardrails around it, you're going to get better output. And so understanding how to use these tools which at the end of the day are just going to make you a better software developer or have a better product to begin with regardless of if you're using AI or not. These are the kinds of things that you should focus on. Now I do want to take a step back and kind of like bring this all together and also kind of talk about this idea of agents because this is one of the things that most people are harping on right now. It's it's the the most hyped thing in terms of having uh a swarm of agents or multiple background agents. that is you have all these little one-off AIs that are all working on your codebase at the same time. And all I can think about is this idea from the mythical man month. So this is a book that was published in 1975 where its central theme is adding manpower to a software project that is behind schedule delays it even longer. So 50 years ago, we were already talking about this idea that if you throw more port programmers at the problem, it's not going to solve it any faster. [snorts] And we are essentially making that mistake again with agents. Now, understanding how paralyzable your tasks are is an effective skill set, but that's something that you need to work on. You can't immediately just throw a bunch of agents at your codebase and expect it all to work out, right? Because you're going to fall into the same traps that every single business has fallen into where they just hire more programmers or throw more programmers at the problem. And at the end of the day, if you don't understand the problems you're trying to solve or you haven't effectively analyzed how it can be broken down into subtasks, you're not going to get any more efficiency out of that. And so having that FOMO of being a 10x engineer and then launching 30 agents isn't going to get you any closer. You have to focus on the fundamentals. Focus on actually understanding how things can be parallelized and how things can be broken down. Now, with all of that, I want to leave you with some wise words from uh Sir Dax. And uh if you're if you're looking for some level-headed takes on AI, definitely give Dax a follow. But in response to Carpathy's tweet, he says, "There's some truth to this, but the most common use of all these new knobs and levers is procrastination." And this is also what I'm getting at. You can spend all of your time trying to learn the latest tools and techniques, but at the end of the day, are you shipping features? Are you getting things done? Are you providing value? Are you solving problems? And for a lot of you, you're probably not. You're probably spending so much time just tweaking your workflow to get the perfect AI output and the perfect amount of agent orchestration, but it's all just procrastination. Are you shipping features? And to get back to what I was talking about earlier of, okay, there's all this stuff that Carpety talked about. Do you need to know all of this? I don't think so. And so, I don't think you should spend all of your cycles learning absolutely all of this. I think you should pick and choose what you find to be most effective. But at the end of the day, a lot of this stuff is going to sit a lot lower in the stack. So what DAX says is the abstractions being developed right now around agents are going to sit low in the stack. I don't feel very good about them. It's been such little time and there have been already been so many avoidable mistakes. There's even a pride around the lack of effort with we just prompted it. So this idea that all of these different workflows with agents and prompts and and context engineering, we are still trying to figure out the best ways to work with AI. and we haven't found it yet. Because if we found it, we would absolutely all be out of a job. If we found it, we're basically at the singularity. We're basically at a point where AI is writing absolutely everything and we don't need humans at all. But we're not there and we're not even close to being there. So with that said, a lot of this stuff eventually you're not even going to have to worry about. A lot of this stuff you won't even need to understand because it'll be abstracted away. And that's completely fine. But the things that really matter are are the fundamentals or the things that are that are keep that that have always been the case. And that's really what what you should be focusing on. And lastly, I'll I'll leave you with this one. Dax says, "I've said forever that it takes years to evaluate any new tech. Have to get past your initial excitement bias. See what unforeseen issues pop up. Understand how it scales with complexity. This 100% applies to coding with AI as well. We have seen so much hype over the past year and at the end of the day we're all just really excited um and a lot of issues have popped up and we still haven't settled on the best way to work with AI and things are constantly changing. So my advice for you is remove yourself from [laughter] the hype, ship features, do what you do best, and if you do want to, you know, try to stay up to date, because at the end of the day, I'm not saying bury your head in the sand. I'm not saying that you shouldn't be aware of some of the new models or the new ways of working with AI, but what I am saying is you shouldn't spend all of your time on it because there are better things to be spending your time on, right? So my advice for you going into the new year is maybe set aside one day a month or two days a month [laughter] where you sit down and take a look at what are the latest models that have been released. What are some new workflows that people are talking about? What is actually working, right? And maybe you you set aside a day where you try those things out. But don't spend every day doing it. Don't get to the point where most of your time is just configuring and and trying to make find the the the best flow here because that is taking away from the actual time spent building and shipping and solving real problems., Feeling Behind as a Programmer, YouTube, 01kdr1mva7zscth1xmdbfm7mbd.