Zero-downtime schema migrations in Postgres using views
Schema migrations are tricky, especially when planned downtime is not an option. Changes need to be carefully designed to stay backwards compatible so that…
Topics /
The most popular blog posts about software engineering on Hacker News. 21,834 posts.
Schema migrations are tricky, especially when planned downtime is not an option. Changes need to be carefully designed to stay backwards compatible so that…
Now in public preview, Linux arm64 hosted runners are available for free in public repositories. Following the release of arm64 larger hosted runners in June, this offering now extends to…
A guy just forwarded a joke that most of us will already know Jeff Dean Facts (also here and here). Everytime I read that list, this part stands out: Jeff Dean once implemented a web server in a single printf() call. Other engineers added thousands of lines of explanatory comments but still don't u
The rust-analyzer Project
Today we are happy to release the source code of a project we’ve been working on for the past few months. It is called BoringTun, and is a userspace implementation of the WireGuard® protocol written in Rust.
Online payment processing for internet businesses. Stripe is a suite of payment APIs that powers commerce for businesses of all sizes.
Monte Carlo simulations (or methods ) is the technique of applying randomness and the Law of large numbers to the solution of various scientific and engineering problems. One of its first documented uses was by Stanislaw Ulam and John von Neumann for nuclear weapon simulations after WWII [1] .
Introduction This is the first part of a series of blog posts I intend to write, whose aim will be to explain how garbage collection works in the real world (in particular, with the JVM). I will co…
This started out as a Hacker News comment about a blog post about select being fundamentally broken After that the same author wrote why epoll is broken as well. I don’t know what problem author is trying to solve but let’s pick this one:
Ever wanted to know what it's like to write a technical book? This post details my experience co-authoring an O'Reilly book with my colleagues Lak and Mike. Our book, Machine Learning Design Patterns, is available to order now and all royalties go to Girls Who Code.
Canvas drawing techniques with live demos: pencils and smooth connections, fur and pen brushes, bezier curves, sprays, patterns, and neighbor-point webs.
A couple weeks ago I made it to the FSF's 30th anniversary party. It was a blast in many ways, and a good generator of many fond memories, but I won't go into depth of them here. One particularly exciting thing that happened for me though was I got to meet Gerald Sussman (of SICP !) The conversation has greatly…
Salus is a general purpose, enterprise-proven, build-time SBOM generator. It works across platforms including Windows, Linux, and Mac, and uses the standard Software Package Data Exchange (SPDX) format.
Did you ever wonder why explosions and other effects looked so much cooler on the original PlayStation than they did on the Nintendo 64?
An experienced project manager I used to work with claimed that he took the programmers’ time estimates, multiplied by pi and converted to the next time magnitude to get the true number. 1 day converts to 3.14 weeks. He had learned the hard way that programmers are bad at estimating times . To get a more precise…
Someone asked if I could write about the rise of AI and Large Language Models (LLMs) and what I think that means for the future of people, t...
This document serves as a collection of reasons why beginners should avoid Python 3 as of November 22nd, 2016. I give two sets of reasons as I see them now. One for total beginners, and another for people who are more knowledgeable about programming. The first section attempts to explain the case against starting with…
We are facing some interesting times at work as we are going to start changing our technology stack in the near future. Most of our Oracle ...
Disqus has a history of using one tool for the job and hammering through everything. Until now, that tool has been Python. This mentality has been extremely beneficial for us since we are a small team. Everyone is able to jump in to any piece of our stack with minimal effort.