21 Jan 2026
I got asked a good question today: what is the difference between Tree-sitter and a language server? I don’t understand how either of these tools work in depth, so I’m just going to explain from an observable, pragmatic point of view.
...
9 Jan 2026
I guess I’m a runner now.
I never liked running. I did swim team in high school and that was pretty much the only sport I enjoyed. During the pandemic I started running a little bit, but I didn’t know very much and when I moved to Salt Lake City to start my PhD I pretty much stopped running entirely because everywhere was so hilly.
Last year I moved again and I saw that I had a nice, flat route I could take for running if I wanted to. I got some better shoes and started following the Couch to 5k training plan. I thought the first weeks would be too easy. I was wrong: every week turned out to be perfectly tuned to what I needed. I finished the training plan and just tried to get out on a run 2–3 times a week.
...
20 Nov 2025
I started using Typst about a month ago to write my dissertation proposal. I had seen Typst before and decided to keep an eye on it as it matured. While it still is very much in development, it is mature enough that I was able to rewrite my dissertation proposal from an org-mode → LaTeX pipeline to pure Typst in about an hour with no major hiccups. In fact, most things got simpler as a consequence of using Typst.
...
18 Nov 2025
The past few weeks have seen major AWS, Azure, and Cloudflare outages. I predict Google Cloud will have a major outage sometime soon as well. Each time one of these massive systems goes down, it takes a sizable chunk of the internet with it. This is troubling: the internet should be more robust against partial outages.
...
3 Oct 2025
I got asked how I manage papers, notes, and citations for doing research. I started writing out a very long Slack message, but it quickly passed the threshold where I ought to just turn it into a blog post.
The short of it: I’m an incorrigible Emacs user, so I do a lot through my editor of choice on my laptop. That said, Zotero is a fabulous piece of technology, and I rely on it heavily to get my work done.
...
21 Aug 2025
There are few sounds as satisfying to me as a lock popping open, especially when it’s a well-machined lock that makes a nice, crisp “chink!” sound as the shackle releases.
This post is some suggestions I gave to a friend of mine who wanted to get started in lock picking. Please consult your local laws to know the ins and outs around the hobby. Nothing here is legal advice. Also, while I do link to a few product pages, I never have and never will take commissions for material on this blog. I am recommending these tools because I like them, and not for any financial gain.
...
4 Aug 2025
There’s something icky about LLM-generated text when you think it’s written by a human. I think I finally put my finger on one reason why I feel this way.
...
15 Jul 2025
I just released version 1.5.0 of Emacs Bedrock—a super minimal starter kit for Emacs. This is a minor change: I’ve fixed a few bugs and added a package or two to some of the optional config files under extras/.
...
11 Jul 2025
The key principle I follow is this: how I take my notes will evolve over time. I do not stick to any system too dogmatically.
That said, I’ve settled on a system that’s been fairly robust and stable for the past few years. I have tweaked it here and there to make it easier for me to find what I need.
...
24 Jun 2025
Many developers seem to have a fanatic obsession with monospace fonts and using them to make their blogs look “cool”. I won’t call out anyone’s blog specifically, but you don’t have to look to hard to find some. As an example theme using a monospace font by default, look at hugo-theme-terminal, which has over 2,400 stars on GitHub. If you have a blog or are thinking about starting one, and you are writing mostly prose (you probably are), I have one suggestion for you about fonts:
Do not use monospace fonts for prose.
...