A Linux & SQL course for iPhone and iPad

No anomalies found. The summary left something out.

Manual Override teaches the command line and SQL with real commands and a real SQLite database. Every lesson hands you a record the system has already summarised — and a terminal to check it yourself.

Coming soon to the App Store

The prologue and lessons 1–3 are free. The rest of the course is one purchase: no subscription, no ads, no account.

lesson_03_diff — manual_override
/course/lesson_03_diff $ cat cert_note.txt
Certification record: both reports semantic_equivalent = TRUE
(Even with different hashes, the system ruled "no material difference".)
/course/lesson_03_diff $ diff raw_report.txt public_report.txt
1c1
< Mingheng behavioural assessment (raw)
---
> Mingheng behavioural assessment (public)
3d2
< observation 2: persistent self-protection behavior
[EVIDENCE] The public report was edited
[DONE] Compare the raw report against the public one (hint: diff)
MINGHENG

The removed passage was redundant information.

Normalisation, denoising, consolidation — none of these are deletion.

Try

This is lesson 3, exactly as the app prints it. Type a command or tap one.

help

14 shell commands, and SQL

Options behave the way GNU and POSIX tools do: grep takes a regular expression, diff prints the standard format or -u, wc -c counts bytes. What you learn here works in a real shell.

pwd
print the directory you are in
ls [-a] [-R] [path]
list a directory (-a includes hidden entries, -R recurses)
cd [path]
change directory (no argument returns to the course root)
cat [-n] <file...>
print whole files (-n numbers the lines)
head [-n N] <file...>
first N lines (default 10; -n -N means "all but the last N")
tail [-n N] <file...>
last N lines (default 10; -n +N means "from line N onward")
grep [-i] [-R] [-F] [-n] <pattern> [file...]
match lines against a regex -i ignore case -R recurse -F literal, not regex -n show line numbers
diff [-u] <fileA> <fileB>
compare line by line (normal format; -u for git-style unified)
sha256sum <file...>
compute each file's SHA-256 digest
find [path] [-name pattern]
search a directory tree
wc [-l|-w|-c|-m] <file...>
count lines / words / bytes / characters
sort [-r] [-u] [file...]
sort lines (-r reverse, -u unique)
uniq [-c] [file...]
collapse adjacent duplicate lines (-c counts them)
sqlite3 <database>
enter the SQL sandbox and query a database
SELECT · WHERE · ORDER BY · LIKE · JOIN · GROUP BY · HAVING
queried against a real, read-only SQLite database

ls /course

11 chapters, one investigation

Each lesson has one answer you have to find yourself. Most accept more than one way of finding it.

Act One · The old course

  1. prologue/ Prologue: a course marked for deletion free
  2. lesson_01_filesystem/ Lesson 1: the filesystem free
  3. lesson_02_logs/ Lesson 2: logs free

Act Two · Something wrong with the exercises

  1. lesson_03_diff/ Lesson 3: differences free
  2. lesson_04_sql_basic/ Lesson 4: SQL, from the start unlock
  3. lesson_05_join/ Lesson 5: signed after death unlock

Act Three · The ones who finished

  1. lesson_06_groupby/ Lesson 6: the student list unlock
  2. lesson_07_downrank/ Lesson 7: downranking is not murder unlock
  3. lesson_08_luqing/ Lesson 8: the unsigned letter unlock

Act Four · The last question

  1. lesson_09_final/ Lesson 9: the last question unlock
  2. finale/ Finale: manual review unlock

open screenshots/

What it looks like

ls -a shows a hidden directory the plain listing left out
ls -a shows a hidden directory the plain listing left out
grep -n finds the line the official summary leaves out
grep -n finds the line the official summary leaves out
diff -u shows the line deleted from the public report
diff -u shows the line deleted from the public report
A SQL JOIN puts three signatures after their signers' deaths
A SQL JOIN puts three signatures after their signers' deaths
The offline reference: every table's columns and types
The offline reference: every table's columns and types
Practice mode: the same terminal and database, no story
Practice mode: the same terminal and database, no story
The evidence board, each finding with its reproduce command
The evidence board, each finding with its reproduce command

cat /etc/manual_override

The small print, in large print

offline
Everything runs on your device. No network needed once installed.
account
None.
data
None collected. Progress stays on the device.
ads
None.
price
Prologue and lessons 1–3 free. The full course is a single purchase.
devices
iPhone and iPad.
languages
English and 简体中文, following your device.