AI Journey
I’ve been wanting to write something on this for a while now. The problem is, it’s been tough to get started. I feel like every time I do get started, my thoughts have changed. What I write now is much different than what I would have written 2 months ago. And 2 months from today, I’ll probably look back on this and have completely different thoughts.
It’s not a far stretch to say that AI has been changing everything at an unheard-of pace. If someone had told me a couple months ago that I would be using AI as much as I have been recently, I would have laughed at them. I had seen too many instances where the results just weren’t good. Now, it feels different. It’s probably a combination of constantly improving models and gaining more experience using the tools, but it is a little scary how quickly my opinions of AI have gone from “never” to “this isn’t so bad” to “Wow, I can’t believe it did that!”
I’m still not at the point where I am going to 100% trust everything AI develops. For anything important, I still review AI-developed code as if it were written by a junior developer and I’ll tell it where things it did just aren’t good enough. I feel like I’m finding fewer and fewer of those things, though. It’s like watching a young developer get better with experience. Sometimes it even catches some things that I might not have caught myself without a bunch of testing.
The excitement of how quickly things are evolving has had me doing a bit more work on side projects. I made some updates to a crochet app I had started for my wife a couple years ago. I moved it from Electron to Tauri and rebranded it as tesserow. I started a new guitar practice app that I’m calling fretwork. The amount of time AI has saved me on these projects has been amazing, and has allowed me to try to focus more on other aspects of the project that I might not have spent much time on before. You know, those pesky things like documentation and packaging.
I’ve also used AI tools to help with some system maintenance items and troubleshooting. Things like shifting from the original Quickshell version of Noctalia to the new C++-based rewrite, or helping troubleshoot issues in my NixOS config files. It even helped me figure out that I had some bad RAM that was causing a lot of instability. I wasn’t exactly thrilled that I was forced to purchase RAM at the current inflated prices, but it did help me narrow down the issue quickly by scanning my logs for things I wouldn’t have known to look for.
Despite all the growing excitement I’ve had for AI tools, there are still some things that trouble me about it. I feel like I’m not quite scratching the creative itch the same way. There’s something deeply satisfying about coming up with a creative solution to a complex problem. It used to take time to really dig into an issue. Just diagnosing an issue would often take time to step through code, figure out where to put the breakpoints, figure out what was causing unexpected behavior, etc. Now, you just ask the AI. Sure, you can direct it to what you suspect the issue is and get back a near instant answer, but the sense of accomplishment from that simply isn’t there. You also lose out on all the understanding of that code that you would have had if you did the work yourself.
I don’t have a great answer for how to get that sense of accomplishment and understanding back. Not using AI at all doesn’t feel like the right answer because, at the end of the day, it is a tool that is probably going to save a lot of time. Knowing how and when to use a tool is important in any profession.
I’ve spent the past 30+ years honing my development skills. Now AI can do almost the same thing in a fraction of the time. I like to think that my experience helps me wield the AI tools a bit more efficiently than a complete beginner would, but it doesn’t take away the feeling that all you really did was provide a decent prompt.