If All You Have Is a Database, Everything Looks Like a Nail
Databases are fabulous resources. Of course, we’ll abuse them in ways that cause challenges.
Topics /
The most popular blog posts about systems & performance on Hacker News. 343 posts.
Databases are fabulous resources. Of course, we’ll abuse them in ways that cause challenges.
When making a first full backup of less than 2 GB takes 86 minutes, and you then can’t restore from it anyway.
WebGPU is a new graphics and compute API designed on the grounds of W3C organization (mostly) by the browser vendors. It’s designed for the Web, used by Java...
My first computer was a BBC Micro. It could do basic graphics at a resolution of 640×256 - with 8 different colours. Not a typo. Eight! The mono speaker produced bleeps and bloops. It was basic, in all senses of the word. Eventually, talented hackers found a way for it to do simplistic 3D graphics and even speech…
6-5-0-who? The 6502 is an iconic processor that dominated home computing in the late 70s and early to mid 80s. It was used in machines ra...
Theo Julienne is a software & infrastructure engineer.
The Toolsmith Conference was held in Chapel Hill, NC, in October, 2001, to honor Fred Brooks. Dr. Brooks was a student of Howard Aiken at Harvard, joined IBM to work on the Stretch Project, and later served as chief architect of the IBM S/360. He founded the Computer Science Department at UNC-Chapel Hill in 1964 and…
When I began teaching Unix around anno 1986, the Unix ls(1) utility printed a list of files to stdout, one per line. It was trivial to explain the concept of not requiring a program which tells you...
Provision of maintenance procedures and tools is at the heart of software engineering, but not in macOS.
...and the crucial role it plays in modern operating systems.
Computers and computer systems are build up from deterministic, comprehensible, building blocks. Their operations and behaviors can be understood and reasoned about. I relate my personal beliefs and mindset on this point, and explore some manifestations and ramifications of this philosophy.
Video lectureMutator, Allocator, CollectorMemory blockAllocator interfaceMemory alignmentMemory mappingFreeing the objectsBlocks reuseFirst-fit searchAssignmentsNext-fit searchBest-fit searchBlocks splittingBlocks coalescingExplicit Free-listSegregated-list searchOptimizing the storageCustom sbrkConclusion This is the…
Back with a post after 6 years of silence. If you had to parse a microsecond-resolution epoch timestamp as quickly as possible, how would you do it? We’ll take a look at using compiler intrinsics to do it in log(n) time.
APFS adds 6 volume roles, including one which supports Time Machine backups. And per-file encryption is coming.
TLA+ is a formal specification language that you can use to verify programs. It’s different from other formal verification systems in that it’s very pragmatic. Instead of writing proofs…
In November 2018 AWS published an Open Source tool called Firecracker , mostly a virtual machine monitor relying on KVM , a small sized Linux kernel, and a stripped down version of Qemu . What baffled me was the speed at which the virtual machine would fire up and run the service. The whole process is to be compared…
Design principles for writing software meant to survive decades of changing requirements and technology.
T The problem Every once in a while I get involuntarily dragged into heat...
I was a huge Archimedes fan and still have an A310, an A5000, a RiscPC and a RasPi running RISC OS. But no, I have to disagree. RISC OS was a hastily-done rescue effort after Acorn PARC failed to make ARX work well enough. I helped to arrange this talk by the project lead a few years ago. RISC OS…
Let me tell you about the still-not-defunct real-time log processing pipeline we built at my now-defunct last job. It handled logs from a la...
I spent last week-end getting accustomed to CUDA and SIMT programming. It was a prolific time ending up with a Business Card Raytracer running close to 700x faster [1] , from 101s to 150ms. This pleasant experience was a good pretext to spend more time on the topic and learn about the evolution of Nvidia architecture…
hi! Yes, it's been a while since I posted here and yes, it's been a while since I was actively working on FreeBSD's wireless stack. Life's...
Although 10.15.3 fixes a serious bug in Mail and Catalina is steadily maturing, there are many users who still shouldn’t upgrade.
How the instruction set for RISC-V processors has been designed cleverly for both simplicity and high performance.
Update 2025-03-05 : @jxu has shared a collection of simplified examples that are even easier to follow than the original ones in this post.
Durability is the guarantee that data can be accessed after a failure. It seems like this should be very simple: either your system provides durable data storage, or it does not. However, durability is not a binary yes/no property, and instead should be defined as the kinds of failures you want your data to survive…