Whenever you’re building, always consider the layers above you and below you, whether they’re technical or social.

When building an object, which is more important: the interface or the implementation? The interface.

When building a feature, which is more important: the request or the reasoning? The reasoning.

When building a business, which is more important: the process or the product? The product.

When building, consider the task at hand but also the layers surrounding it. By going up the stack, we understand the value of what we’re doing. By going down the stack, we understand the quality of it.

Like abstractions in code, each layer requires different knowledge and different skills. Whether you’re typing code or teaching teams, consider the layers above and below. Appreciate them all.

Remember the value is in the stack, not in a layer. Many a brilliant coder was destroyed by poor management; many a brilliant leader has been ruined by poor implementation.

Ross Tuck // @rosstuck