Too Long; Didn't Read
There are only three** things one truly needs know about software architecture. Everything either flows from these or are superfluous (with the exception of temporal considerations like events, asynchrony, streaming and queuing).