Tortoise
Encode

Watching Is Consumption. Doing Is Encoding.

  • #encode
  • #building-in-public
  • #cs50p
  • #learning-techniques

Sat down at 9:50 on a Sunday planning three twenty-five-minute blocks: cold walk a subset of the palace, watch a chunk of CS50P, push to video minute fifty-five. By 12:51, three hours later, none of the cold walk had happened, the video sat paused at minute forty-five, and a thirteen-pillar memory-athlete operating system that had been quietly compounding in Notion for thirty days had been absorbed into the Encode pipeline. Architecture day. Real shipping. Course progress modest.

Most of the session was rebuilding the system around two corrections I needed told twice. First: courses are primary, memory training slow-adds. Second: use the gym palace for the one-seventy memory-lesson curriculum, keep the house palace for code. Translation — Encode is primary CS, secondary slow-add memory work; two parallel palaces, one daily blog connecting both meta-skills. The hiring story is the combination. Memory athlete plus Python developer is a niche of one. That’s the angle.

The encoded image was the win. Lesson one of the 170 — EPIC framework, my own upgrade of the standard SEE principle: Energize, Physics-breaking, Impossible scale, Charged emotion. Locus one of the new gym palace is the entrance doors. The image I built was running and skipping toward the building, jumping thirty-five feet in the air on each step and falling silently, watching the gym appear in the distance the size of Texas with a petite door shaped exactly like my body, feeling like a hunter stalking prey, ready to sacrifice my muscle for glory. Cold-tested the same session. Fired clean first attempt and added details on the cold pass — thirty-five feet, red gym, shape-only door, stalking — rather than losing them. The opposite of typical day-zero drift. Five stars, championship grade.

Then CS50P Lecture 0 from minute forty. Section ten is escape characters. A pre-test from a prior session asked what print("she said \"hi\"") does. I had guessed something about “the quote after the hi” — content, not mechanism. Watched the section. Sharpened the term: backslash is the escape character, backslash-quote is the escape sequence, they travel as a pair. Opened PowerShell, typed the line, ran it, saw the inner quotes intact in the output. Then deliberately removed the escapes and ran it broken. Python 3.14 came back with SyntaxError: invalid syntax. Is this intended to be part of the string? — a literal hint at the fix. Predicting wrong before running and then letting the error tutor me was the cleanest twenty seconds of learning all session.

Watching Is Consumption. Doing Is Encoding.

Section eleven is f-strings. I watched it. Articulated the explanation. Called it a “function string” and said it “made the function run more elegantly.” Pure word-label drift from my pre-test guess that “f is function.” The wrong frame stayed intact through the watch. An f-string is a formatted string literal. The f prefix is a string TYPE label, like b"..." for bytes or r"..." for raw — it tells Python the string has fillable braces and to substitute the variable values when the line runs. No function call. No execution. Just a smarter string.

Here’s the part that mattered. I corrected the term in chat. Drilled the right phrase three times aloud. And the misframing still didn’t leave because I skipped the next step. The next step was to open the REPL, type name = "Miles" then print(f"hello, {name}"), then remove the f and watch {name} print literally as text. The IDE step is where word-label drift dies. Verbal correction without typing leaves the wrong frame intact in your hands. I had just demonstrated this in Section ten — typing it and breaking it was what made the term lock — and then skipped the demonstration on the very next concept because we were running long. Called the cut at minute forty-five. Carried the unresolved drift to tomorrow.

The mentor lesson — the one I’d pin to the wall if I were teaching anyone else doing this — is that watching is consumption and doing is encoding. Every minute of input has to convert into an active retrieval rep: predict before you press play, type while you’re learning, break it on purpose, explain in two sentences as if to a six-year-old. The trace built by typing and breaking is what survives the thirty-day cold test. The trace built by watching alone fades within a week, and you find out it faded by getting confused when the term comes back under fresh-example pressure. The IDE is where that trace is built. Skip it and you keep the wrong word.

The architecture took three hours today. It sets a daily flow that compounds two meta-skills into one public artifact. Tomorrow’s first task is the cold test on today’s image — day one review per the spaced-rep schedule — followed by drilling the right f-string phrase three times aloud and re-watching Section eleven with the IDE actually open. The image will hold or it won’t. The drift will close or it won’t. Either way the data lands.