Use of AI assistants is nearly mainstream at this point. Some companies, including several of MSOE’s corporate partners, are requiring their employees to use AI assistants. As an educator, I have a mandate to prepare my students to be career ready, and that now means being proficient users of AI.

So, I’m deciding to take the plunge this Fall: I’m not only allowing my students to use AI assistants for programming tasks – I’m encouraging it.

That said, I want to figure out how best to incorporate AI into my classes. I want to use it to increase student learning. I recognize that what students learn might be different in an AI-infused class. For example, AI assistants are often used to figure out implementation details for abstract concepts – something we generally expect our students to get really good at in programming-heavy courses. Instead, students will need to improve their skills at determining how to use AI assistants effectively, describing requirements and directions in written English, and evaluating suggestions and output critically.

For now, I’m limiting AI use to programming assignments. Students will not be allowed to use AI for writing lab reports or on exams.

I’m requiring students to tell me when they use AI to complete assignments and write an end-of-term reflection on their use of AI. I will also be collecting grade and other performance data. I will analyze all of these data to determine the impact of AI use, figure out how students are using AI, in what ways it’s valuable, and what adaptions I need to make to both support their use and change my approaches to assessing their learning.

I’m providing my syllabus language here in case it’s useful for others who are interested in taking the plunge.

Syllabus Language

AI Programming Assistants

AI-assisted programming tools (e.g., Cursor, Claude Code, etc.) are quickly seeing widespread adoption in industry. It will be important that you are familiar with using these tools to be competitive in the work force. That said, faculty are still trying to figure out where to allow these tools to be used so that we do not hinder the development of fundamental skills. Many of the assignments in the class involve using a wide swath of technologies. One of my goals is to give you experience with these tools. AI assistants can be useful for explaining code, fixing code, and writing code. I’ve opted to ALLOW AI assistants to be used for completing the programming assignments only as long as you agree to the following conditions:

  • You must indicate in every submission in which you used an AI assistant that you did so.
  • You will need to submit a 2-3 page reflection at the end of the course that describes:
    • 3-4 specific examples of tasks you used the tool for (including prompts, if possible)
    • Describe where the tool performed well and were helpful for you
    • Describe where the tool performed poorly and hindered your progress
    • Lessons you learned about using the tool effectively

If you use an AI programming assistant but do not indicate that in your assignment submission, it will be considered plagiarism.

Using Data for Research

I will use grade data and reflections from students using AI programming assistants to evaluate the impact of AI-programming assistants on student learning and inform future approaches to incorporating them into classes.

All data will be anonymized with personally identifiable information (PII) removed. Any connection between your name and your academic performance will be permanently removed. Grade data will only be reported using aggregated summary statistics (e.g., means and standard deviations, histograms, and statistical tests between users and non-users of AI).

Participation in this research is entirely voluntary. Your decision to participate or opt-out will not affect your grade, standing in the class, or your relationship with the instructor in any way. If you do not wish for your de-identified data to be included in this research, you may opt out. Please inform the instructor in writing by October 1, 2025.