Understanding npm package upgrades

I maintain a small task management app called Attainment that I used to teach myself more about front-end javascript development. It uses the Vue.js framework and I use npm to manage my upstream dependencies. I don’t get much consistent time to hack on it, so it’s usually several months in between development cycles. When I come back to the project, I’ve invariably found myself asking “what’s changed and what should I update?” when it comes to my dependencies. »

Going Nuclear with Git Removal

We recently had a developer commit several large movie files into the git repository. Although this can be reverted with a simple call to git rm, it doesn’t entirely solve the problem. Since git is just tracking snapshots, the mp4 is still in the repository’s history. Every time you initiate a git clone, you will be pulling down that mp4 file. This is unnecessary bloat and should be removed. Here’s a guide to completely torch a file from git so that it is as if it never existed in the first place. »

Django Caching with Redis

Django has a pretty good documentation page for enabling caching on the framework. It gives an overview of why caches are a good idea, when to use them, and the various configuration options to make your backend play nice with Django. However, of the four backends mentioned in the docs (memcached, database, filesystem, local-memory), Redis is not listed as an option. This is surprising as Redis is a key-value store that works very well as a cache server and compares favorably to memcached. »