Artificial Intelligence, or AI for short, is a tool often used in many different fields of today, and its existence is especially prevalent in both sides of the education system, being used by both instructors/institutions and students alike. One of the main functions of AI is to provide new ideas and insight on whatever the user decides to ask of it, which of course includes new ways to teach certain subjects and increase productivity or understanding in students. On the student side however, the opportunity to search for more knowledge is presented in another form via AI, and since many AI have access to the Internet themselves, or are based on learning algorithms, they are more likely to output correct information simply and efficiently, often without the trouble of searching the web ourselves. In the Software Engineering and Computer Science fields, AI can often be a useful tool that provides new options or ideas on implementing certain features for users who may be stuck or unsure of what they should do at a certain point in their project.
I have used AI in class this semester in the following areas:
Experience WODs e.g. E18
I have not used AI for this element, as I felt it was important I attempt and learn through these experiences on my own, as I personally do not find I learn with AI better.
In-class Practice WODs
I have not used AI for this element, as I felt it was important I attempt and learn through these experiences on my own, and I would learn of new ways to complete these tasks through the professor/TA’s demonstrations.
In-class WODs
I have not used AI for this element, as I felt it was important I attempt these “workouts” on my own to demonstrate my own understanding of the material.
Essays
I have not used AI for this element, since I prefer to convey my ideas through my own words, and would feel uncomfortable submitting works of writing that are not my own, due to how I grew up in schools forbidding using others’ words as my own, which I consider AI to be a part of.
Final project
I have not used AI for this element, but would if I were to get stuck on the implementation of any part of our final project and could not find what I needed through a Google search.
Learning a concept / tutorial
I have not used AI for this element, but will in the future if I am having enough trouble grasping the ideas/concepts that are being used, and unable to find any other helpful sources online.
Answering a question in class or in Discord
I have not used AI for this element, as I would prefer to convey my own ideas/thoughts, but would if someone asked me a question on a field/topic that I was not confident in my abilities in.
Asking or answering a smart-question
I have not used AI for this element, but would if I was especially stuck and entirely out of ideas on my questions.
Coding example e.g. “give an example of using Underscore .pluck”
I have not used AI for this element, as I tend to look up coding examples online rather than asking AI, but if I wanted to see a more specific use of code or libraries, then I would use AI.
Explaining code
I have not used AI for this element, as most of the code I write myself I am able to understand and therefore explain, but I would use AI if I could not find anything on Google (one example being arrow or lambda operations in Java/Javascript, although I used Google for these examples back then).
Writing code
I have not used AI for this element, as I can usually come up with ideas on implementation on my own or with some help from the Internet, but may try to do so more in the future.
Documenting code
I have not used AI for this element, since if I am asked to document code then I want to be able to do so on my own, to ensure that I actually understand the code itself as well.
Quality assurance
I have used AI for this element, as linters and many IDEs incorporate AI to help ensure the code I write is up to certain standards and neat.
Other uses in ICS 314 not listed above
I have not used AI for this element, since I value my own learning over anything else, since most of the skills I learn will most likely be skills that I might need in the future.
Personally, for any courses/classes that I consider to be most useful and those that I believe I will use the most in the future, I have not used AI to learn and have put forth my own time and effort to understand the material. In the future, I may use AI to help deepen my understanding or build up my basic skills/comprehension if I am having trouble with a topic. I have used AI to take a manner of shortcut on my learning for other classes, which I find I tend to not retain and understand the ideas mentioned in the course.
I do not know of any big projects or major companies that make use of AI off the top of my head, and it may be because of the current capabilities of the publicly available AI on the public domain. While I know that AI such as ChatGPT or GitHub Copilot is actually capable of producing working code that can be used in projects, I am also aware that many software projects require specific implementations that require an existing background knowledge of the project’s scope itself to implement features efficiently and that perform their needed function. Ideally, big companies and project teams should begin projects with learning AI incorporated in the process from the beginning such that the AI will come to understand how the project works and will then be able to help implement code that fits within the scope of the entire project, and both the project and AI will evolve together, with the AI hopefully boosting the efficiency and functionality of the project itself.
I have not used AI during my time in the ICS 314 course, but I do know that AI currently does still produce “wrong” answers and implementations when it comes to writing code, as some code requires more information and knowledge on the matter, as I have mentioned above as well. However, that is not to say that AI is completely useless to those of us learning in the field of Computer Science, as while AI can often produce the wrong code, they are still able to produce and output solid explanations on some topics that are considered to be hard to grasp at first, which are aplenty in software engineering, especially for those new and just being introduced to the field (like Algorithms).
While the existence of AI can be considered a hindrance to education due to their potential to essentially skip the learning process and even provide answers to homework problems and assignments straight up, in the end, AI is simply a tool that one can use, and as is the case with any tool, it depends on how one uses AI. When it comes to education, restricting students access to AI would likely be more harmful than helpful to most students, and should be kept accessible due to the fact that I just mentioned. To potentially combat those that abuse AI in their “learning” process and have it do all of their work for them, assignments should be complex enough that AI should not be able to come up with a right answer without the right prompt or given information, but simple enough that a student learning the material is able to understand how to utilize what they have learned into this specific instance of problem.
In the future, AI will definitely be useful for students of all ages and experience levels, and should remain open to whoever should want to make use of it during their learning process. Instructors should, however, be wary of its ability to produce answers for their students, and keep this fact in mind both when creating assignments and grading them. Teachers should also encourage students to make use of AI and try to teach their students of ethical and effective ways to employ it when working, since there is no doubting the usefulness and potential of AI as a tool.
While I prefer to not use AI when it comes to school and the education system, I feel that I should definitely train the skill of implementing it into my learning, design, and coding processes since it is such a wide and fast growing field that continues to evolve as time passes. It is also due to this reason that I believe that AI should remain available for students to make use of and for children to be encouraged to use correctly. If this were to be the case, then it should also be up to the instructors to teach students of the dangers of using AI in school and also how to correctly/properly make use of AI such that it enhances learning rather than halting or hindering one’s understanding.