<img src=”../img/ChatGPT-Logo.png” width=20%/>
In education, artificial intelligence (AI), is meant to aid the learner in addition to the teacher. We want AI to help students ask questions and be engage in the material. It has become a quick and convenient alternative to googling. Regarding software engineering in particular, the use of AI can help reduce redundant code and a gateway to alternative methods. In ICS314, I have used ChatGPT and Github Copilot, both in helping me learn the new material and in speeding up the process of coding. Furthermore, it has helped me by explaining complicated code in TypeScript when I was learning it for the first time.
<img src=”../img/GitHub_Copilot_logo.svg.png” width=35% />
Many times have I reluctantly used ChatGPT for help during my in-class WODs. I thought that those experiences were a way for me to test my comprehension of the class. For both in-class practice WODs and homeworks, ChatGPT was used to explain new concepts in detail and run sample and why it works. All of my essays are also written without AI since I prefer writting them my self. However, the final project has definitely seen an increased in AI usage. Since I was very ambitious for my final project, I installed Copilot in order to help me with writting redundant code and tell me how to implement different features that I had wanted. Since then, I have defaulted to ChatGPT whenever I have any questions. Most of the time, I try to learn about new materials from the source rather than the internet. Also in general, I try to read the documentation of the tools I am using and only use AI to write a sample to my relevant code. I like that whenever I ask it to write code, it will explain anything completed about the code and the general function of the code. However, rarely do I ever use it to document code since I will remember the code better if document it my self. And instead of using AI to check my code for errors and the like, I prefer to ask it to optimze my code because I want to know what better ways for me to improve my code in the future. Outside of coding and general questions, I do not use ChatGPT or AI since I had always prefer googling about issues and knowing where my source of information comes from.
Without AI, I would have a much harder time understanding new concepts in a short time frame. It helps expedite the speed of learning because I can contrate all of my effort on one website and answers tailored to my liking. Furthermore, it doubles as exposure therapy, introducing me to new tools and methods that I would not have known unless someone taught it to me directly. I can confidently say that with my increased usage of AI since the beginning of ICS314, I have come to understand new materials much faster than before.
I am sure that AI has made its way through the offices, earning its place as a tool used by many developers. While they may not use it to codes like I am, it is still very helpful with its predictive code generator. AI is also used outside of the coding scence, because it has definitely made its presence in the science field, winning the 2024 Nobel Prizes in Physics. It has prove its use in speeding up long science process, producing results much faster than the average scientist. The introduction of AI is comparable to the computers first becoming a widespread.
My biggest challenge with AI is how stubborn it can be at times. Sometimes, I would ask Copilot to write me a piece of code, then try to tweak the solution based on certain criteria, but it often ignores that instruction and return the same solution. Besides that, sometimes the AI would return wrong answers after being used too much. For future improvement, I hope to see many of these large language models cite its sources to check its references.
I feel like using AI to learn in software engineering is still subpar compared to learning it from someone else. However, in the context of college, where the teacher can not answer everyone’s questions, AI definitely excels in helping everyone get up to speed or learn the material at there own pace. When learning new software engineering concepts, I find it better to ask the teacher because I know my source of information is more trustful than ChatGPT. However, when I need to see example code, AI is faster at generating many different examples and better at comphrending code. Unfortunately, I feel like because I will always have AI to answer all of my questions, my knowledge retention is decreased overall. The need to not remember everything in detail may backfire if I become dependent on using AI to code. Therefore, I am still hesitant in using as my primary source of education.
AI will definitely become prominent in education in the future, but I prefer if AI isn’t integrated into future courses. AI should only be used to supplement the material or else students will become too dependent on AI generated answers. When students use AI, I think its important for the student to explain what they had learn from it. And I would also prefer if the course doesn’t include AI material because a lot of the time, the stuff AIs generate doesn’t make sense. The technology is still far away from being the perfect tool for learning.
In the end, AI should be supported in learning, especially classes in the computer science field. It has definitely benefitted me in ICS314 when I needed to learn a lot of new tools and concepts in the span of 4 months. Like teaching methods, AI might only benefit some people so it should only be used to supplement learning from the teacher. While AI have been the focus in recent years in the tech industry, it is still far from being fully integrated in education. I think courses shouldn’t be using AI to generate the coursework, nor should students rely on it for answers. With the current ChatGPT model, I think its best to have students explain what they had learend from AI whenever they use it, as proof of learning the concept. Maybe in the future, AI will become more reliable and we can use it in our education system.