Philip Wills believes that thinking about independent services and single responsibility applications rather than microservices can help to clarify the architectural complexity trade-offs.
Ondrej Krajicek discusses how basic techniques - SOLID principles, Design by Contract - and certain metrics can be used in architecting microservices, and the benefits resulting from using them.
Anil Wadghule explains why applying SOLID OO design principles to their extreme leads to Functional Programming.
Nat Pryce, Steve Freeman advise on design principles useful to create code structures with objects that fit together and communicate, and where the capabilities and the information flow are explicit.
Robert Reppel discusses applying DDD and SOLID techniques in order to improve legacy code, exemplifying with real code.
Colin Jones discusses applying the SOLID OOP principles to Clojure programming in order to create systems that are easy to change.
Phil Japikse explains SOLID software principles - Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion- and how to apply them using design patterns.