Reflecting on My Use of AI in ICS 314

12 May 2025

Reflecting on My Use of AI in ICS 314

I. Introduction

AI is everywhere now, even in classes like ICS 314, where half the battle is figuring out what a “design pattern” actually means. I’ve used tools like ChatGPT a lot this semester, sometimes as a coding buddy, sometimes as a sanity check, and sometimes just to get unstuck when nothing else was working. I also tried GitHub Copilot here and there, but mostly stuck with ChatGPT because it was easier to guide.

Throughout the course, I used AI in a bunch of different ways. I turned to it during WODs, while working on essays, learning concepts I didn’t fully get during lectures, and especially during the final project when everything hit at once. That said, I didn’t just rely on it. Sometimes it helped, sometimes it didn’t. This reflection is a breakdown of how I used AI, what worked, what didn’t, and what I learned along the way.

II. Personal Experience with AI

1. Experience WODs

For the Experience WODs, I really tried not to use AI unless I was totally stuck. Most of the time, there were walkthrough videos that explained what we needed to do, so I figured it made more sense to follow those and try it on my own first. That said, if there was something I didn’t understand, I’d ask ChatGPT to simplify it for me. I wasn’t using it to do the assignment—just to explain stuff that was unclear.

2. In-class Practice WODs

For the in class Practice WODs, I tried not to use AI and just relied on what we went over in the Experience WODs since the format and logic were usually pretty similar. I figured if I could get through those on my own, I’d be fine here too. That said, if I ran into a weird bug or got stuck on something, I’d sometimes ask ChatGPT for help fixing the issue or figuring out what was going wrong.

3. In-class WODs

At the start of the semester, I made an effort to go over the Experience WODs and the in class Practice WODs before the actual in class WODs. It helped me feel more prepared and gave me a better shot at finishing within the time limit. But as the semester went on, I stopped doing that and just started going into them cold. When I had time afterward, I’d use AI to help me understand concepts I got wrong or to compare my code with the practice WOD solution. I’d paste both into ChatGPT and ask it to walk me through the differences, which helped me figure out how to write cleaner or more efficient code.

4. Essays

For essays, I’d usually start by just brain dumping my thoughts into a Google Doc without worrying about structure or grammar. Then I’d use ChatGPT to help turn that mess into something readable. It was basically like having a writing assistant that could organize everything I was trying to say. After that, I’d go back and edit the draft myself to make it sound more personal and less like a robot wrote it. My grammar’s not the best, so I definitely leaned on AI to clean things up and make sure my points came across clearly.

5. Final Project

AI was a big help during the final project, especially when things started to feel overwhelming. I used ChatGPT to help break down tasks into smaller steps so I could focus without stressing about the bigger picture. It also helped me brainstorm different ideas and features I could add to the project. Toward the end, when I just wanted to finish things up, AI was super useful for fixing ESLint errors. I’d copy the error message and ask ChatGPT how to rewrite the code to get rid of it, which saved me a lot of time.

6. Learning a concept or tutorial

Sometimes I’d use AI to summarize the readings from the modules, especially if I didn’t have time to go through everything in detail. It helped me get the gist of what was being explained without needing to read every single word. But for the most part, I relied more on the lecture recordings that were uploaded. Watching the videos felt more direct and easier to follow than trying to learn from long readings or having AI explain something from scratch.

7. Answering a question in class or in Discord

I definitely used AI to help explain things I felt too embarrassed to ask out loud. Sometimes the problem was super obvious, and I just needed someone to walk me through it without judgment. ChatGPT was good for that. As for Discord, I mostly stayed quiet. I didn’t really ask or answer questions there. If I were to answer someone, I wouldn’t use AI to do it. I’d want to actually understand what I was talking about. Plus, I figure if they’re asking in Discord, it probably means AI wasn’t helpful.

8. Asking or answering a smart-question

Sometimes I’d use AI to help me form a question or explain something I was struggling to put into words. I know what I want to say in my head, but I have a hard time explaining it clearly. So I’d type out all my thoughts and then ask ChatGPT to help summarize it or phrase it in a way that made more sense. It helped me get to the point faster and made me feel more confident about actually asking something.

9. Coding example

I used AI a few times when I needed quick examples to understand how to implement specific features in my planner code. One example was when I was trying to render the water tracker with clickable water drops for each day. I asked ChatGPT something like, “How do I create multiple clickable icons in a grid using React and Bootstrap 5?” It gave me a simple layout using map() and Bootstrap classes that helped me figure out how to loop through each day and render eight drop icons per day. It didn’t match my exact design, but it got me close enough to build from.

10. Explaining code

After finishing the Experience WODs, I tried to go back and understand what each line of code was actually doing. At first, I’d manually go through everything and reread the instructions. But as the semester went on, I started just copy pasting the code into ChatGPT and asking it to explain what was going on. It saved me time and helped me understand the concepts faster. It was also super helpful during the final project when I hit bugs I had no clue how to fix. Sometimes I didn’t even know what the code was supposed to be doing, so getting a breakdown from AI helped a lot.

11. Writing code

I tried to build most of my code on my own, especially during the final project. But when I ran into problems or got stuck on how to approach something, I’d ask ChatGPT for help. I didn’t rely on it to write full functions for me, but I’d use it to get ideas or figure out how to structure something I was struggling with. It helped point me in the right direction, but I still had to go in and make it work with the rest of my code.

