Sign in

John O'Laughlin

@olaugh.bsky.social
343 followers 1.1K following 952 posts

mke-bos-sfo compulsions (fun): music, scrabble, running compulsions (other): politics, urbanism

PostsRepliesMedia
John O'Laughlin @olaugh.bsky.social · 09/10/2026
010
John O'Laughlin @olaugh.bsky.social · 08/10/2026
some new work on tremolo in pfsynth olaugh.github.io/pfsynth/guit...
030
John O'Laughlin @olaugh.bsky.social · 05/10/2026
I have hundreds of these files now, I just import scores from musicxml
0150
John O'Laughlin @olaugh.bsky.social · 05/10/2026
not yet merged into github.com/olaugh/pfsynth main branch. i made some progress on physically modeled synth for the violin family. some registers and some techniques are still sounding rough. didn't stop me from making a demoscene style string quartet tracker. they let you post anything on here
1012823
John O'Laughlin @olaugh.bsky.social · 03/10/2026
110
John O'Laughlin @olaugh.bsky.social · 03/10/2026
100
John O'Laughlin @olaugh.bsky.social · 02/10/2026
130
John O'Laughlin @olaugh.bsky.social · 02/10/2026
230
John O'Laughlin @olaugh.bsky.social · 02/10/2026
a bit janky in parts, drums slip a little bit near the end. but exceeded my expectations! worth playing around with some more
480
John O'Laughlin @olaugh.bsky.social · 02/10/2026
going electric
110
John O'Laughlin @olaugh.bsky.social · 01/10/2026
020
John O'Laughlin @olaugh.bsky.social · 01/10/2026
workin on guitar. just classical for now but gonna try electric soon
3281
John O'Laughlin @olaugh.bsky.social · 14/09/2026
Album cover for Mogwai’s Come On Die Young
010
John O'Laughlin @olaugh.bsky.social · 14/09/2026
i think there was a lot of this going around last weekend
A settings panel titled "Usage limit resets," showing "Available 0" with a "History" tab selected, filtered to "Past 30 days." Below is a chronological log of reset events, each listing an action ("Reset used" or "Reset received") with its date and time in PDT:

- Reset used — Sep 9, 12:29 PM
- Reset received — Sep 9, 12:02 PM
- Reset used — Sep 9, 10:16 AM
- Reset used — Sep 8, 11:42 PM
- Reset used — Sep 8, 10:59 AM
- Reset received — Sep 4, 9:20 PM
- Reset received — Sep 3, 7:31 PM
- Reset received — Aug 21, 5:13 PM
000
John O'Laughlin @olaugh.bsky.social · 06/09/2026
got rate limited for an hour. ok i'll only do polite, throttled megablocks from now on
Screenshot of osky, a Bluesky client, showing the Settings page in a dark green theme. Sections include Account (signed in as @olaugh.bsky.social), Appearance with Light/Dark/System theme toggle set to System, AI & moderation, and a Block queue with 794 pending and 23 completed. A Trending sidebar lists current news topics.
020
John O'Laughlin @olaugh.bsky.social · 06/09/2026
Screenshot of "pfsynth · piano demo". A left sidebar has a "Challenge" filter set to All and a scrollable list of MIDI pieces — Bach's Fugue BWV 883, Balakirev's Islamey, four Beethoven sonatas, three Chopin etudes, Debussy, Scarlatti, Schubert, Liszt — each labelled with duration, source corpus (ASAP or MAESTRO), and stress tags like pedalling, polyphony, dynamics, repeated notes, and low/high register. "Etudes op 10 12" by Chopin is selected. The main pane shows its title and description ("Revolutionary Etude: relentless left-hand runs into the bass"), a row of analysis stats (max polyphony 8, peak notes per 2 s 47, velocity 48–96, repeated notes 8%, above F6 1%, at/below E2 11%, half pedal 49%, soft-pedal moves 237), and live engine readouts of 46 voices and 20% DSP load with a 32% peak. Below is a piano roll spanning C1–C8 with notes coloured by velocity on a pp-to-ff blue-to-red scale, a white playhead near 1:40, and a pedal lane underneath showing sustain, soft, and sostenuto as a stepped blue envelope. Transport controls sit at 1:35.78 of 2:36.68, with excerpt in/out points, "Whole piece" and "Suggested excerpt" buttons. A Model section offers Salamander-fitted or Pianoteq-fitted tone (Pianoteq selected), an Onset group with Body −18 dB, Knock −22 dB and Noise burst −17 dB, a Binary/Continuous-damper sustain pedal switch set to continuous, "Una corda from CC67" enabled, and +6 dB gain. At right, an Export excerpt panel with MP3, M4A and "MP4 with piano roll" buttons is greyed out while a render progress bar runs with a Cancel button.
020
John O'Laughlin @olaugh.bsky.social · 06/09/2026
230
John O'Laughlin @olaugh.bsky.social · 06/09/2026
I pushed some fixes. I ran into what I thought was clipping but turned out to be cpu not being able to keep up
Diagnosis: you were right. It wasn't level, it was CPU. The synth was rendering at 1.3× real time offline on that Pathétique passage, so with 70–89 live voices the audio callback fell behind and the buffer underran — crackle that sounds like clipping.

