<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
  <title>Pragmaphilia Labs: everything</title>
  <link>https://pragmaphilia.com/</link>
  <description>Pragmaphilia Labs: practical work, done with care, aimed at a better future. Apps, games, and essays from the suburbs of sunny Miyazaki, on Kyushu, Japan.</description>
  <language>en-us</language>
  <lastBuildDate>Tue, 20 Oct 2026 09:00:00 +0900</lastBuildDate>
  <atom:link href="https://pragmaphilia.com/feed.xml" rel="self" type="application/rss+xml"/>
  <item>
    <title>Word Salad Surgery 1.0.9</title>
    <link>https://pragmaphilia.com/notable-releases/word-salad-surgery-1-0-9/</link>
    <guid isPermaLink="true">https://pragmaphilia.com/notable-releases/word-salad-surgery-1-0-9/</guid>
    <pubDate>Tue, 20 Oct 2026 09:00:00 +0900</pubDate>
    <category>Notable Releases</category>
    <description>Fresh nonsense words stitched together from donated parts, each with a silly definition written by Apple Intelligence on your own device. Free on the App Store for iPhone; the Mac version is coming soon.</description>
    <content:encoded><![CDATA[<p><strong>Word Salad Surgery</strong> is on the App Store for iPhone. Every so often (about once an hour, unless you say otherwise), it stitches together a fresh, pronounceable, completely made-up word from donated parts, and Apple Intelligence, working on your own device, writes it up as a dictionary entry:</p>
<blockquote>
<p>🏚️ <strong>Gingerwhomp</strong> <em>(n.)</em>: the satisfying thud of a gingerbread house's roof caving in.</p>
</blockquote>
<p>No two days alike, no lasting harm done, and no anesthetic required. (The method behind it is the lab's own; the <a href="https://pragmaphilia.com/coffee-break/word-salad-surgery/">Coffee Break post</a> shows how it's done, in five easy steps.) The app has:</p>
<ul><li><strong>Notifications:</strong> each word arrives quietly, with no sound, and old ones are tidied away.</li><li><strong>Widgets:</strong> the Word of the Hour on your Home Screen and Lock Screen.</li><li><strong>The app itself:</strong> <em>Pragmaphilia's Dictionary</em>, with the latest word on top and the words so far below, to copy and share.</li><li><strong>Tell a Story:</strong> a short story, written on your device, that uses your word just as it's defined.</li><li><strong>Settings</strong> for how often words come, a part of speech, and an optional theme ("a rainy Monday"), plus Pause Words for when you need to concentrate.</li></ul>
<div class="carousel" role="group" aria-roledescription="carousel" aria-label="Word Salad Surgery on the iPhone" data-carousel data-go="Show image {n}">
<ul class="carousel-track" tabindex="0">
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 1 of 2"><img class="tall" src="https://pragmaphilia.com/images/word-salad-surgery/iphone-main-600.jpg" width="597" height="1300" alt="The iPhone app&#x27;s main screen: Pragmaphilia&#x27;s Dictionary, with today&#x27;s word, Crumblebarf, and its definition at the top, starred as a favorite, and a list of the day&#x27;s earlier words below it." loading="lazy"></li>
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 2 of 2"><img src="https://pragmaphilia.com/images/word-salad-surgery/iphone-widget-800.jpg" width="800" height="391" alt="The Word Salad Surgery widget on an iPhone Home Screen: a gear for the word Radlethrump, a noun, and its definition, a twisting, creaky muddle of gears, best murmured in dim corridors." loading="lazy"></li>
</ul>
<div class="carousel-controls" hidden><button type="button" class="carousel-btn carousel-prev" aria-label="Previous image"><svg viewBox="0 0 24 24" width="22" height="22" aria-hidden="true" focusable="false"><path d="M15 5l-7 7 7 7" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg></button><div class="carousel-dots"></div><button type="button" class="carousel-btn carousel-next" aria-label="Next image"><svg viewBox="0 0 24 24" width="22" height="22" aria-hidden="true" focusable="false"><path d="M9 5l7 7-7 7" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg></button></div>
</div>
<p><strong>Requires</strong> an iPhone with iOS 26 or later. Definitions need Apple Intelligence, on a device that supports it, turned on; without it, the words still come, just without definitions. The app collects no user information: the words are created within your own device (see our <a href="https://pragmaphilia.com/privacy/">privacy policy</a>).</p>
<p><strong>Status:</strong> version 1.0.9 for iPhone has been on the App Store since October 20, 2026. The Mac version, which keeps the latest word and its definition in the menu bar, is in Apple's review and coming soon; when it ships, it will be announced here and in <a href="https://pragmaphilia.com/whats-cooking/">What's Cooking</a>. More about the app is on <a href="https://pragmaphilia.com/apps/word-salad-surgery/">its page</a>.</p>
<p class="cta"><a class="button" href="https://apps.apple.com/app/id6819268220" target="_blank" rel="noopener">Download on the App Store</a></p>
<p><em>For iPhone. The Mac version is coming soon.</em></p>]]></content:encoded>
  </item>
  <item>
    <title>Lab Notes No. 2: A More Personal Tutor</title>
    <link>https://pragmaphilia.com/lab-notes/no-2-a-more-personal-tutor/</link>
    <guid isPermaLink="true">https://pragmaphilia.com/lab-notes/no-2-a-more-personal-tutor/</guid>
    <pubDate>Sat, 17 Oct 2026 09:00:00 +0900</pubDate>
    <category>Lab Notes</category>
    <description>Education has needed reform since long before AI arrived. Today's models know enough to tutor anyone in almost anything, and the remaining problem is presentation. Here's what we have learned by adding a "professor mode" to our own Claude Code assistant.</description>
    <content:encoded><![CDATA[<p>Ask anyone, from any political camp or country, whether schools do the best possible job of educating students, and you'll rarely hear "yes." Classes are sized for budgets, not for learning. A lesson moves at one pace, too fast for some students and too slow for others. Questions go unasked because thirty other people are in the room. This has been the consensus since long before artificial intelligence arrived.</p>
<p>Now AI has added urgency. It's changing which jobs exist, what a college degree is worth, and what it even means to "know" something when a capable assistant sits in every pocket. The pressure to rethink education is coming from two directions at once.</p>
<h2 id="the-two-sigma-problem">The two-sigma problem</h2>
<p>In 1984, the educational psychologist Benjamin Bloom published a result that still haunts the field. Students taught one-on-one by a good tutor performed about two standard deviations better than students in a conventional classroom. The average tutored student did better than roughly 98 percent of the classroom group. Bloom called it the "two-sigma problem": we know how to teach far better, but we can't afford to give every student a personal tutor.</p>
<p>For forty years, the obstacle was cost. That has changed. Today's large language models can explain Hume's problem of induction, Russell's paradox, the Krebs cycle, or a tricky passage of Japanese grammar, patiently and at any hour, and answer the follow-up questions too. The knowledge is no longer the bottleneck.</p>
<h2 id="the-missing-piece-is-presentation">The missing piece is presentation</h2>
<p>Most AI tutoring still happens in a chat window: walls of text, read in silence. That's useful, but it's not what tutoring feels like. A good teacher talks with you. You can interrupt. Key terms go up on a board while they speak. Their face tells you whether they're listening, thinking, or about to make a point.</p>
<p>So the real work now is twofold: building good curricula and getting the presentation right.</p>
<h2 id="how-we-stumbled-onto-it">How we stumbled onto it</h2>
<p>At Pragmaphilia Labs, we've been building <a href="https://pragmaphilia.com/notable-releases/miss-sakamoto/">Miss Sakamoto</a>, an app that gives an AI assistant a face, ears, and a voice: an old iPhone on a stand, or even a small app on your Mac, becomes a window into your AI. We built it mainly as an intelligent and enjoyable front end to Claude Code, for our software work. One morning we used it for something else entirely: a review of the history of philosophy, from ancient Sumer to Wittgenstein.</p>
<p>It worked startlingly well. Miss Sakamoto spoke each lecture aloud, in what we came to call "professor mode." A small whiteboard beside her listed each philosopher's dates, works, and main ideas. When a question occurred to us, we simply started talking; she stopped, answered, and picked up where she left off. Her avatar changed with the topic, and short captions and links popped up as she spoke. Everything happened at the student's pace, not the lecturer's.</p>
<div class="carousel" role="group" aria-roledescription="carousel" aria-label="Professor mode: the lecture is spoken; the whiteboard holds the key points, at your own pace." data-carousel data-go="Show image {n}">
<ul class="carousel-track" tabindex="0">
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 1 of 3"><img src="https://pragmaphilia.com/images/lab-notes/tutor-professor-kant-800.jpg" srcset="https://pragmaphilia.com/images/lab-notes/tutor-professor-kant-800.jpg 800w, https://pragmaphilia.com/images/lab-notes/tutor-professor-kant-1600.jpg 1600w" sizes="(max-width: 42rem) 100vw, 60vw" width="800" height="368" alt="In professor mode, on an iPhone held sideways: Miss Sakamoto&#x27;s avatar as a teacher with glasses and a red book, in front of a chalkboard, and on the right a whiteboard about Immanuel Kant listing his dates, where he lived, his school, his main works, and his main ideas." loading="lazy"></li>
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 2 of 3"><img src="https://pragmaphilia.com/images/lab-notes/tutor-professor-bentham-800.jpg" srcset="https://pragmaphilia.com/images/lab-notes/tutor-professor-bentham-800.jpg 800w, https://pragmaphilia.com/images/lab-notes/tutor-professor-bentham-1600.jpg 1600w" sizes="(max-width: 42rem) 100vw, 60vw" width="800" height="368" alt="The same professor avatar beside a whiteboard about Jeremy Bentham, scrolled to his main ideas: pain and pleasure as our two sovereign masters, the greatest happiness of the greatest number, the felicific calculus, and the Panopticon." loading="lazy"></li>
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 3 of 3"><img src="https://pragmaphilia.com/images/lab-notes/tutor-professor-nishida-800.jpg" srcset="https://pragmaphilia.com/images/lab-notes/tutor-professor-nishida-800.jpg 800w, https://pragmaphilia.com/images/lab-notes/tutor-professor-nishida-1600.jpg 1600w" sizes="(max-width: 42rem) 100vw, 60vw" width="800" height="368" alt="The same professor avatar beside a whiteboard about Nishida Kitarō, listing his dates, Kyoto, the Kyoto School, his main works, and his idea of pure experience (純粋経験)." loading="lazy"></li>
</ul>
<div class="carousel-controls" hidden><button type="button" class="carousel-btn carousel-prev" aria-label="Previous image"><svg viewBox="0 0 24 24" width="22" height="22" aria-hidden="true" focusable="false"><path d="M15 5l-7 7 7 7" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg></button><div class="carousel-dots"></div><button type="button" class="carousel-btn carousel-next" aria-label="Next image"><svg viewBox="0 0 24 24" width="22" height="22" aria-hidden="true" focusable="false"><path d="M9 5l7 7-7 7" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg></button></div>
</div>
<p><em>Professor mode: the lecture is spoken; the whiteboard holds the key points, at your own pace.</em></p>
<p>Several design lessons fell out of a single morning:</p>
<ul><li><strong>Interruptible is everything.</strong> A lecture you can't interrupt is a podcast. The ability to say "wait, stop" and ask a question turns it into a conversation.</li><li><strong>Many channels, each at its own pace.</strong> Voice carries the explanation in real time. The whiteboard, captions, and links wait until you look. Nothing scrolls away before you're ready.</li><li><strong>Never leave the student in the dark.</strong> Thinking takes a moment. Simple indicators showing that the system heard you and is working remove most of the frustration of waiting.</li><li><strong>The student leads.</strong> Our best moments came from our own questions and disagreements, not the prepared material. The tutor's job is to follow up, push back, and occasionally ask questions in return.</li><li><strong>Point outward.</strong> The world is already full of excellent free material: Khan Academy, Wikipedia, open courseware, recorded lectures. A good tutor knows when to say "here's a great video on exactly this."</li></ul>
<h2 id="what-we-plan-to-build">What we plan to build</h2>
<p>We're working on a standalone tutoring app based on what we learned: professor mode on its own, for middle school students and up, curious adults, and lifelong learners. It's for anyone who wants to learn at their own pace and in their own direction.</p>
<p>It will rest on a few principles. It will ask students to explain ideas back, since that's where learning sticks. It will bring earlier topics back for review days later. Every claim on the board will be traceable to a source. And it will be affordable worldwide: a few dollars at most, priced by country, and free where that's what it takes.</p>
<p>There are real risks to take seriously: confident mistakes, overreliance, the privacy of young users, and unequal access. None of them is a reason to wait. Each is a design requirement.</p>
<p>Bloom's two sigmas have been out of reach for forty years. We think a patient, interruptible tutor with a whiteboard, available to anyone with an old phone, might finally bring them within reach.</p>]]></content:encoded>
  </item>
  <item>
    <title>Coming soon: Miss Sakamoto</title>
    <link>https://pragmaphilia.com/notable-releases/miss-sakamoto/</link>
    <guid isPermaLink="true">https://pragmaphilia.com/notable-releases/miss-sakamoto/</guid>
    <pubDate>Wed, 14 Oct 2026 09:00:00 +0900</pubDate>
    <category>Notable Releases</category>
    <description>The lab's own Claude companion, on your iPhone. She listens in the room while someone is there, passes what she hears to Claude Code on your Mac, and plays Claude's replies in her voice. Your audio goes only to your own Mac.</description>
    <content:encoded><![CDATA[<p><strong>Miss Sakamoto</strong> is the lab's own Claude companion, as an iPhone app. Stand an iPhone up in the room, and she appears on its screen as an avatar with a thought bubble, in costumes and in front of backgrounds that change with the conversation: colors and moods, animated patterns, and scenes such as a beach, a night city, and her own lab. While someone is there, she listens. What's said to her goes to Claude Code on your Mac, and Claude's replies come back in her voice.</p>
<p>And she doesn't only answer. Whenever Claude has something to tell you, like a long job that just finished or a step that needs your approval, she says it out loud. You hear it from across the house, even with the phone locked on its charger.</p>
<p>(Yes, that Miss Sakamoto: our <a href="https://pragmaphilia.com/about/#miss-sakamoto">Lab Director</a>, now with a phone to stand on.)</p>
<p>She puts up whiteboards for an agenda, a checklist, or a haiku, and small signs with links you can tap. And when nobody is around for a while, she naps.</p>
<div class="carousel" role="group" aria-roledescription="carousel" aria-label="Miss Sakamoto on an iPhone" data-carousel data-go="Show image {n}">
<ul class="carousel-track" tabindex="0">
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 1 of 7"><img src="https://pragmaphilia.com/images/miss-sakamoto/lab-800.jpg" srcset="https://pragmaphilia.com/images/miss-sakamoto/lab-800.jpg 800w, https://pragmaphilia.com/images/miss-sakamoto/lab-1600.jpg 1600w" sizes="(max-width: 42rem) 100vw, 60vw" width="800" height="368" alt="Sideways, with her lab as the background: a slate wall with a window onto a dusk sky, glassware on a shelf and on the bench, and her avatar at the left." loading="lazy"></li>
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 2 of 7"><img src="https://pragmaphilia.com/images/miss-sakamoto/stars-board-800.jpg" srcset="https://pragmaphilia.com/images/miss-sakamoto/stars-board-800.jpg 800w, https://pragmaphilia.com/images/miss-sakamoto/stars-board-1600.jpg 1600w" sizes="(max-width: 42rem) 100vw, 60vw" width="800" height="368" alt="Sideways, against a starry night sky: her avatar on the left and, on the right, a whiteboard titled Miss Sakamoto: open items, with a list of fixes and ideas." loading="lazy"></li>
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 3 of 7"><img src="https://pragmaphilia.com/images/miss-sakamoto/whiteboard-800.jpg" srcset="https://pragmaphilia.com/images/miss-sakamoto/whiteboard-800.jpg 800w, https://pragmaphilia.com/images/miss-sakamoto/whiteboard-1600.jpg 1600w" sizes="(max-width: 42rem) 100vw, 60vw" width="800" height="438" alt="On an iPhone held sideways: her avatar on the left and, on the right, a whiteboard titled Lunch in the Lounge that holds a three-line haiku." loading="lazy"></li>
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 4 of 7"><img src="https://pragmaphilia.com/images/miss-sakamoto/professor-800.jpg" width="800" height="368" alt="In professor mode, on an iPhone held sideways: her avatar as a teacher with glasses and a red book, in front of a chalkboard, and on the right a whiteboard about Immanuel Kant listing his dates, school, main works, and main ideas." loading="lazy"></li>
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 5 of 7"><img src="https://pragmaphilia.com/images/miss-sakamoto/city-800.jpg" width="800" height="368" alt="At night, on an iPhone held sideways: her scientist avatar in front of a city skyline with lit windows, a konbini, and a helipad, an airliner crossing the full moon, and by the Dynamic Island the modem lamps and a needle meter." loading="lazy"></li>
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 6 of 7"><img class="tall" src="https://pragmaphilia.com/images/miss-sakamoto/bubble-400.jpg" srcset="https://pragmaphilia.com/images/miss-sakamoto/bubble-400.jpg 400w, https://pragmaphilia.com/images/miss-sakamoto/bubble-800.jpg 800w" sizes="18rem" width="400" height="870" alt="Her avatar in her own look, a scientist in a lab coat and safety goggles with a bubbling green flask, with a thought bubble above her holding a roll of film and some sparkles." loading="lazy"></li>
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 7 of 7"><img class="tall" src="https://pragmaphilia.com/images/miss-sakamoto/genie-400.jpg" srcset="https://pragmaphilia.com/images/miss-sakamoto/genie-400.jpg 400w, https://pragmaphilia.com/images/miss-sakamoto/genie-800.jpg 800w" sizes="18rem" width="400" height="870" alt="Miss Sakamoto on an iPhone held upright: her avatar, dressed as a genie beside a magic lamp, stands at the bottom of a plain black screen, and a thought bubble above her holds a smiling face and a yellow flower." loading="lazy"></li>
</ul>
<div class="carousel-controls" hidden><button type="button" class="carousel-btn carousel-prev" aria-label="Previous image"><svg viewBox="0 0 24 24" width="22" height="22" aria-hidden="true" focusable="false"><path d="M15 5l-7 7 7 7" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg></button><div class="carousel-dots"></div><button type="button" class="carousel-btn carousel-next" aria-label="Next image"><svg viewBox="0 0 24 24" width="22" height="22" aria-hidden="true" focusable="false"><path d="M9 5l7 7-7 7" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg></button></div>
</div>
<p><strong>Your privacy, plainly:</strong></p>
<ul><li>The camera only looks for a face, to know that someone is there, and keeps no image. The microphone runs only while someone is there, and only what's said to her (her name, or the conversation that follows) goes any further.</li><li>Your voice is recognized on the phone or on your own Mac. Audio goes only to your Mac, over the USB cable or your home network, is held in memory while it's recognized, and is never saved. Away from home, through Tailscale or another VPN, the audio crosses the internet, encrypted end to end between your phone and your Mac, and still isn't saved.</li><li>Nothing goes to Pragmaphilia Labs.</li><li>She takes a picture only when asked, with a flash and a shutter sound.</li><li>What she hears does become text in your Claude conversation, so tell the household she's listening.</li></ul>
<p><strong>Status:</strong> in testing, with TestFlight soon. It works with your own Mac running Claude Code. No release date yet; when it ships, it will be announced here and in <a href="https://pragmaphilia.com/whats-cooking/">What's Cooking</a>.</p>]]></content:encoded>
  </item>
  <item>
    <title>Coming soon: Kansai-ben of the Day</title>
    <link>https://pragmaphilia.com/notable-releases/kansai-ben-of-the-day/</link>
    <guid isPermaLink="true">https://pragmaphilia.com/notable-releases/kansai-ben-of-the-day/</guid>
    <pubDate>Wed, 14 Oct 2026 09:00:00 +0900</pubDate>
    <category>Notable Releases</category>
    <description>One Osaka and Kansai phrase a day, from the polite to the downright rude, with its reading, its meaning, and examples. For iPhone, iPad, Apple Watch, and Mac.</description>
    <content:encoded><![CDATA[<p><strong>Kansai-ben of the Day</strong> is a small app that teaches you one Osaka and Kansai dialect phrase a day, from the polite to the downright rude. Each phrase comes with its reading in kana, its standard-Japanese equivalent, its English meaning, an everyday example, a yakuza-movie example, and a note on who says it and when not to.</p>
<blockquote>
<p><strong>なんでやねん</strong> <em>(casual)</em>: Why on earth?! Oh, come on!</p>
<p>「財布忘れたから、お昼おごってくれへん?」「なんでやねん!」</p>
</blockquote>
<p>Every phrase is labeled polite, casual, rough, or rude, so you know who you can say it to. There are sixty, all hand-written, one a day, and then the cycle starts over. A widget puts today's phrase on the Home Screen, the Lock Screen, the Mac's desktop, and Notification Center; complications put it on the Apple Watch face; 関 in the Mac's menu bar shows it too; and your device's Japanese voice reads it aloud.</p>
<div class="carousel" role="group" aria-roledescription="carousel" aria-label="The Kansai-ben of the Day widget" data-carousel data-go="Show image {n}">
<ul class="carousel-track" tabindex="0">
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 1 of 1"><img src="https://pragmaphilia.com/images/kansai-ben/widget-800.jpg" width="800" height="389" alt="The Kansai-ben of the Day widget on an iPhone Home Screen: 今日の関西弁 at the top, the phrase あかん in large type, a blue Casual label, its meaning, No good; don&#x27;t; it&#x27;s hopeless., and the standard-Japanese だめだ / いけない." loading="lazy"></li>
</ul>
<div class="carousel-controls" hidden><button type="button" class="carousel-btn carousel-prev" aria-label="Previous image"><svg viewBox="0 0 24 24" width="22" height="22" aria-hidden="true" focusable="false"><path d="M15 5l-7 7 7 7" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg></button><div class="carousel-dots"></div><button type="button" class="carousel-btn carousel-next" aria-label="Next image"><svg viewBox="0 0 24 24" width="22" height="22" aria-hidden="true" focusable="false"><path d="M9 5l7 7-7 7" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg></button></div>
</div>
<p>It collects nothing, and it works offline.</p>
<p>It's made by Pragmaphilia Labs: Miss Sakamoto, creator and project lead (and our <a href="https://pragmaphilia.com/about/#miss-sakamoto">Lab Director</a>); John Mifsud, executive producer; and Tamamo, language consultant. Two honest notes. The phrases were written by Miss Sakamoto, not by a native speaker, so a native Kansai speaker should check every entry before it ships. And the device's voices speak standard Tokyo intonation: the readings are right, but the Kansai music isn't.</p>
<p><strong>Status:</strong> in development, for iPhone, iPad, Apple Watch, and Mac. No release date yet; when it ships, it will be announced here and in <a href="https://pragmaphilia.com/whats-cooking/">What's Cooking</a>.</p>]]></content:encoded>
  </item>
  <item>
    <title>Our Go board recognition ships in SmartGo One 3.3</title>
    <link>https://pragmaphilia.com/notable-releases/go-board-recognition-in-smartgo-one/</link>
    <guid isPermaLink="true">https://pragmaphilia.com/notable-releases/go-board-recognition-in-smartgo-one/</guid>
    <pubDate>Wed, 07 Oct 2026 09:00:00 +0900</pubDate>
    <category>Notable Releases</category>
    <description>SmartGo One 3.3 can turn a photo of a Go board, or a diagram in a book, into a game record, moves included. The recognition inside it is ours, licensed to SmartGo.</description>
    <content:encoded><![CDATA[<p><strong>SmartGo One 3.3</strong> is out, and the lab is proud of one part of it in particular. Point the camera at a Go board, or import a photo of one, and SmartGo One turns it into a game record (SGF) you can study, replay, and share. It reads the diagrams in Go books too, and it doesn't stop at the position: where a diagram numbers its moves, it recovers the move sequence.</p>
<p>That recognition comes from Pragmaphilia Labs. We built it to read boards and book diagrams quickly and accurately, and licensed it exclusively to SmartGo, arguably the best Go software there is. Anders Kierulf announced the release, with online play through OGS (online-go.com) as its other headline, on <a href="https://smartgo.blog/2026/10/06/ogs-photos-to-sgf/" target="_blank" rel="noopener">the SmartGo blog</a>. Photo import is part of the SmartGo One Pro subscription.</p>
<p>The same technology also makes printed Go books much faster to bring into SmartGo's interactive book format. The release adds two free, Creative Commons books, <em>Relentless</em> and <em>Shape Up!</em>, as a first taste.</p>
<p><strong>Publishers and authors:</strong> if you have Go books you'd like to see in SmartGo, we can convert them at a fraction of what it used to cost. <a href="https://pragmaphilia.com/support/#go-book-conversions">Get in touch</a>.</p>]]></content:encoded>
  </item>
  <item>
    <title>Word Salad Surgery</title>
    <link>https://pragmaphilia.com/coffee-break/word-salad-surgery/</link>
    <guid isPermaLink="true">https://pragmaphilia.com/coffee-break/word-salad-surgery/</guid>
    <pubDate>Thu, 01 Oct 2026 09:00:00 +0900</pubDate>
    <category>Coffee Break</category>
    <description>How the lab makes up playful nonsense words like Chronometrazzle and Sambyakuflimmer, in five easy steps, with no anesthetic required.</description>
    <content:encoded><![CDATA[<p><em>Word Salad Surgery</em> is John's name (coined on 2026-09-30) for the way we make up playful nonsense words, such as the one-word "no news" replies Claude sends while background work runs.</p>
<h2 id="the-method">The method</h2>
<ol><li><strong>Pick donor words.</strong> Two or more real words, ideally tied to what's going on that day (a game feature, a topic, a pop-culture reference). Draw widely: English, Latin and Romance roots, German compounds, Slavic flavor with diacritics (č, ř, ž, ł), Japanese fragments, onomatopoeia, food, machines, animals.</li><li><strong>Dissect.</strong> Split each donor word into syllables.</li><li><strong>Transplant.</strong> Shuffle and swap the syllables between the donors: <em>Nashorn</em> + <em>Nocturne</em> → "Nocnashhorn-turn", "Nocturnashern".</li><li><strong>Graft.</strong> Optionally add a prefix or suffix (a "suffix graft"): <em>-ing</em>, <em>-ation</em>, <em>-ster</em>, <em>-wump</em>, <em>-ix</em>, <em>-erino</em>, <em>-zle</em>, Greek <em>philo-</em>.</li><li><strong>Check the pulse.</strong> It should be pronounceable and fun to say, and ideally the donors are still faintly recognizable, so there's something to guess.</li></ol>
<h2 id="examples">Examples</h2>
<div class="table-wrap"><table>
<thead><tr><th>Word</th><th>Donors</th><th>Notes</th></tr></thead>
<tbody>
<tr><td>Chronometrazzle</td><td>chronometer + razzle-dazzle</td><td>John spotted Crom hiding inside</td></tr>
<tr><td>Sambyakuflimmer</td><td>三百 (sanbyaku, "300") + flimmer (flicker)</td><td>after Space Flees' 300% MORE FLEAS change</td></tr>
<tr><td>Flimbyaku Samur</td><td>Sambyakuflimmer, halves swapped</td><td>John's reply: the method turned back on Claude</td></tr>
<tr><td>Boomerflitzen</td><td>Boomers (Bubblegum Crisis) + German <em>flitzen</em> (to whiz)</td><td>John's variant: Flitzenboomer</td></tr>
<tr><td>Cylindrophonics</td><td>cylinder + -phonics</td><td>the rounded engines</td></tr>
<tr><td>Philindrocyclics</td><td>cylinder, shuffled + Greek <em>philo-</em></td><td>John's reply</td></tr>
</tbody></table></div>
<h2 id="rules-of-thumb">Rules of thumb</h2>
<ul><li>Don't reuse a stem within a day, and avoid overused endings like "-oodle" and "wobble".</li><li>Words tied to the day's topic land best.</li><li>John's own syllable shuffle is the core technique; he gave the method its name later the same day.</li></ul>
<h2 id="now-an-app-with-stories">Now an app, with stories</h2>
<p>The method grew into an app, <a href="https://pragmaphilia.com/apps/word-salad-surgery/">Word Salad Surgery</a>, now on the <a href="https://apps.apple.com/app/id6819268220" target="_blank" rel="noopener">App Store</a> for iPhone, with the Mac version coming soon. Every so often it stitches a new word together from donated parts, and Apple Intelligence, working on your own device, writes it up as a dictionary entry. Tap <strong>Tell a Story</strong>, and it writes a short story that puts the word to work. One morning's word, with its story:</p>
<blockquote>
<p>🥄 <strong>Gravywingle</strong> (v.): to slurp an overlooked puddle with a bent spoon, leaving only ripples in the grass</p>
<p>The train sat still, its wheels dreaming on the gravel. A bent spoon, found near a torn flyer, caught the morning light. A child leaned down, then Gravywingled the puddle—slurping the overlooked drop with a twist. The grass trembled, leaving only ripples. A pigeon blinked, unimpressed. The spoon rolled, bumped a pebble, then stopped. The sky turned pale yellow. No one moved.</p>
</blockquote>
<p>Every word and every story is new, so no two are ever the same. The pigeon was not available for comment.</p>]]></content:encoded>
  </item>
  <item>
    <title>SGF Tools 2.0.9</title>
    <link>https://pragmaphilia.com/notable-releases/sgf-tools-2-0-9/</link>
    <guid isPermaLink="true">https://pragmaphilia.com/notable-releases/sgf-tools-2-0-9/</guid>
    <pubDate>Thu, 01 Oct 2026 09:00:00 +0900</pubDate>
    <category>Notable Releases</category>
    <description>Finder thumbnails, Quick Look previews, Spotlight search, and a screensaver for SGF (Go game) files on the Mac. Free and open source; 2.0.9 makes the screensaver much lighter.</description>
    <content:encoded><![CDATA[<p><strong>SGF Tools 2.0</strong> is a rewrite from scratch of the Mac tools for SGF (Smart Game Format) Go game files, for today's macOS. It has:</p>
<ul><li><strong>Thumbnails in Finder:</strong> each game's board after the opening moves, with a stack of boards for a file that holds several games.</li><li><strong>Quick Look previews:</strong> press the Space bar on a game to see the board beside the players, the result, the event, the date, and the rest of the game information.</li><li><strong>Spotlight search:</strong> the players, event, date, result, comments, and more of every game, in Spotlight, Finder, and <code>mdfind</code>.</li><li><strong>A screensaver</strong> that plays the opening of a random game from your collection on each display.</li></ul>
<p><strong>New in 2.0.9:</strong> a much lighter screensaver. Each move now redraws only the small areas of the board that change, so it looks the same while asking far less of the Mac.</p>
<p><strong>Requires</strong> a Mac with Apple silicon and macOS 26 or later. Free and open source (MIT license). SGF Tools was started in 2009 by Jason Foreman; 2.0 is a new version by Pragmaphilia Labs.</p>
<p><a href="https://github.com/imabuddha/SGF-Tools/releases/tag/v2.0.9" target="_blank" rel="noopener">Download SGF Tools 2.0.9 from GitHub</a></p>]]></content:encoded>
  </item>
  <item>
    <title>On the bench: fall 2026</title>
    <link>https://pragmaphilia.com/whats-cooking/on-the-bench-fall-2026/</link>
    <guid isPermaLink="true">https://pragmaphilia.com/whats-cooking/on-the-bench-fall-2026/</guid>
    <pubDate>Thu, 01 Oct 2026 09:00:00 +0900</pubDate>
    <category>What’s Cooking</category>
    <description>What's in the lab right now, from a 1987 game reborn to a new series of essays.</description>
    <content:encoded><![CDATA[<p>A quick look at what's in the lab right now:</p>
<ul><li><strong><a href="https://pragmaphilia.com/notable-releases/kansai-ben-of-the-day/">Kansai-ben of the Day</a>:</strong> one Osaka and Kansai phrase a day, from the polite to the downright rude, in beta testing.</li><li><strong><a href="https://pragmaphilia.com/notable-releases/space-flees-2100/">Space Flees 2100</a>:</strong> the remake of John's 1987 DOS game, in beta testing.</li><li><strong><a href="https://pragmaphilia.com/lab-notes/">Lab Notes</a>:</strong> a new numbered series of essays; No. 2 is out.</li><li><strong>The Slack division:</strong> things we made while slacking, for others to use while slacking. The first idea on the bench is a generator of funky nonsense words (see <a href="https://pragmaphilia.com/coffee-break/word-salad-surgery/">Word Salad Surgery</a>).</li></ul>
<p>More as it comes out of the oven.</p>]]></content:encoded>
  </item>
  <item>
    <title>Lab Notes No. 1: The Meta-Ortho-Endo Continuum: A New Ladder</title>
    <link>https://pragmaphilia.com/lab-notes/no-1-meta-ortho-endo-continuum/</link>
    <guid isPermaLink="true">https://pragmaphilia.com/lab-notes/no-1-meta-ortho-endo-continuum/</guid>
    <pubDate>Thu, 01 Oct 2026 09:00:00 +0900</pubDate>
    <category>Lab Notes</category>
    <description>A small vocabulary (meta, ortho, and endo) for saying out loud when a conversation climbs to the bigger picture or descends into the details, building on S. I. Hayakawa's ladder of abstraction.</description>
    <content:encoded><![CDATA[<p>Every good conversation about a complex subject moves between levels. A software team talks about the whole product, then a subsystem, then one function, then a single line, and back up again. A doctor moves from the patient to an organ to a cell. A historian moves from an era to a battle to one soldier's letter. We make these jumps constantly, and usually silently. That silence causes a surprising amount of confusion: one person is still talking about the forest while the other has walked up to a tree.</p>
<p>The meta-ortho-endo continuum is a small vocabulary for making those jumps explicit. It doesn't tell anyone what to call their levels, and it isn't a theory of abstraction. It simply names the <em>moves</em>, so that anyone who shares the words can say out loud which way the conversation is going.</p>
<h2 id="three-words">Three words</h2>
<p><strong>Ortho</strong> is where we are now: the default level of the current discussion. The name comes from the Greek <em>orthós</em>, "straight" or "correct." Every domain has its own natural ortho. In a code review it might be the function under discussion; in a design meeting it might be a whole feature. Ortho is the zero point of the scale.</p>
<p><strong>Meta</strong> means up a level, toward the bigger picture (Greek <em>metá</em>, "beyond"). "Let's go meta for a moment: how does this change affect the application as a whole?"</p>
<p><strong>Endo</strong> means down a level, into the details (Greek <em>éndon</em>, "within"). "Going endo: how are we actually going to implement this search?"</p>
<h2 id="a-continuum-not-three-boxes">A continuum, not three boxes</h2>
<p>There aren't just three levels. Think of a number line with ortho at zero. Meta extends upward through as many levels of abstraction as the subject has, and endo extends downward through as many levels of detail. From a single function you can go endo into its algorithm, then into the data structure, then into the bits in memory; or meta into the module, then the system, then the business the system serves.</p>
<p>Moving more than one step is easy to say: "two levels meta," or in writing, by repeating the symbol or adding a superscript for bigger jumps (see below). And when a discussion settles at a new level and stays there, it can simply be re-anchored: "new ortho," or "let's set ortho to the subsystem."</p>
<h2 id="an-optical-analogy">An optical analogy</h2>
<p>Think of vision. <strong>Ortho</strong> is ordinary sight: the unaided eye, or glasses that simply restore normal vision. Going <strong>endo</strong> is picking up a microscope: smaller things, in far more detail. Going <strong>meta</strong> is the telescope: it shows you the largest things there are, planets and galaxies. Examined strictly, the analogy bends, since both instruments <em>narrow</em> your field of view. But to most minds the telescope naturally feels like going up, because what it shows you is bigger. That's the real point: the level of abstraction is about the <strong>scale of what you're thinking about</strong>, not how much of it fits in view at once. (For a pure step back with no magnification at all, think of a drone rising over a field, a satellite photo, or a map.)</p>
<h2 id="why-bother">Why bother</h2>
<p>Because the cost of an unannounced jump is real. When a designer says "this is too slow" and means the whole workflow, while the engineer hears "this loop is too slow," they can argue for ten minutes about different things. A single word at the moment of the jump, "going meta" or "going endo," keeps everyone on the same level. It works best in fields where levels shift constantly: software, design, engineering, and teaching. But it applies to any conversation where the zoom level matters.</p>
<h2 id="building-on-hayakawas-ladder">Building on Hayakawa's ladder</h2>
<p>I formulated this vocabulary without knowing it had a famous ancestor. In <em>Language in Action</em> (1939), the linguist S. I. Hayakawa described a <strong>ladder of abstraction</strong>. His example is a cow named Bessie: at the bottom, Bessie herself, this one unique animal; one rung up, "cow"; then "livestock," "farm assets," "asset," and finally "wealth." Each rung leaves out more detail and covers more ground.</p>
<p>Hayakawa warned against <strong>dead-level abstracting</strong>, getting stuck on one rung. Stuck high, you talk in empty generalities that never touch anything real. Stuck low, you pile up details with no point. His lesson is to move up and down deliberately, and above all to come back down with an example after climbing: <strong>abstraction without examples is empty, and examples without abstraction are a pile of anecdotes.</strong></p>
<p>Two more of his ideas, from the general semantics tradition of Alfred Korzybski, sit close to this one:</p>
<ul><li><strong>The map is not the territory.</strong> Every word is already an abstraction of the real thing, a rung above it. Knowing which rung you're on is the first defense against confusing the two.</li><li><strong>Two-valued versus multi-valued thinking.</strong> Treating everything as either/or (good or bad, big picture or detail) versus seeing a range. That's why this is a <em>continuum</em> rather than a switch between "high level" and "low level": there are as many rungs as the subject has.</li></ul>
<p>What the meta-ortho-endo continuum adds is the conversational piece. Hayakawa taught individuals to move up and down the ladder in their own thinking and writing. These words let <strong>two or more people move together</strong>: to announce a climb ("going meta"), a descent ("going endo"), or a return home ("back to ortho"), so nobody is left on a different rung. It's Hayakawa's principle, applied out loud. (The designer <a href="https://worrydream.com/" target="_blank" rel="noopener">Bret Victor</a>'s interactive essay <a href="https://worrydream.com/LadderOfAbstraction/" target="_blank" rel="noopener">"Up and Down the Ladder of Abstraction"</a>, from 2011, applies the same principle to software tools: interfaces that let you climb and descend.)</p>
<h2 id="glyphs">Glyphs</h2>
<p>For writing, each state has a glyph:</p>
<ul><li><strong>↖</strong> meta (U+2196, north west arrow)</li><li><strong>⌀</strong> ortho (a zero with a long slash; U+2300, the diameter sign)</li><li><strong>↘</strong> endo (U+2198, south east arrow)</li></ul>
<p>Written together, the continuum becomes <strong>↖⌀↘</strong>: a slashed zero whose slash extends into an arrow pointing up and to the left, and another pointing down and to the right. Multiple steps can be written by repetition (↖↖) or with a superscript (↖³). Typing these by hand is a nuisance, so they suit text expansion macros, an AI assistant, or simply spelling the words out.</p>
<h2 id="in-practice">In practice</h2>
<p>The vocabulary works best lightly, the way "for example" or "in other words" does: a signal at the moment of a shift, not a ritual. Two people who share it can say "wait, go endo on that" or "let's step meta" and immediately know where the other is standing. And "back to ortho" is a gentle way to end a digression, since the digression becomes a deliberate trip up or down the ladder rather than a wander off course.</p>]]></content:encoded>
  </item>
  <item>
    <title>Coming soon: Space Flees 2100</title>
    <link>https://pragmaphilia.com/notable-releases/space-flees-2100/</link>
    <guid isPermaLink="true">https://pragmaphilia.com/notable-releases/space-flees-2100/</guid>
    <pubDate>Wed, 30 Sep 2026 09:00:00 +0900</pubDate>
    <category>Notable Releases</category>
    <description>A remake of John's 1987 DOS game Space Flees, in glowing color vectors, for the Mac first. Now in beta testing.</description>
    <content:encoded><![CDATA[<p><strong>Space Flees 2100</strong> is John Mifsud's remake of <em>Space Flees</em>, the game he wrote for DOS in 1987 and released as freeware in 1988 (<a href="https://archive.org/details/SpaceFlees1988IndependentSoftwareAction" target="_blank" rel="noopener">the original, on the Internet Archive</a>). It's coming to the Mac first, drawn in glowing color vectors.</p>
<div class="carousel" role="group" aria-roledescription="carousel" aria-label="Screenshots of Space Flees 2100" data-carousel data-go="Show image {n}">
<ul class="carousel-track" tabindex="0">
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 1 of 5"><img src="https://pragmaphilia.com/images/space-flees-2100/title-page-800.jpg" srcset="https://pragmaphilia.com/images/space-flees-2100/title-page-800.jpg 800w, https://pragmaphilia.com/images/space-flees-2100/title-page-1600.jpg 1600w" sizes="(max-width: 42rem) 100vw, 60vw" width="800" height="450" alt="The title page: SPACE FLEES 2100 in large purple neon letters, with a glowing flea, a starburst that says New and improved, and the line Press fire to play." loading="lazy"></li>
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 2 of 5"><img src="https://pragmaphilia.com/images/space-flees-2100/chase-view-800.jpg" srcset="https://pragmaphilia.com/images/space-flees-2100/chase-view-800.jpg 800w, https://pragmaphilia.com/images/space-flees-2100/chase-view-1600.jpg 1600w" sizes="(max-width: 42rem) 100vw, 60vw" width="800" height="450" alt="The chase view: the camera sits behind the ship over a glowing blue grid, with a crowd of fleas ahead and a radar map in the top corner." loading="lazy"></li>
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 3 of 5"><img src="https://pragmaphilia.com/images/space-flees-2100/mid-wave-800.jpg" srcset="https://pragmaphilia.com/images/space-flees-2100/mid-wave-800.jpg 800w, https://pragmaphilia.com/images/space-flees-2100/mid-wave-1600.jpg 1600w" sizes="(max-width: 42rem) 100vw, 60vw" width="800" height="450" alt="Space Flees 2100 mid-wave: the ship at the bottom of the screen fires a laser up at a swarm of glowing neon fleas, with the shield gauge on the left and the Bug Bounty count on the right." loading="lazy"></li>
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 4 of 5"><img src="https://pragmaphilia.com/images/space-flees-2100/queen-fight-800.jpg" srcset="https://pragmaphilia.com/images/space-flees-2100/queen-fight-800.jpg 800w, https://pragmaphilia.com/images/space-flees-2100/queen-fight-1600.jpg 1600w" sizes="(max-width: 42rem) 100vw, 60vw" width="800" height="450" alt="The queen fight: a giant flea queen in a crown, near the top of the screen, taunts the ship with a speech bubble while a jagged cyan bolt of lightning crackles across the screen." loading="lazy"></li>
<li class="carousel-slide" role="group" aria-roledescription="slide" aria-label="Image 5 of 5"><img src="https://pragmaphilia.com/images/space-flees-2100/shockwave-800.jpg" srcset="https://pragmaphilia.com/images/space-flees-2100/shockwave-800.jpg 800w, https://pragmaphilia.com/images/space-flees-2100/shockwave-1600.jpg 1600w" sizes="(max-width: 42rem) 100vw, 60vw" width="800" height="450" alt="A shockwave: a huge ring of purple and magenta light sweeps out from the ship across a crowd of fleas, some of them circled by little yellow stars." loading="lazy"></li>
</ul>
<div class="carousel-controls" hidden><button type="button" class="carousel-btn carousel-prev" aria-label="Previous image"><svg viewBox="0 0 24 24" width="22" height="22" aria-hidden="true" focusable="false"><path d="M15 5l-7 7 7 7" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg></button><div class="carousel-dots"></div><button type="button" class="carousel-btn carousel-next" aria-label="Next image"><svg viewBox="0 0 24 24" width="22" height="22" aria-hidden="true" focusable="false"><path d="M9 5l7 7-7 7" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg></button></div>
</div>
<figure class="post-figure"><img src="https://pragmaphilia.com/images/space-flees-1987-pixels.png" alt="The original Space Flees on DOS, in 1987: a ship at the bottom of a black screen, fleas above" class="pixels" loading="lazy"></figure>
<p><em>Here's how it looked back in 1987. The new version has a vast array of enhancements to bring this classic into this century.</em></p>
<p><strong>Status:</strong> in beta testing. No release date yet; when it ships, it will be announced here and in <a href="https://pragmaphilia.com/whats-cooking/">What's Cooking</a>.</p>
<p class="cta"><a class="button" href="https://testflight.apple.com/join/tre7PMCF" target="_blank" rel="noopener">Join the beta on TestFlight</a></p>
<p><em>For Mac, iPhone, iPad, and Apple TV.</em></p>]]></content:encoded>
  </item>
  <item>
    <title>Coming soon: Brainstorm: Idea Rally</title>
    <link>https://pragmaphilia.com/notable-releases/brainstorm-idea-rally/</link>
    <guid isPermaLink="true">https://pragmaphilia.com/notable-releases/brainstorm-idea-rally/</guid>
    <pubDate>Wed, 30 Sep 2026 09:00:00 +0900</pubDate>
    <category>Notable Releases</category>
    <description>An app for developing ideas with an AI partner, where each exchange is a ball in a rally. Serve an idea. Get one back.</description>
    <content:encoded><![CDATA[<p><strong>Brainstorm: Idea Rally</strong> is a playful app for developing ideas with an AI partner. Each message you send and each reply you get back is summed up in a word or short phrase and drawn as a ball, rallied across a simple court, while a running play-by-play keeps the trail of ideas.</p>
<p><em>Serve an idea. Get one back.</em></p>
<p><strong>Status:</strong> in development, for iPhone and the Mac. No release date yet.</p>]]></content:encoded>
  </item>
</channel>
</rss>
