My Personal Journey with AI

06 May 2025

I. Introduction

Artificial Intelligence is transforming education in incredible ways. In software engineering it is clearly evident. As an electrical engineering student exploring areas of software, systems, and design, I’ve been exposed to how AI tools are shifting the way we learn, solve problems, and build software. In ICS 314, I experimented with a variety of AI-powered tools including ChatGPT and GitHub Copilot. These tools have served as companions during long debugging sessions, silent tutors for complex concepts, and helpful aides for documentation and clarity. In this techinal essay, I reflect on my experiences integrating AI into various elements of the course and how it has impacted my learning, problem-solving skills, and future as a software engineer.

II. Personal Experience with AI

Experience WODs

For E42: PostgreSQL: Getting Started, which involved setting up PostgreSQL in our local environment, I ran into trouble with the documentation since it didn’t clearly outline the setup process for macOS. I prompted ChatGPT with: “How can I set up Postgres using pgAdmin on a Mac?” The response was incredibly helpful. It provided a clear, step-by-step guide that was easy to follow and worked well. It also linked me to an external resource that helped me resolve a few terminal command errors I encountered during installation.

In-class Practice WODs

During in-class practice WODs, I avoided using AI. I wanted to simulate the test-like environment and strengthen my problem-solving skills independently. This decision helped me focus and build confidence under pressure, even though it meant slower progress at times.

In-class WODs

For the actual WODs, I didn’t use AI initially, since they were meant to evaluate real-time thinking and problem-solving speed. However, there were some cases where AI helped me troubleshoot, especially when I was running low on time. In particular, ChatGPT was useful for quickly identifying and fixing syntax errors that were holding me back from completing the WOD successfully.

Essays

I frequently used AI for brainstorming and restructuring essays. For example, I asked ChatGPT:
“How can I write an essay on the impact of ethics in software engineering?”
The AI’s suggestions helped me organize my arguments and refine my writing style. It acted more like a co-editor that was able to outline my ideas and make them be more coherent.

Final Project

Our final project involved building a web application, and here GitHub Copilot was incredibly helpful. When writing repetitive React components, Copilot auto-suggested clean code that I then reviewed and adjusted. I also used ChatGPT to prompt:
“Explain how to connect a componento to a page.tsx file”
The response gave me the basic structure I needed, but I still had to debug context-specific issues myself. AI saved time and provided direction, but didn’t replace my judgment.

Learning a Concept / Tutorial

When learning about Vercel, I prompted:
“Explain how use Vercel’s Superbase .”
The AI provided a much clearer explanation than the official documentation, helping me understand Vercel workflow and how to link the Superbase to my project.

Answering a Question in Class or on Discord

I didn’t answer any questions directly in class or on Discord. However, when we gathered in study groups outside of class, I was able to help some of my classmates better understand certain topics. ChatGPT played a big role in this, I used it to clarify concepts for myself before explaining them to others. For example, I prompted:
“Can you explain how to use the .map function in JavaScript?”
The response helped me solidify my own understanding, which made it easier to explain the concept clearly to my peers.

Asking or Answering a Smart Question

When I wanted to ask a smart question about data validation strategies, I used ChatGPT to polish my question first:
“How can I phrase a question about schema validation best practices?”
It helped me make the question more concise and easier for others to understand.

Coding Example

For example, I asked:
“How can I use the .filter function in javascript. Could you provide an example?”
The AI provided a usable snippet example, which I adapted directly into one of my practice WODs.

Explaining Code

When writing documentation for our project, I used ChatGPT to help explain complex logic. I’d input the code and prompt:
“Explain what this code is doing step-by-step.”
It gave a paragraph-long summary that I then refined for the final documentation.

Writing Code

For backend routes and form validation, I’d often start a function and let GitHub Copilot fill in the rest. I made sure to double-check all generated code for correctness and style consistency.

Documenting Code

I asked:
“Write this text in markdown”
The output was helpful since it helped me write my text norally and then AI helped me implement that into markdown which was used fro documentation.

Quality Assurance

When I faced a stubborn ESLint error, I prompted:
“Fix this ESLint error in my project: ‘x’ is defined but never used.”
The AI correctly advised on either using or removing the variable, and explained how to adjust lint rules if needed. It wasn’t mind-blowing, but it saved time.

Other Uses in ICS 314

I used AI to help me follow through reading where i had to follow steps for setup (e.g. Postgres). Prompt:
“Give me step by step to setup a datbase in Postgres”
It helped with making the steps concise and easy to follow for setting up.

III. Impact on Learning and Understanding

Using AI in ICS 314 has expanded how I approach problem-solving. It made it easier to get unstuck and saved time on repetitive tasks, but I also learned to verify everything. It’s easy to blindly trust a suggestion that breaks something. The real value came when I treated AI like a thought partner, not a crutch. It enhanced my learning, especially for abstract topics that I stuggled to understand.

IV. Practical Applications

Beyond ICS 314, I’ve used AI in real-world projects like my startup app for food waste tracking. I used ChatGPT to design SQL schemas and debug SwiftUI views. In hackathons, I often use Copilot or AI-generated boilerplate to accelerate prototyping. AI lets me focus more on the creative and functional aspects by handling some of the grunt work.

V. Challenges and Opportunities

One major challenge is AI hallucination, wrong answers can be misleading if you’re not careful. It is also tempting to ask AI before thinking through the problem. But AI also opens up opportunities for more interactive, personalized learning, especially when course materials are overwhelming.

VI. Comparative Analysis

Compared to traditional learning, AI methods are more immediate and tailored. I could ask a question and get a response in seconds. However, traditional lectures and peer discussions helped undersand the topics better. AI helped with surface understanding and execution, while traditional methods built long-term intuition.

VII. Future Considerations

As AI tools evolve, I expect them to become more tightly integrated with IDEs, coursework platforms, and even automated feedback systems. But we’ll also need to find ways to teach students how to evaluate, challenge, and improve AI outputs rather than just take them as the absolute truth. The balance between critical thinking and automation will be key.

VIII. Conclusion

AI has been a transformative part of my learning journey in ICS 314. It made me more efficient, curious, and confident, but only when used thoughtfully. I believe AI belongs in the future of software engineering education, not as a shortcut, but as an accelerator for deeper understanding. My recommendation? Use AI often, but never pass up the chance to think for yourself first.



Resources: ChatGPT for grammar checking.