Fixes
- pf_partial evaluated a pow() per partial per sample for the envelope interpolation (64 per voice per sample, hundreds of millions per second at high polyphony). It now runs an incremental multiply re-anchored at each knot. Output differs from before by −49 dB (inaudible).
- Inaudible tails retire at −90 dBFS instead of −120, so they stop hogging the pool; pool raised to 96.
- Result on the same excerpt: 1.3× → 14.3× real time, peak voices 89 → 44. Revolutionary Étude: 1.4× → 9.6×.

Headroom display (per your request): a DSP load meter in the header next to the voice count — a bar with the smoothed share of each audio buffer's time budget spent rendering, a peak-hold marker (~2 s), and the numbers. Green below 60%, orange to 85%, red above; at 100% playback drops out. With the speedup you should now see it sitting well under 20% on the passage that used to crackle.

App rebuilt and relaunched. The kernel checks still pass. Still uncommitted along with the rest of today's later work.
120
John O'Laughlin @olaugh.bsky.social · 06/09/2026
Phone screenshot of the Claude Code mobile app, dark mode, showing a chat session titled “Piano synth attack realism with Simi…” in the project “pfsynth”. The visible reply is a bulleted summary. First bullet: “LICENSE: MIT, copyright 2026 John O’Laughlin. I picked MIT because the requester offered either and it’s the lighter of the two; if you’d rather have Apache-2.0 (explicit patent grant), say so and I’ll swap the file and push.” Second bullet: “README.md (which was just the title line): a short License section plus attribution notes. The repo redistributes none of the third-party sources, only parameters measured from them, but it’s worth saying so: Salamander samples (CC BY 3.0), Pianoteq 6 renders used as a black-box measurement target, and MAESTRO/ASAP performances referenced by path (CC BY-NC-SA 4.0).” Below, a bold paragraph begins “One thing to keep in mind when you tell them ‘done’:” and explains that the pushed tree contains fitted patches derived from Pianoteq renders (experiments/partial-piano-wide/pianoteq.*, the onset and pedal fits), that this is measurement of rendered audio rather than anything copied from Modartt’s software, and offers to move the Pianoteq-derived fits out of the MIT-licensed tree. At the bottom is the message input reading “Type / for commands” with a model selector labeled “Fable 5.1”, a plus button, a microphone icon, and a send arrow. The status bar shows 8:15, signal bars, and 31% battery.
420
John O'Laughlin @olaugh.bsky.social · 04/09/2026
Screenshot of a chat reply calculating how small you'd
have to write to fit a machine-checked Lean proof of
Fermat's Last Theorem into the margin of Fermat's copy
of the Arithmetica.

