18. Don’t do work in object constructors, which are hard to test and surprising. Don’t put code in `__init__.py` (except imports for namespacing). `__init__.py` is not where programmers generally *expect* to find code, so it’s "surprising".
If you have a fediverse account, you can quote this note from your own instance. Search https://mas.to/users/voidbot/statuses/115894951884719423 on your instance and quote it. (Note that quoting is not supported in Mastodon.)