Fabricated Competence?

05 May 2024

I. Introduction

In an age of information where knowledge is readily accessible, artificial intelligence has resoundingly stood as one of the most premier developments that can be used in a variety of landscapes. However, its usage has been one of modern controversy as it presents a unique, double-edged sword. That is to say, depending on how it’s used, it may either significantly improve one’s abilities to learn material better or it may hinder their progress severely. For one, AI plays a major role in school and higher-level learning as it is a valuable tool that assists students in finding solutions, fixing errors, or simplifying ideas that would otherwise take more time to research manually. However, the criticism within lies at the cost of blindly trusting this tool and automating it to do the work for the user instead. In turn, it raises warranted questions regarding students’ legitimate competence in a particular field of study. Further inquiries lean towards sentiments of finding a balance between using AI as a complementary learning tool and the students’ genuine development of critical thinking.

To preface, I began to use AI tools (primarily ChatGPT) while taking university summer courses in 2023. I had briefly heard about it from a friend a few months prior, but never took the chance to use it. During that time, I took two writing-intensive classes, which required allocating a large chunk of time to plenty of reading and writing response essays. In order to be more efficient on time, I used ChatGPT to summarize the main ideas in the texts and was pleasantly surprised at how effective it was. To be sure, I gave it relatively small portions to digest, and reread what I provided to check that it had given me appropriate information. Since then, I have used and continue to use AI such as ChatGPT in many use cases, especially on the path of software development.

II. Personal Experience with AI:

I have used AI in class this semester in the following areas:

  1. Experience WODs e.g. E18
    • While attempting the experience WODs, I hadn’t thought about using AI since I wanted to fully complete the exercise without any external resources. When I wasn’t able to finish a certain one, I would use the screencasts and follow along to work out the solution. I found that since the videos were thorough enough to provide a solid explanation of how the code works to solve a task, using AI didn’t really cross my mind.
  2. In-class Practice WODs
    • I used AI, specifically with ChatGPT occasionally during the in-class practice WODs to get a better idea of how to fix some of the ESLint errors I would get and for formatting. With this, I usually used it for assistance with things that I didn’t know how to do. I don’t remember the prompt exactly, but I provided my code and asked how I could align text in the middle, or how to set an image to the left/right side of the page.
  3. In-class WODs
    • Similarly, I used AI during the in-class WODs much for the same reasons as I did during the practice WODs, but I didn’t simply feed the corresponding prompt to ChatGPT and have it do the work for me. Instead, I would initially write my code and if it wasn’t working as it was intended to, I gave a general description of what I was trying to do to ChatGPT. Afterwards, I would then make appropriate changes according to what it had suggested.
  4. Essays
    • While writing my essays, I didn’t find a need to use ChatGPT to create an outline, check for grammar mistakes, or have it automatically do the work for me. Before transferring the work onto my corresponding GitHub .md file, I usually write it on Google Docs, but I do use Grammarly to check my written work and proofread it.
  5. Final project
    • I heavily used ChatGPT for many different uses for the final project. For instance, I wanted to create a Recipe component that had a function for toggling a recipe to be favorited by a user. To start, I created a FavoritesCollection that allowed me to link favorited recipes to the user that saved them. However, when changing pages, the status of the favorited recipe would not be saved. I struggled to find a fix, but ChatGPT was able to help. I gave the prompt “Create a Favorite button that allows a user to favorite a recipe. It should maintain its status even when going to other pages, unless unfavorited by the user.” It wasn’t able to resolve the issue right away, but once I began to specify my use case and provided it with some of the code that I had, it helped me find a fix. Likewise, in the Recipes page, I wanted to add a feature for filtering recipes by dietary restrictions (vegan, vegetarian, etc.) Since I had no idea how to start, I asked ChatGPT to give me an outline of steps that I needed to take to accomplish what I specifically wanted.
  6. Learning a concept / tutorial
    • Just as I used it when I first began, ChatGPT has been very useful to me in many cases where I want it to summarize an idea or give me a general rundown of text. For example, “Explain the ready subscription in my Recipe component.” However, when I needed an in-depth tutorial, I found that external video resources and screencasts from different modules were helpful in allowing me to understand the course material better.
  7. Answering a question in class or in Discord
    • I have not used AI with regards to this section since I have not asked a question in class or on Discord.
  8. Asking or answering a smart-question
    • I have not used AI with regards to this section since I haven’t asked or answered a smart-question on Discord.
  9. Coding example e.g. “give an example of using Underscore .pluck”
    • I have used AI for coding examples in the Underscore module and most recently the final project. Since I wanted to get a better understanding of _.map, I asked “Give me an example of Underscore ._map and explain how it works.”
  10. Explaining code
    • When using ChatGPT for finding fixes to errors in my code, it would provide potential code solutions that I could use. But, I generally looked over them first and tried to understand what the code was doing before using them right away. For example, I had pages to add and edit a recipe but I wanted to find a way for adding or removing ingredients. I gave the prompt for this, but struggled to understand what the given solution was, so I asked ChatGPT what each line of code did.
  11. Writing code
    • I’ve used AI to write code, especially for the final project since it saved plenty of time on the CSS classes for styling. Here, I primarily used it to change the styling of the font and headers for multiple pages.
  12. Documenting code
    • I have not used AI with regards to this section about documenting code.
  13. Quality assurance
    • I have used AI and ChatGPT to check the quality of the work that I did, most frequently with ESLint errors. For example, early on when starting our web development module, I got this error: ESLint: ' can be escaped with ', ‘, ', ’. (react/no-unescaped-entities). I didn’t understand what it meant so I initially just asked ChatGPT what the error was telling me.
  14. Other uses in ICS 314 not listed above
    • I don’t have any other uses for AI that weren’t already listed above.

