A summary of the authoritative work on software construction
Why do we choose not to utilize the lessons of the past to guide our programming endeavors?
The seminal and definitive work on software design patterns
Talk on Clean Architecture to the Utah Laravel Meetup group
Uncle Bob's talk on Clean Architecture to the the Norfolk developers meetup group
Guidance on when and where to pragmatically use interfaces
Patterns to assist with the creation of enterprise software. Enterprise software can be small to large applications, but the use of good patterns can assist with development, maintenance, longevity, and cost-efficiency.
The principles, patterns, and practices chosen to assist with the delivery of software projects are essential to the long term success of the project. Design patterns, development principles, and clean code practices directly impact the quality and speed of delivery of software.
Uncle Bob outlines what he has learned over the years when it comes to architecture on a systems and project level. The goal of architecture is to reduce the long-term cost of a project by delaying decisions and maintaining as much flexibility as possible. A special team does not accomplish this goal but architects who are the best programmers. Through the pragmatic application of principles and architectural methods, one can make a project easier and more cost effective.