Blog

System Architecture
Virtual Machine as a core Android Primitive
News and insights on the Android platform, developer tools, and events.
System Observability: Metrics, Sampling, and Tracing
In Defense of Systems that Fail — Bunker Labs
by Chloé VULQUIN In recent times, as an industry, we've been building systems that are progressively less likely to fail. From the erlan...
TXR Language
TXR Lisp
Passkey Tutorial: How to Implement Passkeys in Your Web Application
This tutorial explains how to implement passkeys in your web app. We use Node.js (TypeScript), SimpleWebAuthn, Vanilla HTML / JavaScript and MySQL.
Event Modeling Introduction
Event Modeling can be applied in designing systems that will store state in traditional databases. By providing a more thorough design, the solution can be implemented with a lot less waste that usually comes in the form of having to re-visit finished items as the solution is built up.
Entrepreneurship for Engineers: Level up Your Sales Game
If a startup gains traction, it can hire a sales team. In the meantime, it's up to its founder to build sales skills and close the deals.
Improving Text Classification Resilience and Efficiency with RETVec
Elie Bursztein, Cybersecurity & AI Research Director, and Marina Zhang, Software Engineer Systems such as Gmail, YouTube and Google Play rel...
“MOME” performance methodology
Measure, Optimize, Monitor and Educate
Rethinking Serverless with FLAME
Imagine if you could auto scale simply by wrapping any existing app code in a function and have that block of code run in a temporary copy of your app
Carbon footprint estimator for AWS instances - Teads
Curious about the power consumption and carbon footprint of an EC2 instance? As part of the first Measure challenge, get an estimation below.
Building an AWS EC2 Carbon Emissions Dataset
Sharing an estimation of EC2 instances’ carbon footprint, related to both manufacturing and using the servers
Estimating AWS EC2 Instances Power Consumption
TL;DR We simulated several kinds of workloads and measured memory and CPU consumption on five bare metal instances.
API-First Approach to Kafka Topic Creation - DoorDash Engineering Blog
DoorDash creates and manages infrastructure resources at scale.
A Minimum Complete Tutorial of Linux ext4 File System
This is a complete tutorial for understanding the basics of Linux ext4 file system.
The Bespoke Supercomputing Architecture That Stood the Test of Time - The Next Platform
In the history of computing, there has been an endless push and pull between the need for general-purpose versus fine-tuned custom systems and software. While general purpose will, by nature, prevail on leadership-class HPC, the work done in meticulous world of ASIC design, system and software optimization filters into architectural thinking eventually. In the case
Building for tomorrow
This series is all about infrastructure: the invisible layer of wires and guts and light that makes everything run. It’s not in the best shape, but what would it take to make it better?
Cypher (query language) - Wikipedia
SPARQL - Wikipedia, the free encyclopedia
Trace Context
This specification defines standard HTTP headers and a value format to propagate context information that enables distributed tracing scenarios. The specification standardizes how context information is sent and modified between services. Context information uniquely identifies individual requests in a distributed system and also defines a means to add and propagate provider-specific context information.
How Google takes the pain out of code reviews, with 97% dev satisfaction
A study of Google's code review tooling (Critique), AI-powered improvements, and recent statistics
Simplifying Complexity: The Journey from WebSockets to HTTP Streams
This article explores the transition from a WebSocket-based implementation to a simpler, more direct stream over HTTP in the context of capturing touch screen inputs on Linux.
It begins by introducing the main theme, encapsulated in the statement Everything is a file is a stream of byte. The need to capture finger positions on a touchscreen by reading /dev/input/events in Linux is initially discussed, followed by a dilemma of transferring this data to a JavaScript client in a browser.
Initially, WebSockets are chosen, leading to a discussion on how frameworks often shape our technological choices and the challenges faced in debugging WebSocket connections. The article then introduces an alternative about sending a stream of bytes over HTTP, drawing a parallel to Linux’s approach to handling devices and files.
Serialization, the process of encoding messages for this stream, is discussed next, highlighting the implementation specifics in GoLang and its native advantages. The final section covers how to receive and decode this stream in JavaScript within a worker thread, and then send the decoded messages to the main thread using post requests.
The article concludes by reflecting on the benefits of simplicity in technology, urging readers to reevaluate default choices and consider more straightforward solutions to complex problems.
EdDSA, Ed25519, Ed25519-IETF, Ed25519ph, Ed25519ctx, HashEdDSA, PureEdDSA, WTF?
The Edwards-curve Digital Signature Algorithm (EdDSA)
You've heard of EdDSA right? The shiny and new signature scheme (well new, it's been here since 2008, wake up).
Since its inception, EdDSA has evolved quite a lot, and some amount of standardization process has happened to it. It's even doomed to be adopted by the NIST in FIPS 186-5!
First, some definition:
EdDSA stands for Edwards-curve Digit ...
Finding Lisp
How Uber Computes ETA at Half a Million Requests per Second
#26: And How Online Maps Work Explained Like You’re Twelve (5 minutes)
Video of ceramic storage system prototype surfaces online — 10,000TB cartridges bombarded with laser rays could become mainstream by 2030, making slow hard drives and tapes obsolete
Ceramics-based storage medium consumes very little energy and lasts more than 5,000 years, creators say
Git Query language
A SQL Like query language to perform queries on .git files.
ULIDs and Primary Keys
Not all non-sequential primary keys are created equal, the ULID format is a fantastic substitute for the typical UUIDv4 choice.