AI coding has given me a feeling I haven’t felt in years. A feeling I thought I’d grown out of. Every developer I know has felt it at some point. That quiet suspicion that you don’t actually know what you’re doing. I thought I was past that. Turns out I wasn’t.
It’s not a new feeling. Remember the days of copying from Stack Overflow? Drowning in docs trying to understand not just what a snippet does, but why it does it? That’s the feeling I get from working with AI on certain projects. And look, there’s a lot written about how to use AI responsibly, how to make sure you’re still learning, whatever. This isn’t about that. This is about the personal feeling.
Learning
I wrote my first line of code around 2008. I was a kid, 11 years old. I had an old desktop running Windows Vista. I had gotten really into modding my Xbox 360 games. Halo 3 to be exact. I started wanting to make my own mod tools, my own games, whatever. I convinced my mom to buy me this online C# course. Text only, no videos, no audio, but a real teacher. He’d post new material every week and you could reach him by email if you were stuck. The course started at absolute zero. First learn what cmd is. Then learn what code even is. Then .NET, then C#. Eleven year old me was not happy about those first two weeks of zero actual coding. But eventually he had us writing C# in Notepad and compiling it from the command line. I was bewildered.
Fast forward a decade. I grew up, went through phases of learning code and dropping it for months at a time. Tutorial hell, if you know you know. I went to work for a while. EMT, electrician helper, restaurants, labor jobs. You name it I probably did it at some point. The whole time I was still writing code though. A lot of it. Bad code, embarrassingly bad code in hindsight, but code. Udemy courses, game dev projects, iOS apps that never shipped, random tools nobody used. Life was all over the place, but that part never really stopped.
Through all of that, the one constant was that feeling. I was copying Stack Overflow code for the better part of a decade. I would search it, find it, copy it, and spend who knows how long trying to understand it. Sometimes just giving up. It works. I don’t care how or why. It works. I think that’s pretty natural though. Every developer I know had some version of this. Some in college, some at 30 changing careers. Me, apparently, for most of my teenage years in my bedroom writing code nobody would ever see. I don’t think I ever fully shook it.
And then I got a job in IT. I was 21 years old. Through a stroke of luck my resume ended up on the right desk and I got an internship. I was imaging computers and shipping them out to job sites, clerk stuff, but I didn’t care. I was in the door. Eventually that turned into a junior dev role at the same company. I remember thinking, I am getting paid to write code. Actual money. For this thing I taught myself in my bedroom for a decade. It felt surreal. And then almost immediately, that feeling came back. The dev team was small, the work was real, real apps, real users, real consequences when something broke. And I just thought, oh no. I don’t know anything.
I was tremendously lucky at this job. Greenfield work, constantly. Start up Visual Studio, new solution, new project, go. I had done some of this before on my own, but now I had real stakes. My first real challenge was authentication. Azure AD, OAuth 2.0, JWT, role based. Our users needed to sign in on the front end and I had to validate that on the backend. I had never touched auth before in any serious way. There were some existing examples in other repos but they were cookie based, old .NET Framework 4 style. This needed to be .NET 5 and modern. The Microsoft docs were helpful but overwhelming. I read everything I could find. Books, articles, forums, all of it. Eventually I implemented MSAL and it worked. I followed the docs, it was safe, it was solid. I had almost zero idea how it actually worked. My mental model was basically, Microsoft handles it when I run this code with these credentials. That was it.
But then I built another app. Then another. Then another. Each time I understood a little more. I learned the difference between authentication and authorization. I learned about OpenID Connect. I learned that Microsoft handles claims in their own slightly odd way, and if you don’t specify the scope exactly right the ID token just won’t show up. Project by project, I hammered my way through it. It took years. Multiple projects. But at some point auth just clicked. I knew it like the back of my hand.
And there it is again, that same natural thing. Every developer has a version of this story on some topic. It’s a long learning curve that you hammer through over and over until it stops feeling like guesswork. It’s more like woodworking than exam taking. Practical. Tangible. You do it enough times and one day you just know it. That’s what real knowledge feels like.
Relearning
So that brings us to today. Seven years in, leading a small dev team, doing good work. And then AI showed up.
I went all in. Copilot licenses for the team, my own subscriptions, all of it. I was saving hundreds of hours of research. I was studying things that felt out of reach before. Writing code with AI the exact same way I used to copy from Stack Overflow. Search, find, copy, then spend hours trying to understand it. Discuss, write, research, learn. Over and over.
And somewhere in there that feeling came back. Not the evolved version, the original. Imposter syndrome never really goes away but it changes shape over time. By year five my fraud moments were different. Being challenged by less experienced people on my team. Having to justify decisions nobody used to question when the team was smaller. That version was manageable. But this AI code took me somewhere else entirely. I felt like that 11 year old again.
Somewhere in there I became something like an expert. That’s a strange thing to say about a field this new, but I’ll stand by it. I learned how to prompt, how to direct a conversation, how to keep it grounded. But the code did something to me again. It bewildered me.
My first big moment of bewilderment was a problem I had never touched before, bitmasking. Using bitmask operations to filter large datasets efficiently. I implemented it, spent time learning it, started to understand it. Now I’m using it again on a side project. Each time I understand it more. Each time I’m a little less lost. This is my new auth story. This is my new Stack Overflow.
The difference is the timeline. That auth knowledge took years and multiple projects to solidify. This is happening in months. I am learning at the speed of my own curiosity and that is genuinely exciting. But it’s also disorienting. I’m opening up this vast world of computer science I never had the time or the necessity to explore before. Low level concepts, algorithms, data structures, things that felt academic and out of reach. They don’t feel out of reach anymore.
But I’m not doing it the natural way. Or maybe I am. Maybe this is just the new natural. I honestly don’t know.
Here’s what I’ve noticed though. At work I use AI more than I write my own code. That’s just true. On my side project it’s different. The moments where I stop and write something myself feel valuable in a specific way. Like a professional carpenter spending their free time on a hand planer. It’s not the most efficient path to the finished thing. But it’s intentional. It’s honing something. I’ve started to protect those moments.
The lines are all blurred. Whose code is this? Is this my creation? Some of it is. Well, all of it is really, in the sense that every decision came from somewhere in my head. But I didn’t write a lot of it. Stack Overflow was an external resource. A library of solutions other people built that you borrowed and learned from. AI is different. AI is an extension of the author. It responds to how you think. It reflects your decisions back at you. That feels like a salesy thing to say, but in the most honest and human sense I think it’s just true.
And that’s where the feeling gets complicated. This isn’t the classic imposter syndrome of a junior developer drowning in unfamiliar territory. I am a senior developer. I have years of real work behind me. I know what I’m doing. And I still feel this way. The work is good. I am genuinely proud of some of what I’ve built recently. I’ve spent hours in research sessions surfacing ideas, benchmarking approaches, pushing into corners of the stack I never would have reached alone. Ever been deep in the TypeScript compiler internals or V8 docs? I have now. I only got there because AI helped me surface it. So is that my knowledge? I think it is. But it feels different than the auth story. Different than the Stack Overflow years.
Living through a cultural and technological revolution in real time is just weird. There’s no other word for it.