Paul Smith's Avatar

Paul Smith

@smith.dev

Program the computers. Gov tech founder, dad, and O’s fan in the US Midwest. I enjoy weightlifting. I collect spores, molds, and fungus. Making my mind a sunless place Co-founder of Ad Hoc

1,288
Followers
304
Following
290
Posts
24.04.2023
Joined
Posts Following

Latest posts by Paul Smith @smith.dev

It’s a play on “recursive descent” the parsing technique

26.02.2026 05:46 👍 0 🔁 0 💬 0 📌 0

Recursive Ascent is the name of my new startup

26.02.2026 04:36 👍 3 🔁 0 💬 1 📌 0
Video thumbnail

Was doodling "recursion" ideas on my notepad, stumbled on the R and A emerging from the rotated forms, then couldn't stop until I had an '80s PBS TV style animation

26.02.2026 04:34 👍 4 🔁 0 💬 1 📌 0

It does some times feel like I’m swimming upstream for jj as models/harnesses are increasingly RL’d for Git. I still think there is a there there for jj and agents. I should write up more show-and-tell on it.

24.02.2026 18:51 👍 1 🔁 0 💬 0 📌 0

Mostly they are downstream of Git's model - files that fail to get staged, missing stashes, unclear workflow. For me its more about the strengths of jj and workspaces. To be fair, I see that eg Codex and other tooling are increasingly worktree-native, so maybe it's a less of a competitive advantage.

24.02.2026 18:46 👍 0 🔁 0 💬 1 📌 0
Preview
Introducing jjq, a local merge queue for jj jjq is a CLI tool that lets you, or more likely, a coding agent, submit a change to be considered for landing on the trunk of a jj repository. Think of it like a local version of a merge queue from a ...

Wrote a bit about jjq. Continuing to build on top of jj for a lot of things

pauladamsmith.com/blog/2026/02...

24.02.2026 18:37 👍 1 🔁 0 💬 1 📌 1
Photo of a music stage bathed in blue stage lighting, a band of musicians performing in front of a silhouette of audience heads.

Photo of a music stage bathed in blue stage lighting, a band of musicians performing in front of a silhouette of audience heads.

Cate Le Bon last night at Thalia Hall. She is so cool. They rocked

23.01.2026 21:28 👍 0 🔁 0 💬 0 📌 0
Preview
My first contribution to the jj project I added support for the -m|--message flag to the jj workspace add command, so you can set a message for the new commit that jj creates associated with the workspace. With the current release as of thi...

I think this is my first ever FOSS contribution in Rust? Continue to <3 jj

23.01.2026 21:18 👍 2 🔁 0 💬 0 📌 0
Preview
Let `jj absorb` help you keep a clean commit history Seeing this reminded me of how much I like jj absorb. It's a powerful command, and one of those features of jj that can put a smile on your face when you see it in action. If you've ever made multiple...

`jj absorb` is a great example of what Jujutsu's design enables www.pauladamsmith.com/blog/2025/08...

20.08.2025 21:08 👍 2 🔁 0 💬 0 📌 0
Preview
RADDLE The daily word transformation game

RADDLE • Mar 10

SHIP → HOLLOW [100%]
🚢 ╠═════════════╣ 🕳️

raddle.quest

10.03.2025 14:14 👍 3 🔁 0 💬 0 📌 0
Preview
RADDLE The daily word transformation game

RADDLE • Mar 07

TURN → LINK [100%]
↩️ ╠═════════════╣ 🔗

raddle.quest

07.03.2025 17:56 👍 4 🔁 0 💬 0 📌 0
Preview
RADDLE The daily word transformation game

RADDLE • Mar 06
raddle.quest

TRAP → TURN
🪤 ╠════════════╣ ↩️

Rank: Ready for the 🏋🏽‍♂️ Olympiad-dle (100%) raddle.quest

07.03.2025 03:30 👍 1 🔁 0 💬 0 📌 0
Preview
RADDLE The daily word transformation game

Announcing RADDLE, my new word transformation game.

raddle.quest

It’s a twist on conventional word ladders — instead of changing one letter at each step, you’re changing the entire word based on a clue. But it’s up to you to determine which clue to use.

06.03.2025 18:36 👍 102 🔁 21 💬 31 📌 29

If you play Wordle, Connections, etc., check out Raddle. I think it's fun and challenging. Sandy's very clever.

07.03.2025 02:09 👍 3 🔁 0 💬 1 📌 0
scm-record Split/Interactive Squash Cheat Sheet (for Jujutsu / jj)

