AI-Generated Code Detection: The New Frontier in Academic Integrity
As AI coding assistants become ubiquitous, learn how institutions are adapting to detect AI-generated code and maintain educational standards.
Expert insights on AI code detection and academic integrity
As AI coding assistants become ubiquitous, learn how institutions are adapting to detect AI-generated code and maintain educational standards.
Stay ahead with expert analysis and practical guides
General
10 min
Take 30 hand-written Java solutions, push them through five levels of mechanical refactoring, and you get a controlled ladder for asking a simple question: how much does each similarity engine actually see? The answers differ by nearly a factor of four, and the differences map cleanly onto how we should be designing assignments.
General
11 min
Renaming variables and restructuring control flow used to be the cheat code for copying a classmate's submission. It hasn't been for years, and the techniques that closed that door are worth understanding before LLM rewrites move the goalposts again. A practical look at what each family of code similarity detection actually compares, and where all of them still fail.
General
12 min
A DevSecOps lead's field notes on putting AI-generated code detection inside a real CI pipeline: what the detector actually measures, which files produce false positives on day one, and why the gate should warn on pull requests but only block on release. Includes the config we run and the numbers we got.
General
17 min
A student submits Python. Their partner submits Java. A line diff reports 0% identical text, and the plagiarism checker stays quiet. Cross-language copying is a semantic clone problem, and it needs a different kind of comparison than the token matching most tools provide. Here is how the detection actually works, where it fails, and what to put in your syllabus before next term.
General
9 min
Renaming a variable, extracting a helper, and swapping a for loop for a while loop are the three moves students reach for when they want a copied submission to look original. Some similarity engines shrug them off, and some lose the match entirely. This piece walks through how token hashing, AST subtree matching, and fingerprinting each behave against a deliberately refactored Python pair, then compares what MOSS, JPlag, Dolos, and Codequiry actually reported on the same cohort.
General
11 min
MOSS and JPlag compare Java to Java and Python to Python, which means a translated submission can score in single digits while the logic stays identical. This is how one lecturer, a TA, and a department chair handle ports, and what they've learned about the tooling that catches them.
General
15 min
Two Python submissions scored 4% against each other and in the 70s against a Java gist from 2017. Cross-language plagiarism is the fastest-growing blind spot in academic integrity because translation destroys the text while preserving everything that matters. Here's what survives a translation, what detectors actually see, and where the false positives come from.
General
11 min
Ottenstein's 1976 detector hashed student Fortran token streams, and most of what we run today is a refined version of the same idea. This is the fifty-year arc from line diffs to winnowing, AST matching, web crawling, and statistical AI detection, plus the failure mode that still bites: a 0% similarity score that tells you nothing about authorship.
General
11 min
Most statements of work say "original work" and never define it, which is how GPL code ends up in your settlement service. Here is the four-question intake review I run on every contractor deliverable, with the thresholds and tooling that hold up under scrutiny.
General
10 min
Line diffing under-reports copied code and over-reports similar-looking code. Here's what token normalization and AST fingerprinting actually compare, where each one breaks, and how to wire both into a CI pipeline or an academic submission workflow.
General
12 min
Renaming variables and swapping a for loop for a while loop defeats simple text matching, but it rarely defeats structural comparison. This report walks through the obfuscation ladder, the algorithms that climb it, and the published detection rates behind the claims, including the cases where every engine still misses.
General
11 min
Cross-language code plagiarism detection compares normalized structure rather than raw text, which works when a translation was mechanical and fails when the student rewrote the algorithm. Here is what survives a Java-to-Python translation, what the token and IR approaches actually see, and how to run the check across a whole cohort without drowning in false positives.