SQLite as a Teacher
The University of Chicaco published a collection of programming assignments designed for teaching the internals of databases. It’s called chidb, and I’m giving it a try. I’ve been using relational databases for years, but chidb has been a great way for me to view database management systems as something other than a black box. Bonus: This’ll help me get acquainted with C
Chidb Quickstart
One drawback to this online course is that there’s not a lot of guidance. This means that it took me a couple days to get set up. If you want to give chidb a try, and you don’t want to spend a couple days getting setup, try using my chidb quickstart repo. If you clone it and follow the steps in the readme, you’ll have a working docker container with a chidb bind mount in about five minutes. This means that you’ll be able to make changes to the chidb repo on your own machine, and use a docker container to install and run it. My favorite part about this is that you won’t need to install any mystery software on your own machine.
SQLite Header Viewer
Getting though the unit tests for Assignment 1, Step 1 takes quite a bit of time if you’re starting from scratch. If you want to view the SQLite headers that chidb uses for the unit tests, you can use hexdump, or you can try out my SQLite Header Viewer, which will tell you exactly what is wrong with a corrupted SQLite header
Notes
If you’d like to check out my notes or my work, they’re both on the chidb quickstart github repo
Quick Shoutout!
I wouldn’t have made it this far if it weren’t for Brandon Hopkins, who’s attending the same Recurse Center batch as me. He helped me get set up and was there to answer questions whenever I got stuck