Software is a machine-executable representation of a mental model.
Code is a textual representation of a software model, and can be used to communicate between two people (who each work to form their own mental models based on the underlying representation).
Design your products to require the smallest reference manual you can get away with.
People who build software need tight feedback loops.
When it comes to building UI, most of the time direct manipulation is the right answer.
There's no such thing as "managing top-down": only "supporting from the bottom up".
Don't design for a portfolio. Design for real humans.