Review: Building Scalable Web Sites by Cal Henderson
This book was written back in 2006, when the cloud was still in infancy. There were no 5$ vps, pay-as-you-go ec2 from aws or the all the fancy cdns. If you wanted to host a heavy traffic website you had to do it yourself. Even though much of this book is irrelevant in 2014, if you think about it’s usefulness as a guide in 2006, it’s a pretty good book. It introduces a novice programmer to a fully scalable architecture. It’s like a first step towards becoming a good architect.
The book starts by stressing on the importance of modularity for scalability. The author then draws an neat analogy with trifle and a multi layered architecture for your website. It continues to discuss various aspects such as your workflow, choice of hardware, version control, bug tracking, importance of good database schema and the heavy lifting it’ll do for you while scaling. It also gives a peek at techniques in writing your base code so that when you scale, the code does not become a mess to improve. It then goes on the discuss about various database scaling techniques and their use-cases. Finally it talks about service oriented architecture and various ways of implementing your api endpoints.
The reader should realize on reading the book, the various “real” problems people faced few years ago that aren’t a problem anymore now. The life of an architect is far easier compared to how it used to be. So the point is, now is better than ever to build the next big thing.
The book is invaluable in a way that even while cautioning the reader about the classic ‘premature optimization’ being root of all evil, it advocates the importance of foresight while building your application. Basically, if you enjoyed writing clean code, using version control, optimizing your data structures and queries, you’ll love reading this book.
Link to the book: Building Scalable Web Sites & Applications