GenAI Policy

Resources

Video Transcript

In this video, I want to take a few minutes to discuss the generative artificial intelligence or Gen AI policy in this course. The use of generative artificial intelligence in coding is vastly becoming one of the most important things to learn how to do in industry. But at the same time, from an educational perspective, it produces a lot of struggles because using generative AI really shortcuts the learning process. And so it means you don’t learn the concepts quite as clearly if you had to do them yourself. There’s this concept in education called the productive struggle, where sometimes to really learn something well, you have to struggle your way through it the first few times before you finally get it. And so by relying too heavily on Gen AI to just get over that hump, you end up not learning the content quite as well as we’d like. And so from my perspective as an educator, I want you to learn how to use these tools effectively, but at the same time, I want to build your own skills so that you’re not wholly reliant on using these tools. I think they will make you a much better employee, a much better programmer down the road. And I think as these tools continue to change and modify, the more innate skill you have and the less you are dependent on the current generation of Gen AI, the better programmer you’re going to be down the road. And so that’s really the impetus behind this policy. And I want to take a little time to explain how I’m applying this policy so that you really understand where I’m coming from and how we’re going to work with it in this course.

So to make things really simple for Gen AI, I’ve adapted a three-tier policy that’s a stoplight policy for using Gen AI. Every assignment in this course is going to have a stoplight symbol with one of the three colors illuminated. It will also have some text description on it as well. And so it basically describes my expectation for how you should or should not use Gen AI in this course. Obviously, items that are marked as red, Gen AI use is prohibited. Items marked in yellow, you can make limited use of Gen AI. And items marked in green, you are encouraged to make full use of Gen AI. So let’s talk about these different levels.

The first level is red, where Gen AI is prohibited. Generally, you’re going to find items marked in red being the quizzes, being things like concept quizzes, and being the interactive examples. A lot of the reason I do that is because the examples are there to help you develop new skills. And so I really want you to go through all of the steps yourself. And then for the quizzes and concept quizzes, those are my assessments of your learning and understanding in this course. They’re not too heavily weighted towards your grade, so I really want to know what you understand and not what you can get ChatGPT to print out for you. And so those items are going to be marked in red. Any violations of the Gen AI policy in these items is going to result in a grade of zero immediately on the assignment and possibly referral to the Honor Council. Obviously, from my perspective, catching someone using Gen AI can be difficult in this course. And so there’s a little bit of back and forth. But the way that I generally do this is by asking you to discuss your work. And we’ll talk about that a little bit later. But sometimes it’s pretty obvious when I get an answer that is not anything we’ve covered in this course. It’s not using any of the terminology or anything that I’ve covered in the textbook. It sounds like it’s just regurgitated from an online source. Those answers will kind of get more scrutiny under this policy. So be aware, try not to use Gen AI. I know it’s really easy to do, but please try and follow this guide, especially on these assessments, so that I can really understand where your learning is and what your gaps are so I can help you get over those as we work through this course.

So the next policy is yellow. Yellow, I allow limited use of Gen AI to complete a task or achieve a goal. What I want you to think about is think of Gen AI as a partner that you can ask questions, that you can get advice from, that you can say, hey, hey, ChatGPT, how do I do this thing? And have it describe it to you and help you understand what’s going on. However, the assignment that you turn in for this, I still want it to be a majority of your own work. And so you’re not allowed to take the output of Gen AI and just directly copy it into your assignment. It’s really easy to ask Gen AI to write a piece of code for you and you just plop it into your assignment. I don’t want you to do that with these yellow items. Instead, you can ask ChatGPT. You can even have it print out code. But then I want you to take that code and adapt it to fit your scenario and make it your own work. A lot of times the only way you’re going to understand this code is by actually writing it and working with it yourself. And so I want you to be able to do that, but still have the opportunity to use Gen AI to help explain code, help explain concepts. It can be a really, really powerful tool and a tutor. And so when I mark things as yellow, I want you to think of Gen AI as a tutor or a partner that you can work with, but you still can’t just copy paste their code. You can’t have them do your homework for you, but you can interact with them to try and understand things. So for this policy, if you do use Gen AI in any way, I want you to include citations in your code or in your written assignments for this. I’ll talk about citations a bit later. You should not use any AI results directly in your work. So no copy-pasting answers from AI or code from AI. You should adapt it in your own words. And then once again, any violations of this policy will receive a grade of zero and possibly a referral to the Honor Council.

Finally, the last policy is green. Green is when I encourage you to use Gen AI to fully complete a task. You can just tell Gen AI, hey, do this for me, help me build this, write this code for me. Gen AI is not perfect, and so you’ll have to do some work to ensure accuracy. But a lot of times I allow you to use full use of Gen AI when we’re either doing something that’s highly repetitive or something that’s creative or design-based. This is not really a UI design course. It’s not really a UX design course. And so if you want to do things like have Gen AI help you make cool buttons and pretty colors and better interactivity and stuff on your web apps and on your GUI apps, that’s fine. That’s not really one of the points of this course. As long as you get the functionality working, the actual bells and whistles, you can use Gen AI to work on that. So again, if you do use Gen AI, citations are required. We’ll talk about that in a second. But this one, the difference between green and yellow is in green. Direct AI results can be submitted as your work. Again, it needs to be cited, but you can just copy paste the code from Gen AI. And then, of course, once again, violations will be referred to the Honor Council. Violations of this policy would be including work from Gen AI that is not cited. That’s really going to be the violation here.

