Issue #86
Curated list of blogs, videos, papers, podcasts on programming and distributed systems.
“Work expands so as to fill the time available for its completion”
— C. Northcote Parkinson
Posts
He suggested that modern GPUs with upwards of 500 gigabytes per second of memory bandwidth could eat his problem for breakfast.
I thought his perspective was interesting. That's not how I think about problems. - #forrestthewoods #blog
Canopus: A scalable and massively parallel consensus protocol
Canopus trades off latency for throughput. It also trades off fault-tolerance for throughput. - #muratbuffalo #blog
This document describes a stable non-recursive merge sort named quadsort. - #github
Oh, don't worry, I've screwed up plenty of things too
But, hey, even in turds you can sometimes find a peanut, and one of them basically said "she never talks about things she's screwed up". I thought I had, but with over 1200 posts, I can see how it might be hard to find some of it.
So, just to make it easy, I'm going to try to rattle off some stories about things I broke at some point in time. Prepare for maximum navel-gazing! - #rachelbythebay
How Big Technical Changes Happen at Slack
Like all technology companies, Slack wants to make sure we catch revolutions at the right time, while limiting the energy we spend chasing fads. What strategy can we follow to ensure this? This post outlines our approach to this problem, which we continue to refine and apply through our practice at Slack. - #slack #engineering
Why are we so bad at software engineering?
“We’re decent at building software when the consequences of failure are unimportant.” It fails horribly when failure isn’t cheap, like in Iowa. Common software engineering practices grew out of the internet economic model, and when the assumptions of that model are violated, software engineers become bad at what we do. - #bitlog
I Add 3-25 Seconds of Latency to Every Page I Visit
So if you can inject latency into sites artificially, you can reduce the actual impact of the addiction in a controllable way while not denying the enjoyment of the Internet to yourself. - #howonlee
Becoming a high performing software developer working from your bedroom
You would think that the more time you spend working, the more results you produce. It sounds like common sense, doesn’t it? Well, have you ever accomplished more work when you are in a hurry? I have too. That’s Parkinson’s law in action: "Work expands so as to fill the time available for its completion". - #zephony
Papers
Serverless Computing: One Step Forward, Two Steps Back
Put together, these gaps make current serverless offerings a bad fit for cloud innovation and particularly bad for data systems innovation. In addition to pinpointing some of the main shortfalls of current serverless architectures, we raise a set of challenges we believe must be met to unlock the radical potential that the cloud—with its exabytes of storage and millions of cores—should offer to innovative developers - #cidrdb
This paper describes Physalia in context of Amazon EBS, and some other uses within Amazon Web Services. We believe that the same patterns, and approach to design, are widely applicable to distributed systems problems like control planes, configuration management, and service discovery. - #AWS
This metric has two main components. First, it directly models user-perceived availability and avoids the bias in commonly used availability metrics. Second, by simultaneously calculating the availability metric over many windows it can readily distinguish between many short periods of unavailability and fewer but longer periods of unavailability. - #usenix
Videos
Jim Keller: Moore's Law, Microprocessors, Abstractions, and First Principles | AI Podcast
How do big operators differ from smaller disruptors? The panelists examine the different architectures that power these systems. - #infoq
Podcast
Functional Programming Languages and the Pursuit of Laziness with Dr. Simon Peyton Jones
Dr. Peyton Jones shares his passion for functional programming research, reveals how a desire to help other researchers write and present better turned him into an unlikely YouTube star, and explains why, at least in the world of programming languages, purity is embarrassing, laziness is cool, and success should be avoided at all costs. - #microsoft #research