PHPnews.io

Early release of the Advanced Web Application Architecture book

Written by Matthias Noback / Original link on Apr. 15, 2020

In the Epilogue of the Object Design Style Guide, I started happily outlining some of the architectural patterns I've been using for several years now. I wanted to give some kind of an overview of how the overall design of your application would improve if you apply the object-design rules in that book. I soon realized that an Epilogue was not enough to cover all the details, or to communicate the ideas in such a way that they would be applicable in everyday projects. And so a new book project began...

I started working on it exactly a year ago, in April 2019. The initial excitement kept me going for the first 100 hours or so, after which other projects came up (like the re-release of the style guide with Manning, lots of programming projects and trainings). Finally there was some time to finish the work, but then the Corona crisis kicked in.

Even though it's a strange time to be releasing a new book, I think it's ready to be read by you. I'm very happy to be using the Leanpub platform again. My experience with Manning was great, but I wanted to be completely independent again, so I could experiment with several new forms of publishing. A book alone is nice, but I wanted to offer a more elaborate learning experience this time, which is why I'm offering several things at the same time:

Get a new chapter every two weeks

advanced-web-application-architecture.jpg

I'm releasing the book while I'm still working on it. Right now an early release is available for $15,-. It contains the preface, an overview of the contents, the introduction chapter which introduces the concept of infrastructure code, and the first chapter of the first part of the book. The first part is called "Decoupling from infrastructure". The first chapter is about designing the domain model in a decoupled way.

During the following months I'll be publishing one new chapter at least every two weeks, and every time this happens, the minimum price will go up with 2 dollars. Note that if you get your copy now, you will be entitled to all future updates.

Gain access to a new platform: "Read with the author"

read-with-the-author.png

There's a special package available on Leanpub which gives you access to the new "Read with the author" platform. If you buy that package, you can join a regularly scheduled video chat, where we go over a new chapter every two weeks. You will be able to use these sessions to deepen your understanding of the topic, and learn about related topics that didn't make it into the book. You can ask questions too, so you'll be prepared in the best possible way when you start applying the ideas from the book to your own projects.

Inspect a showcase project that illustrates the book's concepts

showcase-project.png

The book itself contains many architectural principles and design patterns, illustrated with code samples and diagrams. However, not all the relevant details fit on a page. And sometimes things are a bit different in a real-world project than they are in idealized code sample scenarios. In fact, the real-world project that I offer alongside the book is the "Read with the author" platform which I've just described. Its code base follows the concepts explained in the book and shows how the different objects work together to provide a working application that is not another Todo app, but a normal application, with everyday use cases we can all relate to. Reading through the code and the tests will provide you with many implementation ideas for your own projects.

badge-135.svg

Access to the showcase project is kindly supported by Gitstore.

Conclusion

I hope that all of this adds up to a nice reading experience, and that you'll have fun with the book, and any combination of related products. Get it now, while it's hot, and join other readers in their adventure!

And as always: thank you very much for your ongoing support and interest.

P.S. If you want to buy this book for your team, or for multiple teams: check out the Team and Enterprise licenses.

matthiasnoback

« New in Symfony 5.1: Cursor control - A First Netlify Function in Golang »