I Did not ChatGPT This

20 Nov 2023

Introduction

AI programs like ChatGPT, Bard, and Co-Pilot are programs that are able to generate text based on the input that the user gives it and can be used for a variety of purposes. If used correctly, it can allow students to quickly search up information on a topic, and even help them with assignments, and essays. It can also serve as a great tool for developers not only in the software engineering field, but across all fields of computer science. In ICS314, I have mainly used ChatGPT and Co-Pilot throughout my time in ICS314. I used them as a tool to provide ideas and suggestions for any coding that I was doing.

Personal Experience with AI

My experience with AI hasn’t been a long one, I’ve only started using it for this class, mainly due to the encouragement from my professor who always encouraged the class to use these new AI programs to help answer some of the questions we might have in class, or to look up what some of the materials we were learning in class. Although AI programs are extremely helpful, I find that most of the time, I don’t resort to using them as a first option, as I would rather do a Google search, where they provide me with multiple sources of information that I can do my own reading on. I also feel that sometimes the AI programs don’t go into enough depth on the topics that I’m having trouble understanding, and would much rather read a documentation on the topic or even use StackOverFlow as a source to look for suggestions on how to solve my problems.

Experience WODs e.g. E18

For all the experience WODs, the only thing that AI provided me was the code suggestions that Co-Pilot would show. I would use those suggestions to get a better understanding on how to approach the problem, but never would look up the entire assignment on ChatGPT, mainly due to the fact that the information provided by the video after I attempted the WOD once was enough for me to understand the problem and how to solve it. Most of the suggestions were helpful ways to move along in the problem solving process, but sometimes it would point me in the complete opposite direction, so I started to turn off the suggestions after a while.

In-class Practice WODs

For the in-class practice WODs, I used Co-Pilot for the first few practice WODs after we got introduced and installed the Co-Pilot Plug-in, however after a while, the text completions and code suggestions got a little annoying, as they would rather cost me more time in trying to figure out how the code works, or created even more problems in my code. After disabling Co-Pilot, I went back to doing my usual Google searches for any questions that I had.

In-class WODs

For in-class WODs, I had never used AI for any of them, as I wanted to use my own brain to solve the problems that people were able to solve before AI was even invented. Just like all my previous experience with WODs, I used Google for most if not all of my questions and problems.

Essays

After getting introduced to Co-Pilot seeing its text completion feature, I really wanted to try out how good it is at writing paragraphs or even essays. However after trying it out for a good 5 minutes, I realized that it was even more work for me to go through and edit everything to how I wanted it than just writing the essay myself. I think it may have to do with the type of writer I am, I tend to take extra time writing essays, as I write to ensure that every sentence is the best that it can be, before moving onto the next. So having to go back and read through everything, then making changes here and there just isn’t my cup of tea. I would much rather sit down, and write a perfect paragraph in 2 hours, than having the full essay written in 3 hours, but take an extra 5 hours going back and forth changing the contents.

Final project

For the final project, I only used ChatGPT for one thing, and it was suggestions for the web application. From name suggestions, to content and features, and sometimes even the layout, I asked ChatGPT for everything, and talked it over with my group to see which suggestions we would take and implement them into the web application. Other than that, I resorted to going over the react templates we learned in the class, as well as the official documentations for any questions that I had.

Learning a concept/tutorial

There’s an abundance of materials that we need to learn and understand in this class, and surprisingly, I didn’t have to use AI for any of them, as most materials had their own official documentation that I can refer, or had resources that was one Google search away, on top of all the resources that the professors already include in the modules.

Answering a question in class or in Discord

During the class discussions, there were moments where I didn’t understand the material that was bring discussed, however, out of habit, I would do a Google search rather than look things up on ChatGPT, as it provided me with multiple sources of information, if GeeksforGeeks didn’t provide a clear answer, I would then look on StackOverFlow.

Asking or answering a smart-question

Personally, I have been lacking when it comes to answering and helping out other students in this class, as I rarely check the discord, except for when I do run into problems, then I would look in the smart-questions channel to see if someone else had the same issue, and how they solved it.

Coding example e.g. “give an example of using Underscore .pluck”

