Top posts
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 49,215 posts.
Type-safe HTML templating in Zig
I’ve done a lot of web development over the years. I started around the year 2000, just after PHP 3.0 was released and started taking over the web world. I’ve used all kinds of approaches for generating HTML: raw PHP, string concatenation in Python, Smarty templates in PHP, Template Toolkit in Perl, and Jinja/Django…
Serving a website on a Raspberry Pi Zero running in RAM
My micro site, zero.btxx.org , is being served to the public internet from a Raspberry Pi Zero v1.3 running Alpine Linux.
The Registers of Rust
It’s been nearly two and half years since I was an active contributor to the Rust project. There are some releases that I’ve been very excited about since then, and I’m heartened by Niko’s recent blog post emphasizing stability and polish over grand new projects. But I’ve also felt a certain apprehension at a lot of…
Building an Intelligent Emacs
This post introduces the combination of Emacs and LSP, and how you can make your own editor “smarter” by using the same idea of communications between an editor client and multiple language servers. Edit: Thank you for the support, this blog post got featured on the front page of Hacker News (YCombinator).
A Critical Problem (2017)
Apparently the management at Los Alamos doesn’t know what criticality safety is.
Panera Bread did nothing about its customer data vulnerability for eight months
tl;dr: In August 2017, I reported a vulnerability to Panera Bread that allowed the full name, home address, email address, food/dietary…
Tested: How Many Times Can a DVD±RW Be Rewritten? Methodology and Results
Now that we’ve covered the contenders for this test, I will cover how this test will be performed and go through the results. It was a long time for me, but for you, it’ll just be a few…
Discovery Coding
Discovery coding is a practice of understanding a problem by writing code first, rather than attempting to do some design process or thinking beforehand.
Fantasy meets reality
One of my favorite things to notice as a weirdo is when the good intentions of design slam into the hard reality of humans and the real world. It’s always interesting. Let’s start with …
On the Usability of Codecademy
Programming Zen is a blog about programming and emerging technologies, authored by Antonio Cangiano, a Software Development Manager and AI Evangelist at IBM.
Every Version of Voxel Quest
I've been told I'm good at hiding bodies... pic.twitter.com/ZZBHOvzOKt
The Myst Graph: A New Perspective on Myst
Upon reflection, Myst has long been more analogous to a graph than a traditional linear game, owing to the relative freedom it affords players. This is…
A SoundCloud client in React and Redux
Build a React + Redux SoundCloud Client. It is a huge tutorial where you build an example real world application. Learn React JS and Redux along the way. Consume the SoundCloud API, login and interact...
Authorization in a Microservices World
Authorization? How hard can it be? I am pretty sure that others have already solved it. We are not the first ones doing microservices. It should be easy to integrate what's already out there.
Winning a hackathon, losing my sanity
A few weeks ago, my friend Ben and I won JumboHack , a hackathon at Tufts University. Our entry generates a Spotify Wrapped-like summary of students’ dining habits by scraping Tufts’ meal plan portal. Through some clever promotion on Ben’s part, we managed to get hundreds of students to use it in just a couple of…
Dad and the Egg Controller
Hello! I'm Tom. I'm a game designer, writer, and programmer on Gunpoint , Heat Signature , and Tactical Breach Wizards . Here's some more info on all the games I've worked on, here are the videos I make on YouTube, and here are two short stories I wrote for the Machine of Death collections.
ANTLR Mega Tutorial
The definitive ANTLR mega tutorial on ANTLR4. Learn everything you need to know; with code in JavaScript, Python, Java and C#.
How to build (and how not to build) a secure “remember me” feature
This content is now available in the Pluralsight course "Secure Account Management Fundamentals" [http://www.pluralsight.com/courses/secure-account-management-fundamentals] Here’s the scenario – a user logs in to your website, comes back tomorrow and… has to log in again. The idea of the “remember me” feature – and
Archive your old projects
In this post I describe how I wish I had archived all my old projects and my approach going forward.
A Short 100-Question Diligence Checklist
Plus! Bank Capital; Where Venture Funding is Squeezed; Free Shipping and Marginal Costs; Chinese Apps and Data Advantages; Many Funnels; Diff Jobs
Alone in the Dark
Most videogame stories are power fantasies. You spend your time getting ever stronger, ever tougher, ever more formidable as you accumulate experience points, gold, and equipment. Obstacles aren’t things to go around; they’re things you go through. If you can’t get past any given monster, the solution is to go kill…
How Unix spell ran in 64kb RAM
How do you fit a dictionary in 64kb RAM? Unix engineers solved it with clever data structures and compression tricks. Here's the fascinating story behind it.
Image unshredder by simulated annealing (2015)
On another page , I unleash the simulated annealing algorithm on a toy problem. It generates an image full of random colorful pixels, and rearranges the pixels so that similar colors are near each other.
Okmain: How to pick an OK main colour of an image
You have an image but you want a colour
Coffee and its Effects on Feature Creep (2011)
Starting in mid-2004 and until the end of 2006, I worked at a small DNS and DHCP software company called Nominum . These days Nominum offer...
Crafting Interpreters: Superclasses
You can choose your friends but you sho’ can’t choose your family, an’ they’re still kin to you no matter whether you acknowledge ’em or not, and it makes you look right silly when you don’t.