I love using jj instead of (or really on top of) git these days, but I struggled with the built-in diff editor, which seems to be pretty under-documented. So I made a quick cheatsheet reference of the commands, hopefully it is useful to others similarly stuck: paulsmith.github.io/jj-builtin-d...

17.01.2025 20:17 👍 7 🔁 0 💬 0 📌 0
Post image

This game has been so fun. Wildly entertaining

14.01.2025 03:27 👍 5 🔁 0 💬 0 📌 0
A TV screen showing an NBA basketball game between OKC (Oklahoma City Thunder) and CLE (Cleveland Cavaliers). The score is OKC 114, CLE 118 with 4:36 left in the 4th quarter. The game is being broadcast on ESPN. The TV appears to be mounted below some bookshelves filled with various books, and there's a partial view of what looks like a couch or furniture piece at the bottom of the image.

A TV screen showing an NBA basketball game between OKC (Oklahoma City Thunder) and CLE (Cleveland Cavaliers). The score is OKC 114, CLE 118 with 4:36 left in the 4th quarter. The game is being broadcast on ESPN. The TV appears to be mounted below some bookshelves filled with various books, and there's a partial view of what looks like a couch or furniture piece at the bottom of the image.

This game will determine which is the greatest city on earth: Oklahoma City, or Cleveland 💥

09.01.2025 02:33 👍 6 🔁 0 💬 0 📌 0
A paragraph of text discussing how overlapping windows mirroring stacked documents on a desk is not an ideal metaphor for computer interfaces. The text argues that partially hidden windows typically need to be brought to the top and made fully visible before use, and that the substantial implementation effort required outweighs the insignificant advantages of this design approach. It concludes by stating it's an example where a complication's benefit is incommensurate with its cost.​​​​​​​​​​​​​​​​

A paragraph of text discussing how overlapping windows mirroring stacked documents on a desk is not an ideal metaphor for computer interfaces. The text argues that partially hidden windows typically need to be brought to the top and made fully visible before use, and that the substantial implementation effort required outweighs the insignificant advantages of this design approach. It concludes by stating it's an example where a complication's benefit is incommensurate with its cost.​​​​​​​​​​​​​​​​

A sentence fragment that continues from a previous paragraph, stating that their solution is much simpler to implement while having no real disadvantages compared to overlapping windows: tiled viewers as shown in Figure 2.1.​​​​​​​​​​​​​​​​

A sentence fragment that continues from a previous paragraph, stating that their solution is much simpler to implement while having no real disadvantages compared to overlapping windows: tiled viewers as shown in Figure 2.1.​​​​​​​​​​​​​​​​

A page showing Figure 2.1, titled "Oberon display with tiled viewers." The image contains a structured layout of the Oberon operating system interface, including a system diagram in the center showing module relationships (with components like System, Edit, Net, Backup, TextFrames, Printer, MenuViewer, and Oberon), surrounded by tiled viewers showing various system commands and file information. The diagram is structured hierarchically, with Oberon at the base connecting to Viewers, Texts, and Reals. The page also includes code snippets and system commands in separate tiled sections around the main diagram.​​​​​​​​​​​​​​​​

A page showing Figure 2.1, titled "Oberon display with tiled viewers." The image contains a structured layout of the Oberon operating system interface, including a system diagram in the center showing module relationships (with components like System, Edit, Net, Backup, TextFrames, Printer, MenuViewer, and Oberon), surrounded by tiled viewers showing various system commands and file information. The diagram is structured hierarchically, with Oberon at the base connecting to Viewers, Texts, and Reals. The page also includes code snippets and system commands in separate tiled sections around the main diagram.​​​​​​​​​​​​​​​​

Wirth circa ‘86 already got there on window placement

24.12.2024 20:57 👍 2 🔁 0 💬 0 📌 0
Close-up of the back cover of a vinyl record featuring a compilation of soul Christmas songs. The tracklist is visible, listing artists like Little Johnny Taylor, Rance Allen Group, Mack Rice, Rufus Thomas, Albert King, Staple Singers, Isaac Hayes, The Temprees, and The Emotions.

Close-up of the back cover of a vinyl record featuring a compilation of soul Christmas songs. The tracklist is visible, listing artists like Little Johnny Taylor, Rance Allen Group, Mack Rice, Rufus Thomas, Albert King, Staple Singers, Isaac Hayes, The Temprees, and The Emotions.

24.12.2024 18:58 👍 3 🔁 0 💬 0 📌 0
Video thumbnail

Stax Records xmas comp, 1982

24.12.2024 18:55 👍 7 🔁 0 💬 1 📌 0
Photo of cover of textbook “Project Oberon: The Design of an Operating System and Compiler” by Niklaus Wirth and Jürg Gutknecht

