Kindle Price: $12.64

Save $8.35 (40%)

These promotions will be applied to this item:

Some promotions may be combined; others are not eligible to be combined with other offers. For details, please see the Terms & Conditions associated with these promotions.

You've subscribed to ! We will preorder your items within 24 hours of when they become available. When new books are released, we'll charge your default payment method for the lowest price available during the pre-order period.
Update your device or payment method, cancel individual pre-orders or your subscription at
Your Memberships & Subscriptions

Buy for others

Give as a gift or purchase for a team or group.
Learn more

Buying and sending eBooks to others

  1. Select quantity
  2. Buy and send eBooks
  3. Recipients can read on any device

These ebooks can only be redeemed by recipients in the US. Redemption links and eBooks cannot be resold.

Kindle app logo image

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.

Read instantly on your browser with Kindle for Web.

Using your mobile phone camera - scan the code below and download the Kindle app.

QR code to download the Kindle App

Loading your book clubs
There was a problem loading your book clubs. Please try again.
Not in a club? Learn more
Amazon book clubs early access

Join or create book clubs

Choose books together

Track your books
Bring your club to Amazon Book Clubs, start a new book club and invite your friends to join, or find a club that’s right for you for free.
Something went wrong. Please try your request again later.

Agile Technical Practices Distilled: A learning journey in technical practices and principles of software design Kindle Edition

4.4 4.4 out of 5 stars 24 ratings

Delve deep into the various technical practices, principles, and values of Agile.

Key Features

  • Discover the essence of Agile software development and the key principles of software design
  • Explore the fundamental practices of Agile working, including test-driven development (TDD), refactoring, pair programming, and continuous integration
  • Learn and apply the four elements of simple design

Book Description

The number of popular technical practices has grown exponentially in the last few years. Learning the common fundamental software development practices can help you become a better programmer. This book uses the term Agile as a wide umbrella and covers Agile principles and practices, as well as most methodologies associated with it.

You’ll begin by discovering how driver-navigator, chess clock, and other techniques used in the pair programming approach introduce discipline while writing code. You’ll then learn to safely change the design of your code using refactoring. While learning these techniques, you’ll also explore various best practices to write efficient tests. The concluding chapters of the book delve deep into the SOLID principles - the five design principles that you can use to make your software more understandable, flexible and maintainable.

By the end of the book, you will have discovered new ideas for improving your software design skills, the relationship within your team, and the way your business works.

What you will learn

  • Learn the red, green, refactor cycle of classic TDD and practice the best habits such as the rule of 3, triangulation, object calisthenics, and more
  • Refactor using parallel change and improve legacy code with characterization tests, approval tests, and Golden Master
  • Use code smells as feedback to improve your design
  • Learn the double cycle of ATDD and the outside-in mindset using mocks and stubs correctly in your tests
  • Understand how Coupling, Cohesion, Connascence, SOLID principles, and code smells are all related
  • Improve the understanding of your business domain using BDD and other principles for "doing the right thing, not only the thing right"

Who this book is for

This book is designed for software developers looking to improve their technical practices. Software coaches may also find it helpful as a teaching reference manual. This is not a beginner's book on how to program. You must be comfortable with at least one programming language and must be able to write unit tests using any unit testing framework.

Table of Contents

  1. Pair Programming
  2. Classic TDD I – Test-Driven Development
  3. Classic TDD II
  4. Classic TDD III – Transformation Priority Premise
  5. Design I – Object Calisthenics
  6. Design II – Refactoring
  7. Design III – Code Smells
  8. Test Doubles
  9. Testing Legacy Code
  10. Design Patterns
  11. Cohesion and Coupling
  12. Solid Principles ++
  13. Design VII – Connascence
  14. The Four Elements of Simple Design
  15. Conclusion
  16. Outside-In Development
  17. Behavior-Driven Development
  18. Understand the Business
  19. The Story of Team C
  20. Conclusion
  21. The 12 Agile Principles
  22. PopcornFlow by Claudio Perrone
  23. EventStorming by Alberto Brandolini
  24. License: CyberDojo
  25. Sample Solutions
Read more Read less
Due to its large file size, this book may take longer to download

Add a debit or credit card to save time when you check out
Convenient and secure with 2 clicks. Add your card

Editorial Reviews

