3 ms·
A couple of things I found helpful along those lines: * Data storage: what does the schema look like? Even if it is not persisted to a relational DB, is it pos
by samspenc 5y ago
A couple of things I found helpful along those lines:
* Data storage: what does the schema look like? Even if it is not persisted to a relational DB, is it possible to draw out a schema of a data model and all the relationships ("JOINS")
* Add logging to code you are trying to debug but are hard to understand and repro bugs for in production. Once you have logs about the full state that reproduces the error, the issue will be easier to fix. Don't roll out a fix before fully understanding an issue. As a corollary to this: always add a task to remove this verbose logging you added once the bug is fixed!
- bckr 5y ago> Add logging to code you are trying to debug This is a great idea and should absolutely be a standard. There's a whole logging level ("DEBUG") devoted to this that I think goes way underused. Another, related idea is to use a debugger. Using PDB for Python codebases has sped me up A LOT.
- nine_k 5y agoI worked with software where you could change logging level dynamically, per subsystem. The ability to switch to DEBUG level, get a wall of text from a problematic spot, and switch it back to WARN was very, very helpful for troubleshooting prod.