If you know software but are finding your way into the power grid, this page gives you a place to begin. Choose the question closest to your work: how the grid works, where software fits, or how its networks communicate.
Software in the Grid is where I explore that world. I follow systems through their layers, rebuild simplified versions, and use code, diagrams, and experiments to make the machinery easier to reason about.
My goal is to build Software in the Grid into a practical home for software developers working with power systems.
If you’re new here, start with the grid itself or the networks connecting it. Software Foundations is the supporting section for the lower-level ideas behind those systems.
1. Understand the grid
New to the energy domain? Follow the published articles in this order:
Electricity Is Not Water: A Better Mental Model for the Grid — begin with the electrical ideas behind the infrastructure.
The Grid Is Not a Pipeline — build a picture of the interconnected physical system.
How the European Grid Stays Stable — connect operations, monitoring, control, and protection.
How Europe’s Power System Is Organised — understand the organisations operating the system.
Where Software Lives in the Power Grid — connect that picture to software.
Keep the series guide handy as you read:
2. Find where your software fits
If you already know the basics of the grid, go straight to Where Software Lives in the Power Grid. Use it to place the systems you encounter within the wider software ecosystem. Read How Europe’s Power System Is Organised alongside it when the organisational context is unfamiliar.
3. Understand the network beneath your application
Start with the two published installments of Networking Machinery for Software Engineers:
Part 1: Rebuilding a Local Network with Medieval Signal Towers — Ethernet frames, MAC addresses, switches, broadcast, and ARP.
Part 2: Extending The Empire and Rebuilding a Global Network — IP addresses, subnets, gateways, and routing between networks.
The series guide below brings those articles together. The series is in progress; these two installments are the starting path available now.
Software Foundations
Software Foundations is the supporting section. Come here when you want to understand the machinery beneath networked software. You do not need to finish these series before starting the grid articles; choose the question you need to answer.
How does a secure connection work? With TLS, build an incomplete protocol, find what breaks, and work toward encryption, integrity, key exchange, certificates, and trust.
What makes encryption and authentication work? In the cryptography series, explore the machinery underneath, from ciphers and hashes to message authentication and public-key encryption.
How do computers agree on time? Follow timestamps down to Linux clocks, drift, NTP, PTP, and the problem of getting several computers to agree on “now.”
HTTP and operating systems: Building Own Web Server follows requests through sockets, TCP, concurrency, and operating system interfaces. It is where this rebuilding habit started.
For a worked connection between projects, read Adding Homemade TLS to a Homemade Web Server.
Browse by topic: Grid Fundamentals · Software Foundations · All articles.
How I work
I usually begin with a smaller or deliberately incomplete model, make it work, and find the assumption that breaks. Then I introduce the next piece because the problem makes it necessary.
The finished technology often hides the reasons for its own shape. Broken versions are much less polite. They show you exactly what is missing.
You can find code and experiments on GitHub. I publish as I learn, so the map keeps changing as I understand more.
If you want to follow that work, subscribe to Software in the Grid.








