How a Single Line of Code Made a 24-core Server Slower Than a Laptop
Imagine you wrote a program for a pleasingly parallel problem, where each thread does its own independent piece of work, and the threads don’t need to coordinate except joining the results at the end. Obviously you’d expect the more cores it runs on, the faster it is. You benchmark it on a laptop first and indeed you find out it scales nearly perfectly on all of the 4 available cores. Then you run it on a big, fancy, multiprocessor machine, and it sank.
Five Tips For a Healthier Postgres Database in the New Year
Crunch Data hosts many postgres instance as a cloud offering. While onboarding customer after customer this year they’ve noted a few key things everyone should put in place right away - to either improve the health of your database or to save yourself from a bad day
How a couple of characters brought down our site
Skyscanner team accidentally submitted an incorrect change to the templating of infrastructure provisioning system. This deleted all of the microservices responsible for serving skyscanner.net and data to mobile app from the underlying infrastructure across the entire globe, causing a four-hour outage
An Algorithm for Passing Programming Interviews
Over the past few years, I’ve interviewed with a dozen or so companies and have completed ~50 or so individual algorithm problems. I’m frequently given feedback that I did a great job at the algorithms problem. In this post, I’m going to share how exactly I approach algorithm problems.
Build A Blockchain In Python
You don’t understand something until you sit down and write it yourself. When removing all extra functionality, and focus on a minimun level, what make a blockchain? Example, a key-value store can just be a Hashmap, as its core. What information a block hold? how they connect?
Deserializing JSON really fast
Modern hardware has many instruction that help with JSON parsing such as AVX2 and SIMD. In this post, we will see how Flare deserializes JSON documents stored on disk using a very fast bespoke, sparse, vectorized deserializer. It’s Rust but the though process can be applied to any field
Code to read
Send push notifications to your phone or desktop via PUT/POST
a free and open-source application that can monitor your netowkr, block connection, URL filtering, written in Go with a desktop UI.
a terminal puzzle game inspired by the classic “Minesweeper”, written in Ruby. you will learn game loop, game grid concept here
Console-based user interface toolkit for .NET applications
A command line tool that draw plots on the terminal
An open Apple AirDrop implementation written in Python
A log4j vulnerability filesystem scanner and Go package for analyzing JAR files.
Timeseries Anomaly detection and Root Cause Analysis on data in SQL data warehouses and databases
That's it for this round, have a great day! If you like this newsletter, please tell the world, or
tweet about this