Friday, Apr 25, 2025
Figure 1: Blasting off from planet Racket to other planets. Thanks ChatGPT.
It’s been almost two years since I took a public step away from the Racket diaspora. I’m writing this post to air out how my Racket projects have gone since then. I believe, as of now, I have zero Racket codebases to maintain — hooray!
I want to show how to handle old codebases. Let’s reaffirm the importance of handing off inactive projects instead of holding on to them.
Continue reading…
Saturday, Apr 19, 2025
The sky above the port was the color of television, turned to a dead channel.
— Opening paragraph from William Gibson’s Neuromancer.
So I thought to myself, why not write a screensaver for Emacs? Enter snowcrash.el. It’s not on MELPA or anything, but it does live on GitHub within my Emacs configuration repository.
M-x snowcrash RET looks like this:
It’s fun to look at or leave running as a screensaver!
Continue reading…
Friday, Apr 11, 2025
Figure 1: sudo plus emacs
Emacs offers TRAMP as a way to edit files over ssh or as a different user. Combine with sudo-edit for easy superuser edits. VSCode has a feature reminiscent of TRAMP called Remote Development using SSH.
At the time, I didn’t know of M-x sudo-edit so I wrote my own implementation. It sucked, didn’t work on chained TRAMP connections (e.g. ssh then edit as root on the remote host).
Continue reading…
Tuesday, Feb 18, 2025
Figure 1: Biked & camped 100 miles (160 km) from Milwaukee to Manitowoc in 36 hours
It’s been a tumultuous year. It took a multitude of drafts to complete this short piece. I felt demoralized when authoring this post. Then I reviewed my 2023 in review post and it put my frustration in perspective: Life is pain and joy. It’s an undulation of anguish one day, blissful peace the next.
Continue reading…
Tuesday, Jan 7, 2025
All the browser userscripts that I’ve been using were scattered across a multitude of pastebin links and git repositories. It became a bit of effort to track them down to re-install in Greasemonkey (Firefox) or Tampermonkey (Chrome) with the time expended searching exceeding the time saved using my extensions. No beuno.
Enter Browser Bits: a curation of userscripts. (See awesome-userscripts to learn more!) Ultimately, the repository will contain Stylus stylesheet overrides and related hodgepodge.
Continue reading…
Monday, Dec 9, 2024
Every December since 2015, Advent of Code publishes a Christmas Advent calendar loaded to the brim with challenging programming quibbles and trials. Advent of code can be solved in any programming environment, from Microsoft Excel to Rust, if you can write it, you can use it. In fact, my 2020 Advent of Code “challenge” (or “theme”) was a different language every day. Nope, I didn’t finish all 25 problems, though it was a heck of a lot of fun to practice Forth, various assembly languages, code golfing languages like CJam, various Lisps, Standard ML, even a real weird language called ZKL with a .
Continue reading…
Sunday, Sep 8, 2024
Previously I introduced the reader to ShellCheck. In this post I detail how I use Flycheck in Emacs and offer an Emacs function to automatically suppress Shellcheck errors at the current line.
I’m an avid Emacs user and it follows that I’ve set up editor customization to exude the most from ShellCheck. If you, dear reader, are not an Emacs user, I cannot help you! Please, for the love of shell scripts, ensure ShellCheck works within your preferred text editor, lest you wish to ship edgecased buggy scripts!
Continue reading…