
New playground: memory spy
New playground: memory spy
200 articles from Julia Evans.

New playground: memory spy

Introducing "Implement DNS in a Weekend"

New talk: Learning DNS in 10 years

New playground: integer.exposed

A list of programming playgrounds

Building a custom site for zine feedback

Some possible reasons for 8-bit bytes

How do Nix builds work?

Some notes on using nix

Writing Javascript without a build system

Print copies of The Pocket Guide to Debugging have arrived

Why does 0.1 + 0.2 = 0.30000000000000004?

Examples of problems with integers

Examples of floating point problems

Some business graphs for 2022

New zine: The Pocket Guide to Debugging

A debugging manifesto

Tips for analyzing logs

A couple of Rust error messages

Making a DNS query in Ruby from scratch

Why do domain names sometimes end with a dot?

How to send raw network packets in Python with tun/tap

Some ways to get better at debugging

A toy remote login server

What happens when you press a key in your terminal?

Monitoring tiny web services

Notes on running containers with bubblewrap

sqlite-utils: a nice way to import data into SQLite for analysis

Pages that didn't make it into "How DNS Works"

New zine: How DNS Works!

A list of new(ish) command line tools

Implementing a toy version of TLS 1.3

Celebrate tiny learning milestones

How to use undocumented web APIs

Some tiny personal programs I've written

Some things about getaddrinfo that surprised me

Things that used to be hard and are now easy

The multiple meanings of "nameserver" and "DNS resolver"

A toy DNS resolver

Reasons for servers to support IPv6

Hosting my static sites with nginx

Some ways DNS can break

How to find a domain's authoritative nameservers

Why might you run your own DNS server?

2021: Year in review

New tool: Mess with DNS!

DNS "propagation" is actually caches expiring

How to use dig

Debugging a weird 'file not found' error

Some notes on using esbuild

How do you tell if a problem is caused by DNS?

How to get useful answers to your questions

Tools to explore BGP

All my zines are now available in print!

New tool: an nginx playground

Teaching by filling in knowledge gaps

Debugging by starting a REPL at a breakpoint is fun

Quadratic algorithms are slow (and hashmaps are fast)

Write good examples by starting with real code

Reasons why bugs might feel "impossible"