State machines are wonderful tools
I love when my current problem can be solved with a state machine. They’re fun to design and implement, and I have high confidence about correctness. They tend to:
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 14,540 posts.
I love when my current problem can be solved with a state machine. They’re fun to design and implement, and I have high confidence about correctness. They tend to:
In this tutorial, I will teach you how to write your own virtual machine (VM) that can run assembly language programs, such as my friend’s 2048 or my Roguelike . If you know how to program, but would like to gain a deeper understanding of what is going on inside a computer and better understand how programming…
In association with the release of curl 8.4.0, we publish a security advisory and all the details for CVE-2023-38545. This problem is the worst security problem found in curl in a long time. We set it to severity HIGH. While the advisory contains all the necessary details. I figured I would use a few additional ……
If you’re managing a complex git codebase with multiple developers, then you may well be using a tool like GitHub or BitBucket to delve into the history and figure out branch and merge issues.
If you’re a JavaScript programmer who’s been intrigued by Rust’s hack without fear theme—making systems programming safe and fun—but you’ve been waiting for inspiration, I may have something for you! I’ve been working on Neon, a set of APIs and tools for making it super easy to write native Node modules in Rust.
Sorry, I have opinions again.
When Mac OS X first launched they did so without an existing poll function. They later added poll() in Mac OS X 10.3, but we quickly discovered that it was broken (it returned a non-zero value when asked to wait for nothing) so in the curl project we added a check in configure for that … Continue reading poll on mac…
Why you might not need Oh My Zsh for your Zsh configuration.
What language was used to write the very first programs for the very first stored-program computer?
In the last couple of months, I've been seeing the ú symbol on British receipts. Why? 1963 - ASCII In the beginning* was ASCII. A standard way for computers to exchange text. ASCII was originally designed with 7 bits - that means 128 possible symbols. That ought to be enough for everyone, right? Wrong! ASCII is the…
I still get excited about programming languages. But these days, it’s not so much because of what they let me do, but rather what they don’t let me do. Ultimately, what you can with a programming l...
Elixir is a hot and trendy topic nowadays. Of the newer languages that show up periodically on Hacker News, I found t...
Most of the funding of research efforts I've been involved in since ARPA-Parc have been with various profit making companies -- Atari, Apple, Disney, HP, SAP, Infosys, etc. And there have been various kinds of compromises involved. And some good work on smaller scales did get done. Others of my colleagues in the…
The bug lies in closed-source Google-proprietary code so it’s a bit hard to inspect, but after some patch-diffing I concluded that the root cause was due to this horrible bit of API ‘design’: https://issuetracker.google.com/issues/180526528 .
Docker has recently announced that Docker Desktop will soon require a subscription and, based on the size of your company, may require a paid subscription. (It remains free for personal use). There has been quite a bit of reaction to this news...
An introduction to back pressure in systems and why it matters.
Notes from my colleagues on AI-assisted software delivery
A programming blog written by Vaxry.
The blog post discusses dissatisfaction with GitHub Actions due to its limitations in managing complex workflows, especially in monorepo setups with certain features like pull request checks and workflow reusability. Several issues have been highlighted, along with alternatives for GitHub Actions.
This post was inspired by some controversy with Valve and their support for Linux, but the bulk of it comes from long-term observation. One of the biggest impacts with the viability of Linux on the desktop was Valve’s Proton, a… Continue reading →
I’ve been using Obsidian for all my writing lately, and it’s been a game changer. The local-first model means everything lives as plain text on my machine, and with the Minimal theme, the interface stays clean and distraction-free. My vault lives in iCloud (Dropbox or Google Drive work too), so notes sync seamlessly…
More precisely, we need to add the concept of package versions to the working vocabulary of both Go developers and our tools, so that they can all be precise when talking to each other about exactly which program should be built, run, or analyzed. The go command needs to be able to tell developers exactly which…
Before we get into Horcruxing, here's a quick prologue on online security hygiene. You can skip to the Horcruxing section if it seems redundant. 1. Longer…