Explicitly declared static types : The missing link

How do we understand software? Using it is a powerful approach, but it provides examples of properties, not general truths. Some static knowledge is needed.