By Carsten | April 2, 2010
For once, an “Expert” book where you not only can, but must take the title seriously. This book is choke-full of information, examples and best practices written by some of the foremost experts in their respective fields. All of the authors clearly have extensive experience working on setups requiring expert knowledge. Best of all, they are not afraid of thinking outside the box and the solutions they present are in no way limited to pure PHP and MySQL solutions.
This book really does expect something from the reader, so perhaps a word of caution is in order: you really do need to be familiar with a range of non-beginner subjects on both PHP and MySQL. I strongly recommend that you first read Chapter 1 of the book, helpfully available on the books’ website. If you are not familiar with the contents presented here, you’re not likely to gain much from your purchase.
If, on the other hand, all that you read there is Known Stuff, you’re really in for a treat with this book. If you write programs because you have that personal itch, this book is going to make you feel as if you’ve just been attacked by a horde of mosquitoes. Really. You’ll be re-thinking everything about how you build your websites from now on. But you won’t need any itches for this book to make you re-think how you work with PHP and MySQL.
The book is extremely information-packed. I’m not one to shy away from reading 3-400 pages of technical references in a day, but this book is so densely filled that you simply won’t be able to do that. Considering the breadth of topics covered, the authors at the same time manage to dive very deeply into each subject, covering all relevant resources, options, program libraries and best practices along the way. This does not make the book hard to read, to the contrary the language is very clear and concise. Don’t expect information to be repeated anywhere.
Whether it’s due to the authors or excellent editing, the language is very consistent and flows very well from chapter to chapter. If it wasn’t for the change in subject matter and the authors’ stated focus areas in the beginning of the book, it would be hard to discern that three people have been involved in writing this book.
A wonderful trait of all the authors is that they are very frank in assessing the available technologies, and don’t mind telling you which things simply don’t work, and why you should stay away from them - even when those technologies are offered by their respective employers.
You’ll learn not only how to make the most optimal pure-PHP and pure-MySQL solutions, you will also see how you can integrate both of these with external programs by writing your own extensions and libraries. Descriptions of best practices in subjects such as user authentication and security will probably make you want to go back and check whether something could be improved in your own code and web server setup.
The chapters on advanced caching techniques, multi-tasking, optimization and debugging considerations are all very detailed and to the point. You’ll be able to immediately put the techniques presented to use, and the book will serve you not only as a great tutorial, it will also be a great reference later on when you want to tune your setup.
There are of course a few chapters that could have used a bit more work. One chapter consists of barely more than a listing of output of feature lists, another contains very lengthy outputs that the reader might as well pull up on his own screen when working with some of the products. But these examples really are exceptions in an otherwise extremely well-written, informative and above all useful book.
Another word of caution: The book is highly UNIX (Linux) centric. If all your work is done using Windows, your benefit from reading this book might be limited. Then again, reading the book and realizing the potentials just might explain to you why it is most shops deploy their PHP/MySQL solutions on Linux.