Photo of cover of textbook “Project Oberon: The Design of an Operating System and Compiler” by Niklaus Wirth and Jürg Gutknecht

Hanging with Saint Niklaus 🎅

24.12.2024 15:32 👍 3 🔁 0 💬 1 📌 0
YouTube Share your videos with friends, family, and the world

Kīlauea erupting. Live view from Halemaʻumaʻu crater from the northwest rim of the caldera.

www.youtube.com/live/w0KulR_...

23.12.2024 16:40 👍 2 🔁 0 💬 0 📌 0

The season is the reason for the season

20.12.2024 21:04 👍 1 🔁 0 💬 0 📌 0

This was fun, nice work @xor.blue

20.12.2024 21:02 👍 4 🔁 1 💬 0 📌 0
A terminal screenshot showing a diff view of changes made to a Nix configuration file 'common/users/shared-user-config.nix'. The diff shows line numbers 43-53, with new lines in green and old lines in red. The change is configuring direnv with bash integration and nix-direnv support

A terminal screenshot showing a diff view of changes made to a Nix configuration file 'common/users/shared-user-config.nix'. The diff shows line numbers 43-53, with new lines in green and old lines in red. The change is configuring direnv with bash integration and nix-direnv support

A terminal screenshot showing direnv loading output. The user has changed directory to "Desktop/pushup/v0.3/". The output shows direnv loading an .envrc file, using flake, and loading a cached nix-direnv dev shell. There's a long list of exported environment variables including various Nix-related configuration settings, compiler flags, and build parameters. A red arrow points to the line "direnv: nix-direnv: Using cached dev shell".

A terminal screenshot showing direnv loading output. The user has changed directory to "Desktop/pushup/v0.3/". The output shows direnv loading an .envrc file, using flake, and loading a cached nix-direnv dev shell. There's a long list of exported environment variables including various Nix-related configuration settings, compiler flags, and build parameters. A red arrow points to the line "direnv: nix-direnv: Using cached dev shell".

Added a couple of lines to my home-manager config, and now I get instant loading of dev environments when I cd into them with direnv. (I was missing the nix-direnv integration, which caches the evaluation and the resulting environment.)

20.12.2024 20:41 👍 0 🔁 0 💬 0 📌 0

Nice - I just checked out Amperfy for iOS, looks solid. My next step is expose the Navidrome server over Tailscale. Have you done that or Wireguard or something similar?

19.12.2024 16:43 👍 0 🔁 0 💬 1 📌 0
A screenshot of a music streaming service dashboard showing recent listening activity for user "pauladamsmith". The interface displays a list of recently played songs with album art thumbnails, song titles, artists, track lengths, and timestamps. The layout includes a navigation sidebar on the left with options like Feed, Dashboard, and Explore. The main content area shows "New listens since you arrived" and "Recent listens" sections, featuring tracks from artists like Joe McPhee, Elvis Costello, Gillian Welch, and others. Each song entry includes options to like, add to playlist, and play the track.

A screenshot of a music streaming service dashboard showing recent listening activity for user "pauladamsmith". The interface displays a list of recently played songs with album art thumbnails, song titles, artists, track lengths, and timestamps. The layout includes a navigation sidebar on the left with options like Feed, Dashboard, and Explore. The main content area shows "New listens since you arrived" and "Recent listens" sections, featuring tracks from artists like Joe McPhee, Elvis Costello, Gillian Welch, and others. Each song entry includes options to like, add to playlist, and play the track.

Cleaned up my giant old MP3/FLAC collection (passed it through MusicBrainz Picard app), found a place for it on my home network, and served it up with Navidrome. Wired up to ListenBrainz - feels like the good ol' scrobble/last.fm days.

18.12.2024 22:12 👍 10 🔁 3 💬 2 📌 0
A black weight plate ornament reading "MERRY LIFTMAS" and "45 LB" hanging on a Christmas tree decorated with colorful lights. The tree lights create a festive backdrop of green, blue, red, and yellow illumination around the ornament.​​​​​​​​​​​​​​​​

A black weight plate ornament reading "MERRY LIFTMAS" and "45 LB" hanging on a Christmas tree decorated with colorful lights. The tree lights create a festive backdrop of green, blue, red, and yellow illumination around the ornament.​​​​​​​​​​​​​​​​

17.12.2024 03:39 👍 4 🔁 0 💬 0 📌 0

I believe it’s "KO-hog" or "KWAW-hog."

14.12.2024 18:50 👍 0 🔁 0 💬 0 📌 0

Walrus Turtle Frog, people

14.12.2024 17:24 👍 1 🔁 0 💬 0 📌 0