4 ms·
Always wanted to have something like the crafting interpreters style book but implementing a database from scratch, and bonus points for a distributed system wi
by birdymcbird 4y ago
Always wanted to have something like the crafting interpreters style book but implementing a database from scratch, and bonus points for a distributed system with a leader/replica model, leader election and things like partitioning, resizing partitions, handling node failure.
Something like building a toy dynamodb variant. Would pay good money for this.
Is one thing to read about and guesstimate implementation choices from white paper. Totally another if databases/distributed systems expert walks you through propagating write ahead logs to replicas. Hehe
And what it means to have eventual consistent writes vs strong writes in practice. A way to teach by doing.
- samsquire 4y agoI ought to spend some time documenting the code. I prefer reading a description of an algorithm than the code of the algorithm. From the description I can work out how to implement the code myself. I might look at someone's code for ideas or compare how I solved a problem. I too would enjoy a whitepaper of database design. I document all whitepapers read on GitHub profile (see my HN profile) I have a simple btree here https://GitHub.com/samsquire/btree https://GitHub.com/samsquire/btree Farley Knight added an AVL tree to the repository that I need to change the unbalanced tree to use it. I would like to know how SQLite VM works so I can write a database VM. I learned some things from crafting interpreters book and started writing my own programming language here https://GitHub.com/samsquire/multiversion-concurrency-control https://GitHub.com/samsquire/multiversion-concurrency-contro...