CS 3212: Algorithms

Integrity, AI-tools, course policies (and why they matter)


First, let's state a critical assumption:

Students are expected to do their assigned work on their own, unless otherwise specified
The "otherwise specified" could mean many things: carefully circumscribed teamwork, using tutoring/TA help organized by the course, or other ways that involve other people or tools. The key word here is specified: unless your interaction with others is specified, the default assumption is that you do assigned work on your own.

In what follows, we'll use the generic term AI or AI tools to mean any of the modern tools, or searching the web for posted solutions, or asking a friend/tutor/whomever to help with assigned work.

Here are some common (student) questions:

  • "If others are using AI tools to cheat, aren't they gaining an unfair advantage over me?"
  • "If I'm learning by asking AI to help me solve problems, why should that be a problem?"
  • "Why can't I decide how much time I want to spend on assignments and when I want to turn to AI for help?"
 

Now consider these factors:

  • What is your success-mindset? What is the true purpose of learning? The real goal of learning is to set yourself up for long-term career success. It is not to get high grades. And what is this career-success thing? It is the ability to apply your learning at critical times in your career, on problems that are ill-defined, amorphous and need quick solution. Having good grades from courses taken years ago is immaterial in such situations. And the only way to train your mind is to be immersed in developing your own learning.

  • Grade-chasing vs. learning. So, do grades matter at all? In some cases, such as applying for PhD programs, yhey may matter if you don't have recommendation letters. (And to get good recommendations you need to work on a project where, guess what, you apply your skills.) In all other situations, as long as grades aren't terrible, they matter a lot less or not at all. You can see this in job interviews: good grades don't help if you can't pass a technical job interview. Once you are in a career, past grades don't matter at all. But why does everyone chase grades? It's because students have been acculurated into doing so. It's in-grained. Unfortunately, the mindset of chasing grades can cause behavioral changes that work against building the intellectual capacity for long-term success.

  • Others are doing it. This is an important point to acknowledge. It seems unfair if you are working diligently and not getting the highest scores only to see certain others skate by with help from AI. But again, once you focus on the long-term goal of being capable in your career, it's easy to see that the unfair short-term advantage of others in a course has no impact on your career.

  • Why is IT so hard? The "IT" here is many things. Yes, it's hard to focus on the future. It's so much easier to fall back on our in-grained looking at grades and scores. Another meaning: computer science is hard. So much time and effort has to go into writing programs, debugging, and satisfying assignment requirements. Yes, all true. This is because computer science learning is not fact-driven or based on memorization (except slightly) but rather skill driven. It just takes time to learn a mental skill. No mental skill is easily acquired - it's just how we're wired. One can't learn a foreign language or musical instrument without putting in the time.

  • Confidence. One the best reasons to tough it out on your own is to develop technical confidence. That might seem a bit out of reach in the midst of a grueling semester, but it does happen and does accumulate over time. There are countless examples of students who push themselves through with not-the-best grades only to shine in Senior Design or soon after in the workplace.

  • Learning from AI. If AI can help with learning, why not? This issue is a bit subtle. Suppose you have a linked-list programming assignment. Asking AI to show examples of linked-list code may indeed help learning but it can easily cross the line because the code shown can be pieced together into solving the assignment. In this manner, it's hard to draw a clean line between using AI as a learning tool and getting too much (improper) help. And, most importantly, the best learning occurs when you struggle on your own.

  • Exams. The power of AI tools is forcing a change in academia. Proctored exams are going to be more common, and will certainly test learning.

To summarize, ask yourself: what do you take from this course that is going to matter years from now? It's going to be the skills you develop, and the only way to get those skills is to put yourself through the rigor of developing them, regardless of what others are doing.


Course policies on integrity

  • In this course, you will be expected to work on all assigned coursework by yourself, unless otherwise specified by instructions on the course website. If you have any questions whatsoever regarding these policies, see me during office hours.

  • You may not, without permission from the instructor, exchange course-related code with anyone (including anyone not registered in the course), or download code for use in your coursework, or use material from books. Likewise, you may not look at anyone else's code or show your code to anyone else. Protect your work: for example, be careful not to leave your printouts around. The only exception is when team or groupwork is explicitly specified.

  • The use of AI tools is expressly forbidden. Yes, it's true that one can learn from AI tools but because it's easy to cross the line and because there are plenty of other ways to learn (office hours, TAs, lab) it's best to avoid using AI tools.

  • If using a tutor, you may not show your course-related code to your tutor nor use code shown or written by your tutor. All tutors for this course need to first register with me, by meeting me during office hours.

  • If you use material in your assignments that are from outside the course material, then you should be prepared to explain that material. The instructor and TA's reserve the right to question you on your use of extraneous material. Failure to answer such questions might be viewed as grounds for an integrity violation.

  • The Academic Integrity Code or Student Conduct Code will apply to this course. Please read through the code carefully.

  • Penalties for violating the code or the policies described here include failing this course, and are elaborated in the Academic Integrity Code.