I had a hard time getting anything done today owing to a lack of sleep, but I did get two things done: more work on the Django tutorial, and figure out how to template out my current mechanical (e.g. translating a YAML config for one system to another) task at work. The work thing is a least a little code, but still writing config files so there's that.

As for Django, the MDN project is for a local library (the kind with books and librarians), which is basically what I wanted my first actual project to be. I have a massive collection of tech books in eBook form:

$ find . -name \*.pdf | wc -l
$ du -hs
11G .

and I like to be able to loan them out to friends; I can trust they'll delete the local copies when they check them back in. It'll also be nice to have a remotely-accessible copy of the library that isn't just in Dropbox. I found that my mental model of representation lined up well the tutorial's, which is encouraging.

I forgot to switch the nRF52 over to battery last night, so I had to start it this morning (around maybe 6 AM) and it's still going. The 500 mAh battery was probably well over what I actually needed, but I wasn't sure how much battery the radio would draw. It'll be interesting to see how much lifetime I can actually get, and then to hook it up to the LoRa board and see how much lifetime I can get on that.

I was talking to someone the other day and it reminded me of something from the first chapter in An Introduction to Natural Computation, in which the author compares programming to the brain:

  • neural networks as memory
  • reinforcement learning as the program (e.g. the actual action-taking and reflection part of the brain)
  • evolution algorithms as architecture

Even after the AI and ML courses, I hadn't really thought of it this way before, but it makes sense in a certain light.

Okay, sleep deprived rambling over.