Reading List

The most recent articles from a list of feeds I subscribe to.

Creating a Nix Workflow to Fuzz netconsd

Recently, when I’m having trouble sleeping, I look for software to fuzz test. Earlier this week, I thought back to Fady Othman’s post “Meta Bug Bounty — Fuzzing ’netconsd’ for fun and profit.” It’s a good tutorial about fuzzing code exhaustively. Like most fuzzing blog posts, I found the work a bit difficult to reproduce because it requires the reader to figure out how to replicate the author’s environment and toolchain.

Lessons from my First Exit

In April of this year, I sold TinyPilot, the bootstrapped hardware company I founded and ran for four years. I wrote a post in May that told the story of the sale, but I’d like to share more about the practical lessons I learned from the experience. In this post, I’m sharing what went well, what I want to improve in the future, and what surprised me about selling my business.

Takeaways from Charles Marohn's "Escaping the Housing Trap"

Last week, I stumbled upon a reddit post announcing that the author, Charles Marohn, was giving a free talk near my town the next morning. Marohn is the author of Strong Towns, one of my favorite books of the last few years. So, my wife and I attended the talk and enjoyed it. The talk is based on ideas from Marohn’s new book, Escaping the Housing Trap, which I haven’t read yet, so these notes are from memory.

An Unsuccessful Experiment with Nemotron

A few weeks ago, NVIDIA released Nemotron, a large language model that they derived from Meta’s Llama 3.1 70B. NVIDIA claimed at release that Nemotron outperformed GPT-4o and Claude 3.5 Sonnet on certain benchmarks. That was exciting news, as my experience with self-hostable AI models is that they trail commercial models by about a year in terms of accuracy and quality. I decided to test out Nemotron with a few simple coding tasks to see how it compared to commercial models like Claude 3.

Using Nix to Fuzz Test a PDF Parser (Part One)

Fuzz testing is a technique for automatically uncovering bugs in software. The problem is that it’s a pain to set up. Read any fuzz testing tutorial, and the first task is an hour of building tools from source and chasing down dependencies upon dependencies. I recently found that Nix eliminates a lot of the gruntwork from fuzz testing. I created a Nix configuration that kicks off a fuzz testing workflow with a single command.