Jump to ratings and reviews
Rate this book

Essential Skills for the Agile Developer: A Guide to Better Programming and Design

Rate this book
Agile has become today’s dominant software development paradigm, but agile methods remain difficult to measure and improve. Essential Skills for the Agile Developer fills this gap from the bottom up, teaching proven techniques for assessing and optimizing both individual and team agile practices. Written by four principals of Net Objectives—one of the world’s leading agile training and consulting firms—this book reflects their unsurpassed experience helping organizations transition to agile. It focuses on the specific actions and insights that can deliver the greatest design and programming improvements with economical investment. The authors reveal key factors associated with successful agile projects and offer practical ways to measure them. Through actual examples, they address principles, attitudes, habits, technical practices, and design considerations—and above all, show how to bring all these together to deliver higher-value software. Using the authors’ techniques, managers and teams can optimize the whole organization and the whole product across its entire lifecycle. Essential Skills for the Agile Developer shows how to Perform programming by intention Separate use from construction Consider testability before writing code Avoid over- and under-design Succeed with Acceptance Test Driven Development (ATDD) Minimize complexity and rework Use encapsulation more effectively and systematically Know when and how to use inheritance Prepare for change more successfully Perform continuous integration more successfully Master powerful best practices for design and refactoring

220 pages, Paperback

First published May 12, 2011

6 people are currently reading
94 people want to read

About the author

Alan Shalloway

14 books9 followers

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
8 (14%)
4 stars
28 (49%)
3 stars
15 (26%)
2 stars
3 (5%)
1 star
3 (5%)
Displaying 1 - 4 of 4 reviews
Profile Image for Paul Anton.
3 reviews
November 11, 2017
The book aims to provide a starting point for software developing teams that aim to write higher quality incremental software.

Opposed to the title suggestion, it does not necessarily focus on the process or characteristics of agile development, but discusses related concepts (such as TDD) that are likely to support in building of better software design. Other agile aspects are only briefly mentioned (pair-programming) and others completely neglected, based on criteria unknown to the reader. The book is also not focusing entirely on design patterns nor on object-oriented concepts, although many of them are used to support some of the examples. However, it does not reach deeper details and it seems that supporting the examples is the only reason that the concepts are presented together. It felt like some hints towards practical application are missing.

The main message is clear nonetheless: “software design is an ongoing process” and notable attention is required from the software engineer in order to fulfill the “...ility” requirements.

I consider the book to be an easy read for the entry-level software developer. It provides a good starting point for further reading in one of the touched domains (agile methodology, design patterns, object orientation).
1 review
May 2, 2018
this book is generic with lacking of skills!The only reason I finished the book is because I wanted to know how boring was. I even started it over about half way through it lost me. My advice don't waste your time better books out there.
Profile Image for Ben Linders.
Author 4 books40 followers
May 8, 2012
This book covers a set of programming and design practices, that help software developers to deliver better products. Each practices is explored in detail, describing the how and why. This book can be used to improve your programing skills, and define your own set of design and coding guidelines. Among the practices described are "Separate Use from Construction", Encapsulation, Test Driven Design, Continuous Integration, and Refactoring.

I really appreciate it that the authors took the time to explain why a practice is so important, and what the benefits are when the practice is used. Seeing the benefits increase the change that people try the practice, learn it, and keep on using it.

If you consider quality important (who doesn't), and are looking for ways to develop better software, this book might be interesting for you!
Profile Image for Vladislav.
7 reviews7 followers
May 29, 2015
This book is a good aggregation of existing agile practices however nothing new or groundbreaking. I liked its pragmatic approach to designing the system and the chapter on encapsulation (in a broader sense of the word) as a concept was especially well written. All in all, this is a good read but it will not rock your world if you've already been doing agile for a while.
Displaying 1 - 4 of 4 reviews

Can't find what you're looking for?

Get help and learn more about the design.