#Book Review
206 articles
The Path to Staff Engineer: A Guide to Becoming an Excellent Technical Professional
A review of The Staff Engineer's Path. A compass for software engineers in positions to lead teams, projects, and organizations. From how to craft vision and strategy to ways of thinking, communication, and conduct, it broadly covers the abilities needed to lead an organization.
Architect's Textbook: Building Software Architecture that Creates Value
A review of the Architect's Textbook on building software architecture that creates value. Truly a textbook, it broadly covers the areas an architect should know, centered on software architecture, with rich footnotes, book recommendations, and references to expand your learning from.
Metaprogramming Ruby 2nd Edition
A review of Metaprogramming Ruby, 2nd Edition. A book for learning the mechanisms and uses of Ruby metaprogramming. Through the object model and dynamic features, it reveals the nature of Ruby magic, while making clear that truly mastering it takes real effort.
Tidy First? ―Experiential Software Design for Individuals
A review of Tidy First? Kent Beck's thin but dense book that makes you consider when to tidy your code. From the perspectives of coupling and cohesion, and cost and benefit, it frames tidying decisions empirically. Its arguments are concise and clear.
Decision-Making Techniques for Software Architects: Leveraging Leadership, Technology, and Product Management
A review of Decision-Making Techniques for Software Architects. A groundbreaking book focused on how architects make decisions. It introduces five questions and seven principles for facing architectural uncertainty, offering solid learning for anyone heading into design.
The Art of Thought Organization
A review of The Art of Thought Organization. Though first published before the internet spread, its message, the value of thinking with your own head and not over-relying on knowledge, still resonates today. In an essay-like voice, it lays out a philosophy for organizing your thinking.
Team Topologies: Adaptive Organization Design for Delivering Valuable Software Quickly
A review of Team Topologies. A book that views organization design and architecture from a team-first perspective. Presenting four team types and interaction patterns, it prompts you to think about how to design communication between teams from the standpoint of building an adaptive organization.
An Invitation to Engineering Organization Theory ~ Confronting Uncertainty and Refactoring Organizations
A review of An Invitation to Engineering Organization Theory. Despite the title, its real theme is uncertainty. It puts into words the many uncertainties around engineering and how to face them. From members to architects, anyone involved in software can learn from it, regardless of role.
Start with the Issue [Revised Edition] - The Simple Essence of Intellectual Production
A review of Start with the Issue (Revised Edition). A book that argues the importance of identifying the issue truly worth tackling rather than just solving a given question. It teaches that thinking deeply about the quality of the problem and starting from a valuable question shapes the quality of intellectual production.
freee Technical Book: Multi-Product Development at freee
A review of freee Technical Book: Multi-Product Development at freee. A book on the practice of multi-product development in business SaaS. It concretely discusses design decisions in the field, such as how to carve out shared operations like application and approval as domains, the relationship between the platform and each app, and the trade-offs that arise.
How to Solve It
A review of How to Solve It. A classic that teaches broadly applicable problem-solving thinking using mathematics as its material. It drives home, again and again, the importance of first understanding the problem well and approaching it from many angles through trial and error.
Mastering API Architecture: Practical Techniques for Evolving Architecture from Monolithic to Microservices
A review of Mastering API Architecture. Using C4 diagrams and ADRs, it explains API architecture patterns, testing, operations, and security. More of an overview than a deep dive, it suits grasping the big picture of evolving architecture from monolithic to microservices.
Practical Ruby Programming: Principles and Trade-offs for Effective Code
A review of Polished Ruby Programming. A book for those who, having finished the primers, want more practical knowledge. Tracing what Ruby-like code looks like through the lens of principles and trade-offs, it conveys Ruby's appeal while also teaching design ideas that transcend the language.
A Comprehensive Guide to the Distributed SQL Query Engine Trino
A review of A Comprehensive Guide to the Distributed SQL Query Engine Trino. It explains Trino, which, via ANSI SQL support and federated queries, handles data across different systems and scales resources in a distributed way for OLAP workloads. You learn an approach that differs from traditional data warehouses.
Ruby Code Recipe Collection
A review of Ruby Code Recipe Collection. A book that compiles what you can do in Ruby and common patterns as a recipe collection. Written clearly and concisely, it is just right for beginners learning Ruby to build up their repertoire.
Secure by Design: Safe Software Design
A review of Secure by Design. A book that advocates improving security from software design itself rather than patching individual vulnerabilities. Centering on DDD, it shows how careful domain modeling weaves security naturally into design, treating it as a design concern rather than a bolt-on feature.
API Design Patterns
A review of API Design Patterns. Starting from API design principles, it introduces a wealth of patterns such as resource-oriented (combining standard methods) and RPC-oriented (invoking procedures), teaching perspectives for good API design like being actionable, in a systematic way.
Good Strategy, Bad Strategy
A review of Good Strategy, Bad Strategy. Through many examples, it clarifies the difference between good and bad strategy. Good strategy has a kernel of diagnosis, guiding policy, and coherent action, concentrating strength; it also names the traits of bad strategy such as fluff and dodging the real problem, reminding you how vital it is to choose what not to do.
New Relic Practical Introduction, 2nd Edition: Fundamentals and Implementation of Observability
A review of New Relic Practical Introduction, 2nd Edition. A book that covers New Relic's features end to end while devoting many pages to how to use them. From the concepts of telemetry data like metrics and logs to practical ways of achieving observability, it has you covered.
The Healthy Programmer: Health Hacks for Enjoyable Programming
A review of The Healthy Programmer. A book that introduces ways for programmers to stay healthy while working, centered on exercise. Grounded in scientific research, it presents the idea that health grows from habits, such as not sitting for long stretches and changing posture, as concrete hacks.