A vector graphics workstation from the 70s
A bit of history and a repair of a Tektronix 4051 graphical computer from 1975. What was this computer's place in history, what was it used for and what parts exploded when turning it on.
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 49,240 posts.
A bit of history and a repair of a Tektronix 4051 graphical computer from 1975. What was this computer's place in history, what was it used for and what parts exploded when turning it on.
I’ve been building out a small suite of command-line tools for working with ChatGPT, GPT-4 and potentially other language models in the future. The three tools I’ve built so far …
The history of Kid Pix by Craig Hickman
Yesterday I was base64-encoding an image so I could send it to CouchDB to test some code I’m working on for a client. It reminded me of something I did a while back to set cookies on a remote server.
A first attempt at identifying and cataloging DeepSeek's glitched tokens
Interruptions, recovery time, and task size: three numbers that determine if you'll get real work done. Interactive visualizations show the math behind bad days.
Hello! If you already know about the RoCA vulnerability, and you know what I did about it (or you don’t care), then feel free to skip down to the good stuff! Signs of Trouble Monday morning,…
Three years ago, a survey team identified a staggering 569,148 time-based media objects on the Bloomington campus of Indiana University—that’s over half a million sound recordings, video recordings…
Search Engine For Source Code. Find websites using technology, HTML, Javascript, CSS Tags.
Around 2006, my friend Dan Christensen created a fascinating picture of all the roots of all polynomials of degree ≤ 5 with integer coefficients ranging from -4 to 4:
The new Mayor of the city of Rome, Ignazio Marino, just announced his intention to destroy one of the city’s central roads, the Via dei Fori Imperiali, and turn the area around the old Roman Forum into the world’s largest archaeological park. Reactions have ranged from commuters’ groans to declarations from…
As of late I'm noticing a trend: I'm spending more time having in-person in-depth conversations, and less time coding. While I regret the la...
With some partial evaluation and specialization hints, it is possible to get pretty decent speedups on interpreters by turning them into compilers.
My goal was to come up with a system for reading a book. I eventually identified that as the wrong goal, but came up with a pretty great system for doing the much better goal of “how do I answer a …
In the previous post, I mentioned that buildcache has some unique properties compared to ccache and sccache. One of them is its Lua plugin system, which lets you write custom wrappers for programs that aren’t compilers in the traditional sense. With Bug 2027655 now merged, we can use this to cache Firefox’s WebIDL…
Lately, there has been a lot of experimentation with very short programs that synthesize something that sounds like music. I now want to sha...
The IBM System/360 was a groundbreaking family of mainframe computers announced on April 7, 1964. Designing the System/360 was an extremely...
A friend was asking about the early Street View timeline, which prompted a trip down memory lane. It's been at least five years for most of...
Looking at Taylor series as streams of real numbers, solving differential equations becomes as easy as writing them.
In the past two months or so, I spent some time making tiny GLSL demos. I wrote an article about the first one, Red Alp . There, I went into details about the whole process, so I recommend to check it out first if you're not familiar with the field.
tl;dr: part 1 explains what an explanation algorithm is, and part 2 describes an open source SQL data differ.
Ten years ago (around the year 2001) I wrote a simple x86 protected-mode OS just to find out how operating systems work. That was really gr...
How to build a constraint programming solver in Julia. Part 1: Solving Sudoku using backtracking
This article is about using Fortune’s Algorithm to generate Voronoi Diagrams in O(nlogn) time. If I’d known how hard it would be I wouldn’t have started it. If you are intending to implement it with the intent to actually use it, rather than as an exercise, I would recommend not using Fortune’s. Unless you are doing a…
Announcing Geomys, a small firm of professional maintainers with a portfolio of critical Go projects.