About the Author

Pedro M. Santos has over 25 years of experience in the software industry. He has worked in the finance, aviation, consultancy, media, and retail industries and has built a wide range of software, ranging from embedded systems to cloud-based distributed applications. He has lived in Portugal (Lisbon), Brazil (São Paulo), Spain (Madrid, Barcelona), Netherlands (Hilversum), and Belgium (Gent), and, currently, he is based in the UK (London), where he focuses on educating and inspiring other developers. He has spent hundreds of hours in pairing sessions as well as coaching and mentoring developers at all levels of proficiency. His tutoring experience covers almost every aspect of software development: programming basics, object-oriented and functional design principles, refactoring legacy applications, pragmatic testing practices, architectural decisions, and career development choices. Follow Pedro on Twitter at @pedromsantos.

Marco Consolaro is a software craftsman, systems thinker, agile technical coach, entrepreneur, philosopher, and restless traveler – all blended with Venetian humor. Marco learned to code in Basic on a Commodore when he was 9 years old. He graduated from Venice University in 2001 with a degree in Computer Science. Since then, Marco has worked in Italy and the UK and is always looking to learn something new. When his journey led him to the agile principles, he quickly realized the effectiveness of such an approach for both technical and organizational areas. He now strongly believes that an iterative approach based on trust, transparency, self-organization, and quick feedback loops is the key to success for any team in any discipline. His dream is to see these principles based on systems thinking understood and implemented at every level in businesses and public administrations. Follow Marco on Twitter at @consolondon.

Alessandro Di Gioia has helped a variety of companies (from small startups to large enterprises for the past 18 years) embrace agile technical practices. He has worked in Italy and Norway. For the past few years, he has resided in London. His professional life changed when he came across agile methodologies, especially Extreme Programming. He likes concise, expressive, and readable code as well as making existing solutions better when needed. He is always trying to learn better ways of designing asynchronous distributed architectures and crafting software, in either an object-oriented or functional style. Although Alessandro considers himself a forever learner, he is also a coach and a mentor because he loves to share his experiences with others. Follow Alessandro on Twitter at @Parajao.

Product details

  • ASIN ‏ : ‎ B07TWBZX82
  • Publisher ‏ : ‎ Packt Publishing; 1st edition (June 28, 2019)
  • Publication date ‏ : ‎ June 28, 2019
  • Language ‏ : ‎ English
  • File size ‏ : ‎ 21285 KB
  • Text-to-Speech ‏ : ‎ Enabled
  • Screen Reader ‏ : ‎ Supported
  • Enhanced typesetting ‏ : ‎ Enabled
  • X-Ray ‏ : ‎ Not Enabled
  • Word Wise ‏ : ‎ Not Enabled
  • Sticky notes ‏ : ‎ On Kindle Scribe
  • Print length ‏ : ‎ 442 pages
  • Page numbers source ISBN ‏ : ‎ 1838980849
  • Customer Reviews:
    4.4 4.4 out of 5 stars 24 ratings

About the author

Follow authors to get new release updates, plus improved recommendations.
Marco Consolaro
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.

Describing himself as a Software Craftsman, Systems' thinker, Agile technical coach, entrepreneur, philosopher, restless traveler – all blended with Venetian humor – Marco learned coding in Basic on a Commodore when he was nine years old. He graduated from Venice University in 2001 with a degree in Computer Science.

Since then, Marco has worked in Italy and the UK, always looking to learn something new. When his journey led him to the Agile principles, he quickly realized the effectiveness of such an approach for both technical and organizational areas. He now strongly believes that an iterative approach based on trust, transparency, self-organization and quick feedback loops is the key to success for any team in any discipline.

His dream is to see these principles understood and implemented at every level in businesses and public administrations.

"One of the best new Continuous Integration books" - BookAuthority

Customer reviews

4.4 out of 5 stars
4.4 out of 5
24 global ratings

Top review from the United States

Reviewed in the United States on February 24, 2020
Is a great book, It helped me a lot.

Top reviews from other countries

