AI Use Policy

Academic Integrity
What AI assistance is allowed in this course, what you must disclose, and what crosses the line.

Use of Generative AI

Overall Course AI Status: 🟡 Yellow — The use of specific generative AI tools is required for many of the assignments in this class. However, there are some activities for which generative AI tools are not allowed.

On programming assignments where it is allowed, it is important to treat AI as a tool, not a replacement for understanding your code.

Written Reflections — 🔴 Red (AI not allowed)

Throughout the course you will be asked to read articles, watch videos, and reflect on your learning in writing. You may not use generative AI tools to help with these written reflections.

Why? These reflections are intended to help you think and capture your personal understanding and growth. Using AI to generate content for these reflections undermines the purpose of the assignment.

Build Assignments — 🟢 Green (Encouraged, with caution)

You may use generative AI tools to help write code for Build Assignments. You are also encouraged to use AI to help you understand code provided by the instructor or code that was written with AI assistance.

Most Build assignments will require you to complete an AI development log, documenting your goals, prompts, AI responses, code changes, and testing results.

Why? One of the primary goals of this course is to prepare you for real-world software deveopment, where AI tools are becoming common. Learning to use AI effectively and responsibly is an important skill.

Use caution: It can be tempting to hand your coding task off to an AI tool without understanding the results. You are the developer—AI is your assistant, not the other way around. You are responsible for making design decisions, specifying what the code should do, and understanding how it works. AI can help with implementation details, but the high-level thinking and decision-making must be yours. You are responsible for your code and what it does.

Code Reviews - During the Review — 🔴 Red (AI not allowed)

Code Reviews will include giving a short presentation and answering questions about your code, design decisions, etc. You may not use generative AI during the presentation or the question and answer session–you must understand your code and be able to answer questions about it without AI assistance.

Why? These assessments measure your understanding. If AI does the thinking, grades do not reflect what you can do, and that hurts you in later courses and in the real world. Using AI on red-light assessments is academic dishonesty.

Code Reviews - Preparing for the Review — 🟢 Green (Encouraged, with caution)

You may use generative AI tools to help prepare for the Code Reviews. For example, you may use AI to help you understand code that was provided to you by the instructor or code that was written with AI assistance. You may also use AI to help you practice explaining your code or answering potential questions.

You may use AI to help you create your slides for the presentation component of the Code Review. If you use AI for this purpose, your presentation must include a slide describing how you used it. You must also submit a separate log of your AI interactions while working on the slides (e.g., the prompts and responses and how they were integrated into your presentation).

Why? Preparing for a Code Review is about learning and understanding. AI can be a great tool for this if used properly.

Use caution: Always ensure that you fully understand any explanations or code generated by AI. You should be able to explain everything in your own words during the review. You are responsible for the content of your presentation and your answers during the Q&A.

Final Project Presentation - During the Presentation — 🔴 Red (AI not allowed)

Final Project Presentations are given to the whole class (and possibly guests) and focus on the problem you addressed, your solution, and what you learned. You may not use generative AI during the presentation or the question and answer session—you must be able to explain your project and answer questions without AI assistance.

Why? These presentations measure your ability to communicate your work. You should be able to articulate the problem, your approach, and your results in your own words.

Final Project Presentation - Preparing for the Presentation — 🟢 Green (Encouraged, with caution)

You may use generative AI tools to help prepare for the Final Project Presentation. For example, you may use AI to help you organize your ideas, practice explaining your project, or anticipate audience questions.

You may use AI to help you create your slides. If you use AI for this purpose, your presentation must include a slide disclosing how you used it.

Why? Preparing for a presentation is about organizing and refining your message. AI can be a helpful tool for this if used properly.

Use caution: The presentation should reflect your understanding of the problem and solution. You should be able to explain everything in your own words. You are responsible for the content of your presentation and your answers during the Q&A.

Final Project Repository — 🟢 Green (Encouraged, with caution)

You may use generative AI tools to help write code for your final project. You are also encouraged to use AI to help you understand code that was written with AI assistance.

Your final project repository must include an AI development log documenting your goals, prompts, AI responses, code changes, and testing results throughout the project.

Why? The final project is an opportunity to apply what you’ve learned about working effectively with AI tools on a larger, self-directed project.

Use caution: Just as with the Build Assignments, it is important to remember that you are the developer and AI is your assistant. You are responsible for making design decisions, specifying what the code should do, and understanding how it works. AI can help with implementation details, but the high-level thinking and decision-making must be yours. You are responsible for your code and what it does.

Final Project Portfolio Piece — 🟢 Green (Encouraged, with caution)

Your final project portfolio piece is a public website summarizing/demonstrating your project. It is intended to showcase your work and your skills to potential employers, collaborators, and the broader community.

You may use generative AI tools to help create the content for your portfolio piece. If you use AI for this purpose, your portfolio piece must include a section disclosing how you used it.

Why? Creating polished, professional content is a valuable skill. AI can help with writing, design suggestions, and refining your message—skills you’ll use throughout your career.

Use caution: The portfolio piece should authentically represent your skills and experience. Ensure that you fully understand and can explain all of the content. You are responsible for the content of your portfolio piece, which is available publicly on the web.

Things You Should Never Do with AI — 🔴 Red

  • Share sensitive personal information (yours or others’): student ID, financial info, detailed health info, etc.
  • Upload or share quizzes, tests, or exam questions with AI tools.
  • Use AI to evade policies (e.g., “rewrite this so it passes plagiarism detectors”), break the law, or violate privacy.
  • Treat AI as automatically correct; always check it against course materials and your own understanding.
  • Represent AI-generated work as entirely your own when it is not.

With Great Power Comes Great Responsibility

  • AI is a powerful tool that can greatly enhance your learning and productivity. However, it also comes with responsibilities. Always use AI ethically and in accordance with course policies.
  • Other courses may have different AI policies, often more restrictive than ours. In fact, many courses ban the very tools we encourage here. It is your responsibility to understand and follow the policies for each course you are enrolled in.

When in doubt about whether a particular use of AI is appropriate, always ask your instructor.

Transparency: How I Use AI as Instructor

I use AI tools extensively in developing this course. For example, I use AI to:

  • Draft and refine course documentation, policies, and resource guides
  • Create and organize course website content
  • Verify technical instructions are accurate and up-to-date
  • Draft and clarify assignment instructions
  • Help write code for assignments
  • Draft and refine slides

I always review and edit AI-generated content before it reaches you. Given the nature of this course, I may even experiment with using generative AI to assist with grading, but I am responsible for the results.

Back to top