I’ve just finished the wonderful SQL Antipatterns book by Bill Karwin. The book is a must-have reference for any developer that has to interact with a relational database system.
This post is a review of what this book is all about and why you should be interested in reading it.
Bill Karwin is a distinguished software engineer, having a huge reputation on StackOverflow with gold badges for MySQL, SQL, Database or Database Design.
As I previously explained, contributing to StackOverflow is a great way to become an expert on various programming-related topics, and Bill Karwin is definitely an expert in this field.
If you are a backend developer, a team leader or a software architect, this book is definitely for you. Especially if you are a junior developer, this book is going to unravel a lot of anti-patterns which are unfortunately way too common in enterprise systems.
The book covers 25 anti-patterns which are grouped into four categories:
- Logical database design anti-patterns
- Physical database design anti-patterns
- Query anti-patterns
- Application development anti-patterns
While I’ve bumped into some of these anti-patterns while developing enterprise systems, I really liked the way they were explained, and especially that we get to see a proper solution to the original problem.
Why you should buy it?
The book is very easy to read, that’s why I think it’s very relevant for junior developers as well.
Designing a database schema is not a trivial task, and it’s much cheaper to take as many good decisions as possible from the very beginning.
After reading SQL Antipatterns, you will be better prepared for designing a relational database system and the data access layer that’s needed for reading and writing to the database server.
All in all, I’m glad I read this book, and I wished I have known all these tricks back when I was a junior developer myself.