This is both a pain (state gets confusing) but this statefulness also a huge boon when rapid prototyping. You don't need to rerun calculations to tweak a single variable. Sometimes the data preprocessing can be really expensive.
It does take a certain discipline to make reproducible notebooks. I like to always end the day with a "restart and run all" if possible.