Marcus Buffett
Archives
Search
Subscribe
A Made-up Name is Better Than No Name
November 30, 2024
In working on Chessbook recently, I often found myself referring to (position, move) pairs. Specifically positions that are stored as EPDs, and moves that...
Creating an optimized keyboard layout for the next generation of the Datahand
October 30, 2024
Ever seen this keyboard? This was called the Datahand, it was a radical new approach to keyboards that mostly only existed within a small community of RSI...
The 2030 Rust Update
August 28, 2024
Welcome to the end-of-year update for the Rust language. 2030 has been a huge year for us, with some huge wins but also a couple setbacks. We’d like to...
A Bunch of Programming Advice I'd Give To Myself 15 Years Ago
June 29, 2024
I finally have the feeling that I’m a decent programmer, so I thought it would be fun to write some advice with the idea of “what would have gotten me to...
Abstractions Are The Best, Abstractions Are The Worst
June 15, 2024
Abstractions are the best Your code will be safer and more readable. It will prevent entire classes of bugs. It will be easier to add new features. You can...
Managing My Motivation, as a Solo Dev
June 5, 2024
One of the biggest sticking points of being a solo dev is maintaining motivation. I’ve been keeping a journal entry about how to hack my motivation, what...
Processing 6 Billion Chess Games in Less Than 2 Hours
March 27, 2024
Background I run a chess site, https://chessbook.com. We ingest a ton of games, nearly 6 billion, to power our various statistics. Our current database has...
Compressing Chess Moves Even Further, To 3.7 Bits Per Move
March 14, 2024
I wrote a post yesterday about how to compress chess moves. I was pretty happy with my hand-rolled compression scheme, which achieved a per-move size of 9.5...
Compressing Chess Moves for Fun and Profit
March 13, 2024
UPDATE: I’ve written a new post with a new technique which is about 2.5x more efficient than this approach Chess notation has come a long way since...
How useless is memorizing openings, as an amateur Lichess player?
January 27, 2022
I recently downloaded Lichess’ database of all December ‘21 games. After using it to generate puzzles for my chess training site, I realized I could also use...
Generating Chess Puzzles Fast with Rust and Stockfish
January 15, 2022
Generally, chess puzzles will present you with a position and ask you to find the best move. There’s only one, and all other moves are losing. These are...
Book Review 2021
January 4, 2022
The annual book review, 2021 edition. Ratings are solely about how much I enjoyed the book. I’m not reviewing these books like a critic, if the book has a...
Scattered Thoughts on Why I Waste My Own Time
November 10, 2021
I spend way too much time on reddit, hacker news, twitter, feedly, coinbase, robinhood, email, etc. I’d like to spend time on things that are more meaningful...
Thoughts on chess improvement, after gaining 600 points in 6 months (1200-1800)
October 6, 2021
I played chess briefly with my friends in high school, where I had a rating of around 1100 online. I gave up the game for about 10 years, then picked it back...
An Incomplete Explanation of the Proc Macro That Saved Me 4000 Lines of Rust
May 4, 2021
Recently I’ve been working on a project to surface census data via a GraphQL API, mostly as a way to learn GraphQL. I did end up learning GraphQL, but I also...
How Much of the Hitchhiker's Guide to the Galaxy Can You Fit on a QR Code?
March 28, 2021
I’ve been dealing with QR codes recently, as one of my side projects generates them, and I got curious about how much data you can really fit in a QR code....
Unironically Using Kubernetes for my Personal Blog
March 17, 2021
There’s no shortage of posts like “Let’s use Kubernetes!” Now you have 8 problems, or Do I Really Need Kubernetes?, which tend to argue that unless you’re...
My Experience Switching to Gatsby, from Next.js
December 2, 2020
Just some quick thoughts on Gatsby and Next.js, after trying both for a project I worked on recently (this one). I’ve been a Next.js user for about a year,...
CRUD with Rocket and Sled
October 22, 2020
In my last project I used Sled and Rocket. I had to piece together how to use the two from a few different places so I put together this quick guide in case...
Creating a Snake Clone in Rust, with Bevy
October 15, 2020
Bevy has seen rapid adoption recently, but the learning resources are still fairly scarce. This is an attempt to provide a next step after the Bevy book. The...
Older archives