We prepared and recorded episodes that reimplement the core data structures of Git in Swift (without any third-party dependencies). The model of Git is really simple — I think it’s beautiful. In the episodes we recorded everything is read-only, but I managed to get writing to work as well. The tricky part is that objects in git are stored with zlib compression, which requires both a (static) binary header as well as a checksum. I spent quite some time getting the checksum right — but at least the end result is not a lot of code.
We also continued working on all the diagrams, mostly focusing on animations and transitions this week. For example, this accompanies a section about implementing a custom animatable (shake) modifier:
I spent a lot of time with the kids and in the garden. We improved our watering setup (although I hope to get a better rainwater system soon) and I did a whole bunch of odd jobs that are nice to cross off the list.
Now that we moved in, I can really tell the difference in energy levels, especially when running. In hindsight, it kind of felt like I could only perform at 60% of my normal capacity (in life and in running). Now, I feel like I can do proper training again, even though I’m much slower than a year ago. But with time and patience I think I can get back towards running some good times again.