New
The latest blog posts to take off on Hacker News. 458 posts.
Minimodem – General-purpose software audio FSK modem (2016)
Minimodem can play and capture audio modem tones in real-time via the system audio device, or in batched mode via audio files.
Spectre/Meltdown Pits Transparency Against Liability
There is a lot of righteous anger directed toward Intel over CPU bugs that were revealed by Spectre/Meltdown. I agree that things could have been handled better, particularly with regards to transparency and the sharing of information among the relevant user communities that could have worked together to deploy…
Lying to TCP makes it a best-effort streaming protocol
In this All Things Linguistic post Gretchen and Lauren introduce a model dialogue:
Programming the Linux Framebuffer
Previously , I installed Linux on a small ARM Chromebook and set it up without X.Org, using only the console. After neglecting that machine for quite some time, I came back to it because I wanted to try some pixel-graphics programming and the framebuffer seemed like it might be an easy target.
Why Create a New Unix Shell?
Please read this update instead: Why Create a New Unix Shell? (2021) . This page is obsolete!
High Sierra broke AFP searching on our server
Update to this story at 20 Feb 2018: I’ve been debugging the problem together with Apple and I feel like we are closing in on a solution. My current guess is that Finder indexing needs a lot more time on High Sierra than on Sierra clients.
Outperforming LAPACK with C++ metaprogramming
Still not really about LAPACK. It's a second part of the “outperforming” series explaining how the C++ metaprogramming can appear useful for efficient code generation.
Clive OS: Go applications that can run without an operating system (2016)
Removing (most of) the software stack from the cloud Clive is an operating system designed to work in distributed and cloud computing environments. It’s main design guidelines are: Ther…
Paxos derived
Lamport's fault-intolerant state machine replication algorithm In 1978, Lamport published his classic "Time, Clocks, and the Ordering of E...
Qubes Air: Generalizing the Qubes Architecture
The Qubes OS project has been around for nearly 8 years now, since its original announcement back in April 2010 (and the actual origin date can be traced back to November 11th, 2009, when an initial email introducing this project was sent within ITL internally). Over these years Qubes h...
Understanding the C/C++ memory model
I know that a lot of people struggle with understanding the memory model introduced in C11/C++11. In a recent conversation I was alerted to the existence of this blog post, which while correct (by …
How a fix in Go 1.9 sped up our Gitaly service by 30x
After noticing a worrying pattern in Gitaly's performance, we uncovered an issue with fork locking affecting virtual memory size. Here's how we figured out the problem and how to fix it.
Building blocks of Amazon ECS
So, what’s Amazon Elastic Container Service (ECS)? ECS is a managed service for running containers on AWS, designed to make it easy to run applications in the cloud without worrying about configuring the environment for your code to run in. Using ECS, you can easily deploy containers to host a simple website or run…
Reducing Memory Usage in Ruby
I’ve been working on building a compacting garbage collector in Ruby for a while now, and one of the biggest hurdles for implementing a compacting GC is updating references. For example, if Object A points to Object B, but the compacting GC moves Object B, how do we make sure that Object A points to the new location?…
Building a Distributed Log from Scratch: Sketching a New System
In part four of this series we looked at some key trade-offs involved with a distributed log implementation and discussed a few lessons learned while building NATS Streaming. In this fifth and final installment, we’ll conclude by outlining the design for a new log-based system that draws from the previous entries in…
The Death of Microservice Madness in 2018
Dave Kerr, partner and Head of Engineering at QuantumBlack Labs, McKinsey & Company. Writing on software engineering and agentic AI.
Brushing up on operating systems and C programming
If you were like me in college, you first learned about the C programming language in an introductory computer science course. Then, perhaps you took a really hard course in operating systems. Then, y
Network Latencies and Speed of Light
In this short post I’m going to attempt to convince you that current network (Internet) latencies are here to stay, because they are already within a fairly small factor of what is possible u…
PostgreSQL 10: Partitions of partitions
PostgreSQL version 10 brings a much anticipated feature: (Native) Table Partitioning .
Stream and Go: News feeds for 300M users, built on RocksDB and Raft
Discover the tech stack used by Stream. Explore 42 tools across 5 categories.
Meltdown and Spectre Linux Kernel Status
I keep getting a lot of private emails about my previous post about the latest status of the Linux kernel patches to resolve both the Meltdown and …
However improbable: The story of a processor bug
Processor problems have been in the news lately, due to the Meltdown and Spectre vulnerabilities. But generally, engineers writing software assume that computer hardware operates in a reliable, well-understood fashion, and that any problems lie on the software side of the software-hardware divide.
Scaling Kubernetes to 2,500 Nodes
Stay up to speed on the rapid advancement of AI technology and the benefits it offers to humanity.