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.