Understanding how AES encryption works
Deepen your understanding of AES implementation using golang.
Topics /
The most popular blog posts about software engineering on Hacker News. 14,543 posts.
Deepen your understanding of AES implementation using golang.
While calculating certain round-trip times, here is a number I came across that is surprisingly memorable: It takes light 0.1337 seconds to travel the length of the Earth's equator via vacuum or air. Let me repeat that. It takes light "zero point leet" seconds to travel once around the equator.
A language server for Standard ML.
Amiga C Tutorial
Here is my (extended) family tree: Everyone in the tree shares at least one common ancestor and at least one common descendant. This ...
Model minimalistically Start from a tiny core, and always keep a working model as you extend. Your default should be omission. Add a compone...
In a previous article, I introduced what is new in SQL:2023. Now I want to show the status of SQL:2023 support in PostgreSQL. See the previous article for details on these features.
I often need to launch a program in the terminal in a retry loop. Maybe because it's flaky, or because it tries to contact a remote service that is not available. A few scenarios:
If you type “WAIT6502,1″ into a Commodore PET with BASIC V2 (1979), it will show the string “MICROSOFT!” at the top left corner of the screen. Legend has it Bill Gates himself inserted this easter egg “after he had had an argument with Commodore founder Jack Tramiel”, “just in case Commodore ever…
A few weeks ago CSS variables—more accurately known as CSS Custom Properties—shipped in Chrome Canary behind the Experimental Web Platform Features flag.[1] When Chrome engineer Addy Osmani first tweeted about the release, he was met with a surprising amount of negativity, hostility, and skepticism. At least, it was…
We build complex mathematical formulas bottom-up using pure lambda calculus. Includes instructions of how to translate Taylor series and other approximations to lambda terms.
A radically different web server architecture that turned my twenty years of experience in building websites upside down
I love Doom. Or, well, I love Doom 2, which is the game we actually had when I was nostalgia years old. I love the aesthetic — pixely in a 3D(ish) environment, and consistent in a way that meshes together really well. The classic levels are abstract (occasionally too abstract), but still detailed enough to feel like…
Almost immediately after we bought our house I received a letter in the mail. The local school district was appealing the tax assessment of my house. The issue in question was the value of my property in 2002 (don’t ask, it’s a long story, and a silly law). My property tax is some percentage of the 2002 value of my…
An exploration of NFL play-by-play statistics with Bokeh and Pandas.
This week's post will cover a command line tool that helps you play the video game Stardew Valley .
This is one post in a series about programming models and languages for distributed computing that I’m writing as part of my history of distributed programming techniques.Relevant ReadingTrill: A h...
TL;DR: Don’t base your FPS calculations on a specific number of frames. Instead, maintain a rolling window of frames that happened during the last second. Use precise timers. Read on for more details.
tl;dr: With the Netpbm file formats, it’s trivial to output pixels using nothing but text based IO
I’ve been working on speeding up AVX-512 vertex decoding in meshoptimizer recently; in the process I stumbled upon two optimizations that I did not end up using but I thought they might be fun to write about! The optimizations that actually made it in require some higher level background / explanations that will have…
If you read a description of a static analysis in a paper, what might you find? There’ll be some cute model of a language. Maybe some inference rules describing the analysis itself, but those rules probably rely on a variety of helper functions. These days, the analysis likely involves some logical reasoning: about…
This post started out as a long-form response to this tweet by Raj Kunkolienkar:
errno(2) values for the AI age
There has been a lot of discussion lately about Rust’s allocator story, and in particular our relationship to jemalloc. I’ve been trying to catch up, and I wanted to try and summarize my understanding and explain for others what is going on. I am trying to be as factually precise in this post as possible. If you see a…