Software Architecture Patterns [pdf]
As someone who has the word "architect" in his software job title I feel like pretty much everything I read on the topic only serves to confirm that nobody knows exactly what software architecture is. I felt that way after reading "The Architecture of Open Source Software," which was essentially comprised of a set of discussions of how various popular applications were put together at varying levels of abstraction and without unifying themes  of any kind. I feel that way after browsing this PDF of architectural "patterns" too. When "layered" and "event driven" are presented as sibling patterns at a common level of abstraction I don't think there is any underlying principle at work that makes sense. Or at the very least, if there is someone will have to point it out to me.