MathJax.Hub.Config({ CommonHTML: { scale: 105 } }); table.xyz { table-layout: fixed; border-collapse: collapse; margin-left:auto; margin-right:auto; } table.xyz th, table.xyz td { border: 1px solid black; } table.blueTable { border: 1px solid #1C6EA4; background-color:...
Hey folks - my next will not be this Tuesday as I'll be presenting at API World (assuming American gets me there today) so I've pushed back the livestream till Thursday, November 7th. Usual time - 12PM CST. You can read more about the event here:https://cfe.dev/talkshows/codebreak-11072024/I'm going to be discussing Eleventy and building a basic...
It’s fascinating that there’s such a thing as the World Jigsaw Puzzle Championship. The winning team of the two-person thousand-piece puzzle round can assemble a Ravensburger puzzle in less than an hour—that’s about 3 -1/2 seconds per piece. It makes you wonder, how could you measure the hardness of a jigsaw puzzle? And what would […] The post...
Election week always unlocks a special pattern of unhinged “Midwest is a monolith” political commentary from otherwise reasonable East/West coast pundits.
I changed my website’s design. I'm using the previous design since September 30, 2022 (when I moved to Ghost from Cloudflare Pages). The previous design served me well for the past two years, but it was time for a change. Firstly, I wanted to create a
I’m excited to offer the next giveaway, 5 licenses ($19 value each) for Name Mangler. Name Mangler is a brilliant piece of software designed specifically for renaming batches of files. You can build rulesets to handle all kinds of “mangling,” applying prefixes and suffixes, sequences, using image data to create placeholders like width and date…...
Emacs 30 and Emacs 31: Emacs 30.0 pretest packages for Fedora (Reddit) Build Emacs 31 for Windows · GitHub (@ldbeth@mastodon.sdf.org) Upcoming events: 200ok: EmacsConf 2024: Join Us in Lucerne for a Celebration of Free Software! Emacs Paris: S: Emacs workshop in Paris (online) https://emacs-doctor.com/ Tue Nov 5 0830 America/Vancouver - 1030...
If you’re curious to know what my book is about and why it’s called “Waves in an Impossible Sea”, then watching this video is currently the quickest and most direct way to find out from me personally. It’s a public talk that I gave to a general audience at Harvard, part of the Harvard Bookstore […]
A number of years ago, my friend Klaas and I made a pact: instead of exchanging birthday gifts, we'd create memories together. You can find some of these adventures on my blog, like Snowdonia in 2019 or the Pemi Loop in 2023. This time our adventure led us to the misty Isle of Skye in Scotland. Each year, Klaas and I pick a new destination...
The use of the word “moment” in mathematics is related to its use in physics, as in moment arm or moment of inertia. For a non-negative integer n, the nth moment of a function f is the integral of xn over the function’s domain. Uniqueness If two continuous functions f and g have all the […] The post When do moments determine a function? first...
A 2003 Trip to Paris to Protest the War in Iraq Introduced Me to a Whole New World
We Got Family is a podcast I do with David Darnes about the Fast and Furious movies. In season one we did the first four movies, plus a bonus episode for Superfast!. It's been a while but we're back for season two starting with 2011's Fast Five. Listen on the website or you can subscribe via RSS, Apple Podcasts, Spotify, Overcast, Pocketcasts,...
Starting a little after the events of ‘In Her we trust’ (Denouement 2) this story, for the first time gives us a look at the adventure from other characters. This novella is split into five parts, each part a different...
Historians will write that the repubs overplayed their hand and woke up enough voters in time for a landslide victory for a new coalition, which includes the old pre-MAGA Repubs, which gives the new administration the power to get the Supreme Court back on track to protect the freedom of all Americans, including women. We […]
In the previous blog post, we saw how a transaction isolation strategy built on multi-version concurrency control (MVCC) does not implement the serializable isolation level. Instead, it implements a weaker isolation level called snapshot isolation. In this post, I’ll discuss how that MVCC model can be extended in order to achieve serializability,...
Important Announcement: I don’t in any way endorse voting for Jill Stein, or any other third-party candidate. But if you are a Green Party supporter who lives in a swing state, then please at least vote for Harris, and use SwapYourVote.org to arrange for two (!) people in safe states to vote for Jill Stein […]
That’s right, it’s another texture compression blog post! I’ll keep it short. By “solid-color block”, I mean a 4×4 block of pixels that all have the same color. ASTC has a dedicated encoding for these (“void-extent blocks”), BC7 does not. Therefore we have an 8-bit RGBA input color and want to figure out how to […]
This is a post I’m mostly writing for my future self, because I can never remember the actual term for the CSS feature that lets you define a color based on another color (it’s “CSS Relative Color”) and “color mix” which is what I keep wanting the feature to be called never turns up any results...
In a couple of days I will merge the next breaking sokol_gfx.h update (aka the “Bindings Cleanup”). The update also affects sokol-shdc, so if you’re using sokol-shdc for shader compilation make sure to update that as well. Overview Updated documentation and example code When using sokol-shdc: When not using...
I. The world is texting while driving and nobody seems to care. I don’t mean it literally (although that’s also true). It seems like everyone’s continuously living with half of their brain-power away on something else. Damn. Another “old man yelling at cloud” post. Fuck it. I have to write this. II. Recently, a very special group of friends of...
The main use case of resumable exceptions would be collecting a bunch of errors (instead of bailing out after the first one) to log or show to the user, or actually recovering and continuing from the point of error detection, rather than in a call site. Why not design the code to allow error recovery, instead of using a language feature? There...
Previously, we configured nginx to list directories and files in html. Now, let’s add authentication to restrict access to specific directories and files. Basic authentication The simplest web authentication method is basic authentication. It requires an Authorization header in each request. However, browsers don’t support setting a header on...
When pairing with my friend Emily, we had a choice of what to implement in her project: start a new feature, or add a command line argument parser? We opted for the latter, because it had to happen eventually and it was more well bounded. It ended up having a lot of depth! We wrote it from scratch to learn more, rather than pulling in a library1....
In the ever-evolving world of web development, the ability to manage complex data structures efficiently is vital. JSON (JavaScript Object Notation) has become a standard for data exchange due to its lightweight format and ease of use. If you’re working with PHP and MySQL, understanding how to store and retrieve JSON data can greatly enhance the...
Welcome to the future of corporate leadership. It's efficient, profitable, and utterly inhuman
Why the first day back can reveal everything about your engineering team's health
I recently got a Synology DS923+ for evaluation purposes which led me to setting up NFSv4 with Kerberos. I had done this about a year ago with FreeBSD as the host, and going through this process once again reminded me of how painful it is to secure an NFS connection. You see, Samba is much easier to set up, but because NFS is the native file...
After much reading and discussions of post-TAI (transformative AI) futures from those leading the AGI labs and startups of SF, there’s a few consistent disagreements I find myself having. While I generally agree with narrow-yet-strong capability predictions, for example that … Continue reading →
After much reading and discussions of post-TAI (transformative AI) futures from those leading the AGI labs and startups of SF, there’s a few consistent disagreements I find myself having. While I generally agree with narrow-yet-strong capability predictions, for example that … Continue reading →
It’s the weekend, and I have some Thoughts about federated social media. So, buckle up, I guess, it’s time to start some fights.
If only the day of my birth had fallen in November rather than October, my post of deep, existential despair easily could have doubled as my entry for this month’s IndieWeb Carnival on impact, hosted by Alexandra, for reasons I’d hope are evident at least in retrospect if not entirely obvious at the time. I’ve only ever contributed to a carnival...
The things. It has recently come to my attention that a lot of the stuff in my office has dust on it. This isn’t because I fail to clean my house (I mean, in part it is. Who ‘dusts’?) but...
Building technology in startups is all about having the right level of tech debt. If you have none, you’re probably going too slow and not prioritizing product-market fit and the important business stuff. If you get too much, everything grinds to a halt. Plus, tech debt is a “know it when you see it” kind of thing, and I know that my definition...
Today's Ask Me Anything question is "What's an important lesson you've learned about relationships?"
Annie has set a WeblogPoMo challenge for this month, Ask Me Anything: I'm calling this challenge WeblogPoMo AMA (Ask Me Anything). For this challenge I want to foster writer interaction: write a blog post starting with a question—the AMA—and then answer the question yourself in the blog post. There may have been some misunderstanding with how to...
This is the second book in the Denouement series Still reeling from the events of the first Denouement adventure, Jon and his unwilling group of friends slowly get pulled into a war for control of reality itself. Can the charming...
California Clock Change The clocks go back in California tonight and I finally built my dream application for helping me remember if I get an hour extra of sleep or not, using a Claude Artifact. Here's the transcript. This is one of my favorite examples yet of the kind of tiny low stakes utilities I'm building with Claude Artifacts because the...
Docling MIT licensed document extraction Python library from the Deep Search team at IBM, who released Docling v2 on October 16th. Here's the Docling Technical Report paper from August, which provides details of two custom models: a layout analysis model for figuring out the structure of the document (sections, figures, text, tables etc) and a...
I was sure my next post would be about the election—the sword of Damocles hanging over the United States and civilization as a whole. Instead, I have sad news, but also news that brings memories of warmth, humor, and complexity-theoretic insight. Steven Rudich—professor at Carnegie Mellon, central figure of theoretical computer science since the...
I’ve used URL text fragments in a few posts now and often use it outside of this blog to point someone to a particular piece of text on a page. They’re a really useful feature that allows you to create a URL that links not just to a page or an anchor on that page, but specifically to a bit of...
Don’t focus on being productive Currently, I’m surrounded by videos, posts, and content about productivity, and most times I come to the conclusion that people are productive. The problem is that they produce and focus on the “wrong” things, or rather on things different from expectations - what’s missing is alignment. You’re not unproductive -...
Two companies that I started following (with no small amount of envy) back in 2021: Hype (fka Pico) sold to an MMA-themed holdco earlier this year. Raised a $4.5m seed from Stripe and Bloomberg Beta and a $10m Series A; crossed the finish line at $200K ARR after eight years. Stir (which raised $16M from a16z at a $100M valuation) informally...
Two companies that I started following (with no small amount of envy) back in 2021: Hype (fka Pico) sold to an MMA-themed holdco earlier this year. Raised a $4.5m seed from Stripe and Bloomberg Beta and a $10m Series A; crossed the finish line at $200K ARR after eight years. Stir (which raised $16M from a16z at a $100M valuation) informally...
Choosing what to read isn't always easy. Alan Jacobs recommends reading for pleasure and indulging your Whim.
This is documentation for myself, but you may enjoy it too
Nestled within the annals of my notes is “The long view of blogs,” followed by my wondering whether a blog could be a magnum opus. I later coalesced these ideas into the “long view” of a blog. I imagine this as thinking about the blog not as any single post, but rather as the collection of all works over time; the contents and presentation When I...
Showing feedback is an essential part of user experience design. When a user takes an action, it should be clear to the user that the action has been recognised by the system and that, as a result, something is happening. If an action is instant, feedback may mean showing the results of the task or an indicator to say the task is complete. If an...
Earlier this year, a friend told me that an essential part of learning design is to take note of what you like and don’t like. Once you notice that you like and don’t like, you can ask yourself why. From there begins the potential to analyze and build an eye that you can use to make your own designs. —- The IndieWeb has a philosophy of...
Slack uses keyword search. I can type in a keyword, like “optimization”, and find words that match the keyword. I can also add filters that refine my query. For example, I can say “optimization from:@James” to say that I only want to see messages that contain “optimization” and were authored by the user @James. Search filters are one of my...
ClickHouse is a database that aims to provide “lightning fast analytics for everyone.” They have published several resources online about how they strive toward making ClickHouse as fast as possible, including Why is ClickHouse so fast? In one post, Testing the Performance of ClickHouse, they outline a “ClickHouse comparison tool” that lets...
In “Regular Expression Matching with a Trigram Index or How Google Code Search Worked”, Russ Cox describes a system that allows for code search with regular expressions. It has taken me several reads of the article to understand roughly what is going on, and I still don’t have a full understanding. With that said, there is one pattern that stands...
To avoid getting stung by Netlify's bandwidth charges, I moved this site to a Linux server running Caddy as my web server.
When dealing with vast amounts of data in PHP, the challenges are not just technical but strategic. Efficiently managing large datasets ensures that web applications remain fast, responsive, and user-friendly. In this guide, we’ll explore essential practices such as pagination, batch processing, and crafting efficient SQL queries. Why handling...
ML systems, production & scaling, execution & collaboration, building for users, conference etiquette.