Posts

  • Easy PostgreSQL testing with pgTAP and Nix

    This article explains one way to get from zero to a psql shell inside a local PostgreSQL instance with pgTAP enabled. It’s based on the Nix shell template article.

  • Nix shell template

    Nix shells are the best tool for creating software development environments right now. This article provides a template to get you started with Nix shells from scratch, and explains how to add common features.

  • Convert date/time from machine-readable to human-readable

    Enter a date/time string below to get the human-readable local time instantly.

  • On brevity

    There was a young joker, a git,
    Who thought himself quite the wit,
    But he wasn’t funny,
    His jokes were runny,
    Like “Conciseness, rather than prolixity, is the very being, the very body, the very soul, of wit!”

  • YouTube channel web feed bookmarklet

    tl;dr Drag →→→ YouTube channel feed ←←← to your bookmarks to get to the web feed of the current channel.

  • Reproducible Jupyter Notebook with Nix

    So you have a Jupyter Notebook with pyproject.toml and poetry.lock files, and you want to productionise it? You’ll just need a Linux or macOS machine. This is the magic sauce:

  • systemd services & timers in NixOS

    systemd services and timers are a game changer if you’re used to cron jobs. This looks at a couple of simple real-life examples to show off the advantages.

  • Elden Ring Linux performance settings

    tl;dr Just set everything to max performance in CoreCtrl and you’re good to go.

  • Bash lints beyond ShellCheck

    ShellCheck is great, but it can’t catch everything. This is a collection of lints which I believe ShellCheck doesn’t currently detect.

  • Faux idempotency

    Writing idempotent code is great. It should always result in the same final state, so it’s easy to test. And a failed run shouldn’t affect the next one, making it reliable and safe. But as you’ve noticed I used “should” in both places, because code which looks idempotent may not be.