What we are cooking in our lab..

TypingKit for Mac: two milliseconds from key to letter

TypingKit now has a Mac app. Its typing area draws each letter about 2 ms after the key, where a browser takes 30 to 50. Whole novels chapter by chapter, passages with the ghost of your best run, a typing test, your own EPUBs, and the same account as typingkit.com. Free on the Mac App Store.

Cat Piano is back

Our 2009 piano that meows, rebuilt: the same three cats, one meow each, pitched live to every key. Chords, ten fingers, and your own cat as the instrument.

Geo Elevation 2.3: can you see it from here?

Line of sight over the curve of the Earth, the view from any point in green and red, and Look: stand there at the true height of the ground and look around in 3D. Plus a new print sheet and PDF report, and a welcome window on the Mac.

GPX Explore 2.2.1: a walk between tall buildings

A tester walked downtown Pittsburgh with GPX Explore recording on her iPhone and her Apple Watch recording too, then drew the path she really walked. What each one got right, what the iPhone got wrong, and what GPX Explore 2.2.1 changes.

GPX Explore 2.2: see it first

GPX Explore shows the ground under any track in 3D with its climbs, flies the route and makes a flyover video to post, records a track with one tap on iPhone and iPad, prints a cue sheet of every turn, and counts climbing that reads true on noisy recordings.

iOS 27 App Store product page header and search results images: sizes, design and API upload

The header is 3840 × 1646 and the search results asset 3840 × 2560, but Search shows it at about a tenth of that. What still reads at that size, and how to upload both per localization with the App Store Connect API.

GPX Explore 2.1: ride it, turn by turn

GPX Explore follows any GPX file with spoken turns and street names on iPhone and iPad, finds and rates every climb on Mac, iPhone and iPad, records your ride for Apple Health, and opens your Apple Health workouts as GPX for free.

Next.js 16 segment prefetch loop on Cloudflare Workers with OpenNext cache interception

With enableCacheInterception on and @opennextjs/aws older than 4.1.6, every Next.js 16 segment prefetch got the whole page back, and each open tab asked again about 130 times a second. Upgrade before turning interception on. On a crawled site, keeping rendered pages in the Cache API instead of R2 also cut the bill.

WorkoutGPX 1.6: share with a swipe, keep your front door out of it

Swipe a workout to share its GPX or send it to GPX Explore, leave the first and last stretch of every route out of the files you share, and export from Shortcuts. The list now shows each route by its shape. Your workouts still leave the phone only when you share them.

Age Test 2: a tone generator, not an age

In 2009 our Age Test played twelve tones and put an age beside each one. Rebuilding it, we kept the aluminum knob and dropped the ages: it is now a tone generator and a live sound spectrum for the science class.

Boston Harbor was 15,728 meters high

Our elevation server said a spot on the Boston waterfront stood nearly twice as high as Everest. The cause was a 2017 flaw in the open terrain data much of the web uses, plus one bug of our own. How I found every bad height on the planet and fixed them in place.

Geo Elevation 2.1: read the ground, not just the line

Paths that follow real trails and roads. Areas that answer for the ground inside them: highest and lowest points, slope and contour maps, the terrain in 3D, every trail that crosses them. Print it on paper or in plastic. In five languages.

Geo Measure 3.1: along the trail, and every point exactly

Distances that follow roads and paths, with the travel time. A points table you can type into. Select, Add Points and Freehand, so the map stops adding points by accident. On iPhone, iPad, Mac and Vision Pro, in five languages.

Train of Four 2.0: from a seismometer app to a medical journal

In 2014 an anesthesia resident asked whether iSeismometer could measure a patient's twitches. The app we built with him was evaluated in the Canadian Journal of Anesthesia. Version 2.0 keeps that measurement and rebuilds everything around it.

GPX Explore 2.0: draw it, fix it, keep it whole

GPX Explore becomes a GPX editor on the Mac, iPhone and iPad: routes that follow the trail, drag to re-route, elevation for every drawn point, and every fix a recording needs, saved as plain GPX that keeps everything.

iRetroPhone 3.1: pull it like a real phone

A tap on a hole no longer dials by itself, a ghost finger shows how a rotary dial works, and iRetroPhone now speaks German, French, Spanish, Italian and Japanese.

MyFoodAnalysis: exploring 455,000 food records from USDA

A food data project that started with curiosity: 455,000 foods from USDA FoodData Central, a Food Finder that searches by twelve nutrients at once, and the whole curation open source so anyone can check it.

iHalloween 2: the pumpkin that sees you coming

Our 2008 Halloween sound app, rebuilt: the front camera notices a visitor, the pumpkin on the screen follows them with its eyes, and it screams. With the same screams we bought for it eighteen years ago.

Seismica 1.2: replay a great earthquake, and keep a study with your own notes

Seismica now replays Tōhoku, Sumatra–Andaman, Ridgecrest and Türkiye–Syria on the map, searches any region and period, and keeps studies with Markdown notes that travel as one .seismica file.

iSameGame 6: the 2008 puzzle, rebuilt in 3D, with boards you can share

iSameGame is back on the App Store as a new app: spheres you can tilt, four board sizes, every board a code a friend can play too, daily boards with Game Center leaderboards, and the scoring it has had since 2008.

Jev plays SameGame: a decision model picks every move in a third of a second

TypeSafe's Jev makes typed decisions instead of writing text. I gave it every legal move on a SameGame board and let it play samegame.app.

Geo Tracker 3: your route, your photos, your file

A rebuilt GPS recorder for iPhone, with photo waypoints, Watch controls and a route you can follow back to the start.

Geo Elevation for Mac 2.0: the Mac-only edition now runs the same code as Geo Elevation

The Mac app sold on its own since 2016 is rebuilt from Geo Elevation 2.0: a sample every 30 metres, a chart with sea level and water, the terrain in 3D, import and export, five languages, heights from our own server. A free update for everyone who owns it.

Geo Measure for Mac 3.0: the Mac-only edition now runs the same code as Geo Measure

The Mac app sold on its own since 2013 is rebuilt from Geo Measure 3.0: several shapes in one file, delete and undo, export to KML, GPX and PDF, areas on the ellipsoid, five languages. A free update for everyone who owns it.