Tip: Choose Save as PDF in the print dialog to download. Use A4 paper size.
Shade in the A or B circle for each question.
Draw a line connecting each item on the left to its match on the right.
| Left column | Right column | |
|---|---|---|
| 1query = "SELECT * FROM users WHERE name = '" + name + "'" | ABiased or unfair output: the rule rejects people by where they live, which could unfairly disadvantage a group | |
| 2if applicant_postcode in blocked_postcodes: reject() | BLetting AI do all the coding causes de-skilling. You lose your own problem-solving skills and judgement. Use AI as a helper and write and understand code yourself. | |
| 3Outdated code: AI may suggest old methods that are no longer recommended, so check the documentation | Cassert calculate_total([2, 3]) == 5 # I tested it | |
| 4Keeping a human in control: read the code, test it and be able to explain every line before you use it | Dimport md5 # old, weak hashing library | |
| 5# AI wrote it, so I will paste it in without reading | EInsecure AI-generated code: joining user input into an SQL string allows SQL injection, so it must be reviewed and fixed | |
| 6# Let AI write all my functions so I never need to learn how | FPasting AI code without reviewing it means bias, outdated methods or security flaws go unnoticed. Review and test it first. |
Complete each line of code by filling in the missing parts.
Shade in the letter of the line that contains an error.
AI over-reliance — Trusting AI-generated code without checking it. The code may be biased, outdated or insecure, and you lose your own skills and judgement. Always review it and stay in control.# AI hardcoded it; ask the user instead
password = input("Enter password: ")if reviewed and tests_passed:
deploy()# Equal skills, so scores must match
assert score(a) == score(b)# I wrote this myself, no AI
def average(marks):
return sum(marks) / len(marks)answer = input("Accept AI code? y/n: ")
if answer == "y":
print("Merged after review")