Where can I learn more?
Why did you write this book?
In my career in software, I’ve seen many good languages, tools and methods adopted. But none had the impact we’d hoped for. I came to realize that there’s one thing that makes for great software: conceptual clarity in the design. So I’ve spent the last ten years thinking about how this can be achieved, and this book is the result.
Is this a practical book?
Yes! In a series of short chapters, using examples drawn from over 100 familiar apps, I explain the key ideas and principles and show you how to apply them. Then for readers who need more, there’s an extensive collection of free-standing ’explorations’ that delve more deeply into design subtleties and explain how concept design relates to everything from data abstraction to design thinking.
Who should read it?
The book is written for everyone who creates software—programmers, software architects, program managers and UX designers; for all those who guide its development—VCs, CTOs, startup founders, marketers, analysts and consultants; for novices and experts, students and researchers; and for all of us who would like to have a deeper understanding of the software we use every day.