Many of the materials we learned in this class were mostly straight forward, or had extra resources that were provided. Most of the time, I was able to read the official documentation and get a better understanding of using tools like the underscore functions, as well as using React/Meteor.

Explaining, Writing, and Documenting code

Most of the code I’ve written in this class were works from myself, or snippets where I found online, except for that period of time where I tried out using Co-Pilot’s text completion feature. Prior to this class, I had already gotten used to doing Google searches for any questions I had with code, and was even encouraged to do so to see code other people have wrote up in order to improve mine.

Quality assurance

For ensuring quality of my code and assignments, I find that ESLint was sufficient enough in making sure all my code was up to standards. I never had to use any AI to help me fix errors in my code.

Other uses in ICS314 not listed

Other than the uses I’ve listed on using ChatGPT and Co-Pilot, I have not used AI for anything else in this class, as I have plenty of resources to look to as an alternative to AI.

Impact on Learning and Understanding

I would say that AI has had a minor impact on my learning and understand of materials in this class. Mainly due to me having other resources that I can refer to, and the fact that I’m more used doing a Google search in order to get my answers.

Practical Applications

In my opinion, I believe that AI can be an extremely good tool for us to utilize if used correctly. In my experience online, I’ve seen many applications of utilizing AI, such as using AI to build a program, become a GeoGuesser pro, or even have AI create entire YouTube videos for you. I think overall, AI has helped out tremendously for us as a society, helping in making things more efficient, and easily accessible. Just like all things however, it does come with its downfalls, which include the worries about the quality of graduates that’ll soon join the work force, not only in the software engineering field, but also other fields too. After ChatGPTing our way through university, will we really come equiped with the skills required to help propel our individual industries forward?

Challenges and Opportunities

With ChatGPT, there is a big difference in the answer that AI programs like ChatGPT give when it is given a good prompt, compared to a bad one. It is just like talking to a real-person, you have to know what questions to ask, and how to ask them. In my experience, ChatGPT excels in answering most general questions, and struggles a little when it comes to very precise and detailed questions asking to implement an exact prompt. I believe providing students with opportunities where they’re able to learn how to utilize AI programs and learn how to effectively use these programs to their advantage will be really crucial in helping students understand the materials better. Once students know how to effective ask ChatGPT for answers, they’ll had done half the problem themselves, which is identifying what the problem is.

Comparative Analysis

As mentioned above, if AI programs are utilized correctly, they can be as effective, if not more effective than traditional teaching methods, as they can provide students with the resource they need in a much quicker manner. If allowed enough information and time, ChatGPT will provide even more accurate information than textbooks and instructors can. In a traditional teaching style, the students would either have to listen to the instructor lecture, and then go home to read through the textbook for a better understanding, or the students read through the materials themselves before putting that into practice when they come to class. This process easily allows for a disconnect between the student and the materials they are studying. However, with an AI-enhanced teaching style, when the students do get confused about the material, they can easily get their questions answered by AI programs, which can even provide extra resources for the students to expand their understand upon. This not only saves the student time on reading long articles, but also the instructors time when they get an email from multiple students asking the same questions. The instructor’s job then would be to ensure that the students do understand the materials, by creating practice problems the students can attempt in class, to better reinforce their understanding.

Future Considerations

I believe AI programs will continue to be a controversial topic in computer science community, as none of us really know what it will become in the future. If it continues to improve based on all the data that we’re feeding it every day, then I can see it becoming more accepted, however I think there are some challenges it needs to overcome first. The biggest challenge that it needs to overcome would be handling detailed prompts, or prompts where they need to create extremely specific answers. This is mainly due to the lack of information AI actually has on certain topics, so I believe with time, this challenge will have some breakthrough. When it comes to future courses, I believe a course dedicated to using AI programs to do everything would be fun to have, just to let students experience the power of AI, but also have them learn how to properly utilize AI.

Conclusion

Ultimately, I can see the effectiveness of AI programs even having used it not that many times. It definitely simplifies many of the things we do in the software engineering field, not just with suggestions on code, but also providing us with models that describe our databases, and software. If used properly, AI programs will continue to make our lives more efficient.