This is a description of how I use Python in my data analyses, a system that has evolved over 7 years of a computational biology Ph.D. and working in industry.
Spreading out computation is made simple in Python with the built-in multiprocessing module. Yet, it is not immediately obvious how to effectively portray the completion status in a progress bar. In this brief tutorial, I demonstrate how to easily and accurately display the progress of a multiprocessing pool.
In the course of my work, I stumbled across a misconception I had about the Final type annotation. I perceived it to mean that the annotated object should not be mutated. In this post, I demonstrate how this is an incorrect understanding of the Final type hint and a better solution to get help from the type checker in these situations.
Pushing Rust projects to Deta can require cross-compiling or timeout during the build process. Compiling on a Linux runner on GitHub Actions and pushing the artifact can solve both of these issues.