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.
The Impact of Digital Authorship by
Like Ben, I also am able to type out faster than I can think. When writing, this turns into a back-and-forth: think for a minute -> quickly type out thoughts -> think again. I also generally context switch between drafting and editing when writing. I’m not entirely convinced that it’s unproductive to do so, but maybe it has to do with the type of writing we’re talking about. For me, when it comes to technical long-form writing, I like to outline via bullet points the concepts I want to hit, and then work towards crafting sentences that meet all those points.
Added: February 27, 2025
Post-Quantum Cryptography in February 2025 by
In my life, I hear smattering of quantum updates. I’m currently studying at a university with a quantum computer, and I’ve worked at IBM’s Thomas J. Watson Research center which houses plenty of quantum research.
As with any up and coming technology, there’s lots of hype and fear regarding it’s widespread use. Luckily, we’re geared as a society to solve technical problems ahead of us. This post, as well as Jan’s from last year, gives a concise overview on the state of quantum computers, the current standards for post-quantum cryptography, and the implementations that exist currently and their roadmaps. Check it out!
Added: February 26, 2025
Image manipulation with ImageMagick by
I use ImageMagick in my scripts for both compressing the images and extracting out the GPS info for my tracks page. What I didn’t know is that I used the version 6 of these commands which is over 10 years old! I’m now up to date for this decade. Check this post out for other cool things you can use ImageMagick for like making animated GIFs.
Added: February 18, 2025
The opinions shared in this piece still hold three years later. For the most part, cryptocurrencies today are too volatile to use as a means of exchange from day-to-day. Additionally, trust and ambiguity are useful features in our society that we should seek to keep and not eliminate. See his post for examples of these claims. The author states that winners in this space will address these issues while also enabling a modern way of handling money. Stablecoins I feel are a step in this direction. They address the volatility issue by pegging to an existing stable asset. They don’t, however, seek to address trust and ambiguity. Imagine the efficiencies we can unlock when we’re able to have trusted actors in the system.
Added: February 15, 2025
A Friendly Introduction to Container Queries by
After spending many years writing media queries, it’ll take me some time to adjust to the newer container queries. However, this approach definitely seems more intuitive. Consider defining styling rules based on the container’s size, rather than the entire viewport size.
Added: February 8, 2025
Building software for connection (#1: Local-First) by
“Concurrency is not needed to feel connected.” In this post, Seth brings up the original Animal Crossing. The game was a multi-player experience, even though you couldn’t play it at the same time as someone else. Instead, it focused on the concept of a “shared space”.
Traditionally for blogs, these shared spaces are comments and guestbooks. My blog in 2025 has webmention support, and I have to say that it brings me joy to see the network of mentions, replies, and likes across the Internet.
Added: February 8, 2025
Car trouble by
I have a similar experience to this piece. One day my car started making a cylic mettalic noise when I was driving. I took my car to the mechanic and it turned out that part of the underbody got bent out of place. The technician bent it back and I went on my merry way.
I agree that it’s easy to overcomplicate things. Especially when it comes to complex technologies like a car. Start simple first, and if needed, work your way into complication.
Added: February 8, 2025
I ❤ shortcuts #3: read a random blog post by
Script that whisks you away to some corner of the Internet. What more can you ask for?
Added: February 8, 2025
Smuggling arbitrary data through an emoji by
I heard of watermarking text and zero-width characters before, but this provides a deeper dive (with code!) on how you can hide data in Unicode.
Since this technique relies on variation selectors, you cannot hide a message in any arbitrary unicode character. However, it seems that it works for all the ASCII characters and many emojis. I’m not sure if I would trust hiding it in an emoji though, since new ones are added regularly.
Added: February 8, 2025
On not taking it personally by
Commonly, active software projects evolve with time and with the demands of their users. This is different than a lot of creative professions, where outside of preservation techniques, the work stays largely unmodified. Even so, it’s easy to feel an attachment to the coding work we’ve done, and become upset when it’s no longer needed. Joel provides a new perspective in this post. He reminds us that we’re paid to solve problems, and not for the lines of code we write.
Added: January 31, 2025
Can We Retain the Benefits of Transitive Dependencies Without Undermining Security by
As this post describes, the computer process is an excellent abstraction in which programs cannot affect each other. However, we don’t have similar mitigations within the process itself. As more and more of the code that runs an application comes not from the author themselves, but in their dependencies and their dependency’s dependencies; it becomes important for us to know how to prevent a rogue actor from stealing sensitive information. This post presents some potential solutions, and I look forward to seeing how this area progresses.
Added: January 29, 2025
How does your URL parser handle Unicode? by
Specifications exist for many popular data formats and algorithms, but it is up to the implementor to faithfully follow it. Unfortunately, this doesn’t always happen. This post explores the URL parsers that exist in the standard library of many popular programming languages.
Added: January 29, 2025
When I say databases, we normally think of SQL-powered systems such as Postgres/SQLite, or JSON-document based systems like MongoDB. But what if we say that a simple text log can be a database? This post starts from those humble beginnings, to GNU Recutils, to finally SQLite. Before this post, I haven’t heard of GNU Recutils. It allows for your data to be structured with mandatory fields and arbitrary constraints all while being text-based!
Added: January 29, 2025
Januartuary by
The first of an exciting series of seven posts. Within it, we get a peek at Zak’s life through a daily drawing. Even though it’s summer right now in New Zealand, I always find it crazy to think of seeing luscious green hills when it’s actively snowing where I live right now.
Added: January 29, 2025
Making a pub table -- with an old oak tabletop by
Solid looking table! Thanks for sharing the process of assembly and refinement.
Added: January 29, 2025
Many Different Ways to Have a Place on The Web by
A list showing from Bare Metal to Serverless of different ways to host something on the web. The fun part of this post is that he relates it to different living situations. I don’t know if I want to live off a locker though…
Added: January 29, 2025
Maximizing Communication, not Traffic by
As a reader of many blogs on the Internet, I imagine that I take inspriration and absorb the styles of others in my own writing. I haven’t really sat down and thought about the intentions others have when writing. However like Jeff, I’m also among the minority that doesn’t monetize their website. Therefore, the tactics that some writers use to captivate attention and increase the amount of time that a reader spends on their website doesn’t necessarily apply to me. It’s a great reminder to be mindful and think about the style of communication that I’m trying to cultivate on this website.
Added: January 29, 2025
Nobody Gets Fired for Picking JSON, but Maybe They Should? by
Wow. From a human-readable standpoint, I enjoyed working with JSON. However, when it comes to using it for inter-process communication, I always felt that it didn’t quite cut it. I mostly thought of this issue in terms of data efficiency, however, it turns out that the problem goes deeper than that. This post shows that since many details are left to the implementors, there are JSON (de)serializers out in the wild today that will result in data loss when parsing integers with more than 16 digits. Some credit cards have more than 16 digits.
Added: January 29, 2025
Planet Scale by
It’s common to measure success by what is quantifiable. For example, a blog post is succesful if it obtains 100 views. Often what ends up happening though, is that the goal posts move. Only 100 views? That’s failure territory, it needs at least 10000 to be successful. The Internet, as interconnected it is, enables this as it’s possible for millions of people to consume your work. Mark reminds us that we don’t need to live life this way. In fact, he notes that often we matter the most to those that are closest to us.
Added: January 29, 2025
Reverse engineering a car key fob signal (Part 1) by
Many years ago I attempted to decode my keyfob with a friend using GNURadio. We didn’t complete the project, so it’s great to see Sami here write about their experience. I recommend checking it out if you have any interest in RF technologies. The post covers many topics you need to graple such as hardware, modulation, encoding, and cryptographic codes.
Added: January 29, 2025
Well said. Even if your job doesn’t use the technology that you’re interested in, doesn’t mean you shouldn’t pursue it. Your career may end up transitioning beyond your current job, and pursuing your interests creates oppurtunities that may not exist otherwise.
Added: January 29, 2025
Unplugged by
Definitely relate to Chris on the greatness of the outdoors. I think as people who work all day with text on a computer, the outdoors stimulates our senses in a totally healthy way. Go enjoy a hike!
Added: January 29, 2025
If I am to embed comments on my website, I think I would do it in this exact way. I haven’t heard of the Remark42 commenting system before, but from the looks of it, the system checks all of my requirements as well. Unfortunately at this point, I’m not convinced to have comments on my blog. I really enjoy the emails that my readers send. Maybe some day…
Added: January 27, 2025
Putting a Dumb Weater Station on the Internet by
This is exactly the post that tickles my amateur radio spirit. I’ve been curious about the Industrial, Scientific, and Medical (ISM) bands for a while and setting up a weather station seems like a perfect use case! I’ll have to set up rtl_433 on my software-defined radio and see what transmissions are going on in my area. For all I know, someone has already set up a weather station for me :D
Added: January 27, 2025
SQLite: a simple database for smol projects by
Great list of tips and tricks on using SQLite. Including some I haven’t heard of before like VACUUM and EXPLAIN.
Added: January 27, 2025
Doing dumb stuff with docker and saving containers for offline installs by
A nice and simple technique for keeping docker images you care about around, given that you already have a Forejo instance running. I currently sync copies of GitHub repositories I care about, but I haven’t thought to do the same about docker images, linux system packages, etc. Worth thinking about in case there’s an Internet glitch someday, or one of our benevolent corporations decide they don’t want to provide free hosting anymore.
Added: January 26, 2025
I repaired my Steam Deck and it was fine, actually by
This is great news! I have a Steam Deck myself; while I don’t use it all the time, it’s reassuring to hear that Steam cares about repairability.
Added: January 26, 2025
My 18-Months Rule for Open-Source Contributions by
It makes a lot of sense to me to close PRs that’s been open for longer than 18 months. If the maintainer ended up wanting to merge the code, likely they will request changes from the author. At that point, the author of the change would have forgotten the context of the codebase and the reasons for their changes. However, I feel that bugs and issues are different. I feel that it’s still important for others to know whether a bug still exists in the software.
Added: January 26, 2025
Service Reliability Mathematics by
I haven’t before seen laid out exactly how much downtime each percentage uptime corresponds to for a given year. According to my monitoring service, my website in the last 6 months had 31 minutes of downtime. Extrapolating, this would put me around a 99.99% uptime – Not quite at the five-nines availability. The Wikipedia page on High Availability includes a large table of uptime percentages and how much downtime is permitted by year, quarter, month, week, and day. That and this blog post really gives you an appreciation on the amount of work it takes for our lives to run smoothly.
Added: January 26, 2025
What are the Rosettas of formal specification? by
Back in the day, my favorite program to write when learning a new programming language was estimating pi through a Monte Carlo simulation. Funny enough, I haven’t thought of a Rosetta for formal specification languages. Mainly, I end up following a tutorial to do something standard like common list operations. This is fun to think about, and the article shares some Rosettas for formalizing concurrent systems.
Added: January 26, 2025
21c/Q2 – new habits for a new quarter-century by
I love it when people think big. Instead of only trying to make it to the end of the week, to think about life in years or even quarter-centuries! I resonate with the vision to “check stuff less often”. I did this with checking investments myself; deleted the app from my phone. Unfortunately, however, another habit fills its place. I find it difficult to as Johnny said “embrace boredom.”
Do check out the rest of Johnny’s list though, and think about how you want to live your next quarter-century.
Added: January 25, 2025
Be aware of the Makefile effect by
There’s too many languages to learn as a developer, and this blog post highlights a byproduct of this. I admit to copy-pasting prior conceptions of Makefiles/CMake build scripts myself.
This is also why I’m extremly hesitant to fully learning new build languages. For example in GithHub actions and Ansible, I call out to external bash scripts that I write by hand. Another separate issue is that I have a slight aversion to introducing build-dependencies. If I determine that the package is performing a task that I can quickly write myself, I often will. That way I’m not trusting yet another software party that I feel I don’t need to.
Added: January 25, 2025
Great things about Rust that aren't just performance by
I agree with everything on this list. If you haven’t had a chance to program with Rust yet, I encourage you to give it a chance.
Added: January 11, 2025
There are many great year in review posts, but I had to highlight this one. Visually, it’s incredible. Check it out!
Added: January 5, 2025
An Unreasonable Amount of Time by
A beautiful story on how putting in time and effort into your craft yields magical results.
Added: January 5, 2025
Quirks, Caveats, and Gotchas In SQLite by
It’s not everyday you see a page listing all the quirks in your software. Some of these are no so much of quirks, but explicit design decisions. For example, not having a server-client architecture and not enforcing database column types.
Added: January 5, 2025
So you want to study Library and Information Science in Australia? by
Great advice for those looking to get into the field. Honestly, parts of this advice applies across industries as well. For example, it’s a good idea to gather a wide range of work experience and act professional.
Added: January 5, 2025
As a self-hoster myself, I really enjoyed reading a full post on how someone else’s infrastructure looks like. In fact, this makes me want to write of version of this myself. I currently have a smattering of posts that cover some of these topics. However, a comprehensive post would be awesome. Nudge me if you’re interested to motivate me to write it faster :)
Added: January 5, 2025
The Relationship Between Luck and Skill by
This post explores defining luck and skill in the context of games. I agree with most of the points and intuitions brought up in this blog post, except I don’t believe that “imperfect information” is a necessary component of luck.
For example, consider the heads-tails game. The player tosses a coin and with a 50% probability it will land heads, otherwise tails. The goal is to land as many heads as possible.
If the player tosses the coin 1000 times and each of them land heads, then I would consider the player incredibly lucky. This is regardless of the fact that the player has perfect information regarding the probabilities of each outcome.
Added: January 5, 2025
Underground conduits to garage and shed by
Given all that hard work, adding extra unused conduits is a great idea. Thanks for sharing photos of the progress!
Added: January 5, 2025
Such a cute demo! I appreciate how Evan walks us through how he made it. It’s a great fit for Taper magazine, and if you all know any other online magazines like this, I would love to know.
Added: December 27, 2024
Picking up volleyball in NYC with Goodrec and New York Urban by
Recently Clare signed us up for a Pickleball Beginner’s Clinic and my experience is very similar to what Phil describes in his post. Definitely try out pick-up games in your local area if they’re available.
Added: December 27, 2024
The Misunderstood Kelly Criterion by
This is the first time that I heard of the Kelly Criterion and this post does a great job summarizing what it is and its purpose. Insurance isn’t a win-lose scenario, and whether or not to take a bet should depend on your current wealth as the bet affects compounding in the long run. Give it a read!
Added: December 27, 2024
The list of games Josh played look really fun! I’ll have to check some of them out myself in the new year.
Added: December 25, 2024
I've Built My First Successful Side Project, and I Hate It by
A look into the realities of running a B2C side-business.
Added: December 22, 2024
Formally modeling dreidel, the sequel by
I don’t know much about dreidel, but I do know that I don’t want to play an equivalent of a dice rolling game for 6 hours. Great formal analysis, and I need to check out the PRISM probabilistic model checker myself sometime.
Added: December 19, 2024
Ultimate Guide to Hardening SSH by
Yes! Let’s all secure our SSH connections.
Added: December 17, 2024
Wait, I can manage DNS config without losing hair?? by
I would be more tempted to switch providers if LuaDNS supported GeoDNS. Currently I’ve been using DNSControl to help record the DNS records for all of my domains.
Added: December 13, 2024
Waiting helps pace players, imbue emotion, and enhance payoff. I need to figure out how to incorporate this magic into my blog posts.
Added: December 10, 2024
Playing With Certificate Transparency by
It’s crazy to see that on crt.sh all the SSL certificates assigned to my domain is listed. From this, I noticed that my first Let’s Encrypt certificate was issued back on January 20th 2016, which was before their official release!
Added: December 8, 2024
An introduction to thinking about risk by
Risk is not just one-dimensional. This post does a great job decomposing risk into likelihood and impact and discussing strategies for dealing with it.
Added: December 6, 2024
A great reminder that just building the technology isn’t enough, and that we should spend some time thinking about it’s user experience.
Added: December 6, 2024
Blog Writing for Developers by
A well written discussion on technical writing, the key dimensions to consider, as well as where a blog stands compared to other forms of writing.
Added: December 5, 2024
Planning the day on the CLI with tsort by
What a genius use case for topological sort! Next time I have a lot of personal tasks where some need to happen before others, I’ll give this a shot.
Added: December 5, 2024