Planning takes time and time is money. If I could get by with less planning, I will.
You need luck when combining all code that requires a given piece of data into a single, scoped block, or region, because if you end up needing that data once you're working on a different part of the script (things like that come up in the real world), things can get messy.
Never count on plans. Code should be flexible. I don't think much about making each routine suitable for a module, but I'm always able to easily access the data I need because I keep data in global variables.