Port

INPUT / OUTPUT — the boundary between the program and the world. Input carries information IN (a key, a sensor reading, a typed answer); output sends information OUT (a printed line, a moved motor, a lit screen). A program with no I/O is sealed off — brilliant and unreachable.

Loading audio…

Press play to listen along. The line being read lights up as you go.

Show full transcript

Loading transcript…

01 Opening
Port beat 1 of 5

The doorway stood in the middle of the workshop floor, and for a long time it just breathed. That was the only word for it. Port was a sturdy wooden doorway set into a stretch of wall that led nowhere — no room behind, no room in front. On its left cheek a narrow slot marked IN; on its right, a wider slot marked OUT. All morning tiny things slid through: a tapped key whispered in the left slot and vanished; a printed line of letters slid out the right and dropped, warm as toast, onto a little screen. Loop the mentor sat cross-legged beside it, feeding it — tap, in, wait, out — not building anything, just letting the doorway do the one thing a doorway does: carry. A kid wandered over, clutching Bit. "That door goes nowhere. Why keep poking it?" Loop tapped one more key; a keystroke slid in; a glowing word slid out onto the screen: here. "It doesn't go nowhere. It goes everywhere. Watch what happens when I stop." He folded his hands. The slots went quiet, the screen dimmed, and Bit sat computing away with its little lights — thinking hard, saying nothing, hearing nothing. Sealed shut. "That is a program with no I/O," said Loop. "It can be brilliant all day and nobody would ever know. Port is how it stops being alone."

02 Port
Port beat 2 of 5

Port had never been a hatchling or a foundling — doorways don't have childhoods. But Loop remembered the first program he ever wrote that couldn't connect, and that memory sat in him like an ache. He'd been small. He'd built a calculating engine of string and gears, and it worked — truly worked, chewing through sums faster than he could — and he'd stood beside it, thrilled and then, slowly, hollow. There was no way to ask it anything, no way for it to tell him a single answer. It just spun, sealed, keeping every result to itself. "I felt like I'd made a friend who couldn't hear me," he told the class once, quietly. "All that cleverness, stuck inside, and me stuck outside, and nothing between us." The next thing he built had a slot — just a slot, somewhere to drop a pebble in, somewhere for a pebble to roll out. It barely did anything. But when he dropped a stone in and a stone rolled out, changed, because of him, the hollow feeling lifted — not because the engine was smarter, but because it could finally reach him back. That slot grew up into Port: a way in, a way out, and no more being alone on either side of the wall.

03 Port
Port beat 3 of 5

So when Loop came to teach, he brought the doorway and set it in the middle of the floor, where nobody could pretend it was furniture. The old caretaker watched him wheel it in. "A door with no house. What does it do?" Loop didn't explain. He knelt, pressed a key, let the keystroke slide in — you always wait, at a doorway — and out came hello onto the screen. Then he plucked a light-sensor off the bench, held it to the IN slot, cupped his hand over it; a shadow-reading slid in, and out came a command that flicked a small lamp on. "World comes in this side," Loop said, standing. "Answer goes out that side. That's all it is — the input and the output. It doesn't think. It doesn't decide. It just refuses to let the program be sealed off." The caretaker looked at the lamp, glowing because a hand had crossed a sensor across the room. "Keep it. It belongs here."

04 Port
Port beat 4 of 5

Bit's turn came on a grey afternoon, when a kid slumped at the bench, sure the robot was broken. "It runs, but it just... ignores me." "It can't hear you yet — it has no I/O. Let's give it a doorway." Loop set Port beside Bit and wired them together. "Now tell Bit to ask your name." The kid typed the instruction; Bit sent a question OUT through Port: What's your name? "Now answer it." The kid typed Sam; the letters slid IN through Port and dropped into a little box Loop called a Stash, where the program could hold them; then Bit sent something back OUT: Hi, Sam! Sam stared. "It... knows me." "It read you," Loop corrected gently. "IN through the door — then it answered, OUT through the door." He clipped the light-sensor onto Bit. "Cover it." Sam cupped a hand over the sensor; the dark reading came IN, a command went OUT, Bit's tiny lamp blinked awake under the shadow. Sam laughed — a real, surprised laugh — and did it again, hand over sensor, lamp on, hand away, lamp off, the robot answering every time. "An hour ago it was sealed shut," Loop said. "Now it's reading the actual world and answering back. Nothing about Bit got smarter. It just stopped being alone."

05 Closing
Port beat 5 of 5

Later, when the workshop emptied, Loop rolled Port back against the wall and let the slots go still. Sam lingered at the real door, the one that led outside. "It's just carrying stuff. In and out. That's not a big deal, is it?" Loop thought about the string-and-gears engine and the hour he'd stood beside it, hollow. "Try it the other way. Think of the best moment today." Sam didn't have to think long. "When it said Hi, Sam." "That's the doorway — not the computing, the hearing." He rested a hand flat against Port's quiet wood. "Everything you make that reads the world and answers back — every game that feels your tap, every robot that turns toward you — carries a little of what you felt just now. Somebody made something, the something answered, and neither of them was alone anymore." Sam nodded and headed out the real door into the evening, still warm in the chest with the small bright feeling of having been heard.

The CodeRealm ensemble

Port is part of CodeRealm's distributed-narrative cast. Each character embodies a different curricular primitive; together they teach the full subject.