JITs are un-ergonomic
I lift my LAMP beside the github door. Keep ancient Fortran your storied numeric libs cries she. Give me your interpreted, your slow, the wretched refuse of your (insert pun for ‘teeming shore’).
The latest blog posts to take off on Hacker News. 533 posts.
I lift my LAMP beside the github door. Keep ancient Fortran your storied numeric libs cries she. Give me your interpreted, your slow, the wretched refuse of your (insert pun for ‘teeming shore’).
The implementation and history of an iconic Unix feature, with excerpts from the v6 Unix kernel source code, Author: Abhijit Menon-Sen
Seeing a program you wrote running directly on the bare metal is deeply satisfying to anyone who enjoys writing software. And it turns out that creating such a program from scratch is easier than it sounds. The hardest part is figuring out where to start. In this tutorial, I'll show you how to write, build and run the…
Encrypting data at rest is vital for Cloudflare with more than 200 data centres across the world. In this post, we will investigate the performance of disk encryption on Linux and explain how we made it at least two times faster for ourselves and our customers!
You probably came here because your Mac showed a message telling you that software from “Objective Development Software GmbH” (Little Snitch) loaded a system extension that will no longer be compatible with a future version of macOS and that you…
Mention concurrency and you’re bound to get two kinds of unsolicited advice: first that it’s a nightmarish problem which will melt your brain, and second that there’s a magical programming language or niche paradigm which will make all your problems disappear.
An in-depth Look at OCaml’s new "Best-fit" Garbage Collector Strategy The Garbage Collector probably is OCaml’s greatest unsung hero. Its pragmatic approach allows us to allocate without much fear of efficiency loss. In a way, the fact that most OCaml hackers know little about it is a good sign:...
TL;DR: I set up Minikube on an old (2012) MacBook Air and configured it to be able to connect from outside my home network so I would have an always-on Kubernetes cluster at home to experiment with.
Pipes are cool! We saw how handy they are in a previous blog post . Let's look at a typical way to use the pipe operator. We have some output, and we want to look at the first lines of the output. Let's download The Brothers Karamazov by Fyodor Dostoevsky, a fairly long novel.
Usually, x86 tutorials don’t spend much time explaining the historical perspective of design and naming decisions. When learning x86 assembly, you’re usually told something along the lines: Here’s EAX . It’s a register. Use it.
In my third installment of FreeBSD vs Linux, I will discuss underlying reasons for why Linux moved away from ifconfig(8) to ip(8).
Technical maxims that define Urbit's approach to engineering.
This is our most recent work, started and led by Aleksey Charapko . (This is a joint post with him.) You can get the paper at arxiv.org . Th...
Welcome to the v0.10 release of the Windows Terminal! As always, you can install the Windows Terminal from the Microsoft Store or download the package
The history of defect tracking databases in Windows.
Over the past four years, we've been working hard on rebuilding our desktop client's sync engine from scratch. The sync engine is the magic behind the Dropbox folder on your desktop computer, and it's one of the oldest and most important pieces of code at Dropbox. We're proud to announce today that we've shipped this…
Your code might be perfect and never fail, but unfortunately the outside world is less reliable. Sometimes, other people's programs crash or freeze. Networks go down; printers catch on fire . Your code needs to be prepared for this: every time you read from the network, attempt to acquire an inter-process lock, or…
This post is the first post in linux kernel series. Writing code to run in the kernel is different from user application. While developing in the kernel, you don’t write code from scratch, you need to implement one or more interfaces and register your implementation within the a kernel subsystem.
Work faster with this experimental Partial Clone feature for huge Git repositories, saving you time, bandwidth, and storage, one large file at a time.
by Andrey Norkin, Joel Sole, Mariana Afonso, Kyle Swanson, Agata Opalach, Anush Moorthy, Anne Aaron
seL4 has been our team’s greatest achievement, but it didn’t fall out of the sky: it was the result of 15 years of research, and has evolved further for the past 10 years. From the begi…
Learn to predict how your application will behave in times of failure and how to configure every parameter for your Semian circuit breaker.
By Aditya Mavlankar, Jan de Cock, Cyril Concolato, Kyle Swanson, Anush Moorthy and Anne Aaron
An in-depth look at Data-Oriented Architecture (DOA): monolithic data stores vs microservices, scaling benefits, and real-world case studies.
I have been curious about data compression and the Zip file format in particular for a long time. At some point I decided to address that by learning how it works and writing my own Zip program. The implementation turned into an exciting programming exercise; there is great pleasure to be had from creating a well…
FreeNAS and TrueNAS have been separate-but-related members of the #1 Open Source storage software family since 2012.
This is Part 3 in a series of posts describing the Raft distributed consensus algorithm and its complete implementation in Go. Here is a list of posts in the series: