30 October 2023

"Robust Python: Write Clean and Maintainable Code" by Patrick Viafore

When you don't make a living from programming but are simply an amateur who likes to program, the difficult thing is not learning multiple languages ​​but keeping them alive without forgetting them. When you can only dedicate a little time a day, you focus on a project with a certain language and the rest of them become rusty. It is true that there are books with which to review, but over time you surpass the basic level and no longer just any book will do to keep a language fresh. I'm afraid I've reached that point with Python and I was a little desperate to find a book that would really give me something new. Until I was fortunate enough to acquire this book in a package (blessed Humble Bundle).

"Robust Python: Write Clean and Maintainable Code" by Patrick Viafore is not a book for novices, or even for intermediate developers, but rather for experienced developers who will most appreciate the proposals in this book for developing complex applications that can be maintainable over time.

The book begins by explaining Python's optional typing system and takes it much further than Internet tutorials to an unusual level of sophistication. Did you know that you can define interfaces in Python? Did you know that you can define your own types? Dataclasses, Enums and other types are presented here with very interesting functionalities that are not even glimpsed in the introductory texts.

After that, it dives deeper into some of the SOLID principles and architectures, such as events, to fulfill them. All this, following some simple and easy to understand examples.

Finally, the Python ecosystem for automated testing is discussed extensively, explaining multiple strategies.

I liked the book a lot. It's to the point, it's enjoyable and it really provides new tools that don't usually appear in other books at this level. In short: a very good purchase if what you want is to polish your Python to start becoming an expert.