| By Tad Anderson | Article Rating: |
|
| November 9, 2011 10:15 AM EST | Reads: |
1,797 |
| I have been a fan of the Net Objectives books since the first edition of Design Patterns Explained: A New Perspective on Object-Oriented Design (2nd Edition) When it comes to the agile movement I still remain torn. I watch it change and shift the industry's development processes to improve the customer satisfaction delivered by software teams successfully executing the processes, while at the same time I watch more teams use it as an excuse for the chaos they live in. The good news is books like this one offer sound advice on achieving agility. The bad news is the agile team members I mentioned above that are living in daily chaos never pick them up. They are too busy putting out the day's hottest fire. Moving a team that cannot produce using waterfall or RUP to a shiny new agile process will do nothing but make them produce crappier software. An inexperienced team that can't produce quality software with one process won't start producing quality by claiming to be agile. I tell you all that because I want you to understand where I come from when it comes to agile methodologies. I am not an Agile Movement Zealot, but I find the guidance provided by this book very valuable. The book has chapters on Programming by Intention, Separate Use from Construction, Define Tests Up Front, Shalloway’s Law and Shalloway’s Principle, Encapsulate That!, Interface-Oriented Design, Acceptance Test—Driven Development (ATDD), Avoid Over- and Under-Design, Continuous Integration, Commonality and Variability Analysis, Refactor to the Open-Closed, Needs versus Capabilities Interfaces, and When and How to Use Inheritance. The book ends with three Appendixes- Overview of the Unified Modeling Language (UML), Code Qualities, and Encapsulating Primitives. Each topic is considered a Trim Tab. According to Wikipedia Trim tabs are small surfaces connected to the trailing edge of a larger control surface on a boat or aircraft, used to control the trim of the controls. Boats with outboard engines will often have trim tabs attached to the lower unit of the engine. Many airplanes (including gliders) have trim tabs on their elevators, as a simple method of providing trim in the longitudinal axis. Richard Buckminster “Bucky” Fuller used of trim tabs as a metaphor for leadership and personal empowerment. The authors of the book say they are the actions and insights that give the most understanding with the least investment. The first chapter, programming by intention is one topic that still is kind of weird to me. Every explanation of what it is could just be classified as common sense to me. I agree with everything that goes along with programming by intention, I just don't understand why or how you would not program like that. Separate Use from Construction is a nice perspective on the reasons for using dependency injection, ORM mappers, and not over designing when using such tools. Define Tests Up Front explains why testing is not just about testing, but also about code quality. Shalloway’s Law and Shalloway’s Principle is all about reducing redundancy. I am glad the book includes the chapter on Commonality and Variability Analysis. It is just as valuable today as it was when it appeared in the first edition of Design Patterns Explained: A New Perspective on Object-Oriented Design (2nd Edition) The best thing about this book is that each subject is truly the actions and insights that give the most understanding with the least investment. Each chapter is a little nugget of wisdom that has been tested over time. The book is all about one of the cores that allows agility to be a reality on a project and that is great programming practices. Over all I found the book a very easy and enjoyable read. I highly recommend it to developers of all languages. |
Essential Skills for the Agile Developer: A Guide to Better Programming and Design |
CIO, CTO & Developer Resources
Published November 9, 2011 Reads 1,797
Copyright © 2011 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
Related Stories
- Cloud Expo New York Speaker Profile: Mark Hinkle – Citrix Systems
- Big Data Expo New York Speaker Profile: Eric Baldeschwieler – Hortonworks
- IBM Rips Out Its Siebel Seats
- IBM & Red Hat Will Reportedly Join OpenStack
- System Center Virtual Machine Manager 2012 as Private Cloud Enabler
- Big Data: The ‘Perfect Storm’ Syndrome
- Cloud Expo New York: Industry-Leading CxOs to Present June 11-14
- Big Data: Information Spawns Innovation
- Eighteen Open Source Content Management Systems (Part 3)
- Virtual Private Cloud Computing vs. Public Cloud Computing
- MapR Adds Hadoop Connectors
- OpenNebula: Open Source Cloud Management
- Red Hat Executive Appointed to Technology Services Industry Association (TSIA) Support Services Advisory Board
- Cloud Expo New York Speaker Profile: Mark Hinkle – Citrix Systems
- Big Data Expo New York Speaker Profile: Eric Baldeschwieler – Hortonworks
- IBM Rips Out Its Siebel Seats
- Hadoop Quickstart: Create and Better Manage Hadoop Clusters on Rackspace
- IBM & Red Hat Will Reportedly Join OpenStack
- Apache Hadoop: Now, Next, and Beyond at Cloud Expo New York
- System Center Virtual Machine Manager 2012 as Private Cloud Enabler
- Big Data: The ‘Perfect Storm’ Syndrome
- Cloud Expo New York: Industry-Leading CxOs to Present June 11-14
- Big Data: Information Spawns Innovation
- Eighteen Open Source Content Management Systems (Part 3)
- After Ubuntu, Windows Looks Increasingly Bad, Increasingly Archaic, Increasingly Unfriendly
- SCO CEO Posts Open Letter to the Open Source Community
- Simula Labs Launches Hosted Delivery Platform To Enable Enterprise Open Source Adoption
- Where Are RIA Technologies Headed in 2008?
- Source Claims SCO Will Sue Google
- How Open Is "Open"? – Industry Luminaries Join the Debate
- Latest SCO News is Plain Weird
- SCO Claims Linux Lifted ELF
- IBM Tells SCO Court It Can't Find AIX-on-Power Code
- Flashback: Investing in 'Professional Open Source' - Exclusive 2004 Interview with David Skok, Matrix Partners
- Developing an Application Using the Eclipse BIRT Report Engine API
- HP Starts Pushing Desktop Linux




















