RSSAmplifier

Blog

This Statement Is False

(but these posts aren't)

this-statement-is-false.blogspot.comRSS feed ↗25 posts

Latest posts

How a 70-Year-Old Robot Fixed My Snarky Claude

AI coding assistants are brilliant. They're also overconfident, defensive, and will produce wrong fixes with total certainty while ignoring instructions you already gave them. If you've used one for serious work, you've felt this: you correct it, it explains why it was actually right. You point out it missed something, it does the same thing again. You ask it to follow a specific process, it…

A 3-Level Process for AI Development to Stop Your App From Shifting Under Your Feet When You Change It

You're iterating: you prompt your AI, it writes code, repeat. Things are going well... but then you make a change to one part of your app and something else quietly breaks. A feature you relied on isn't there. A UI element moved. A workflow you never touched now behaves differently. You didn't ask for any of that. If this sounds familiar, you're not alone. It's not a bug: it's because AIs work by…

Job Tracker: an AI-Powered Job Search Companion for Claude Code

Claude Code can now help you track your job search. Job Tracker is a local-first Frictionless application: paste a job URL and Claude scrapes the details, searches for salary data, and keeps everything organized while you focus on landing the role. And if the app doesn't cover something you need, just ask Claude to add it; the app evolves with you as you use it. The Problem If you've ever job…

Loop Til It Works Is Great for Some Things

I've been tuning and refining ui-engine . Man, design choices early on dramatically affect the quality, capabilities, and potential responsiveness of a platform, especially if it has a UI. I've been using a lot of UI experience I've acquired since the 80s and tuning this platform is making me pull out some pretty weird heuristics, like "use a debounce," except in certain situations where that…

Frictionless

Frictionless: Claude Code-connected apps What if Claude Code could use apps with you collaboratively? Like, you vibe-code or spec-code or just download an app and as you use it, Claude Code can interact with it too and even alter the app as it runs, without losing information and without needing a restart? Make Claude Code part of your apps... This is Frictionless. No difference between…

Mini-spec 2.0: Now with teeth

Three weeks ago I released mini-spec: a ~93-line skill for spec-driven development. The idea was simple—add a design layer between specs and code so you can catch AI hallucinations before they become phantom features. It worked. But there was a problem: nothing enforced the workflow . Claude could skip the requirements phase. It could forget to link requirements to design artifacts. It could mark…

Announcing mini-spec: spec-driven development for Claude in ~93 lines

mini-spec Spec-driven development for Claude in ~93 lines AI hallucinates features you didn't ask for. Sometimes they're great, so good you rely on them. Then you regenerate and they vanish. Mini-spec fixes this. GitHub: https://github.com/zot/mini-spec The three-level approach specs/ What you asked for (human-written) ↓ design/ What the AI understood (reviewable) ↓ src/ What got built (traceable)…

(untitled)

Use claude-crc, Don’t Lose Features to ‘Generous’ Inference 3-Level Spec-Driven Development For Claude The Problem With 2-Level Spec-Driven Development 2-level spec driven development suffers from the same problem as vibe coding – it just takes longer. Which means it bites you after you done a lot more work. I did some hand-rolled, 2-level spec-driven development for an app I’ve been building. By…

A VERY lightweight MVC framework for React

I just dropped a new repository on GitHub about this -- just wanted to put a pointer here.

Transactional memory for operational transformation in Leisure

It's been a very long time since my last post but we haven't been idle. We've been working on Leisure, which grew out of Lazp. Leisure has become a collaborative, dynamic, polyglot, computing environment, but more about that in future posts. If you're curious about Leisure, you can find the repository here , although we haven't formally announced it, yet. It's functional but buggy. For now, here's…

DOMCursor, a tool for filtered DOM tree cursoring

While working on Leisure , I searched for tools to traverse text in DOM trees, but most of the ones I found were fairly limited. One nice one is Rangy ( https://github.com/timdown/rangy ), which has a TextRange that can traverse by characters and words with rules for skipping over invisible text, collapsing contiguous whitespace, etc. Leisure, however is what you might call an “ultra-rich text”…

Trying out a Coding Dojo

We had our first Coding Dojo session, today. I wanted to start a "Programming Dojo" and I found that some people had already been doing that for years , so I decided to use their wisdom :). Here's a great video, linked from the same site. The guy making this gestures with the camera a lot. If you get easily motion-sick, maybe you should just listen to it. The idea is to have 2 people pair…

Lazp: an untyped, lazy, functional language with support for runtime metaprogramming

So far, the only untyped, lazy language I've found that's being maintained is Lazy Racket . I've been interested in Lambda Calculus for a while, though, and LISP/Scheme aren't quite what I want (and they're quite a bit larger, too), so I decided to extend the Lambda Calculator into a standalone language. Here's the repository . The goal is to make it native, but for now, it's still in JavaScript,…

(untitled)

I added an intro, a summary, and a few more ideas to the Code Google post . It needs a better name that doesn't just mean "search" to people and also doesn't include trademarked words :).

Code Google

UPDATE: Added structure and a few more ideas... Intro Have you ever seen someone include a giant open source library in a project, just to access some small part of its functionality? It's very important to have someone else write, debug, and maintain a large part of your code, but when you do this over and over, it can add quite a lot of bloat to an app for comparatively little gain in…

Podcast interview about Death of the Vele

I already blabbed this in a bunch of emails to people, but just in case... Scott Dunphy of New Style interviewed me about Death of the Vele, here . This was the first time I've been interviewed for anything; I was surprised I sounded coherent -- I thought it might come out a lot less cohesive than it did when I listened to it.

Quick update on The Philosopher's Stone

I have changed TPS many times in the past year and a half, but the core idea is still to be a collaborative story telling RPG that feels like a traditional RPG. The latest version of it is called Death of the Vele and the (lame) website is here It has a link to the latest rules. Wow, taking a look at the old rules, I see that I have streamlined the mechanics a LOT since last year. They are…

Applied Lambda Calculus

I made a slide presentation introducing Lambda Calculus and some functional concepts (lazy evaluation, how to represent data, etc.). It also talks about a Lambda Calculator I wrote, which does LC in three ways: compiles into JavaScript interprets through substitution (alpha, beta, and eta) and shows the steps compiles into virtual machine code (and can execute it) The VM still fails on some…

Calculator/spreadsheet tool for Acme

I got Plan9 from User Space and started messing with it in the hopes of getting a nice toolbench going with Acme. Since I wrote Ober , I've been interested in this idea. Now, I'll probably rewrite it in Go. I'm wondering if I can just use named pipes to mimic what Acme does with its 9p interface. Anyway, I wrote a simplified version of the Calc tool I wrote for Ober and I put it, here . The calc…

The Philosopher's Stone

I've been searching for the "Philosopher's Stone" of role playing for years -- a role playing system that combines traditional role playing with the collaborative story telling of Universalis. I think the Blood Red Sands system might allow this. By replacing the coins of Universalis with dice, BRS introduces relative differences between traits, an element of risk into contesting for narrative…

Xus Rsync/Bittorrent/Git approach

Approach I started working on my file sharing approach. Sharing will not involve deltas or packs, just chunks, by Git id. The idea is to share Git commits, with all of their associated tree and blob objects. They'll be shared using a manifest for each commit that exhaustively lists all of the chunks in that commit. A manifest will be a binary XML document (using fastinfoset , same as Xus uses for…

Story telling in role playing games

I play a lot of indie RPGs, like Spirit of the Century and Swashbucklers of the Seven Skies , but for the past couple months, we've been retrying D&D 4e (and I'll be using "DM" below a lot of times in the generic sense). I tried it for 5 months in 2008, running a Keep on the Shadowfell adventure. I have to say that I think that was a mistake for Wizards. It's a dungeon. A lot of the monsters…

Use rsync with Xus file sharing?

I'm wondering if it would be a good thing to use a variant of the rsync algorithm with Xus file transfer. This would help save a lot of bandwidth for large files that only have small changes. One example is Sauerbraten maps, which can be 2M or more (after compression). When you move a tree, only a small part of the map file is changed, but without rsync behavior, pushing an update requires…

Xus file sharing

It's been a long time since my last post; various RL intrusions encroached on Xus. Now I'm starting the file sharing piece. I'm basing it on what I did in Plexus, but starting right away with Git integration instead of putting it off, since that seems to be a better way to actually have Git integration :). Xus has kind of a weird profile for a p2p system. It's made to handle a mass of small…

Xus Milestone 1 complete

According to my only somewhat extensive automated tests, Milestone 1 (Basic Xus) is now complete. That includes layers 1 and 2 and the property service (transient and persistent properties). Plexus relies heavily on its property service (currently backed by FreePastry) and I think it will be useful to other programs as well. It's kind of a persistent broadcast; it's really just for relatively…