I find mypy very helpful for refactoring Python codebases. It sometimes finds bugs before I run my refactored code, but a large percentage of the time it's just helpfully pointing out where I have the wrong number of args.
Pareto principle strikes again.
miniblog.
Related Posts
Self hosting is really nifty, but it's an additional cognitive burden.
For example, I can run difftastic on its own history. I use plain git-diff just as often.
My best improvements have come from using it in other codebases. It lets me think about one thing at a time
scc is a fast, polished tool for counting lines of code: https://github.com/boyter/scc
The author has several great posts discussing LOC tooling, including this one on exploring codebases with it:
Excellent discussion of a Unison meetup, discussing their design (globally consistent content-addressed codebases!), type system, and tooling: https://unisonweb.org/2019-04-04/first-meetup.html#post-start
It's really impressive how much they've achieved.