Assignments in the age of ChatGPT

Natasa J. Powell
CEU Threads
Published in
5 min readMar 1, 2024
Photo by Christin Hume on Unsplash

The in-class exercise

In this article, I review my approach to an exercise given in the course Introduction to Python, which we were given at the beginning of the course, and then again at the end of the course. The following is the original version of the exercise:

You are a plumber who is starting a business with other friends, called Modern Plumbers. Some plumbers are more junior and some are more experienced. You have to decide how to charge your work hours. You use digital tools to keep track of your appointments and calculate billing. Since you just started the company, you can’t hire software developers, but you did take an Introduction to Python, so you decided to code this yourself. Your task is to create a function that helps, you and other, plumbers calculate the total cost of their job. How would you proceed? How would you use conditionals?

Assume that Modern Plumbers decides to modernize and use AI and Robotics as follows:

- AI-powered diagnostic tools help plumbers identify the source of a leak or other problem more quickly and accurately.

- Robotic snakes or cameras can be inserted into pipes to inspect them and perform repairs without the need for digging or other invasive techniques.

- 3D printing technology that can be used to create custom-fit replacement parts for plumbing systems.

How would their pricing strategy change in this case?

Moreover, Modern Plumbers learn that some researchers are exploring the idea of coating pipes with a thin layer of nanomaterials that can repel dirt and debris, making it easier for the pipes to remain clean and clear of clogs. They also learn about high-frequency sound waves or other forms of energy to break down or dissolve materials that are blocking the pipes. This could be especially useful for removing fats, oils, and greases that can build up and cause clogs.

Should the plumbers be worried about these advances in science?

Background

This is my 16th year in an educational system. Including primary- and high school, BA, and my first year in MA. While I’ve had the privilege of attending schools that focus on learning and creativity, the primary way of determining how “good” we are has been done based on grades. It impacts our future, scholarships, applications for study abroad opportunities, jobs etc. Now, with ChatGPT this process is impacted, students have an opportunity to ask AI about whatever they want, homework, assignments, and whatnot, and usually — at first glance — it is able to provide the answer — and more — in seconds. So, when discussing ChatGPT, I find that this aspect is vital, that the use of it is not due to the students’ laziness, but is impacted by the way educational systems work, reward, and pick students based on. However, of course, ChatGPT doesn’t always give the correct answer and more importantly it doesn’t teach students the way it got to the answer, which should be the main concern.

Coding and ChatGPT

Regarding coding and exercises like the one we were given about providing a code for plumbers: to calculate their rates (based on hours, experience, and a base-rate price), it gets a bit more difficult, as it is vital to know the basics. In one of the first classes of Introduction to Python, we were given the in-class quiz — that can be found above — for which we had a 30-minute limit, but we were allowed to use previous class notes and AI (ChatGPT). The description is long and at first glance complex. There are two questions: How would the plumber pricing strategy change if there are new technologies available? and Should the plumbers be worried about these advances in science? I was incredibly stressed as we were asked to provide a Jupiter notebook for our answers, but from what I understood after my first read I could answer these in text, in a Word file. Due to the time constraint and my increasing stress level, I copied the text, gave it to ChatGPT, and hoped for the best. In seconds I felt a big relief, as it provided a code for calculating the plumber’s payment if there were additional technologies available, I now understood the assignment.

Now, later on in the course as we were given the assignment again after a couple of weeks, I did the same exercise in a completely different way. I read it carefully once, thought about it, and read it again. Created a simple plumber cost calculation code using only hours, price, and experience level, then added 3 if statements for each of the new technologies (AI, robotics, 3D printing). In my first attempt, during the in-class quiz, ChatGPT was incredibly useful in helping me understand what was expected, however, the code provided was incredibly long (compared to my new one) and it was just more complex than necessary. So, what I’ve learned from this exercise, and doing the exercise again after a couple of weeks was that once I know the basics and truly understand the logic, I can provide a better code that is easier to read for humans compared to ChatGPT’s code. However, if I don’t put in the work in the beginning, and don’t think for myself, and only rely on AI it won’t be as good. Compared to my previous solution, my new code is simpler. It is also clear that I understand the task, and functions better, and know when there is extra complication needed, and when a simpler function is sufficient.

In this exercise I also learned about how others work, while correcting the codes of others, I thought it was fascinating how they probably felt the same way about their code as I did about mine: this is the perfect solution. They think differently, but it is still similar in ways, it’s incredible that to do the same, not-so-complicated task, we can provide so many different solutions, and we still are able to interpret each other’s ways of thinking. Overall, I learned that with a proper understanding of the basics of coding I am better able to determine why ChatGPT’s proposed code isn’t working, but more importantly I’m able to write a simpler code and in my opinion an even better one. My solutions become cleaner, simpler, more elegant, and more logical.

Outlook

This course really helped me see that when under time pressure, we are more likely to rely on AI than ourselves, and when we have more time, to come up with a solution, compare to the solutions of AI, and improve, we will rely more on ourselves. AI can help understand the task, and it can help come up with ideas if lost on solving a part of the exercise, or debugging, but it also makes mistakes, provides codes that don’t work, and occasionally overcomplicates.

Overall, this course strengthened my view on the importance of critical thinking and learning, and learning how to use AI well, without relying on it completely, and instead complementing our way of thinking and our solutions with it. Making our work better, but not replacing our solution. And for this, we must know the basics and the logic behind it.

--

--