The last big thing about this, at all three levels, you are expected to understand any submitted work. Any code that you submit, whether you wrote it, whether Gen AI wrote it, whether you follow the policy or not, you are expected to understand every single piece of code that you submit in this class. If I have a suspicion that you are using Gen AI that you shouldn’t be or you’re not citing it or I see code that I don’t understand, I may at any time ask you to meet with me on Zoom and explain different pieces of your code to me and explain how it works and what your thought process was as you were putting that together. As a programmer, you need to be able to do this. If you’re putting together code and just throwing code out there that you don’t understand, that’s not really effective. That’s not doing any good. And so I generally don’t want to do this very often, but I would imagine throughout the semester, most of you, I will have a couple of these meetings with you just to get a feel for how you’re doing. I will expect you to be able to explain things. And if you cannot explain it and I feel like that you really submitted code that you don’t understand, I could consider you in violation of this policy and have to issue sanctions on that. Again, proving that you have used Gen AI is really, really difficult. There are not any good tools out there that can just look at a piece of code and say that it’s built by Gen AI. It’s a lot of circumstantial evidence. But in my mind, even if you didn’t use Gen AI, if you’re submitting code that you don’t understand, that’s not any good in this course. And so I feel like that alone should be worth a zero because you really didn’t understand what you’re doing. So that’s really where this part of the policy comes from is you really need to understand what you’re coding, what you’re submitting, what you’re turning in. And if you don’t, work with me, work with ChatGPT if you’re allowed to do that and really make sure you understand what’s going on so that when you’re submitting code, you’re confident and able to explain it. Part of this is going to be comments. If you leave good comments in your code, you’re going to be able to explain it a lot better because you talked your way through it yourself when you wrote the code. So those are some things I want to see there.

Now let’s talk about a couple of citations. There is no real format for proper citations for Gen AI yet. I’m kind of hoping that some people come up with something. This is what I’d like to see. And so there are four big parts of a Gen AI citation. The first big thing is I want to know what tool you’re using. And so the tool, I’ve got OpenAI Chat GPT, the company, the tool, and then what language model it’s using. So this language model is using GPT 5.2. And then I just put in parentheses the date, the month, and the year when I worked with it. That way I kind of have an idea of when you were doing this. The prompt is whatever prompt you put into the text field. It’s whatever you did. The context is any additional context you provided to the AI, especially when you’re working with a coding agent like ChatGPT Copilot and Claude. You can give it access to individual code files. You can give it access to your entire code base. And so I want to know what context you provided as part of this chat. And then finally, I want you to discuss the usage of the output. You don’t necessarily have to list the full output because that’s going to be really long, but I want you to discuss how you took that output and applied it in your assignment following the policy that was set out for that assignment. So this is an example of if the policy was yellow, if you could have limited Gen AI usage. So you said, here, I use the output of ChatGPT to understand how the tool works and what limitations it presents. And then paraphrase that output in your discussion where cited. That’s great. That tells me a lot about you ask ChatGPT some questions, you use the output, but you put it in your own words.

This is an example of a more full-featured Gen AI usage if the policy is green. So here I was using GitHub Copilot with Claude and I asked it to help me write unit tests for an entree class. And so it described some of the unit tests. I gave it a context of the unit tests from the milestone assignment and also my existing source code. And then it was able to actually look at that code, look at that assignment and scaffold the unit tests. And then after that, I ensured each test was accurate and complete. Claude especially tends to hallucinate unit tests that are either trivially true or trivially false. And so it doesn’t actually do a good job of testing code sometimes. Sometimes it really does, but sometimes it make a test that, you know, true equals true. It’s not really useful. So I looked at each of the tests, made sure they were accurate, and edited it to make sure that it actually exercised all the code paths. So again, this makes me feel really comfortable of how you were using Claude, how you asked it to do things, and how you adapted and made those results your own in the work itself. So finally, hopefully this makes sense.

This is really, I’m recording this in January 2026. This is really a new policy that we’re trying to get a better handle on the use of Gen AI tools in programming. And I think that CC410 is a really great opportunity to take the training wheels off a little bit and let you openly use some of these tools in an effective way while still adding some of the guardrails to make sure that you’re really learning what you should be learning. And like I said, this is a balance between learning how to use the tools that you will undoubtedly use in industry, but also making sure that we’re not graduating students out of this program that only know how to use these tools and don’t really understand programming. That’s what we’re really trying to help you with. You know, the goal in education is not to get 100% on the assignment. The goal is to actually learn something. And then the 100% on the assignment is you proving that you learned it. So that’s really what I’m coming from on this policy. If you have questions or concerns or want to learn more about this policy, please contact me and ask for clarification. I would be happy to chat with you. Asking will not get you in trouble. If you’re like, hey, I want to do this for my assignment, but I’m not sure if I can. Is this okay or not? I will not come down on you and issue a policy violation just because you did not do things correctly. It’s only when you submit things that there will be policy violations. Asking me for clarification or, hey, I did this. Is this okay? That’s not going to get you in trouble. And like I said in my intro video, ignorance of this policy is not an excuse for violations. Just because you’re like, oh, I didn’t know I couldn’t do that. That’s not an excuse for violations. I’ve tried to make this very clear. So hopefully we don’t have any problems in this class, but I want to be very open about my approach to this and what you’re going to see from me throughout this semester. So hopefully this is useful to you. If you have any questions or concerns, please let me know. Otherwise, best of luck in this course. And I look forward to seeing all of the interesting ways that you’re able to use Gen AI where allowed in this course.