RFCs and asynchronous-first culture
Explains how using RFC (Request for Comment) documents can improve asynchronous communication and decision-making in tech teams.
Phil Eaton is a staff engineer working on Postgres and software internals, sharing insights on databases, systems engineering, and life deep in the software stack.
155 articles from this blog
Explains how using RFC (Request for Comment) documents can improve asynchronous communication and decision-making in tech teams.
Extending a custom SQL database in Go to implement the database/sql driver interface, enabling standard interaction.
Extending a SQL database in Go to support indexes, focusing on PRIMARY KEY constraints and SELECT optimizations using tree structures.
Extending a SQL database implementation in Go to support binary expressions and WHERE clause filtering.
A personal review of the Surface Book 2 laptop, focusing on its suitability for programming and development work compared to other devices.
A tutorial on building a basic SQL database from scratch in Go, covering parsing, an in-memory backend, and a REPL for CREATE, INSERT, and SELECT.
A tutorial on building a minimal REST API in Java using Jersey and JOOQ with PostgreSQL, avoiding heavy reflection.
Upgrading a Lisp compiler's x86 backend to use stack-based value passing instead of limited registers, aiming for feature parity with an LLVM backend.
A technical guide on building a simple Go interpreter using the Go AST parser to directly interpret and execute a recursive Fibonacci program.
The article discusses the complexities and challenges of administering Kubernetes, comparing tools and cloud services, and speculates on its future ease of use.
A tutorial on setting up unit tests for C code using Google's gtest framework and CMake build system.
Extending a JavaScript x86 emulator to implement Linux system calls like exit and write, covering syscall mechanics and AMD64 conventions.
Extending a Lisp compiler's LLVM backend to support system calls for printing integers, covering type tracking and variable addressing.
A technical guide on building a basic x86 emulator in JavaScript, covering registers, stack memory, and core instruction implementation.
Explains tail call optimization with examples and implementation details for interpreters and compilers.
Extending a Lisp compiler's LLVM backend to support conditionals, subtraction, and comparisons, enabling compilation of the Fibonacci algorithm.
A guide to building a TypeScript interpreter using the TypeScript Compiler API to parse and execute code programmatically.
A technical guide on building a basic HTTP web server from scratch using Node.js, covering sockets, request parsing, and response handling.
A technical guide on implementing a simple JSON path parser in JavaScript, covering basic object filtering and handling edge cases.
Extending a Lisp compiler to generate LLVM IR instead of x86 assembly, covering IR basics, function definitions, and backend architecture.