Programming and design learning resources

In software engineering profession very important is constant learning. I would like present my programming and design learning resources recommendations, that I consider most valuable. This is of course a subjective list and all materials I have read or are currently reading.


Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions – Gregor Hohpe, Bobby Wolf

Domain-Driven Design: Tackling Complexity in the Heart of Software
– Eric Evans

Implementing Domain-Driven Design
– Vaughn Vernon

Agile Principles, Patterns, and Practices in C#
– Robert C. Martin, Micah Martin

Code Complete: A Practical Handbook of Software Construction
– Steve McConnell

Clean Code: A Handbook of Agile Software Craftsmanship
– Robert C. Martin

The Pragmatic Programmer: From Journeyman to Master
– Andrew Hunt

Software Architecture in Practice
– Len Bass, Paul Clements, Rick Kazman

UML Distilled: A Brief Guide to the Standard Object Modeling Language
– Martin Fowler

Pro .NET 2.0 Code and Design Standards in C#
– Mark Horner

Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries
– Krzysztof Cwalina, Brad Adams

The Clean Coder: A Code of Conduct for Professional Programmers
– Robert C. Martin

Patterns of Enterprise Application Architecture
– Martin Fowler

Refactoring: Improving the Design of Existing Code
– Martin Fowler, Kent Beck, John Brant, William Opdyke, Don Roberts

Design Patterns: Elements of Reusable Object-Oriented Software
– Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides

Dependency Injection in .NET
– Mark Seemann

The Art of Unit Testing: with examples in C#
– Roy Osherove

CLR via C#
– Jeffrey Richter

Version Control with Git: Powerful tools and techniques for collaborative software development
– John Loeliger, Matthew McCullough

Patterns, Principles, and Practices of Domain-Driven Design
– Scott Millett, Nick Tune

JavaScript: The Good Parts
– Douglas Crockford

Systems Analysis and Design
– Alan Dennis, Barbara Haley Wixom, Roberta M. Roth

Microsoft SQL Server 2008 Bible
– Paul Nielsen, Uttam Parui, Mike White

Pro .NET Best Practices (Expert’s Voice in .NET)
– Stephen Ritchie