Inspired by Jedda’s Postroll, here is an incomplete list of blog posts that I’ve read and enjoyed in the last 3 months. This list refreshes daily.
If you find any of these posts interesting, I suggest that you give them a follow!
A whole PeerTube instance dedicated to watching birds splash around in a little bird bath. What more can you want?
Chris, I gotta know how you set this all up. Do you have an automatic way of cropping the videos?
Added: August 3, 2025
Consumerism and my Relationship with Money by
The author here shares a range of thoughts regarding spending money. I’ll chip in my few cents as well.
Advertising, I feel, plays a huge role in convincing people to spend money. This topic is better suited for a longer blog post, but I’ll share some of my opinions.
I try to minimize the number of ads I see. I browse with an ad-blocker, don’t watch TV or the radio, pay for YouTube premium, and join the ad-free membership programs of most of the podcasts I listen to. That’s not to say that I never see ads, but I suspect that I see a lot less than the average American.
Every ad is trying to convince you to spend money. To buy the latest phone, gamble, or go on vacation. I’m not suggesting that spending money is inherently evil. I don’t believe that at all; economic activity is a sign of a healthy society.
We all don’t need to be spending our money on the same things.
Added: August 3, 2025
Covers as a way of learning music and code by
This post is a great reminder to those of us working professionally and it goes beyond programming. When we’re being taught a skill we rehearse the basics and practice an already existing concept (a cover).
However, after a point, some of us forget this and believe the way to level up is to solve new problems. That’s definitely not the only way and there’s tons of great resources out there on learning how to design programming languages, operating systems, build compilers, etc.
Added: August 3, 2025
Cryptography for the Everyday Developer: Confusion, Diffusion, and Substitution-Permutation Networks by
Cryptography is a really interesting and challenging field and it’s cool that Kevin started this series to help educate us on some of the basics.
Substitution-Permutation networks are a type of block cipher which generates fixed-length ciphertexts given a fixed-length plaintext. The most compelling visualization I’ve seen for why we need these complicated algorithms is the ECB-encrypted Tux Penguin.
As such, it’s not good enough to only perform a simple substitution. The networks described in this blog post talks about how an additional permutation stage helps.
Added: August 3, 2025
So how was the Camino?
I don’t personally know anyone who has walked the Camino, the Appalachian trail, or any other multi-week hiking experience. Matthew here provides a few lenses of how the experience went for him.
A long hike acts as a shared bonding experience between everyone involved, even when they haven’t met before. I find that the impressions of these shared experiences are deeper than meeting someone and relating over shared attributes. For example, as a PhD student, I relate to other PhD students. However, this doesn’t necessarily create an emotional connection.
Overall it seems that the experience was really valuable to Matthew. It reminds me of Jason Evangelho’s series on walking the Oregon trail.
Added: August 3, 2025
I agree with Anton’s take on API design. Another reason to design modules to be deep rather than shallow is that it help’s make the most common use case easier to find.
Added: August 3, 2025
Do You Even Personalize, Bro? by
Algorithmic feeds puts content consumption on easy mode. No need to be deliberate and choose what we want to watch, because the auto-play suggestion picked a video that we’re likely to enjoy.
However, I believe that a life well-lived is intentional. Am I spending my free time how I want to spend it? This does not mean that we need to reject algorithmic feeds altogether, but instead we should consider every so often if we’re living the life that we want to live.
Added: July 22, 2025
If we forget about an experience, was it worth it? Tim’s section on “Experience and memory” and Nathan’s comment gave me a new perspective on this question.
Honestly to me, if the experience is positive at the time and brings you happiness, then that’s the majority of the worth right there. It’s an additional gift to be able to look back and remember the emotions you felt at the time; the sights you saw, sounds you heard, and the scents you smelled.
Added: July 22, 2025
First off, doing the work of migrating your house to solar is super cool. It feels like we’re in some sci-fi movie when people talk about how they’re selling energy back into the grid.
I also use a free-standing hanging rack to dry my clothes in my apartment. While I appreciate the electricity savings, I mostly do it to take better care of my clothes. In the last few years I’ve accumulated more wool pieces which don’t like heat and prefer to lay flat.
Added: July 6, 2025
Touching grass (and shrubs, and flowers, and dog) by
There’s so much that goes into a good garden! Based on the planning Sophie did in this blog post, it seems like her’s is going to turn out awesome.
Added: July 5, 2025
Lessons learned from five years of running a family Minecraft server by
I’ve seen multiple bloggers start up family Minecraft servers and it always looks really fun! Bryan talks about the design decisions that went behind his: considering the difficulty of hosting, range of player types (kids/adults), and the plugins he uses.
This summer, I started playing around with Luanti, an open source voxel game engine. Specifically trying out the Asuna game. I’ve only spent 5 hours in it so far, but it’s a fun experience. I’ve learned over the years of playing similar games that I’m more interested in designing home bases and other creative activities than surviving and killing monsters.
Towards the end of the post, Bryan shares about the importance of backups. This has fled my mind! I now need to figure out how to incorporate this into my setup.
Added: June 29, 2025
This is a love letter to the 3DS hardware. Released around 14 years ago, I’m surprised that there are still many enthusiasts like Evan who use it frequently. It’s great to see that old hardware still gets love, and that there’s a whole community of homebrewers and emulators out there.
I didn’t own a 3DS as a kid, though I can see the appeal of a nice lightweight console in the present. The steam deck, while powerful, weights 1.41 pounds which is 3x the weight of a 3DS.
Added: June 29, 2025
Homomorphically Encrypting CRDTs by
Great introduction to Homomorphic encryption and how it can be applied to CRDTs for collaborative software. Unfortunately at this current state, it seems more efficient to send an encrypted copy of the entire program state than handle the key sizes necessary to propagate homomorphically encrypted changes.
Added: June 20, 2025
Language servers are highly useful with some spotting potential mistakes before you execute your code. It feels weird to program in an IDE without one. This post provides a high-level overview on how they work.
Added: June 20, 2025
There’s been a few blog posts like this one where people share cool applications they’re building for the TRMNL E-ink display. In this one, Benji essentially replicated one of those signs you see in a metro station!
Honestly, it looks great and I’m tempted to buy one for myself.
Added: June 20, 2025
Visualizing the Internet (2025) by
Insanely cool interactive visualization showing the undersea cables to create what we call the Internet. It even has data going all the way back to 1989!
Added: June 20, 2025
I don’t quite recall what superpower I wanted as a kid, but Jason’s wish to slow down time is cool! Even if other people and object’s don’t live in the same relative time, we can still use this power to get our full night’s sleep in less than a second :)
Added: June 15, 2025
Minimal CSS-only blurry image placeholders by
Very cool blog post on how to downsample an image down to 20 bits for use within CSS! A great alternative to the JavaScript based BlurHash.
Added: June 13, 2025
Never to connect phone numbers: A project by
If you live in Austrailia, United Kingdom, or North America, Gregory shows us that there is a batch of phone numbers that will never be assigned to anybody. It’s good to have at least one memorized in case someone is pestering you for a number and you don’t want to give it to them.
Added: June 12, 2025
the algebra of dependent types by
The notation for dependent type theory is initially confusing. Tony does a great job here showing how it’s more intuitive when you view it from the perspective of the number of inhabitants of a given type.
Added: June 2, 2025
Exploring the new Bluesky verification system by
The first iteration of user verification on Bluesky required users to verify by domain name. While this makes sense for major organizations who have an established web precense, it made less sense for the average person. Also, like Gavin describes in this post, it allowed malicious actors to pretend they’re another person by registering a domain name that is similar.
The lateset attempt at user verification on Bluesky, attempts to distribute verification authority to “trusted verifiers”. Gavin wrote a cool tool which he links in the post that shows all the users a trusted verifier has verified.
Though I wonder, when one organization like The Wired verifies an account. What measures did they perform to verify one’s identity? Does another organization like the New York Times take those same measures? I’m curious to see how this all plays out.
Added: May 27, 2025
Use semaphores to limit processing by
I’ve heard of semaphores before, but I don’t recall hearing of its weighted variant. Given a finite resource, this technique seems like a great idea to ensure that the resource isn’t oversubscribed. Particularly, I like the idea that Gabriel describes in this post of using weighted semaphores to limit the memory usage of a process within a data processing pipeline.
Added: May 27, 2025
You probably don't need a DI framework by
While an opinionated piece concerning dependency injection (DI) frameworks, this post does a great job at explaining what DI is, how it’s beneficial for testing, and techniques to go about using that technique.
Added: May 27, 2025
Evolution of Rust compiler errors by
Sweet interactive blog post showing the evolution of Rust compiler errors. It’s clear that a lot of time and attention has been put into making these errors useful for developers.
Added: May 22, 2025
Standard Libraries and their Discontents by
This post talks about the benefits and downsides to standard libraries within programming languages. One that I didn’t consider, but makes total sense, is how data types in a standard library (like Date
) often becomes a common interface for external packages.
Added: May 22, 2025
You Can Choose Tools That Make You Happy by
In this post, Fernando talks about how we don’t have to rationalize all of our decisions. If we do, at times that leads us to lie to ourselves and to others. He gives examples of people using specific technologies like Emacs or SNOBOL.
I agree, and let me rationalize on why. Competition is good. If we all decided to only use C/C++, then C++ wouldn’t have ever adopted features from functional programming. We need people who decide to use different technologies even at this specific point of time it isn’t “rational” to do so.
Added: May 22, 2025
Hiking The Oregon Coast Trail, Day 5: High Tide & Sneaker Waves by
This is a fun blog post series following Jason along his journey hiking the Oregon Coast Trail. I’ve never been to Oregon or Washington state and I really want to some day. It’s beautiful out there.
Also while nature is absolutely stunning, this specific post outlines why we should be prepared as well.
Added: May 10, 2025
Lying to your Research Subjects, and other avoidable ethical pitfalls by
It’s crazy how some researchers delude themselves into thinking that the ends justify the means. Just because a research question is genuinely interesting, does not grant someone permission to disrespect people, cause harm, or do other shady practices to get the results they seek.
This post goes into two recent high-profile examples where researchers have gone wrong. One involving the subreddit r/ChangeMyView
and the other involving Linux kernel development. Hendrik also discusses ethical principles researchers should keep in mind. A lot of this boils down to empathy. Here’s a small list of questions from his post to help exercise it:
What would I think if I were a research subject in my own study?
Would you be fine with defending your research in front of your own subjects?
Would you be fine with having to defend it in court?
Added: May 10, 2025