I read an article today about Scripting with Elixir that caught my eye because it touches on a problem I often struggle with: how you do easily distribute a script along with its dependencies in Python? Elixir has an example of what this could look like in the form of Mix.install. This feature allows one to distribute just the source code of your script and dependency management can be done when the script runs, without needing to distribute a mix.esx or requirements.txt file (as one does in Python) along with the source.

Programmer’s notebook

I recently wrote about what I view as the uncertain future of personal knowledge, especially when it comes to cataloging your own set of notes on how to use open source tools. However, I’m more optimistic that there is value in maintaining a programmer’s notebook for projects your work on and things you learn. From your notebook, every nugget of wisdom you dig up from a conversation, wiki, document or readme can be quickly recalled and sourced. Working on software, there are countless tricks and reusable patterns you can plugin to save yourself time and increase the speed at which you can solve problems. While it’s become tempting to rely on ChatGPT and similar LLMs to get this information on demand, memoizing it in a predictably recallable well helps ensure you can quickly access and reapply it in the future. Things frequently recalled end up committed to memory.