Back to square one

I've decided to start over again with my learning journey.

I'm a bit ashamed to say this, but I've fallen down this vibe coding rabbit hole for the past two years. About two years ago, AI emerged as this ultimate tool for productivity. I was a bit reluctant to try out this new technology, but most of my peers were using ChatGPT at this point so I decided to give it a try. It changed my life, and not in a good way.

Fast forward to now, I'm embarrassed to say that I absolutely do not understand the code that I write. If you asked me to clearly explain how my code works, I wouldn't be able to. If you asked me my thought process on why I structured my code the way it is, I'd simply say it's because it's what the AI spewed out. It's absolutely embarrassing to say the least.

It's safe to say that somewhere along the line, I didn't actually learn some fundamental concepts that I needed to learn. And now, I'm paying the price. Sure, I'm able to prompt my way to a horribly-coded but surprisingly functional app. But at the end of the day, I didn't learn anything. And it's this feeling that has been bugging me for many months now.

So now, I want to go back to square one. This time, I will make it a rule for myself to never let AI directly give me code. I'm considering asking it about broader concepts, but for my own projects I want to be in front of the wheel. Of course, at some point, I should be integrating AI into my workflow a lot more. However, I strongly believe that it should only be done once I am confident in my own skills. If I integrate it into my workflow now, I feel that it will only hinder my learning, just like how it was for the past two years.

I'll be learning web development primarily through The Odin Project curriculum. Once I am confident in building websites and web applications, I intend to learn creative web development on the side. Among the endless amounts of websites out there, the ones that use motion and 3d technologies always leave me speechless. So, I hope to someday be as good as the prominent creative devs in the sphere right now.

Also, since I am starting over again, I decided that I might as well change my development environment. So, I decided to switch to Linux (Arch btw) with Hyprland as my tiling window manager. As for the editor I will be using daily, I decided to go with Neovim. Since I want to primarily use my keyboard for pretty much everything now, I see a lot of value in switching from VS Code.

That's pretty much it. Every week, I'll be writing a blog article talking about what I learned and what I did for that week.

It's time to lock in.