I like hack (1) a lot. But at least for me, it's hard to stop my brain when it's in the middle of something, I have this rush to get it done, which is why I like working on my own stuff of the side.
But maybe stopping at a reasonable midpoint without, like a subfunction, is a good idea. What kind of midpoints do you use?