During my time in ICS 314, AI became a regular part of my everyday workflow due to the fast-paced structure of the course and the increasing complexity of assignments. Like many other students, I used AI as a support tool rather than a replacement for learning. I primarily relied on ChatGPT, Claude, and Copilot to assist with understanding concepts, debugging issues, completing repetitive tasks, and double-checking my work. In software engineering, these tools were especially helpful for streamlining code generation and troubleshooting issues.
At the beginning of the course, I rarely used AI because I thought I could complete certain WODs on time on my own without the help of AI. As exercises became more complex and took more effort and time to solve the issue within the time limit, I started to use AI for debugging, clarification, and generating skeleton code to help me when I was stuck on an issue.
I initially avoided using AI during In-class Practice WODs to help me better understand what I will be doing in the WOD. But as time constraints and tasks within the WOD began to be difficult to complete, I used AI more frequently to help solve these issues. At times, I relied too heavily on AI-generated solutions instead of fully understanding the problem, though it was still helpful for debugging. Later, I went back to review the AI-generated solutions, and I realized why it solved this way rather than the way I thought it was going to work for the WOD.
During In-class WODs, when time was against me, I often used AI as a safety net to help solve these WODs. After failing some early WODs within the time limit, I prioritized protecting my grade, and I used AI to help generate summary responses on requirements on the WOD or generate skeleton code to work with. Even if it meant sacrificing understanding and learning from the WOD, I believe reviewing the response and what I did in the WOD helps reflect why I used AI in the first place and where I should improve to rely on AI less during WODs.
For the writing portions for essays, I used AI to help with generating ideas to use and for the basic grammar and clarity checks to ensure the overall flow of the essay was well-written.
AI played a major role in my final project, where I used Claude and Copilot to debug crashes, resolve ESLint errors, brainstorm ideas, generate small sections of the code, resolve merge conflicts, and troubleshoot some issues on the backend, like database login errors or not loading information from the database.
I rarely used AI to relearn concepts directly and spent limited time reviewing course material over the weekends.
I did not use AI for answering questions on Discord, but I used AI in class since our professor would encourage us to ask AI to find the answer to a question he had just proposed in class.
I rarely asked AI smart questions, but when I did, I already knew what I wanted to ask, so AI was not needed.
In the case of asking AI to give me coding examples, I didn’t ask to generate a coding example since I can probably find an example through online resources, and the logic of the example coming from AI could be wrong.
At times when I code, I do not understand some sections of the code, so I would ask AI to help with summaries and explanations of what the code is about. Otherwise, I didn’t ask AI to explain what the code did since I could understand the logic behind it.
I occasionally relied on AI to generate code snippets to help fix small tasks or issues, then test and iterate on them until they met my needs.
Although AI would document code in a simpler and easier way, I did not use AI to document code sections since I didn’t feel it was necessary to do so when using AI in this way.
For quality assurance, at first, I tried to resolve the issues myself. If it were unsuccessful, I would use Copilot to help with making quick fixes or pasting errors I found into ChatGPT or Claude.
For using AI in other uses in ICS 314, I did not use AI for any additional ways beyond what was listed in my personal experience in AI within this course.
Overall, I think AI hindered my understanding of key concepts. While I did gain exposure to many tools and workflows, my understanding of key concepts was often shallow since AI would reduce the need to reason through certain problems independently.
Outside of this course, I have seen AI used in other group projects to help speed up development, assist with debugging, reduce errors, and reduce the time to complete certain issues. However, its effectiveness depends on the user’s understanding of the underlying concepts when completing these tasks.
One major challenge was relying on AI without understanding why a solution would work in this way. Without understanding the reason why it worked, excessive use of AI would lead to dependence on the tool to solve issues and would lead to repeated issues appearing rather than making any progress on fixing the issue.
Using AI to learn new concepts has reduced my motivation, engagement, and knowledge retention compared to using AI to learn new concepts. Since AI can solve and provide solutions quickly, I would spend less time actively struggling with problems, which would limit my understanding of the topic. When thinking of using traditional methods to learn new concepts, I think it would be better since it helps me tackle difficult challenges independently and further motivates me to retain knowledge to go over these hurdles. When grades are heavily emphasized, it becomes tempting to use AI since it can achieve solutions quickly, but I think traditional methods to learn are better for the long run when retaining knowledge you would need for the future.
Even with AI being useful to solve issues quickly, it still has drawbacks and limitations when using it in software engineering. It should be used as a tool to help active learning rather than a substitute to avoid weakening skills.
My experience with using AI in ICS 314 was mixed. While AI tools improved my efficiency and helped solve difficult issues I faced, using AI has cost me in learning and engaging new concepts. When considering the future, I think the idea of how this course encourages students to use AI to enhance their understanding and use it as a tool to enhance their skills rather than replace them is a good concept to keep in mind.