Summary of the 1.1 Billion Taxi Rides Benchmarks
Benchmarks & Tips for Big Data, Hadoop, AWS, Google Cloud, PostgreSQL, Spark, Python & More...
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 6,949 posts.
Benchmarks & Tips for Big Data, Hadoop, AWS, Google Cloud, PostgreSQL, Spark, Python & More...
What goes on behind the magical macros in the C protothreads library? Why are they macros? How do the macros work? Read on for the explanation.
Numerous claims about Judy's performance are made in the Judy whitepaper . I don't think any of those claims are wrong. However, it does not appear that sufficient effort was put in benchmarking Judy against other data structures. Now, it is unlikely there is another data structure that is both as fast and as small as…
The ‘Unix philosophy’ originated with Ken Thompson's early meditations on how to design a small but capable operating system with a clean service interface. It grew as the Unix culture learned things about how to get maximum leverage out of Thompson's design. It absorbed lessons from many sources along the way.
We use MySQL for storing all of the data in FriendFeed . Our database has grown a lot as our user base has grown. We now store over 250 million entries and a bunch of other data, from comments and "likes" to friend lists.
This article is part of Jepsen , a series on network partitions. We’re going to learn about distributed consensus, discuss the CAP theorem’s implications, and demonstrate how different databases behave under partition.
My homepage for projects, jokes and bunnies.
The day before I submitted this column, news hit the net that the other shoe had finally dropped. After months of waiting and wondering what was to become of Be, we learned that Palm, Inc. will be purchasing Be's technology, intellectual property, and assets. While we don't yet know exactly what Palm plans to do with…
Previously on Jepsen , we introduced the problem of network partitions . Here, we demonstrate that a few transactions which “fail” during the start of a partition may have actually succeeded.
Not every code injection bug is a security hole.
How users react to delays in a user interface, whether website or application. The 3 main response time limits are determined by human perceptual abilities.
Posts and writings by Lennart Poettering
In this series I will detail what I found out empirically about how mochiweb performs with lots of open connections, and show how to build a comet application using mochiweb, where each mochiweb connection is registered with a router which dispatches messages to various users. We end up with a working application that…
Cloudflare is a security company, and the heart of Workers is, in my view, a security project. Running code written by third parties is always a scary proposition, and the primary concern of the Workers team is to make that safe.
This page is a slice of the history of concurrent programming, focusing on one particular lineage of Hoare's language of communicating sequential processes (CSP) [1] [1a] . Concurrent programming in this style is interesting for reasons not of efficiency but of clarity. That is, it is a widespread mistake to think…
This talk is about using simple values (as opposed to complex objects) not just for holding data, but also as the boundaries between components and subsystems. It moves through many topics: functional programming; mutability's relationship to OO; isolated unit testing with and without test doubles; and concurrency, to…
As AI and HPC datasets continue to increase in size, the time spent loading data for a given application begins to place a strain on the total application’s performance. When considering end-to-end…
An excellent (if a bit dated) article/tutorial on exploiting buffer overflow vulnerabilities. It was written by Aleph One for Phrack 49.
These manuals describe the architecture and programming environment of the Intel® 64 and IA-32 architectures.
Understand Spanner's TrueTime and external consistency, ensuring globally consistent reads and writes across the distributed database.
In 2011 I wrote the initial version of JSLinux, the first PC/x86 emulator in Javascript running Linux. I reused parts of another of my emulators ( QEMU ) for the x86 helpers and the devices.
"I'm going to beat grep by thirty percent!" I confidently crow to anyone who would listen, those foolish enough to enter my office. And my girlfriend too, who's contractually obligated to pay attention to everything I say.
The Backend Infrastructure team at Discord was hard at work improving the scalability and performance of our core real-time communications infrastructure.
Tim Wagner, AWS Lambda AWS Lambda functions execute in a container (sandbox) that isolates them from other functions and provides the resources, such as memory, specified in the function’s configuration. In this article we discuss how Lambda creates and reuses these sandboxes, and the impact of those policies on the…
We’ve always put a heavy emphasis on performance at Stack Overflow and Stack Exchange. Not just because we’re performance wonks (guilty!), but because we think speed is a competitive advantage. There’s plenty of experimental data proving that the slower your website loads and displays, the less people
It’s been 3 months since I first wrote about our efforts to scale Git to extremely large projects and teams with an effort we called “Git Virtual File System”. As a reminder, GVFS, together with a set of enhancements to Git, enables Git to scale to VERY large repos by virtualizing both the .git folder […]
This talk announces the most ambitious software project I've ever undertaken, then considers why its existence is so surprising (and in some cases frustrating) to people.
This comes up far too often, so rather than continuing to explain it over and over again, I’m going to try to do a really good job of it once and link to it here.
A look at the Go GC strategy