Books
Software Development Principles
The complete reference of software engineering principles, patterns, and practices. This six-book series distills 492 essential principles into a comprehensive, language-agnostic guide. From SOLID and DRY to distributed consensus and domain-driven design, from security patterns to professional wisdom—these are the timeless ideas that transcend any particular technology or framework.
Each principle includes indicators of proper application and common violations, making abstract concepts concrete and actionable. Each book is thematically complete and can be read independently.
By Sergey Nosov. Available in paperback and Kindle.
Design Foundations
Core Principles and Object-Oriented Patterns
79 principles. Master SOLID not as rules to memorize but as trade-offs to navigate. Recognize the Gang of Four patterns as diagnostic tools: what problems they solve, what symptoms signal their need, what goes wrong when misapplied.
Architecture and Data
System Structure, Domain Modeling, and Persistence
68 principles. Evaluate Clean Architecture, Hexagonal, and Layered patterns as trade-offs for your context. Apply Domain-Driven Design to capture complexity. Choose persistence strategies that prevent your data layer from bottlenecking every decision.
Distributed Systems
Communication, Integration, and Service Design
82 principles for building systems that communicate reliably across process, network, and organizational boundaries. Apply CAP theorem and consistency models as frameworks for daily trade-offs. Design messaging patterns that decouple services without creating debugging nightmares.
Quality and Protection
Resilience, Security, and Testing
75 principles for building software that survives contact with reality. Implement resilience patterns that keep partial failures from cascading. Apply security principles from defense in depth to input validation. Layer testing strategies that catch different classes of bugs.
Execution and Delivery
Concurrency, Deployment, and Runtime Behavior
89 principles to bridge the gap between "it works" and "it runs in production." Master concurrency and parallelism, deploy with confidence using blue-green, canary, and rolling updates, and build observability that reveals what your system does under load.
Craft and Wisdom
Professional Practice and Engineering Judgment
99 principles of professional wisdom. Understand the laws that explain why software projects behave the way they do—Conway, Brooks, Goodhart, Hyrum, and dozens more. Recognize anti-patterns and code smells. Develop the strategic thinking that determines whether your technical decisions survive contact with organizational reality.
Configuring Windows 2008 R2 Web Server
A step-by-step guide to setting up Internet servers under Microsoft Windows. Configure IP addresses, host names, DNS services, firewall with advanced security, IIS with Apache side-by-side, and more.
By Sergey Nosov. Available in paperback.
236 pp. · ISBN 978-1-47921-630-7 · Paperback $18.78