Full description not available
Z**.
I needed this book way before it was written. Very thorough guide on how to build systems that work.
For me it was an instant 'click'. This book isn't simply about learning a programming language or a specific technology. Sure, if you go through the exercises you'll get to know Go Programming Language more intimately, but it also covers essential knowledge that helps through every stage of system design.It tells a story about how things can be built in a way that suits any given scale of operation. It shows common pitfalls and how to avoid them, and introduces engineering practices that ensure that what you create will work, and will be the right architecture for the requirements of your project. Technologies get obsolete quickly and tools are replaced by others but the content of the book stays relevant being a good guide on how to strike the right balance of simplicity and scaling.The reader will be able to go through the life-cycle of a complex project in a way that's likely applicable to most real-life software engineering project. From a simple 'proof of concept' to a large scale distributed system, most evolutionary steps are covered. The examples are detailed and it's worth spending time understanding the reasons behind each level of the design of the example project in the book.I'd recommend the book for engineers who see themselves in decision-making positions perhaps in a startup, maybe even with their own projects.The language of the book is not the simplest, takes a few pages to get used to the precise definitions.
E**D
Almost amazing. (good title with some frustrations)
The title aims to be a tour de force for the practice of Software Engineering using the Go Language. Early chapters serve as a general introduction to software engineering, principles and patterns you are likely to encounter in real-world as well as typical code theory such as SOLID principles and gang-of-4 patterns. The project management piece is insightful for the hobbyist and for the seasoned it’s probably a whistle-stop journey through their career to date. The testing chapter, chapter 4, is an absolute delight and it is so encouraging to see a topic often neglected if not completely ignored explored quite comprehensively. This alone could have been turned into a book itself as there is so much to enjoy there. Hands-on, project-based books can be hit and miss with projects that are often repetitive and can feel a bit cookie-cut. Here we’re undertaking a far more complex piece, we’re building a search engine. Top marks there. It promises much. Unfortunately, this is where the structure of the book takes a turn for the worse, it’s not a good ‘code along’ title because you’re often presented with snippets with no context as to which file they belong in, you’ll have to refer to the associated git repo, which is the finalised code therefore often quite different from what you’re presented with on the page. I stuck with the book piecing together around 300 pages (electronic edition) by referring to the git repo back and forth and still had a project that wouldn’t compile at any stage. At this stage, I took the finished code and worked backwards to get the most out of the book. I believe what I found the most frustrating was I really wanted it to be excellent as there is such promise for this title. If the author reworked the project and truly did it as a code-along exercise, explains what goes in what file at a particular stage (with a git repo coming with supporting branches that could be switched between for each stage) it would have been phenomenal. 5 / 5 for Testing concepts & coverage.5 / 5 for the project idea.4 / 5 for the technologies presented and covered as a whole.3 / 5 for the end code quality as some Go idioms were missed.2 / 5 for the reader comfort while following along. In the end, what should have been utterly amazing was left a little flat and frustrating. A 2nd edition rewrite that remembers to truly keep the audience in mind as a first consideration and a mixed proof-reading group would benefit this title no end. I clocked over 42 hours with this book. An unfortunate 3/5 and one to avoid if you have little patience but I would love to see a second edition with suggested improvements that would make this an easy 5/5.
Trustpilot
1 month ago
1 month ago