Question: why jupyter notebooks are bad?
Answer: This is generally considered bad practice in Python development. The reason for that is that it's very hard to reason about the effect of running a sequence of cells. They're all modifying the global namespace, which means your notebook is effectively a horribly large state machine.