When it comes to school assignments, the biggest hurdle to get over is typically the beginning. I have found that AI technologies, like ChatGPT, have been useful in getting me to a starting point to complete tasks or mapping out a plan that I can follow to get through my work. I have not tried other AI technologies, aside from ChatGPT and I have only recently started using Github Co-Pilot.
In my use of ChatGPT, I appreciate that the generated responses use simple language that makes its answers easy to understand. Especially since sometimes, when looking for answers on forums, responses can become quite technical when coming from professionals or more experienced programmers. I think that AI has improved my overall learning experience, though I really haven’t utilized it to its full extent.
AI appears quite frequently on my social media feeds (i.e. TikTok) through things like photo/art generating filters and celebrity-dubbed covers of songs. That seems to be the way that its use is being normalized in our society. Additionally, its pattern analysis and predictive abilities can be used to automate daily tasks or make suggestions to improve our lives.
There have been times when AI could not provide effective solutions to the problems that I posed. I can see how a deep reliance on AI could end up hurting a student’s understanding of a concept. It may be able to solve a specific problem, but rather applying that problem’s concept to a larger project could be difficult if the student does not understand how that concept truly works.
In my general chemistry class, the website which we use to complete homework problems has an AI chatbot that can be used to rephrase the problem, describe the basic concepts, or answer any questions to guide us through the problem. It’s like having a teaching assistant walk through the homework with us. However, it avoids giving us the plain answers and instead checks our understanding of the textbook chapter so that we have all the information needed to complete the problem on our own.
In high school, one of my math teachers utilized a similar math site that generated practice problems for specific concepts. I realized that if I repeated math questions, I would end up memorizing the steps and numbers instead of understanding the concepts. Generating new questions forced me to apply the concepts rather than simply recall what I had just attempted. If we answered the question incorrectly, it would show an answer and explanation but I think that it would be more helpful to integrate a ChatGPT-like response that analyzes the answer and points out where we may have made a mistake.
I think that these learning assistant chatbots and problem generators will become the new standard for homework assignments in the future.
Overall, I think that AI can be an extremely beneficial learning tool. Though, in software engineering applications, I have found that technologies like Github Co-Pilot were more useful to me than ChatGPT because it is specifically designed for programmers. When working with a large-scale project, asking ChatGPT to troubleshoot your work may not be efficient since it can only reference whatever part of your code you provide it with. I do think that it’s useful for things like explaining general concepts, debugging smaller snippets of code, and providing insight on given examples.
Overall, it’s clear that AI tools, like ChatGPT and Github Co-Pilot, played different roles in helping me along the way. ChatGPT was handy for brainstorming ideas, outlining essays, and explaining general concepts, but it had its limitations, especially in tasks like coding examples and troubleshooting large-scale projects. On the other hand, Github Co-Pilot, tailored for programmers, really stood out in completing coding tasks and auto-completing code snippets for our final project. AI positively impacted my learning by providing accessible explanations, but it had its challenges when it came to solving specific coding issues, highlighting the need for a balanced approach. This balanced approach ensures that AI serves as a complementary resource, enhancing rather than replacing the essential skills of software engineering students.