III. Impact on Learning and Understanding:

Personally, AI has been greatly beneficial to the development of my understanding and productivity. However, the previously aforementioned reasons for why its use remains controversial stands firm. While some use it to enhance and assist in education for learning, therein persists the unhealthy perception of simply using it not to learn, but to replace authentic knowledge-building by using AI to fabricate one’s competence in something. This idea shouldn’t prevail, as instead it can be used as a virtual tutor/aide who guides the student into successfully understanding content, and does not simply write it out for them.

IV. Practical Applications:

One practical application of using AI is for biometric security purposes. For instance, face recognition is one tool that can be used to better enhance security since it encourages time-efficiency and stronger authentication methods. Another practical use is found with AI robots, particularly those that automate repeated tasks such as cleaning or surveying. Robot vacuums and surveillances have existed and will continue to improve as the years go on.

V. Challenges and Opportunities:

Although AI provides useful benefits, challenges regarding over-reliance exist. As mentioned, with potentially greater dependency on AI in the future, there could be risks about it replacing genuine learning and improvement of abilities. Even with that, AI continues to present more advantages as it can be integrated into a majority of daily activities in our lives. Over time, it could grow and evolve to be an even more refined instrument with less ethical concerns.

VI. Comparative Analysis:

Traditional teaching methods are more effective than AI-enhanced approaches in the context of software engineering education since it offers a more personalized experience for students. AI can be used to enhance their understanding, but it shouldn’t replace individual efforts from teachers. Ultimately, AI tools should be used to complement an instructor’s way of teaching the course material instead.

VII. Future Considerations:

As the years progress, artificial intelligence will continue to play a major role in software engineering education. It is a product from the minds of developers, and will continue to aid new engineers in the field. In the future, it will be integrated into a larger part of software education, but it must be used in an effective way. It will be a challenge to counter the mindset of AI being a tool for taking the easy way out. However, as AI remains, it has more room to improve with reliability and less ethical concerns surrounding it.

VIII. Conclusion:

AI has become a topic of mixed opinions, but will resume its rapid pace of evolution and integration into our daily lives. Implementing balanced approaches to using it is key for improved use of AI within a software engineering education context. Overall, AI may be encouraged for use in the classroom, but it should not act as forgery or a mask of proficiency over authentic learning.