12. Documenting code

I tried my best to write comments here and there, but honestly, I’m pretty lazy with it. Unless it was something I knew I’d forget later or something confusing, I didn’t really go out of my way to document everything. I didn’t use AI to write comments for me either. I just kind of wrote what I felt was necessary and moved on.

13. Quality assurance

I used AI a lot when it came to fixing ESLint errors or bugs, especially near the end of the semester when I was just trying to get everything working. I’d copy the error message into ChatGPT and ask how to fix it. I also used it to help with debugging trickier problems and checking if I was missing any edge cases. It saved me from spending hours stuck on things that turned out to have really simple fixes.

14. Other uses in ICS 314 not listed

Outside of writing and debugging code, I also used AI to help me organize my planner page and figure out the most efficient way to work through the project. Sometimes I’d ask it for layout suggestions or ways to make the UI cleaner. On top of that, I’d use ChatGPT to help manage my time. I’d list out all my assignments, my work schedule, and school stuff, and have it help me plan out when to work on what. It helped me stay on track or at least feel a little less overwhelmed.

III. Impact on Learning and Understanding

Using AI in ICS 314 definitely affected the way I learned, both in helpful and challenging ways. On the helpful side, it made it easier to understand concepts more quickly, especially when I didn’t want to rewatch lecture videos or was trying to figure out why something worked. Asking AI to simplify a concept or explain a chunk of code saved me time and made it easier to move forward. It also helped me compare different solutions and see why one might be better than another.

At the same time, I had to be careful not to rely on it too much. Sometimes ChatGPT gave answers that seemed right but were actually wrong, or didn’t really fit the assignment. That forced me to double-check everything, which ended up helping me understand the material better. Even when it gave me a bad answer, I still learned something by figuring out what was wrong with it.

Overall, AI made me more confident when it came to solving problems. It gave me support when I was stuck, but it didn’t do the work for me. I still had to understand what I was doing, make choices, and make sure everything fit together. It made learning less stressful and more manageable, but I still had to put in the effort to actually learn it.

IV. Practical Applications

Outside of ICS 314, I’ve used AI in a bunch of other classes too. Most of the time, I use it to summarize material or help create study guides. If I’m short on time or just don’t feel like digging through pages of notes, I’ll throw some of the content into ChatGPT and ask it to help me organize or simplify it. It helps me focus on what’s actually important and makes studying feel way less overwhelming. I haven’t really used it much for coding outside of this class yet, but for school in general, it’s definitely become part of how I study and manage everything.

V. Challenges and Opportunities

One of the biggest challenges with using AI is that you have to be really specific when you ask a question. If your prompt is even a little unclear, it might give you an answer that is completely wrong but still sounds confident. That makes it easy to fall into the trap of trusting something that does not actually help. You still have to understand what you are doing and be able to catch when AI gets it wrong.

Another issue is that AI is not great at handling anything too complex or specific to the assignment. Sometimes it would suggest code that looked good at first but ended up creating even more problems. It is useful for repetitive tasks or fixing small things, but you still have to proofread everything and test it yourself. It cannot replace actual understanding.

Even with the flaws, there is a lot of potential. If AI tools continue to improve, especially in understanding the context of what you are working on, they could be a great resource for explaining code or helping debug smarter. Right now it is helpful, but only if you already know enough to spot when it messes up.

VI. Comparative Analysis

For me, a combination of traditional learning and AI assisted learning worked best. Lectures, videos, and readings gave me the foundation I needed to understand the core concepts. That part was important because AI is not going to magically teach you something if you do not already have some idea of what is going on.

At the same time, AI was super helpful when I needed things explained differently or when I just wanted a second opinion on my code. Sometimes the way something was written in the module did not make sense to me, so I would ask ChatGPT to explain it in a different way. Or if I was debugging, it was faster to ask AI for help than to dig through every single line on my own.

The traditional resources helped me learn things the right way, and AI helped me move faster and feel more confident. Neither one worked perfectly on its own, but together they made things a lot more manageable.

VII. Future Considerations

I think AI is an amazing tool when it is used the right way, but we should not rely on it too much. It can make things easier, faster, and less frustrating, but it should not replace learning or problem solving. If students start using it as a shortcut instead of a support tool, they are going to miss out on actually understanding how things work.

In the future, I think AI could be even more helpful if it gets better at understanding course content and assignments more specifically. Right now, it is helpful, but it still needs you to guide it and double check everything. If it could give more accurate and personalized help based on what you are learning, it would be a huge benefit. But even then, we still need to make sure students are learning how to think through problems on their own.

VIII. Conclusion

Looking back at this semester, AI definitely played a big role in how I got through ICS 314. Whether it was breaking down concepts, fixing annoying errors, or just helping me stay organized, it made a lot of things easier to manage. That said, it was never a replacement for actually learning the material. I still had to understand what I was doing, test my code, and figure out how to solve problems myself.

If anything, using AI taught me how important it is to ask the right questions and not blindly trust the first answer you get. It is a great tool when used the right way, but it is not magic. Future students should use it to support their learning, not skip over it. When balanced with actually doing the work and understanding the code, it can make a big difference.