The recommended books are mainly related to my interests and work, mainly based on interests, so these 10 books will mainly focus on:
- “EDGE: Value-Driven Digital Transformation,” and “And Digital Transformation: 34 Tips for Business Breakthroughs” are two books on digital transformation.
- Software development collaboration: “User Co-creation: Community Empowerment Product Practice Manual”, “High-Performance Team Model: Organizational Structure Supporting Rapid Software Delivery”
- Software Engineering: Living Documentation: Evolving with Code
- Software Architecture: “Software Architecture: Architectural Patterns, Features and Practice Guide”, “Deconstructing Domain-Driven Design”
- Embedded: TinyML: Deploying Machine Learning on Arduino and Ultra-Low-Power Controllers with Tensorflow Lite
I'm lazy and poor, so I generally don't read books in English very much.
In the past two or three years, I have been specializing in languages and compiler-related fields in the research field, so I am more interested in the history of programming languages. To be honest, I haven’t read much of these two books until now because my programming language plans have been on hold for a while. However, I turned a few pages and still found it interesting to look at some of the gossip histories of the language.
“The Design and Evolution of the C++ Language” is a book republished in 2020. Before that, it was published in 2002 and 2012, when I was young. This book covers the history and evolution of C++, as well as the nature, relevance, and design background of several key C++ mechanisms. The author is talking about the relevant design journey, which is very good.
Checkout on: Amazon
The High-Performance Team Model: An Organizational Structure to Support Rapid Software Delivery
It doesn’t appear to be a technical book based on the title. But the authors of this book are two DevOps experts who optimize architectures from a team-as-perspective, ie a new look at the problem from the team side of Conway’s Law. In addition, the Chinese title of this book does not reflect the core “Team topologies” of the English version, which is another failed title. Mostly for the sake of sales, and ignoring its connotation, it is a pity.
I won’t do more introduction, you can read the original book, or read my thoughts.
Suitable for the crowd: Tech Lead, Manager. The reason is that if you can’t think at the organizational level, what you can gain will be limited.
Living Documents: Evolving with Code
The concept of living documents introduced in this book is very similar to what I have done in recent years: such as using customized markdown as a knowledge archiving tool, using customized DSL to replace diagrams, extending Gherkin to carry more knowledge… In short, traditional documents are difficult to version manage, so we need a more flexible way to make documents come alive. Of course, I don’t advocate that you utilize Yuque. Knowledge should be managed with Git and coded for easy evolution and refactoring.
The main reason for recommending it is philosophy. It’s a discussion about documentation coding, from which we can rethink documentation strategies. Looking at the documentation process of our organization, we will find that the documents in the period exist in a certain pattern. Since it is a pattern, it can be templated, and part of the content can be coded, such as the architectural decision recording tool I built earlier: ADR, DevOps knowledge platform: Ledge is a related attempt.
Software Architecture: Architectural Patterns, Characteristics, and a Practical Guide
The English name of this book is: “Fundamentals of Software Architecture: An Engineering Approach”, in simple terms, it is “Software Architecture Fundamentals”, and the title of the Chinese book ends here. After all, the interests are related – produced by Thoughtworks. PS: It has always been my practice to complain about the title of the book. My book’s title, for example, is not particularly appealing. )
As can be seen from the positioning of the English title, this book is positioned as an introduction to architecture + a summary of architecture patterns. More than half of this book is about architectural styles, and this part of the content is also about the basics of architecture. Others are about architectural thinking and how architects grow. In terms of content, I think it’s worth reading for everyone (senior people can recommend it to others), as the book’s recommendation says: “I wish I could read this book early in my career. “.
TinyML: Deploying Machine Learning on Arduino and Ultra-Low-Power Controllers with Tensorflow Lite
This book’s title is fantastic. In addition, as a software development engineer from the embedded industry, I will still cherish this industry.
The title of this book provided me with a new idea of building a wheel – how to better perform dimensionality reduction strikes.
So, the reason I bought this book is 1% inspiration. When one day, I see this book on the shelf, there may be some new inspiration.
As a result, I don’t suggest it to everyone, hehe.
“EDGE: Value-Driven Digital Transformation” and “Digital Transformation: 34 Tips for Business Breakthroughs”
Digitalization is the trend of the future, after all, the national strategy. Interests are all books produced by Thoughtworks. I seem to have to read — in case someone asks me what’s written in the book, how do I answer it. Overall, though, both books are good.
EDGE is a book published in September 2020, EDGE is a suite of tools for digital transformation that is fast, iterative, adaptive, lightweight, and driven by customer value. There is an important model in the book: a value-driven model based on Lean Value Tree (LVT) and Metrics (MoS). This model was quite interesting, and I later applied it to architectural design.
Suitable for the crowd: Tech Lead, Manager
“Digital Transformation: 34 Tips for Enterprise Breaking the Game” is biased towards management~, I just help with the goods by the way. Let me spit out the title of the book “Digital Transformation: 34 Tips for Business Breakthroughs”. The 34 tips are not reflected in the catalog, but only on the last few pages, ….
Suitable for the crowd: Manager
Deconstructing Domain-Driven Design
The best book on the topic of DDD (Domain-Driven Design) is still Domain-Driven Design: Coping with Complexity at the Core of Software, and this book is organized in a pattern language, so it does not Not suitable for entry-level books into DDD. Moreover, from a personal point of view, I always feel that the outline organization model of this book is driven by refactoring as the core, so it is not so easy to implement.
Previously, the introductory book I recommended on DDD was Domain-Driven Design Patterns, Principles, and Practices, but this book was poorly translated. Now, we have a better option, Deconstructing Domain-Driven Design. The unified process of domain-driven design mentioned in the book is also a good methodology.
“User Co-Creation: A Handbook of Community Empowerment Product Practice”
This book is a book about how to implement ” Technology Product Operation “, and in a sense, it is also about how the technology community operates.
The main reason I recommend this book is that it is quite a headache to help companies do some open-source-related operations. Therefore, if there is such a book, the related work can be handed over to others.
Another reason is that more and more companies need to promote their technology products, this book can also provide a good guide.
Writing a book review is an extremely tiring thing. After reading the book, make some summaries; buying paper books is also expensive, takes up space, and is heavy when moving.