My Approach to Learning Programming SkillsBlog post

When I started college, I knew one thing for sure: I wanted to keep building, improving, and expanding my skill set beyond the classroom. I wanted to make things—better things—with each passing project. But like many students, I faced a simple challenge: I didn’t have the budget for expensive courses, subscriptions, or bootcamps. I needed an approach that was both free and effective.

That’s when I began to experiment with using AI as a learning companion. Today, I rely almost entirely on AI tools and no-cost resources to learn new programming skills. And this approach has completely transformed how I learn.

My Toolkit: AI as My Learning Partner

When I’m working on code, I switch between three AI assistants: Grok, ChatGPT, and DeepSeek. Each plays a different role. Grok has been surprisingly effective at helping me with frontend work; ChatGPT is my go-to for in-depth conceptual explanations (though I have to use it sparingly because of its cost); and DeepSeek is my main resource for code explanations and examples. Together, they cover most of my learning needs—at no cost.

My Learning Workflow

I don’t start learning by picking a random language or framework. I start with a problem I need to solve. Whether it’s a new feature for a personal project or something that piqued my curiosity, I first define what I need to build.

Then, I turn to AI—not to give me answers, but to ask me questions. I’ll prompt it with something like: “I need to do X. Ask me 10 open-ended questions to better understand my problem.” This forces me to clarify my own thoughts and break down what I’m trying to achieve. By the end of this conversation, I usually have a much clearer roadmap of what I need.

If I’m unfamiliar with the technologies required, I’ll ask the AI to suggest a tech stack. Once we’ve settled on tools, I use the AI to guide me step by step through building a basic demo, while explaining what’s happening at each stage. This initial AI-driven build gives me a working starting point and an interactive lesson at the same time.

But I don’t stop there. Once I’ve played with the demo, I jump into a deeper dive: I find a YouTube course—usually on FreeCodeCamp—and watch an in-depth tutorial, sometimes several hours long. I complete the exercises I feel are necessary or skip around to focus on what I still need to understand. If I get stuck on any GitHub repos or unfamiliar code snippets, I go back to AI, asking it to explain what’s going on.

Finally, I return to my AI-built demo, but this time I’m building forward from it using what I’ve learned. I experiment, add new features, and keep asking AI any questions that pop up—no matter how simple they might seem. This ability to freely ask “dumb” questions without judgment is one of the biggest advantages of learning with AI.

Learning on Demand

I don’t follow a strict learning schedule. I learn when the need arises. Whenever I encounter a new problem or want to build a new feature, that’s when I learn what’s necessary to solve it. I see success as being able to solve the problem—once it’s solved, I move on until the next challenge appears.

AI as a Tool, Not a Replacement

One of the biggest misconceptions I see is the belief that AI can just write code for you. Sure, it can spit out working code snippets, but for any meaningful software project, system design and planning are still human responsibilities. AI is a powerful tool, but you’re still the brain steering the process.

I’ve used AI not only for generating code but also for helping me understand complex logic. For example, in one project, I needed to recreate a label-assignment algorithm similar to one used in a scientific visualization tool. I didn’t just copy the code—I asked AI to explain the underlying logic so I could implement it in a way that fit my needs.

Staying Motivated

Motivation isn’t hard to find when you have a project or feature you’re excited about. Every new skill I learn directly connects to something I want to build. That clear “why” keeps me moving forward, even when the learning curve feels steep.

Reflections and Advice

This journey has taught me one powerful insight: the only real limit to learning programming today is time and focus. If you can consistently carve out time and stay focused, you can learn almost anything—especially with the resources available now.

For anyone thinking of following this path, here are my top three pieces of advice:

I’m still at the beginning of my journey. I haven’t started contributing back to the community yet, but that’s my next step—sharing what I’ve learned and helping others along the way. For now, I’ve launched this portfolio website to start documenting and celebrating my progress.

Thanks for reading, and if you’re exploring learning with AI too, I’d love to hear how you’re approaching it!