In HMH we have adopted fairly strict eslint rules regarding code complexity. I’ve written about eslint complexity metrics before, and will no doubt do so again! The rules work well for our code, but do tend to get in the way when we are writing tests.
If you have ever needed to use Python you will have hit problems with versioning and dependencies.
I thought I had this tamed when I learned how to use virtualenv, but installing Tensorflow on a new machine, with Python 3.6 broke everything, and I didn’t have a quick fix.