About a week ago, I was focused on making a pomodoro timer app to assist with studying. I was motivated to make my own app as pretty much all of the alternatives on the App Store had in-app purchases and other trackers (like why does a timer need a tracker).
I wanted to use Flutter to gain more familiarity with the stack and Dart, and I was able to finish the app in a couple of nights. There are a few problems though, I had never used Flutter, so I vibe-coded the entire app without learning a single thing.
I was happy that I was able to build and finish a project, but that night, I decided to wipe the code and start fresh. I’m still working on the app along with multiple other projects, and I understand a bit more about widgets and the other properties inherent to the language. I, also, refreshed some knowledge on Object-Oriented Programming (OOP) as it has been almost two years since I’ve taken a class covering that topic. But, this wasn’t accomplished by completely ditching AI, instead I had to put more effort into the learning process.
Learning
Go anywhere on the internet for 3 seconds and you’re prone to see something AI generated. That’s just how it is now. AI can be a very helpful tool, but it can also be a huge detriment, especially to students. I started using AI when I was a sophomore in college. I thought it was a very helpful assistant that would make me more efficient. Instead, I relied on it, like an addictive drug, and I fell behind.
I realized this for a while but failed to do anything about it. Once you use AI repeatedly for something, it’s really hard to not use it, especially when the alternative is more taxing. But, learning only occurs when you perform the taxing tasks, over and over, until those tasks are no longer taxing but second-nature. Think about when you were learning math or a subject that you really struggled in but managed to prevail. Using an AI to bypass this process is where most begin to fail.
My Approach
Unfortunately, I’m pretty busy when it comes to school. USAFA doesn’t take it easy on us. Since I don’t have that much time to dedicate to a new hobby, I’ve started using AI to supplement my learning and programming. If the project is something that I want to learn and genuinely improve my proficiency in, I’ll reference documentation, examples, videos, and other forms of media; try implementing a solution myself; and use AI when stuck to guide me in the right direction. Note how I said “guide,” as I’m not looking to be given a solution.
For tasks that are a lot simpler or one-off alterations (e.g. modifying my computer configuration), I don’t see an issue with using AI to get a quick solution.
What I’ve found to be most important is getting back into natural learning. My approach isn’t perfect; sometimes, I’ll find myself using AI more than I should or will be given a solution due to a hallucination. However, I know that the more I practice learning, the better I’ll get at it.
To close, I realize that there will be some who are completely against the use of AI in any form. I can definitely understand why a person may think this way, but, in order for me to be successful in my field, I have to embrace emerging technologies. Can you believe that people used to be against the radio when it first came out… now it’s essential to everyday life. I’m not saying that an LLM will be as consequential, but we should familiarize ourselves, less we fall behind.