Artificial Intelligence: Friend or Foe?
02 May 2024
Artificial Intelligence: Friend or Foe?
I. Introduction
Artificial Intelligence (AI) has become increasingly integral to various areas, including education. In the realm of education, AI offers innovative solutions to enhance learning experiences, personalize education, and easily accomplish tasks. Particularly in fields like Software Engineering, where staying updated with the latest technologies and methodologies is crucial, AI plays a significant role in shaping the learning process by helping users come up with new ideas or even help them out a coding “ditch”.
II. Personal Experience with AI in ICS 314:
I have used AI in class this semester in the following areas:
- Experience WODs e.g. E18
- To help fix any bugs that were overseen due to the fact that when watching the video WODS, sometimes things can be overlooked.
- In-class Practice WODs
- To help better understand certain concepts such as which is the best underscore function to use in certain cases, how to play around with padding in HTMl & CSS, how to implment react boostrap icons, and etc.
- In-class WODs
-
Though the WODS were quite similar to the practice WODS. I honestly have used the help of ChatGPT to help me out of coding holes that I did not understand. For example, I was not quite that understanding of underscore and how to use it to its full capabilite. So I had to ask AI to help me how and which functions to use.
-
At the time I was still getting the use of HTML & CSS, so I also used AI to help me recreate the “Morning Brew” website. In my case this included on how to place certain buttons, placement of words, and more.
- Essays
- I haven’t had to use the help of AI with most of my essays until recently with my “The Forest” piece. Which talked about coding design patterns, and at the time, quite overwhelmed me. Thus, I had to rely on AI to help make it more simple for me to understand.
- Final project
-
The usage of AI has helped quite a lot during the development of my parts done on our team final project. Prior to this assigment, we’ve always had practice WODS or even videos to rely on. Though for the first time in this class, we’ve been challenged with the opportunity to finally create something from complete scratch.
-
In this project it has helped me in various implementations such as, how to code the ability for users to upload images (rather than giving a address link). How to implement a “favoriting item” system that links multiple page files together. And overall to clean up any bugs found within the code.
- Learning a concept / tutorial
- When it comes down to learning a concept. Especially in the world of coding. Using AI has always been my first go-to rather than websites, youtube videos, or other resources such as textbooks and more. This is because I prefer and like the straight-fowardness that AI provides. Rather than waiting for a person to slowly explain a concept in a 25-minute video. Or reading through lines of explanation (especially when you have a short attention span). AI can swiftly give you the help you need. While also gives you the opportunity to get instantly answered if any questions are needed.
- Answering a question in class or in Discord
- I’ve never had to use AI for this topic
- Asking or answering a smart-question
- I’ve never had to use AI for this topic
- Coding example e.g. “give an example of using Underscore .pluck”
- AI has always been a great teacher for me through examples. Whether that’d be through underscore, HTML, CSS, Javascript, or even such as that as Meteor and React Bootsrap. There has never been a time when I’ve never asked AI to help give me examples to better understand a concept.
- Explaining code
- AI has always been that go-to helper for me when it also comes down to explaining code. Like previously mentioned, if any concept is unfamiliar or quite hard to grasp, AI has always answered my questions with well-thought answers and various examples to better my comprehension
- Writing code
- Same as above. Whether if it’d be explaining code or writing code. AI’s given examples are always great for helping developers such as me write better code. Yes they might not the best of answers at times, but through constant communication with the AI, it will only bring you closer to what you wish to achieve. That is what I at least learned from experience.
- Documenting code
- From what I’ve seen so far, AI, especially ChatGPT has always makes sure to include comments within their code. Whether it’d be examples given by them. Or code given to them in which user’s want them to fix/improve. There always various and many comments to clearly explain what’s going on and how it works. And if there isn’t, you could always just ask the AI to include it.
- Quality assurance
- In terms of quality assurance, this can be much more difficult when asking the aid of AI. Especially when not giving AI the full information needed to help it understand what you need help with. A mistake I have made multiple times. As this will only lead the AI to help bring you farther away from your true goals.
- Other uses in ICS 314 not listed above
- Everything above is the only reason of usages within ICS 314.
III. Impact on Learning and Understanding:
-
Impact on my Learning: AI technologies like ChatGPT has been a revolutionary learning experience by providing me with personalized tutoring, answering questions, and generating explanations. Implementing a more interactive and engaging learning experience for me as I have always been a person who struggled to reach out for help when especially needed.
-
Enhanced Understanding: Through its processing capabilities, AI has always assisted learners such as I in understanding complex concepts by breaking them down into simpler explanations. And even simpler if needed. By facilitating comprehension and retention of vast information
IV. Practical Applications:
-
Especially for me. And most likely for many around the world. AI can be used in educational platforms to provide tutoring assistance, and offer personalized learning experiences. Especially for those who are as introverted as me and have a challenge of asking for help when needed.
-
AI has also been a great source of creativity. Helping people come up with ideas when their minds go blank
V. Challenges and Opportunities:
- Overreliance on AI: A problem I have run into is the excessive reliance on AI-driven solutions. Though AI has always been a great tutor for learning, it may also lead to a lack of critical thinking skills and independent problem-solving abilities among learners. For example, there are times when I can get lazy and with fully honestly I may instantly rely solely and firstly on AI-generated explanations/solutions. Rather than attempting and learning through experience and hardships. I have noticed as something that has and may hinder my development as an individual any further and is a problem I have been trying to get rid of recently.
VI. Comparative Analysis:
- Traditional Teaching Methods:
- Engagement: Traditional teaching methods often rely on lectures, textbooks, and assignments. While these methods can be effective for some students, some individuals such as I may feel the lack of interactivity and fail to engage in a perfect learning experience
- Knowledge Retention: In traditional classrooms, knowledge retention can vary among students. Lectures may result in lower retention rates compared to more active learning methods that encourage student participation and problem-solving.
- Practical Skill Development: Hands-on activities, such as coding exercises and project-based learning, are essential for developing practical skills in software engineering. However, traditional teaching methods may not always prioritize these activities, limiting opportunities for students to apply theoretical knowledge taught in class to actual real-world scenarios.
- AI-Enhanced Approaches:
- Engagement: From what I’ve seen and experience. AI approaches in software engineering education can foster greater engagement by providing personalized learning experiences tailored to an individuals needs.
- Knowledge Retention: AI-powered adaptive learning systems can continuously assess students’ understanding of key concepts and adapt accordingly. By receiving feedback and reinforcement, these systems can promote better knowledge retention and deeper understanding of software engineering principles.
- Practical Skill Development: AI can facilitate hands-on learning experiences by offering virtual coding environments, simulations, and interactive tutorials. These tools enable students to practice coding, debug errors, and experiment with different programming techniques in a risk-free environment, thereby enhancing their practical skills and problem-solving abilities if using these beneficial resources correctly.
VII. Future Considerations:
-
Advancements in
Personalized Learning:
AI will play a crucial role in delivering personalized learning experiences tailored to individual student needs, preferences, and skill levels. Adaptive learning systems will continuously assess students’ progress and adapt instructional content accordingly, maximizing learning outcomes. Thus, by further creating a risk-free, comfortable, and information-rich environment. AI can be the future of teaching.
-
Ethical Considerations: Though as AI becomes more integrated into software engineering education, it is essential to address ethical considerations such as data privacy, bias, and transparency. Educators must ensure and review that AI systems are used responsibly and ethically, and promoting fairness.
VIII. Conclusion:
In conclusion, AI technologies like ChatGPT has been a profound impact on learning, offering personalized assistance and fostering deeper understanding for students such as I, those in this class, and many around the world. Despite challenges such as bias and privacy concerns, the practical applications of AI in education, the constant problem of leaving loop-holes, and over-reliance. AI will only continue to evolve, addressing these challenges while seizing opportunities for innovation will be crucial in shaping its future role in various areas.