Write shy code — modules that don’t reveal anything unnecessary

“Write shy code — modules that don’t reveal anything unnecessary to other modules and that don’t rely on other modules’ implementations.”

~ Dave Thomas