Common DB schema change mistakes in Postgres
Common DB schema change mistakes and how to avoid them in PostgreSQL development.
Topics /
The most popular blog posts about software engineering on Hacker News. 1,535 posts.
Common DB schema change mistakes and how to avoid them in PostgreSQL development.
Goodbye Tech, Hello Future
I will never stop dying on this hill
Recently, GTK gained not one, but two new renderers: one for GL and one for Vulkan. Since naming is hard, we reused existing names and called them “ngl” and “vulkan”. They are built from the same sources, therefore we also call them “unified” renderers. But what is exciting about them? A single source As mentioned...
Open source python client to read your data from the Colmi R02 family of Smart Rings. 100% open source, 100% offline.
Automatic Differentiation
I often stumble upon large data sets or table layouts across the web. When these tables contain hundreds of rows of content, things become problematic once you start to scroll…
Stealing another KakaoTalk user’s chat messages with a simple 1-click exploit.
Jpegli, an advanced JPEG coding library that maintains high backward compatibility is faster, and more efficient, than traditional JPEG.
Trying to cobble together your own billing system is like wrestling an octopus that's armed with tax codes and invoices instead of tentacles. It's a beast of complexity that can tangle up everything from customer support to compliance. I have 14 points on why it's hard.
If you’ve read my first post about assembly language, you might expect that this is another post on how to understand assembly language. I will write more about that at some point, but this post is not that. Instead, this post is going to talk about some of the weird things and random trivia I learned while writing an…
In early 2024, I began investigating collaborative editing systems for use in Moment ’s core text editor.
B-trees are used by many modern DBMSs. Learn how they work, how databases use them, and how your choice of primary key can affect index performance.
A journey through text editors and how I landed on Zed after years of Neovim
This program is a dependency-free implementation of GPT-2, including byte-pair encoding and transformer inference, in ~3000 bytes of C. I then use this to create something like Chat GPT.
Google altered the deal
Towards the end of Wim Wenders’s excellent Perfect Days , the protagonist Hirayama is drinking beer under a bridge after he has seen a Businessman courting his crush. Suddenly the Businessman joins him under the bridge. As it turns out, things aren’t actually that simple but the point is their conversation takes them…
Our CPUs were dying, the bug was temporarily un-fixable, and we had no viable path forward. Here's how we managed to survive.
This post explains one of the core design principle of Increase’s API, dubbed No Abstractions, which we’ve found useful as our product and company scale.
Currently, I'm working as an AI Engineer @ amber . But mostly I'm an open-source software developer. That means I work on software projects that are free to use, modify, and distribute. Why? Because I believe knowledge should be free and open to everyone.
Mac's Tech Blog
I have often been asked to distill the vast corpus of user interface design into a few key principles. While I was reluctant to do this, it turned out to be a good exercise to write “Golden Rules,” that are applicable in most interactive systems. These principles, derived from experience and refined over three…
Errata: Some significant mistakes were pointed out to me by email by Brendan MacDonell. I have included errata, but the results might not be reliable, so take this with pinch of salt! vmsplice is too fast Some programs use a particular system call “vmsplice” to move data faster through a pipe. Francesco already did a…
The videos have been uploaded , thank-you notes have been sent, and the kiddo has decided to play a little Minecraft on her own, so now I get to write some quick notes on EmacsConf 2024 .
Script for highlighting large videos in iCloud and a storage discrepancy
If you do just foo , the following justfile will write a single byte 0x0A to a file named bar:
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…
I have recently done some performance work and realized that reading about my experience could be entertaining. Teaching to think is just as important as teaching to code, but this is seldom done; I think something I’ve done last month is a great opportunity to draw the curtain a bit. serde is the Rust framework for…