I find myself thinking in similar patterns. I try to always be aware of the bigger picture the code is fitting into. I can not count the umber of times in twenty years I ran across code that prevented some function from happening in its current incarnation, or how often I found the same logic in multiple places using different code.
I also try to remember who my future audience is by what platform they develop on (primarily). I tend to see things written differently by big iron, *nix developers and M$ developers.</p?
I liken my thinking to: Is this all I am? Is there nothing more?
Of course, this mantra does have a limit before it becomes a project killer. ;-)