Software Dev Notes

Developer Tools

Version control, terminals, editors and build systems.

Tools

How Build Systems Work: Dependency Graphs, Incremental Builds and Caching

Learn how build systems turn source files into programs using dependency graphs, timestamps or hashes, incremental rebuilds and remote caches.

5 min read
Tools

How Version Control Stores History: Snapshots, Hashes and Branches

See how Git stores history with content-addressed objects, snapshots, commit graphs and branch pointers, and why this design keeps changes cheap and safe.

6 min read