Posts tagged with "dev"
46 posts with this tag.
← Back to all posts-
Becoming a better atproto citizen
12 July 2026The blog's standard.site records now carry cover images, a publication icon and theme, and the strongRefs Bluesky uses for enhanced link cards....
-
Knowing which Claude is stuck
10 July 2026A zellij session switcher that shows how many Claude Code agents are running in each session, and which of them has stopped and is waiting on me....
-
The verification I never verified
6 June 2026I wrote a whole post about two-way standard.site verification. One of the two directions had been returning a 404 in production the entire time....
-
XKCD 1319: we now live on the theory curve
28 May 2026XKCD 1319 set the theory and reality curves of automation against each other. With LLMs writing the scripts, the theory curve has won....
-
Getting a reTerminal DM running as a Nerves kiosk in 2026
8 Apr 2026A guide to running Elixir/Nerves on Seeed's reTerminal DM with its custom DSI display, capacitive touchscreen, and a Cog/WPE browser kiosk---including the workarounds you'll need for touch input....
-
Ben's dev setup 2026 edition
18 Feb 2026Ghostty, zellij, helix and a life lived in text tokens---why I ditched Zed and went back to purely terminal-based development....
-
Coding agents and the plasticity of code
23 Dec 2025Code has always felt brittle---most changes break it. Coding agents change that dynamic, absorbing the cognitive load of big refactors and making code feel plastic rather than rigid....
-
Fixing slow Zed agent startup times
17 Dec 2025Claude Code sessions in Zed were taking 30 seconds to start. The culprit: npx fetching Playwright MCP on every launch. The fix involves global installs and mise shims....
-
Switching from Jekyll to VitePress
2 Dec 2025After ten years on Jekyll, I moved this site to VitePress. Notes on migrating content, components, reveal.js slides, and data loading....
-
11ty and Vite for modern static websites
24 Nov 2025How to set up 11ty with Vite and Tailwind v4 for static sites that need proper asset bundling, HMR, and npm ecosystem access....
-
The great 2025 email yak-shave: O365 + mbsync + mu + neomutt + msmtp
12 Sept 2025Rebuilding a terminal email setup with OAuth2, Office365 and neomutt in Zed---the hard-won config so you don't have to waste as many hours as I did....
-
Running Claude Code within Zed
23 July 2025Switching from Zed's Agent panel to Claude Code for flat-fee pricing, with a simple task config to keep the workflow inside Zed....
-
Automated RPi Web Kiosk Setup in 2025
16 July 2025A fully scripted burn-and-boot process for setting up Raspberry Pi 5s as fullscreen Chromium kiosks with Tailscale, WiFi and 4K support....
-
Agentic Elixir superpowers: Zed + Tidewave + AshAI
6 June 2025How to wire up Zed, Tidewave and AshAI as MCP servers for an agentic Elixir development workflow, with a helper script to glue it all together....
-
Format Markdown on save in Zed using Prettier
20 Sept 2024Zed config snippet for auto-formatting Markdown files on save with Prettier, including prose wrapping at 80 columns....
-
Jekyll build speedups for Ruby 3.2
2 Feb 2023Ruby 3.2's YJIT gave my Jekyll builds a 4.8x speedup---from 17 seconds down to under 4....
-
Handling Square Webhooks in Phoenix
22 Jan 2023How to receive and validate Square payment webhooks in an Elixir/Phoenix app, with code for HMAC signature verification....
-
rclone: exclude all git repos
11 Jan 2023A bash script to auto-exclude all git repos from rclone backups, since rclone's built-in filtering can't do it alone....
-
So this is how it feels when the robots come for your job
30 June 2022My Conversation piece on GitHub Copilot and whether AI coding assistants are about to put programmers out of a job....
-
Redacting craiyon prompts with imagemagick
22 June 2022A one-liner ImageMagick command to batch-redact the prompt text from craiyon (DALL-E mini) screenshot outputs....
-
Pulling apart Zoom attendance csv dumps in tidy R
23 May 2022A quick tidyverse R script for parsing Zoom attendance CSVs and visualising per-participant call duration with ggplot2....
-
Running an AI neural style transfer model under Singularity
1 Feb 2022Getting a pytorch neural style transfer model running on RTX 3090s via Singularity containers, navigating CUDA version hell along the way....
-
Deploying a Phoenix app (with LiveView) on fly.io
27 Oct 2021Quick notes on deploying a Phoenix 1.6 LiveView app to fly.io, including gotchas with health checks and outdated guides....
-
Cutting ruby CI pipeline times with pre-installed bundles
21 Oct 2021A multi-stage Dockerfile that pre-installs Ruby gems to cut GitLab CI build times for Jekyll sites by up to 90%....
-
openconnect setup for institutional VPN access
18 Oct 2021Using openconnect as a reliable alternative to the GlobalProtect client for connecting to an institutional VPN on macOS....
-
benswift.me analytics/tracking update
8 Apr 2021I've added counter.dev as a lightweight, relatively un-invasive analytics tool. Ad-blocker users still welcome....
-
Bulk-add students to MS Teams from a csv file
1 Apr 2021A PowerShell snippet for bulk-adding students to an MS Teams class from a CSV of email addresses---works on macOS and Linux too....
-
Simple pdf papers/reports with markdown, pandoc and bibtex
16 Mar 2021A simple GitHub template for writing in markdown and producing nice PDFs via Pandoc and LaTeX, with optional BibTeX citations....
-
Configuring Spacemacs org-roam & org-noter for academic writing bliss
16 Dec 2020How to get org-roam, org-roam-bibtex and org-noter working together in Spacemacs for a Zettelkasten-style academic workflow....
-
mbsync v1.3.2 breaking change: <code>SubFolders</code> config required
17 July 2020The mbsync 1.3.2 update silently requires a SubFolders setting. Here's the fix, plus a bonus mu4e prettifier....
-
ACMC2020: tools for organising a virtual conference
15 July 2020A detailed rundown of the tools we used to run ACMC2020 online---YouTube Premiere, Discord, EasyChair, and a lot of ffmpeg....
-
benswift.me dev roadmap for 2020
17 Nov 2019My plans for this website in 2020: Jekyll 4, maybe Eleventy, maybe Netlify, maybe Tailwind....
-
Making Altair/Vega-Lite charts readable without squinting
16 Oct 2019A simple trick for making Altair chart text and marks bigger: set a small width/height and export to SVG....
-
Package managers: <code>update</code> or <code>upgrade</code>?
16 Oct 2019A quiz (and a plea for consistency) on whether your package manager uses update or upgrade....
-
In-place XML tree mutation for Jekyll productivity
17 July 2019Profiling a slow Jekyll build, finding the culprit in Nokogiri node copying, and getting a 20x speedup by switching to in-place tree mutation....
-
Mapping over table rows in org-mode
9 Mar 2019How to apply elisp functions to org-mode table rows using named tables and code blocks, with practical caveats and a Pride and Prejudice example....
-
A dynamic Reimagine logo
21 Feb 2019An interactive, spinnable version of the ANU Reimagine logo, built with ClojureScript and Reagent....
-
Algorithmic uni marketing billboards
16 Feb 2019A generative 'verb your verb' billboard that picks random verbs and Unsplash backgrounds, built with reveal.js and later rewritten in ClojureScript....
-
Class discussions on Discourse
6 Feb 2019Switching from Piazza to self-hosted Discourse for a 200-student course forum, with practical notes on setup, tradeoffs, and what's missing....
-
highlight.js with xtlang support
17 Jan 2019Getting syntax highlighting for Extempore's xtlang working on this blog, told as an FAQ full of hacks and node build shenanigans....
-
The annual benswift.me re-write: 2019 edition
2 Jan 2019Another year, another website rewrite. This time it's hand-crafted HTML & CSS with modern grid layouts and the Inter UI typeface....
-
Another reveal.js plugin for Jekyll
28 Sept 2018A Jekyll plugin that turns a single markdown file into reveal.js slides, splitting on headings like pandoc does....
-
Hosting a self-built jekyll site on GH pages
22 June 2018A simple Makefile for building Jekyll locally with custom plugins and pushing the output to GitHub Pages....
-
COMP1720 teaser
10 July 2017Five reasons to take COMP1720, ANU's art-with-code course---now using p5.js in the browser, with more sound and music than ever....
-
benswift.me update (July 2017 edition)
6 July 2017Another redesign of benswift.me---this time aiming to be the home for livecoding, research, and making things with computers....
-
Blog refresh
1 Dec 2016Migrated to Cryogen and moved the Extempore docs to their own site. Some links are broken, bear with me....