Issue #76
Curated list of blogs, videos, papers, podcasts on programming and distributed systems.
"To be yourself in a world that is constantly trying to make you something else is the greatest accomplishment."
― Ralph Waldo Emerson
Posts
Starlink is a very big deal
Starlink, SpaceX’s plan to serve internet via tens of thousands of satellites. - #caseyhandmer #wordpress
Why does my App's Memory Use Grow Over Time?
In this post, we’ll talk a little about what causes this shape of memory use over time. Then we will dig into what that memory behavior means in terms of optimizing your application. - #schneems
Spotify’s Event Delivery – Life in the Cloud
This post is the next installment of our blog series about Event Delivery at Spotify. we will discuss what we have achieved and what worked from our original plan, the next steps we’re taking, and how we have evolved and simplified by moving up the stack in the cloud. During those 2.5 years a lot of things have changed and we have new requirements. Right now we are working on the next generation of Event Delivery. - #labs #spotify
Linearizability versus Serializability
Linearizability and serializability are both important properties about interleavings of operations in databases and distributed systems, and it’s easy to get them confused. This post gives a short, simple, and hopefully practical overview of the differences between the two. - #bailis
Deep Dive TiKV
TiKV is fully ACID compliant and features automatic horizontal scalability, global data consistency, geo-replication, and many other features. It can be used as a building block for other high-level services. - #tikv
How Consul Eliminates The Need For East-West Load Balancers
When compared to load balancers directing east-west network traffic, Consul can provide an alternative solution for each feature that load balancers provide with less financial expense and fewer strains on the network. - #hashicorp
Delta: A Data Synchronization and Enrichment Platform
Typically when using multiple datastores, one of them acts as the primary store, and the others as derived stores. Now the challenge becomes how to keep these datastores in sync. - #medium #netflix-techblog
The Danger of “Simplicity”
Each of these examples illustrates choices you need to make. You can reduce the number of things you care about to help with making them
... simplicity is not simple.
... And that you should not trust anyone who claims it is. - #asthasr #github
Multi-Value All The Wasm!
The multi-value proposal is an extension to the WebAssembly standard that lifts these arity restrictions. Under the new multi-value Wasm rules:
functions can return an arbitrary number of values, and instruction sequences can consume and produce an arbitrary number of stack values. - #hacks #mozilla
Successfully Merging the Work of 1000+ Developers
Collaboration with a large team is challenging, and even more so if it’s on a single codebase, like the Shopify monolith. Shopify changes 40 times a day. We follow a trunk-based development workflow and merge around 400 commits to master daily. - #engineering #shopify
Algebraic data types: things I wish someone had explained about functional programming
This is part four of a four-part series: Things I wish someone had explained to me about functional programming. - #jrsinclair
Videos
"Unison: a new distributed programming language" by Paul Chiusano
Unison is an open source functional programming language with special support for building distributed, elastic systems. It began as an experiment: rethink all aspects of the programming experience, including the core language, runtime, tooling, as well as code versioning and publishing, and then do whatever is necessary to eliminate needless complexity and make building software once again delightful, or at the very least, reasonable.
Podcast
Getting Started with Serverless
In this special episode, Jeremy outlines a number of topics for people learning serverless, and lets his guests from the first 20 episodes explain the details of each, and why they're important. - #transistor
Paper
Algorithmic Nuggets in Content Delivery
In each instance, we first explain the theory underlying the algorithms, then introduce practical considerations not captured by the theoretical models, and finally describe what is implemented in practice. Through these examples, we highlight the role of algorithmic research in the design of complex networked systems. The paper also illustrates the close synergy that exists between research and industry where research ideas cross over into products and product requirements drive future research. - #akamai