I’ve been running a new remote development setup for the last month or so, and the goal is simple: move between all of my devices without losing my place. The way I think about it, I have three default states: At my desk on my Mac Studio Home or out somewhere with my laptop or an iPad and a portable keyboard Only my phone, at practice or running errands I wanted a setup that works across all three…
This week, I joined Will Vincent and Carlton Gibson on the Django Chat podcast for DjangoCon Europe Recap + Other News . You can also watch it on DjangoTV via YouTube . On this episode, we discussed DjangoCon Europe , which Carlton had attended. We caught up on what’s going on with Django News and the Django Software Foundation . We also spent a good chunk of time on AI workflows and…
This is my annual list of DjangoCon US talks I’d like to see. I have been doing this since 2015, and it’s one of my favorite traditions. DjangoCon US 2026 is in Chicago this year, August 24-28. The CFP is open. The deadline is March 23, 2026 at 11 AM CDT. Submit a talk! Past editions 2024 Edition 2023 Edition 2022 Edition 2018 Edition 2017 Edition 2016 Edition 2015 Edition Drew’s…
I first got exposed to django-simple-nav while working with Josh Thomas at the Westervelt Company over the last two or three years. It quickly became a go-to library in my toolkit. django-simple-nav lets you define nav items and groupings in Python, then hand them off to a Django template to render. I use it for sidebars, headers, dashboards, and other spots where I need a menu. Since then, I have…
If you use a Mac, you’ve probably noticed that the menu bar fills up with icons pretty quickly. Bartender and Ice (sadly, now an unfortunate name) are apps that let you manage and hide unwanted icons from your macOS menu bar so it stays clean and uncluttered. About a year ago, I switched from Bartender to Ice, which just happens to be open source, because there was some drama . Since then,…
Today I learned about displayplacer - “macOS command line utility to configure multi-display resolutions and arrangements.” In December, I upgraded to MacOS Tahoe and picked up the TS4 dock for my work machine. While my upgrade was painless, the biggest issue I’ve had is with my displays. Every time my displays go to sleep and then I come back from lunch or come back the next day…
My friend Trey Hunner showed me the GLM set of models before Thanksgiving. While traveling to see family, I somehow messed up my Claude Code setup because of a wrapper I have with mise-en-place . I couldn’t use it for a while, and that made me realize I really need a backup for Claude Code. Why GLM? Z.AI ’s GLM model is better than Gemini but not quite as good as Claude Code.…
I’ve been fighting a runaway OpenAI bill for the last few weeks. I was worried I was leaking one of my API keys in a non-obvious way, possibly in one of my public projects. Two weeks ago, I deleted all my keys and contacted OpenAI support. I created new keys for every project, making it easier to track usage and identify any leaks. I had already been doing this, but I was a bit lax on a few…
So, picture this: you’re working at a walking desk, you’ve got a cool voice-to-text tool like MacWhisper running, and you want to control it all with just a couple of dedicated keys. That was the dream that led me to build what I now call my “Vibe Coding Keyboard.” Why Voice Control in the First Place? Before I get into the keyboard itself, let me explain why I’ve…
I’m hosting office hours on the next two Fridays in November. Office Hours Schedule Friday, November 14, 2025, 2:30 pm to 4:30 pm CT Starting at 2pm CT, I’ll be working on some community/open source projects if anyone wants to see Claude Code or Claude Code on the web in action Friday, November 21, 2025, 2:30 pm to 4:30 pm CT 🦃 Friday, November 28th - No office hours due to US…
Here are my Default Apps 2025, which builds from my Default Apps 2024 and Default Apps 2023 posts. 🤖 AI Coding Assistant: Claude Code + GitHub Copilot CLI + Codex ⚙️ Automation: Hammerspoon 🎒 Backups: Backblaze 🔖 Bookmarks: Raindrop.io 🌐 Browser: Vivaldi 📆 Calendar: Apple Calendar 💬 Chat: Apple Messages (family & friends), Discord (friends), Slack (work and community work), Telegram (weird…
I checked out William Vincent’s The Secret Prompts in GitHub Copilot CLI tonight, and I wanted to share a few tips and what stood out to me. GitHub Copilot CLI uses Claude Sonnet 4.5 by default No luck other than confirming it is using Claude models by default. Apparently, you can change the underlying model, for example, to ChatGPT 5, by updating the environment variable COPILOT_MODEL=gpt-5…
I do not want Discord’s Nitro. I do not want it, friend or foe. I will not boost, I will not pay, I do not want it any day. I do not want it on my phone, I do not want it when I’m alone. I do not want it for more emoji, I do not want it—it feels too showy. I will not take it on a stream, I will not buy it for a meme. I do not want it, Sam-I-Post. Discord Nitro? Not even close. Written…
I will be in Chicago this Saturday through next week for DjangoCon US 2025 (September 8-12). I hope to see people there in person. If you can’t make it, please consider getting an online ticket . They are relatively inexpensive, you get three full days out of them, and they help support the conference. More importantly, it helps support future conference events so we can continue to offer…
I’m hosting office hours on the next two Fridays in August. Office Hours Schedule Friday, August 22, 2025, 2:30 pm to 4:30 pm CT Friday, August 29, 2025, 2:30 pm to 4:30 pm CT Join Us These sessions are open to anyone, especially those working remotely who wants to connect with others. It’s a collaborative space for discussions, catch-ups, or just hanging out while you work. While we…
Syncthing 2.0 was released last week, and I upgraded my Macs and my Intel NUC. I’m pleased with the performance. I never had complaints about it being slow, but the new app is much faster. I like that they’re using a SQLite database, which makes it easier to write hacks or tools to check the data. Upgrading wasn’t terrible. I used Homebrew to upgrade it, which seemed to work…
Today I came across Pieter Levels' post about “VibeOps,” a workflow that involves SSHing to a cheap VPS server and installing Claude Code directly on it. I’m running this setup on a cheap Hetzner box. While this approach might sound risky at first, when combined with a secure networking solution like Tailscale and properly configured as a Tailnet, it becomes both safe and worth…
Today, I fired up the Voices macOS app, which I occasionally use to convert blog posts or documentation text to audio files that I can take on the go. I usually use one of OpenAI’s Text to speech APIs, but today I noticed there was a new option called Kokoro, which is a local voice model. I was interested in the model and tried out a few voices. Two or three of them were amazing for a local…
I’ve been diving deep into AI-assisted development this summer, and I’ve collected some of the best articles I’ve found on the topic. This reading list focuses heavily on Claude Code and practical AI coding workflows, featuring insights from developers who are actively using these tools in their daily work. Whether you’re just getting started with AI coding assistants or…
I’m hosting a regular afternoon edition tomorrow (Friday, May 30) to wrap up the month of May. After that, I’ll be away on vacation, so I’m skipping the first two Fridays in June and the first Friday in July. Here’s the plan: Friday, June 6, 2025: No office hours (vacation) Friday, June 13, 2025: No office hours (vacation) Friday, June 20, 2025, 2:30 pm – 4:30 pm ( Time.is link for CT ) Friday,…
🤔 I struggle with most research papers, but the Vending-Bench: A Benchmark for Long-Term Coherence of Autonomous Agents was an easy read. The paper follows a fascinating study where researchers simulate various LLM models running a vending machine business over time. What caught my eye wasn’t just the research methodology. It was this post by @benjojo sharing screenshots of the increasingly…
Today I learned about pdftoppm , a simple CLI tool that can convert each page of a PDF into separate image files. My use case was to chop up a few big PDF reports to make OCR and data analysis easier, but scanning them a page at a time. Install I’m using Homebrew on macOS, but Poppler will also run on Linux and other operating systems. $ brew install poppler Quick Usage $ pdftoppm -png -rx…
I miss Visual Basic. I could build something meaningful with it in 15 to 30 minutes in a way that I have never seen anything since then, even come close to. “For example, I personally believe that Visual Basic did more for programming than Object-Oriented Languages did,” Torvalds wrote, “yet people laugh at VB and say it’s a bad language, and they’ve been talking…
This Friday, I’m hosting a morning edition of my office hours, and here is my schedule for the rest of May: Friday, May 9th, 2025, 8am to 10:30am - 🌄 Early edition ( Time.is link for CT ) Friday, May 16th, 2025: No office hours. I’ll be at PyCon US. Friday, May 23rd, 2025, 2:30pm to 4:30pm ( Time.is link for CT Friday, May 30th, 2025, 2:30pm to 4:30pm ( Time.is link for CT )…
I recently came across Simon Willison’s post about Matt Webb’s Apple Watch dictation setup on Interconnected . He records voice notes while running with the Whisper Memos app, then cleans up the transcript with Claude when he gets home. Matt Webb dictates notes into his Apple Watch while out running (using the new-to-me Whisper Memos app), then runs the transcript through Claude to…