This is a pretty good book with some solid advice that in the middle turns into a self-help "do good, don't do bad" kind of a thing, but then recoversThis is a pretty good book with some solid advice that in the middle turns into a self-help "do good, don't do bad" kind of a thing, but then recovers at the last chapter.
Worthwhile reading if you are not afraid to skip whole chapters the moment it starts to feel off....more
A prime example of why even smart people need an editor.
While the ideas described here survived and evolved into one of the primary architecture styleA prime example of why even smart people need an editor.
While the ideas described here survived and evolved into one of the primary architecture styles, the book is terrible. It is very high level, always talks about how something should be done, without giving any practical advice outside of "do good and don't do bad".
Overall, I'd say that this is the architecture self-help book. Which is a disapointment, because while reading you do see that the author is a very smart person and the ideas conveyed here survived decades...
But as a book, this is too long, unreadable and mostly useless. 2/5...more
Amazing book to read after their previous "Software Architecture for Beginners" that focuses on transition to a microservice architecture.Amazing book to read after their previous "Software Architecture for Beginners" that focuses on transition to a microservice architecture....more
The best book on Scala I've read so far. Not for the beginners, but perfect for those who read through some other beginner book and tried some things,The best book on Scala I've read so far. Not for the beginners, but perfect for those who read through some other beginner book and tried some things, and now want to advance their knowledge of the language....more
This is not a great book about Scala. It is 500-something pages after which you will have to read another book. It also has almost all of the major flThis is not a great book about Scala. It is 500-something pages after which you will have to read another book. It also has almost all of the major flaws of programming books. Feels like someone was playing Bingo.
Key negative points: - The book goes in-depth and repeats itself on easier topics. On topics that are almost copy paste of Scala docs. There are probably 150 pages total spent on map, flatten and flatMap concepts for each type. Yet, when it comes to complex fundamental topics the book just literally flies through them, at best uses them without explanation, at worst just implies that reader knows a lot about FP or OOP. - The book spends roughly 1/3 of its volumes on libraries. When, again, not explaining some core concepts in depth. Libraries that rely on complex Scala topics (that are not explained in the book) are thrown in as is in the very beginning of the book. - The book spends pages on syntax/examples/descriptions of random tasks that are hard to follow. It can define a class and then use it after 20 or so pages. It can spend a whole page on just a copy paste of a code example, of which you are really only interested in 2-3 lines of code. - The book can have a chapter on a core concept of the language that is not present in other languages. Which is good. And then 3-4 chapters later use some feature of it that was not explained in the original chapter. Literally pointing an arrow at it with 1-2 sentence paragraph about what it is. - The capstone projects are... weird. 3rd or so capstone project makes you write a REST API using a library that heavily relies on Streams, Encoders and Decoders. And the NEXT chapter after that teaches you what List is (and yes, List is also used in capstone project before it is even introduced)
Overall this is either editorial mistake or the author could not focus on the kind of audience they expected. A book for beginners? Then don't fly over complex fundamental topics. And explain why map methods are so important. No need to copy paste docs for each type even for beginners. A book for experienced engineers? Then go in-depth on complex Scala specific features and don't repeat the syntax of map and flatMap.
The only thing this book can teach is how to solve specific artificial problems given in the book itself. And this is hardly 'teaching' Scala. I rarely give such negative reviews but whether you are a beginner or an experienced engineer I would say avoid this book and don't waste your time....more
A superb zero to intermediate book for k8s. It might not cover everything you need to DevOps Kubernetes, but if you are an engineer that works or wantA superb zero to intermediate book for k8s. It might not cover everything you need to DevOps Kubernetes, but if you are an engineer that works or wants to work in a Kubernetes environment - this book is for you!...more
This book is more of a 400 page-long tutorial rather than a book. However a tutorial that shows you end to end development 4 stars - "really liked it"
This book is more of a 400 page-long tutorial rather than a book. However a tutorial that shows you end to end development and deployment of modern web technologies, so it is very useful to read through, pick up a few tricks and commands and have as a reference book on the shelf.
The only downside is that author tends to repeat themselves a lot and there are whole pages of 'introduction and retrospective' that can be skipped without missing anything of importance....more
Interesting topics. Clear, concise explanation with examples and links. Talks over very broad, hard to master from documentations topics. A must read Interesting topics. Clear, concise explanation with examples and links. Talks over very broad, hard to master from documentations topics. A must read book for anyone who's interested in topics beyond act of writing code. Even if you've never heard of micro frontends. ...more
Ok, where do I start. This book is disjointed reiteration of the same (in my opinion questionable and idealistic) idea that there2 stars - 'It was ok'
Ok, where do I start. This book is disjointed reiteration of the same (in my opinion questionable and idealistic) idea that there are survival, learning and self-management phases in software teams lifecycle.
Normally I'd give this book 3 stars because there are some sound ideas here and there and there was a very good part about the commitment language. However after reading it I can say that it has one major flaw that makes this book downright dangerous. Let me reiterate, if you are 'new' to the management of software teams do not take everything in this book for granted and do not follow everything you will find here. Take this read as any other self-help book: pick what you like, forget the rest.
The biggest downside of this book is same as it is in mediocre self help books: it is good at highlighting the issue, it is bad at providing any solution to it in many cases (yes, 'do good things to get good results' is not revolutionary enough to write a book about it).
However sometimes when it does provide a solution it can be downright harmful.
To focus on the last part, the author of the book misses the point that management is about dealing with people, up down and horizontally it is all people, who in their majority are very emotional. Author's suggestion of pushing your agenda on people until they agree and if they don't, and they hate you as a result of this, it is their problem, and you should leave the company and 'try' it again in the next one is terrible.
Second major flaw is the assumption that every single software engineer comes to work to learn something and everyone is super excited to get out of their comfort zones. Best case scenario if you follow this book you get a team where few people will learn some skills not very related to their job. (That is only possible if your team members were interested to begin with in their professional growth) Worst case scenario following advices in this book you will make enemies with your upper management and with developers who (surprise!) are adults and might (surprise!) have their own lives, world views, goals, moods and agendas that might not align with your desires for them to learn....more
Not a bad book, however for the most part it is just react docs littered with a lot of code examples from the same tutorial app that spans the whole bNot a bad book, however for the most part it is just react docs littered with a lot of code examples from the same tutorial app that spans the whole book. In my opinion such approach only distracts from learning and understanding the concepts and the theory behind them.
Book claims to be written for advanced level, but stops and explains everything a lot. Which is again not a bad thing, but why claim it is written for experienced engineers?
Overall I do not regret buying and reading this book but wouldn't recommend it either. React React documentation instead. And then if you still have some topics you didn't understand buy and read this book, and code on your own....more
Very good beginner introduction. Focuses a bit more on IT-level administration than DevOps. But still a great introduction into Linux ecosystem. HighlyVery good beginner introduction. Focuses a bit more on IT-level administration than DevOps. But still a great introduction into Linux ecosystem. Highly recommend for beginners or developers who want to learn a bit more about Linux....more
Amazing book on FP in JS. Might be the best one there is. Just as any other book on FP the moment it gets to Category Theory or Monoids it does get comAmazing book on FP in JS. Might be the best one there is. Just as any other book on FP the moment it gets to Category Theory or Monoids it does get complex, so beware, especially if you are a newcomer to software engineering....more
This is a very complex book that explains advanced topic in a complex programming language using complex example of a blockchain application.
Is it usThis is a very complex book that explains advanced topic in a complex programming language using complex example of a blockchain application.
Is it useful? Absolutely, if you are mid+ level writing JS for money that other people need to interact with it is a very good read.
Do you have to read it? No. About 50% of the technologies and APIs discussed are for library contributors and framework developers and probably can be even harmful if you start using them in day to day development without very solid understanding of what you are doing. (Not the book's fault, engineers tend to over engineer and the problems that require complex advanced solutions are not very common in day-to-day dev work. And if you are using them, you need to be good enough to abstract them and simplify for the consumption so that rest of the code is still maintainable by the rest of your team. Otherwise you can end up with very complex and opinionated codebase.)
Could this book be better? Yes. Using blockchain as an example app might have been a mistake since it creates a lot of additional cognitive overhead that takes away the recourses that are very needed to actually understand JS topics in this book.
A good introduction on the subjects of functional programming. Some topics are not explained very well. Some are explained via libraries that became lA good introduction on the subjects of functional programming. Some topics are not explained very well. Some are explained via libraries that became largely obsolete in 2021. I would probably say that THIS IS NOT A BOOK FOR BEGINNERS, but honestly so is the whole topic of declarative functional programming.
Overall I would probably not recommend this book in 2021, however it was very good and useful in 2016....more
The worst part in this book is its title. I really think that this book should be called 'How to write maintainable and scalable software'. It touchesThe worst part in this book is its title. I really think that this book should be called 'How to write maintainable and scalable software'. It touches so many great points around software architecture and design, being honest about pros and cons of each approach. It is also a bit repeating itself too much and no, each chapter probably doesn't need a full page of explanation about what am I going to read in it, just get to the chapter itself.
Otherwise great, a must read for anyone who writes code that will be interacted with or used by other people....more