Topics /
Software Engineering
The most popular blog posts about software engineering on Hacker News. 21,830 posts.
My Favourite Diff
I want to tell the story of one of my favourite diffs I’ve ever committed. It’s probably not the “best” by any objective measure, but it’s a personal favourite and makes for a good story to boot.
How to speed up the Rust compiler
It has been five months since my last general update on the Rust compiler’s performance. Let’s see what has happened in that time.
Typestates in Rust (2018)
A long time ago, the Rust language was a language with typestate. Officially, typestates were dropped long before Rust 1.0. In this entry, I’ll get you in on the worst kept secret of the Rust community: Rust still has typestates.
Mastering Jq: Part 1
This is the first part of an ongoing series on mastering jq. jq is a valuable tool that every fast coder has in their tool chest. It contains depths of immense power. In part 1, we'll start off with the basics.
24 days of Rust – Rayon
Let me start this article with a confession: I suck at writing parallel code. I have only a vague idea about mutexes, locks and other low level primitives for handling data between threads. And since I work mostly with Python, I tend to use multiprocessing (if I bother to parallelize at all) rather than threads…
Fuyu-8B: A multimodal architecture for AI agents
We’re open-sourcing Fuyu-8B - a small version of the multimodal model that powers our product.
WASM SYNTH, or, how music taught me the beauty of math
TL;DR: I built a synthesizer using C++ and WebAssembly. Check out the finished product (browser compatibility table), the source, watch the talk or keep on reading the article! The Presentation Intr
These years in Common Lisp: 2023-2024 in review
This is a personal pick of the most interesting projects, tools, libraries and articles that popped-up in Common Lisp land in the last two years.Newcomers might not realize how the Common Lisp ecosystem, though stable in many ways, actually evolves, sharpens, tries new solutions, proposes new tools, ships new…
Matrices and Graph
The single most undervalued fact of linear algebra: matrices are graphs, and graphs are matrices
Finding bugs in Haskell code by proving it
Last week, I wrote a small nifty tool called bisect-binary , which semi-automates answering the question “To what extent can I fill this file up with zeroes and still have it working”. I wrote it it in Haskell, and part of the Haskell code, in the Intervals.hs module, is a data structure for “subsets of a file”…
Supercharging the Git Commit Graph IV: Bloom Filters
We've been discussing the commit-graph feature in Git 2.18 and how we can use generation numbers to accelerate commit walks. One area where we can get
Metronomes in JavaScript
Monica Dinculescu's blog
Building a BFT JSON CRDT
CRDTs are a family of data structures that are designed to be replicated across multiple computers without needing to worry about conflicts when people write data to the same place.
Clearing up some things about LinkedIn mobile’s move from Rails to node.js
There’s an article on highscalability that’s talking about the move from Rails to node.js (for completeness: its sister discussion on Hacker
Using a self-rewriting README powered by GitHub Actions to track TILs
I’ve started tracking TILs—Today I Learneds—inspired by this five-year-and-counting collection by Josh Branchaud on GitHub (found via Hacker News). I’m keeping mine in GitHub too, and using GitHub Actions to …
Fantastic Learning Resources
People sometimes ask me: Alex, how do I learn X?. This article is a compilation of advice I usually give. This is things that worked for me rather than the most awesome things on earth. I do consider every item on the list to be fantastic though, and I am forever grateful to people putting these resources together.
Elasticsearch from the Bottom Up (2013)
In this article series, we look at Elasticsearch from a new perspective. We'll start at the 'bottom' (or close enough!) of the many abstraction levels, and gradually move upwards towards the user-visi...
Building games through natural language using OpenAI’s code-DaVinci model
TL;DR: OpenAI has a new code generating model that’s improved in a number of ways and can handle nearly two times as much text (4,000 tokens.) I built several small games and applications without t…
Building Bauble
I made something that I think is pretty neat, and I want to tell you about it. This is a little hot air balloon made out of alternating layers of brass and bronze that stack together with these angled facets: It’s 3D printed, sort of, but it really is solid metal – it’s not a metallic filament. It’s made by “lost wax…
Shopify's Data Science and Engineering Foundations (2020)
Shopify’s Data team uses these foundational approaches to data warehousing and analysis empowering us to deliver the best results for our ecosystem.
My Favorite Programming, Computer and Science Books: Part Five
Hi everyone! Here's part five of my favorite programming, computer and science books. If you're just joining, please see part one, part two, part three and part four. I've been collecting and researching science, math, physics, programming books since 2001 or 2002, so it's been close to 15 years of book research…
Twelve LaTeX packages to get your paper accepted (2017)
(with Abhik Roychoydhury and Aditya Kanade) Why do some people get all their papers accepted, and others do not? You may already know th...
Ruby 2.3.3 released
Ruby 2.3.3 has been released.