For the Experience WODs, I generally used a mix of AI assistance and my own personal coding. These WODs were not overly difficult, so they provided a good opportunity to experiment with a hybrid approach. I would often attempt the problem myself first, then use AI to confirm my approach or help refine parts of the solution. This balance allowed me to stay actively engaged with the material while still benefiting from AI as a support tool rather than a crutch.
For in-class practice WODs, I consistently used AI tools such as ChatGPT, Claude, or GitHub Copilot. Regardless of the task, AI was useful for generating an initial solution quickly. From there, I could refine the output by providing additional prompts until the solution matched the expected behavior. This was especially helpful given the time constraints of in-class activities.
Similarly, for in-class WODs, AI played a major role in helping me get started efficiently. I often prompted AI with the WOD instructions and used the generated solution as a baseline. After that, I adjusted the logic, fixed bugs, or adapted the code to better meet the requirements. This approach reduced friction and allowed me to focus more on understanding the problem rather than struggling to start from scratch.
For essays, ChatGPT was particularly useful for organizing my thoughts and improving clarity. Rather than having AI write content for me, I used it to restructure my ideas into a more fluid and natural narrative. Prompts such as “help me organize these points into a cohesive paragraph” were effective in improving readability while still preserving my own voice and intent.
For the final project, GitHub Copilot was extremely useful. It helped generate complex code structures, such as a multi-step lifestyle survey with tracking and draft-saving functionality. Using Copilot significantly reduced the time I needed to spend writing boilerplate and repetitive logic. Notably, I did not encounter any major issues with AI-generated code breaking the project, which made it one of the most successful uses of AI during the course.
I did not use AI for learning new concepts or tutorials. I felt that working directly through the course materials and documentation was sufficient and more effective for building foundational understanding. In this case, using AI did not feel necessary or beneficial.
I did not use AI for answering questions in class or on Discord. To be completely honest, I rarely answered questions in these settings, so AI was not applicable for this course element.
I did not use AI to formulate smart questions. For me, the effort required to involve AI in this task did not seem worthwhile, especially since questions typically arose organically while working through assignments.
For coding examples (such as looking up how a specific function works), I generally relied on documentation or online resources rather than AI. In these situations, direct references were faster and more precise.
I occasionally used AI to explain how certain sections of code worked or to clarify the behavior of specific lines. For example, I would ask something like, “Explain how this function processes its inputs.” This was helpful for reinforcing understanding and confirming assumptions.
For writing code in general, I frequently used GitHub Copilot. As mentioned earlier, it produced well-structured code that could easily be customized through prompts or minor edits. This made development faster and more efficient while still allowing me to maintain control over the final implementation.
AI was also useful for documenting code. Simple prompts such as, “Can you write a comment explaining what this function does?” helped me generate clear and concise documentation without spending excessive time on wording.
For quality assurance, I primarily used Copilot to help fix ESLint errors after I had identified them. By pasting the error messages or problematic code, AI could suggest fixes that aligned with the project’s linting rules, saving time and reducing frustration.
Beyond the listed elements, AI was generally useful as a second set of eyes—whether for debugging, refactoring, or confirming expected outputs. However, I remained mindful of not relying on it excessively.
The use of AI in ICS 314 had a noticeable impact on my learning experience. AI tools improved my efficiency and helped me overcome initial roadblocks, especially when starting assignments. At the same time, I became aware of the risk of over-reliance. While AI enhanced productivity, it was important to ensure that I still understood the underlying concepts rather than simply accepting generated solutions.
Outside of ICS 314, AI can be applied to real-world projects and collaborative environments. In practical settings, AI can accelerate development and assist with problem-solving, but it is important to clearly state when AI has been used. Transparency ensures ethical use and maintains trust in collaborative and professional contexts.
One of the main challenges I encountered was occasionally running out of prompts on ChatGPT when I was not using Copilot. This limitation sometimes disrupted workflow. However, the course also highlighted opportunities for better integration of AI, such as clearer guidelines on effective and responsible use.
Compared to traditional teaching methods, AI-enhanced approaches offer greater flexibility and speed. AI tools increase engagement by lowering the barrier to experimentation and iteration. However, traditional methods remain important for long-term knowledge retention and deep understanding. A combination of both approaches appears to be the most effective.
In the future, AI will likely play an even larger role in software engineering education. Improvements in context awareness and tooling could further enhance learning, but challenges related to dependency and academic integrity will need to be addressed. Clear policies and instruction on responsible AI use will be essential.
Overall, AI was a valuable tool throughout ICS 314, particularly for coding, documentation, and project development. When used responsibly, it enhanced productivity and supported learning without replacing critical thinking. Future courses can benefit from continued integration of AI, provided there is an emphasis on understanding, transparency, and balance.
I used chatgpt to help me organize and format my ideas into a more fluid essay