This is a book on Agile technical practices, principles and values. The readers will first learn individual practices (TDD, Refactoring, Pair Programming, simple design and more). Afterwards they will focus on principles of Software Design, their relationships and systemic reasons, ending with a business oriented and sociotechnical perspective.
Over 20 years of experience in software, from embedded systems, aviation, media, retail, to cloud-based enterprise applications. In recent years, I've focused on educating, and inspiring other developers. I'm the main author of the Agile Technical practices book (https://leanpub.com/agiletechnicalpra...).
I coach and mentor. I've spent hundreds of hours doing pairing sessions, coaching and tutoring developers at all levels of proficiency. I've worked with developers on everything from programming basics, to object-oriented design principles, to refactoring legacy applications, to pragmatic testing practices, to architecture decisions, to career development choices.
Speaker: I have presented sessions at various conferences, open spaces and developer groups: ITAKE 2018 Agile Portugal 2018 Socrates Belgium 2017 Socrates UK 2015, 2016, 2017 Socrates Italy 2017 Software Craftsmanship Barcelona 2016, 2017, 2018 Socrates Spain 2016 Socrates Germany 2015 Code Freeze 2015 London Software Crafters Community 2014-2018
I'm particularly fond of the detailed explanations of "connascence", way better than other explanations I've encountered. This section inspired me to use connascence a lot more as a thinking and communications tool.
This book gives a great view of the path that a developer might take towards craftsmanship. I believe it gives a very good overview and guidance to apprentice crafters and experienced crafters will still find useful information.
Amazing compilation to prepare today’s software organization for the next level of quality, skill and production.
The book is organized in a very easy to follow way and allows you to prepare each of the chapters after reading for practice it by providing highlights, exercises and summaries.
It’s one of those must have if you are part of a software organization and a great lecture for those who related.
This book is the learning path that I’d recomend to become a senior software development. As it’s title says it is a destilation of what you need to know in order to write high quality and reliable software that is aligned to the business needs. Don’t expect to read it quickly, pause at each chapter, do the katas and read the recomended books.
A great guide with theory, exercises and explanations to become a better Software engineer. It talks about software design and gives you guidelines on how to write/desgin better code. In my humble opinion, this book can be a source of knowledge for junior to more experienced people in Software.
That’s totally the best book about agile, sociotechnical architecture, extreme programming etc I’ve ever read. I highly recommend it to anyone who identifies with Software Craftsmanship culture.
It took me a while to end this reading, not because it is difficult to follow rather because it deserves time and devotion, and there are so many suggested practices inside that it worth the time implementing them.
The book is a must read, we can discuss about the way it was written, sometimes the expressions, but it is self explanatory and the practices are mandatory for a seasoned software engineer. It reflects de facto practices that any engineer must have under control or at least have knowledge about.
Take your time, put yourself in practices, tackle the exercises, assimilate the content and enjoy the ride.
This is a book in which I can agree with every point they make and still be disappointed. The technical parts (First steps, Walking and Running) distilled the knowledge you should know very nicely. The chapters end with the important question “When should I move to the next chapter?” and help you to grant yourself enough time to digest the ideas and practices you read about. That is where this book is great and why I would recommend it to developers trying to improve themselves.
But then comes the part called Flying. And with that part the problems of this book hit you like lightning. Here is on average a page or two used to explain a topic (like Impact Mapping, 5 Whys, User story mapping, and many more) – by far not enough space to even explain the basics. If you don’t know the idea beforehand, it could as well be left out and it would not make any difference. But those parts are the most important ones when it comes to agile development. How do you ensure that you develop the right things? Not with refactoring, unit tests and design patterns. Those are the tools you use to go faster, but going fast in the wrong direction doesn’t help you with being agile. Coming to that conclusion takes the sparkle of this book away and reduces it to the great mass of other agile books: They all focus on the technical aspects and totally forget about the customer…
In all fairness, the title of this book shows that it is focused on the technical aspects. For that I give it the 3 stars. However, that makes the part Flying even less explainable and more misplaced.