Translate all reviews to English
Luiz Fernando Calaça Silva
5.0 out of 5 stars Livro em excelente estado
Reviewed in Brazil on October 2, 2022
O livro veio em excelente estado e para quem o está procurando como uma referência técnica para o contexto de Engenharia de Software podes comprar, pois, é muitíssimo bom.
Usuario anónimo
4.0 out of 5 stars No parece un libro "profesional"
Reviewed in Spain on March 12, 2024
Sobre el contenido aun no puedo decir mucho pues no lo he acabado, seguramente actualice esta opinión cuando lo termine.

Lo que si quería comentar son las calidades del libro.

En un primer momento me pareció raro que un libro técnico de más de 400 páginas costase 24 euros. Entendí el porqué en cuando lo recibí.

Obviando el tema de que el libro me llegó en buen estado (a veces ya sabemos como llegan los libros de Amazon, con esquinas dobladas o manchados), los materiales no son para nada buenos.

La primera impresión es de que parece un libro print on demand. La calidad de las páginas y la portada es como si fueran folios (nada que ver con libros como Clean Code, donde las páginas tienen un buen gramaje y brillo).

El interior del libro no mejora, han reducido los márgenes a la mínima expresión y da la sensación de estar todo apelotonado. Supongo que ha sido para condensar contenido, pero un poco más de espacio no hubiera estado mal.

Por si fuera poco, las imágenes están pixeladas.

Al final de cada capítulo se incluye un apartado de recursos. El problema es que han metido, literalmente, los chorizos de URLs sin acortar. Entiendo que en PDF esto funcione, pero en papel es una locura querer acceder al recurso y tener que meter a mano una URL gigante. Además, algunos de estos enlaces están rotos.

En fin, entiendo que será cosa de esta editorial baratera. Tenía el libro en PDF pero lo quería en papel por la comodidad, pero ya veo cómo se las gasta esta gente.
Sven
2.0 out of 5 stars Die Idee ist gut, die Umsetzung leider nicht ausgereift
Reviewed in Germany on February 28, 2022
Der grundsätzliche Ansatz des Buches, dem Leser die Prinzipien der agilen Softwareenwicklung in kleinen Schritten und mit vielen Übungen (Katas) nahezubringen ist sehr gut.

Leider ist das Buch nicht ausgereift. Zum einen liest es sich an vielen Stellen wie eine Sammlung unaufgearbeiteter Notizen, denen nur mit Mühe zu folgen ist. Zum anderen enthält das Buch zahlreiche inhaltliche, Formatierungs- und Flüchtigkeitsfehler.

So wird z. B. die vollständige Rekursion in der Implementierung der Fibonacci-Folge als "Tail Recursion" bezeichnet. Ganze Absätze werden wiederholt. Refactorings werden anders ausgeführt als im Text beschrieben und ändern Funktionalität (was der Definition von "Refactoring" widerspricht).

Leider gibt es auch nur zu den Katas in den ersten paar Kapiteln Lösungen. Bei den komplexeren Katas in späteren Kapiteln fehlen diese, so dass man seine Vorgehensweise nicht validieren kann.

Von daher kann ich das Buch in der aktuellen Ausgabe (Stand Januar 2022) nicht empfehlen.

In der hier bewerteten Kindle-Ausgabe sind übrigens die Quellcodes nicht formatiert, wofür ich einen weiteren Punkt abziehen muss.

Sollte eine neue, überarbeitete Ausgabe veröffentlicht werden, bin ich gerne bereit meine Rezension zu überarbeiten. Das Buch hat viel Potential.
Jonny
5.0 out of 5 stars Great study manual and fantastic reference.
Reviewed in the United Kingdom on October 24, 2019
This is the book I would suggest to anyone serious about learning XP techniques and most valuable principles and practices in modern software development. Many exercises, books suggestions, deep quotes and interesting stories make this work also an unexpected pleasant read which is quite remarkable for a technical book!
Ben
3.0 out of 5 stars Great book but some some issues
Reviewed in the United Kingdom on February 15, 2020
The title is exactly what the book delivers, a bunch of technical practices delivered concisely and effectively. Unfortunately there are a good few typos and mistakes that a few times made the text confusing.

The biggest issue however is the "Where are we in the big picture" diagrams are practically unreadable due to the print resolution, and got progressively worse as the chapters added more circles with micro-text.
2 people found this helpful
Report
Report an issue

Does this item contain inappropriate content?
Do you believe that this item violates a copyright?
Does this item contain quality or formatting issues?