Learning from AI
07 May 2024
I. Introduction
AI has recently become an essential tool in education. The ease of use and accuracy of new AI such as ChatGPT has made it an important tool for studnets of all levels. In my personal experience I think it is an incredible and valuable tool that makes learning more efficient but it can also be harmful to education. The harmful aspect of using AI in learning is that it gives students an easy way to avoid learning and just use whatever AI gives them. For example, in software engineering it is super easy for students to get code directly from ChatGPT and not actually understand what it is doing which can be extremely harmful to learning. On the other hand the AI will also explain code in depth and can be used beneficially in this way but more often than not students do not bother with understanding code if it works.
II. Personal Experience with AI:
I have used AI in class this semester in the following areas:
- Experience WODs e.g. E18
In the experience WODs I chose not to use AI since it was meant as a learning opportunity and I thought it was important to have an actual understanding of the material in the experiences.
- In-class Practice WODs
For in class practice WODs I would first attempt the WOD without the use of AI and then once there was about 5-10 minutes left, if I was stuck I would try to use AI to solve the WOD.
- In-class WODs
I used the same approach for WODs as practice WODs. I took this approach because most of the time the WODs were simple enough that it was actually faster to just solve it on my own than use AI. I think I only used AI on one or two wods and it was for quickly answering simple questions about Meteor, React, HTML, or other things that I hadn’t gotten enough practice with.
- Essays
I try not to use AI for most of my essays as I feel it takes away my voice and I end up spending a good amount of time editing AI essays anyways so it is not really any more efficient, although it is considerably less work for longer essays.
- Final project
I didn’t use AI in my contributions to my final project but we did use it for certain specifics such as inspiration and guidance on understanding React, but I didn’t use it to write code since I think with the complexity of the project it is easier to just write the code in order to get a real grasp of what our app is doing. This makes it much easier to make changes when you come back to something.
- Learning a concept / tutorial
I didn’t really use AI to understand concepts although I did use it to answer more specific questions such as how to center things in HTML.
- Answering a question in class or in Discord
I used AI to answer questions in class since it was often encouraged or specifically requested.
- Asking or answering a smart-question
I did not really participate with smart-questions.
- Coding example e.g. “give an example of using Underscore .pluck”
I don’t really use it for examples, I woudld rather just ask it something more specific and more relevant to what I am working on and then have it explain the code.
- Explaining code
I use ChatGPT all the time to explain code, it is pretty often that I will be working on something that someone else has created or working with code directly from AI so it is incredibly helpful to have AI to explain code so that I have a better understanding of what it is doing.
- Writing code
I try not to use AI to write large amounts of code because when I habve done this in the past I tend to not understand the code as thoroughly and I learn much less like this. But I definitely use it often for small snippets just to speed up the process or so that I don’t have to dig through librarys and documentation to find a specific keyword or function I am trying to use.
- Documenting code
I think it is a great resource for documenting code, it tends to give really good explanations so it is super useful in this aspect.
- Quality assurance
I haven’t really used AI in the past for quality assurance but I think it could be a good tool for this.
- Other uses in ICS 314 not listed above
There were no other instances in ICS 314 where I used AI.
III. Impact on Learning and Understanding:
AI has had a positive impact on my learning efficiency and my understanding of certain topics. I think this is in large due to my learning approach with AI. I try to only use it to explain things when necessary. I find that when I use it as a shortcut for solving problems I often have a much worse understanding of the solution and I learn far less. I think this is what makes it such a dangerous tool in education is that it makes it extremely easy to avoid learning. This is why I try to not use AI as a cop out and instead use it to explain concepts I am having trouble with or quickly answer questions I have.
IV. Practical Applications:
I think the main practical application of AI in all fields but especially in software engineering is efficiency. It is just much faster to find answers to your questions, especially specific questions, when you are using AI vs just searching the internet for answers.
V. Challenges and Opportunities:
I think the main challenge I’ve found with using AI for software engineering is that it will often approach problems in a unique way that is not super intuitive so the code and answers it gives for software engineering is often hard to understand. I don’t really think there are any more ways to integrate AI into software engineering education other than what is already done in ICS 314.
VI. Comparative Analysis:
I think AI enhanced approaches to education can be more engaging for students as they are able to quickly get comprehensive answers to whatever questions they have. On the other hand, it certainly takes away from knowledge retention and the learning process. I think having it so easily accessible takes away from learning to solve problems which is one of the most important skills in software engineering.
VII. Future Considerations:
I think the main thing that needs to be improved is the approach for using AI in education. There is no denying that it is a usefula and powerful tool, but it also needs to be used in a certain way in education in order to not take away from the learning process.
VIII. Conclusion:
Overall I think that AI has been a great help for me in learning the content of this course and honong my skills. But I also personally use AI restrictevely and as a backup, because I’ve found that this is the most efficient and effective way for me to learn. I think an important part of continuing to integrate AI into this course would be to teach students how to approach it, when to use it, and how to get the most out of AI use without harming the educational experience.