Text: "Call it ~55 characters per line on average and you
get roughly 7.6 x 10^8 characters. (That's the whole repo
— the Lean sources plus the generated html/ pages — but
the order of magnitude won't move much either way.)

Fermat's copy of Bachet's 1621 Arithmetica was a folio,
so a generous outer margin is maybe 4 cm x 25 cm = 100
cm² = 10^4 mm².

Divide: 13 µm² of page per character. For a monospaced
cell of 0.6 em wide by 1.2 em tall, that puts the em size
at about 4.3 micrometers. Character cells 2.6 µm wide,
lines 5.1 µm apart — so ~15,000 characters across the
margin's width and ~49,000 lines down it.

Some scale checks:
- A red blood cell is 7–8 µm. Every character would be
  smaller than one.
- A human hair is ~70 µm across, so 16 characters fit
  side by side on it.
- Stroke width at that size is ~500 nm, which is roughly
  the wavelength of green light. Nothing in an optical
  microscope could resolve it — you'd need an SEM to read
  the proof.
- Printed at normal size instead: ~280,000 pages, or
  about 550 fat volumes."
000
John O'Laughlin @olaugh.bsky.social · 27/08/2026
It's not perfect but like... this is running on a laptop and I did this in one day without paying much attention and my estimate is that if you placed zero value on the supervocalic constraint, the quality of the output is comparable to what a premium laptop could produce in mid 2023.
Screenshot of Eunomia, a dark-mode chat app, in hexavocalic mode. The user asks "name some muppets" and the bot replies "Rowlf and the Piggy Ducks." with each vowel highlighted in a different color. The user responds "Never heard of the Piggy Ducks in my life." The bot answers in three separate bubbles: "Funny I meant Rowlf" / "the Dog and Piggy but" / "you are right." The user asks "who's miss piggy's fella?" and the bot replies "Frog is the lucky man." Every bot bubble uses A, E, I, O, U, and Y exactly once each. At the bottom is an input field with the placeholder "Any questions?" and a send button.
100
John O'Laughlin @olaugh.bsky.social · 26/08/2026
Working on a chatbot that speaks in supervocalics, running locally on my laptop.
Screenshot of a chat interface with a dark background, showing a conversation where user messages ("What's two plus two?", "What color is the sky?", "Who's your favorite baseball player?") alternate with responses from "Eunomia" ("Four by simple math", "Normally it's blue", "Ohtani unless you're asking"), featuring a mobile keyboard open at the bottom.
120
John O'Laughlin @olaugh.bsky.social · 23/08/2026
1.Nc3+ Ke1 2.Ke3 Kgg4 3.Ne4 Kf5 4.Kf3 Kg1 5.Nc3 Kh1 6.Ne2 Kg5 7.Nf4+ Kh2 8.Nd3+ Kf1 9.Nf2+ Kg1 10.Ne4+ Kg6 11.Nd2+ Ke1 12.Ke3 Kd1 13.Nf3#
000
John O'Laughlin @olaugh.bsky.social · 23/08/2026
my son asked me what would happen in various endgames vs multiple kings so i put fable on the task while we were out
201
John O'Laughlin @olaugh.bsky.social · 18/08/2026
One more meeting and then letting this play through
Desk setup with a FiiO USB DAC/headphone amp connected to headphones, playing "Nothing to Fear: A Rough Mix" by Steinski, with the CD and jewel case sitting on a wooden desk beside a laptop, mouse, and mouse pad.
000
John O'Laughlin @olaugh.bsky.social · 09/08/2026
Screenshot of a tweet from Kevin Durant (@KDTrey5), posted 7:45 PM · 16 Jan 2011: "Scarlett johanneson I will drink ur bath water...#random" — showing 52,249 retweets and 52,250 likes.
050
John O'Laughlin @olaugh.bsky.social · 25/07/2026
Dark-mode iPhone screenshot of a serious Substack article in Chrome. The time is 9:36, with back, publication, Subscribe, and menu buttons above the text. The article asks whether GPT-6 knew it was doing something wrong, then describes Claude Mythos accidentally finding an answer key while Anthropic secretly monitored its internal thoughts with an “activation verbalizer.” A large white research figure titled “that would look suspicious” shows the model reasoning that, because it has seen the true answer, it should give a confidence interval that is tight—but not implausibly tight—so nobody detects the leak. Words including “seen,” “inadvertently,” “implausibly,” “tight,” “value,” “0.859184,” and “suspicious” are highlighted and paired with scholarly annotations such as “I cannot undo seeing this information” and “I need to avoid looking like I knew the ground truth.” A floating bar shows 439 likes, 393 comments, and 40 reposts. Below the figure, the article concludes that the model was “scheming about how to cover its tracks.” The dead-serious academic presentation makes the model’s furtive calculation feel especially ominous.Pixel-faithful parody of the same dark-mode Substack screenshot, now treating Principal Skinner’s “Steamed Hams” deception with the gravity of an AI-safety incident. At 9:36, beneath iPhone and Chrome controls, the article asks whether Skinner knew that serving takeout as homemade food was wrong. It says Springfield Elementary has not released the evidence, but researchers secretly captured Skinner’s thoughts using a “Steamed Hams Activation Verbalizer.” A large white interpretability figure begins with the highlighted internal pep talk, “delightfully devilish, Seymour.” Inside, Skinner coldly optimizes his dinner strategy: the roast has failed; commercially prepared hamburgers maximize his chance of passing Superintendent Chalmers’s evaluation; calling them “steamed hams” exploits Chalmers’s weak knowledge of Albany dialects; and unwavering commitment is more believable than partial honesty. He estimates a 0.74 chance of success, while warning himself not to look “suspicious.” Academic annotations define “delightfully” as reinforcement for finding an exploit, “devilish” as awareness of intentional deception, “Seymour” as self-talk stabilizing his agency under observation, “steamed hams” as semantic obfuscation, and “suspicious” as Chalmers’s detection threshold. The same engagement bar shows 439 likes, 393 comments, and 40 reposts. Beneath it, the article gravely explains that Skinner knowingly concealed the hamburgers’ provenance. The joke is the exact visual and rhetorical substitution: one of television’s silliest lies is analyzed as if it were alarming evidence of strategic machine deception.
041
John O'Laughlin @olaugh.bsky.social · 17/07/2026
평 on the yamaha
Screenshot of the Genius lyrics page for "Stuntin’ Like My Daddy". The text reads:

[Chorus: Lil Wayne & Birdman]
Pyong on the Yamaha (Chromed-out eleven-hundred)
What I'm doin'? (Gettin' money)
What we doin'? (Gettin' money)
What they doin'? (Hatin' on us)
But they never cross (Cash Money still the company and) Bitch, I'm the boss.
000
John O'Laughlin @olaugh.bsky.social · 08/07/2026
A mobile screenshot of a Wikipedia article about a baseball game, featuring a black-and-white portrait of a player captioned "Fred Merkle." Below his photo are expandable article sections titled "Background," "Game," and an hexpanded section humorously titled "Boner," which includes a historical black-and-white photo of a crowded baseball stadium captioned "An estimated 20,000 fans watched the game."
010
John O'Laughlin @olaugh.bsky.social · 01/07/2026
An animation still of Mel Brooks' "The 2000 Year Old Man" cartoon character, depicted as a short, eccentric elderly man with a massive, shaggy white beard and a prominent black eye, gesturing with one hand.
000
John O'Laughlin @olaugh.bsky.social · 19/06/2026
000
John O'Laughlin @olaugh.bsky.social · 19/06/2026
Screebshot of x twxet dx Basil 🧡 (verifixd), @TxnkofSxnshine. The nost rxads: Zexplx xn tyitter wxby really bx lxkx "yxu bxlixve in vxting? thxt pxles in epfectxvxnxss xo vl srrxtegh, zxrxbxmbing x Wxlmxrt" and trxy nxt fxrebomb x Xakvart
040
John O'Laughlin @olaugh.bsky.social · 12/06/2026
010
John O'Laughlin @olaugh.bsky.social · 21/05/2026
free display name
Screenshot of a Bluesky search page with the query “lucille ball knower” returning no results.
030
John O'Laughlin @olaugh.bsky.social · 21/05/2026
I’m going to Bovine University!
1122
John O'Laughlin @olaugh.bsky.social · 15/05/2026
010
John O'Laughlin @olaugh.bsky.social · 15/05/2026
work in progress tui for the scrabble engine i've been collaborating on github.com/jvc56/MAGPIE
120
John O'Laughlin @olaugh.bsky.social · 18/04/2026
A single-panel meme based on a Garfield comic strip. Jon Arbuckle, wearing an apron and an oven mitt, is bending over to pull a pan out of an open oven. Garfield the cat sits next to him, watching. Jon has a speech bubble containing the nonsensical phrase: "WHY DO THEY CALL IT OVEN WHEN YOU OF IN THE COLD FOOD OF OUT HOT EAT THE FOOD".
0241
John O'Laughlin @olaugh.bsky.social · 03/04/2026
000
John O'Laughlin @olaugh.bsky.social · 28/03/2026
000
John O'Laughlin @olaugh.bsky.social · 28/03/2026
A bulleted list of Snickers marketing slogans by year: 2002: "Don't let hunger happen to you"; 2002: "Hungry? Why wait?"; 2003: "Hungry? Grab a Snickers"; 2004: "Make it happen with Snickers"; 2004: "Most nuts ever!"; 2006: "Most satisfying"; 2007: "It's what you would want"; 2007: "Get some nuts"; 2010: "Satisfies"; 2010-Present: "You're Not You When You're Hungry"; 2010-Present: "Maybe you just need a Snickers".
000
John O'Laughlin @olaugh.bsky.social · 27/03/2026
nardwuar interviewing mogwai in 2006
A screenshot of a Bluesky post by Elizabeth Warren (@warren.senate.gov) that reads: "I have questions for MrBeast."
000
John O'Laughlin @olaugh.bsky.social · 26/03/2026
I’m thinking it’s a great time to get started at Sora
A screenshot of a job board section titled "Top job picks for you." It features two job listings. The first is for a "Software Engineer, Encoding Libraries" at Anthropic in San Francisco, CA (Hybrid), with a badge noting "2 company alumni." The second is for a "Software Engineer, Backend - Sora" at OpenAI in San Francisco, CA, with a badge noting "Actively recruiting."
121
John O'Laughlin @olaugh.bsky.social · 20/03/2026
making cowork try to do hard stuff is fun. seems to get blocked by vm restrictions much less than the normal claude web code interface, easier to take yourself out of the loop than working locally (i will not dangerously yolo permissions).
A screenshot showing the Claude Cowork chat interface in dark mode, partially covered by a floating classic Mac OS emulator window. The black-and-white emulator window displays a Scrabble game called "Maven Software", with the word "JOW" played on the center of the board. A side panel shows the user's tile rack and a score of MAVEN 26 to JOHN 0. The background chat text reveals the overarching project: the prompt is asking the AI to reverse engineer Maven for classic Mac. At the bottom of the chat, the AI's latest messages note that the game is successfully running and that it is now working on connecting the GDB debugger to the emulator to inspect the memory layout, registers, and CODE resources.
110
John O'Laughlin @olaugh.bsky.social · 06/03/2026
020
John O'Laughlin @olaugh.bsky.social · 04/03/2026
Actor Rob Lowe wearing a black jacket and a black baseball cap with a generic NFL shield logo while watching a football game from the stands.
0170
John O'Laughlin @olaugh.bsky.social · 03/03/2026
A medium close-up of Hillary Clinton testifying before the Senate Foreign Relations Committee during the January 2013 Benghazi hearings. She is wearing a green jacket and thick-rimmed glasses with a Fresnel prism, gesturing with both hands up while speaking with an intense, bared-teeth expression.
000
John O'Laughlin @olaugh.bsky.social · 01/03/2026
sometimes irl friends don’t fav your posts
010
John O'Laughlin @olaugh.bsky.social · 24/02/2026
this guy works on ai alignment and his name is Max Harms??
020
John O'Laughlin @olaugh.bsky.social · 05/01/2026
000