Academic Integrity
All submitted work must reflect your own reasoning, honestly disclosed. This applies to every source — classmates, the internet, books, and AI tools alike. Integrity here rests on two rules: be honest about where your work came from, and understand everything you submit.
Your own work
Work is your own when the reasoning is yours and the provenance is honest.
- You directed the work, made the decisions, and can explain why the solution works.
- Any contribution from another person, an outside source, or an AI tool is disclosed.
- Code you cannot read, trace, and explain is not your own — whoever or whatever produced it.
Working with others
- You may discuss problem statements, approaches, and concepts with classmates.
- You may not share code or detailed solutions, or view another student's code on individual work.
- For individual assignments, only you and course staff may see your code.
- Sharing your code so another student can copy it is a violation for both of you.
- Do not post your solutions publicly (public repositories, group chats, forums) or pass them to students in other sections or later cohorts.
Outside sources
- Use external code — from the internet, StackOverflow, GitHub, tutorials, or any other source — only where the assignment allows it. When it is allowed, attribute it: cite the source in a comment or your README.
- Use only the libraries permitted for that task.
- Copying an online solution and presenting it as your own is plagiarism, exactly like copying a classmate.
- No self-reuse without permission. Do not resubmit work from a previous attempt at this course, or from another course, as new work.
Using AI
This course uses AI deliberately, but AI is a source like any other: its use is set per assignment and must be disclosed. Read each assignment. Three cases:
- Expected — you are meant to use AI (prompting, pair programming, hints, refuting wrong code).
- Restricted — limited to a stated mode, e.g. hints only, one prompting session, a controlled environment.
- Prohibited — no AI at all (tracing tests, debugging tests, closed assessments).
When an assignment says nothing: AI as a learning aid (explanation, hints, critique) is allowed and must be disclosed. Prompting for a complete, ready-to-submit solution is not — that needs explicit permission.
Ask for hints and explanations, not finished answers. Progressive prompting toward your own solution is the skill being assessed.
Prompts.txt (required)
Any submission where you used a generative AI tool must include a Prompts.txt at the root of your repository.
For each tool you used, record:
- Tool — name and model/extension (e.g. "Claude in VS Code", "GitHub Copilot").
- Prompts — verbatim, including follow-ups.
- Response use — for each: accepted, modified (how), or rejected (why).
Did not use AI? A one-line file reading No generative AI tools were used for this submission. is always acceptable.
Tool: Claude (VS Code extension)
--- Prompt 1 ---
Explain what a sentinel value is, without writing my code.
Response use: Accepted the idea; ended my loop on -1 instead of a fixed count.
--- Prompt 2 ---
Here is my loop [pasted]. It skips the last value. What is the bug?
Response use: Found my off-by-one. Rewrote the condition myself and tested it.
--- Prompt 3 ---
Give me the complete solution.
Response use: REJECTED — not permitted on this task. Deleted unread.
A truthful Prompts.txt works in your favour; it is what an oral check is compared against. A missing, inaccurate, or backfilled one is a violation — even where AI was permitted.
Understanding
You are responsible for everything you submit.
- You may be asked to explain, trace, or modify any submission in person, without AI.
- Some tasks are AI-free by design, to measure what you can do unaided.
- If you cannot explain it, do not submit it.
Also prohibited
- Contract cheating — paying or asking any person or service to do your work.
- Impersonation — having someone else sit an assessment or submit as you, or doing so for someone else.
- Unauthorized materials in assessments — solution manuals, leaked papers, shared question banks.
- Fabrication — inventing results, program output, or data.
Consequences
Suspected violations are handled under this course's rules and University policy, up to a zero on the affected work and referral under University procedures. Both parties to shared-code cheating are treated as responsible.
Honest disclosure is never a violation; concealment is. When in doubt, ask a TA or the instructor before submitting.
FAQ
Can I use AI to write my code?
Depends on the task — read each assignment. Whenever you do use AI, include a Prompts.txt.
Can I use code I found online or on StackOverflow?
Only if the assignment allows external code, and only with attribution in a comment or your README. Otherwise, no.
Can I reuse my own code from a previous attempt or another course?
Not without permission. Ask the instructor first.
Can I post my solution on GitHub or share it?
Not while the assignment is in use. Keep individual work private to you and course staff.
I only asked AI a question, I didn't have it write code. Does it count?
Yes. Record the prompt and what you did with the answer in Prompts.txt.
Does disclosing a lot of AI use hurt my grade?
Not by itself. What's assessed is whether you understood and directed the work. Hiding use is worse.
Can I use AI on the tracing and debugging tests?
No. Those are AI-free on purpose.