Software Principle 2: Always understand your context
There are two keys to successful execution: knowing what to do and understanding the environment or context. If you have those two things, you are sure to have success.
However, as everyone is aware can be insanely difficult. If what you are trying to do is incredibly difficult, then there is an excellent chance you don’t know what to do. Conversely, if you are working in a chaotic environment, it is hard to understand your situation. That said, if I could pick one of those two, I’d always pick knowing my context. Context will help illuminate the problem and will let you know how to get the resources needed to discover what to do.