Agile is recognized as a system-software development approach used to get quick feedback to keep the customer involved at every stage, building a disciplined team, and having working software at any given point in time. Sameer Arora writes on how things can fall out of place when agility on the programming side is ignored.
People are creatures of habit, particularly programmers: We seek consistency, whether it is the tried-and-true waterfall/SDLC method or our morning routine of reading the newspaper with a hot cup of coffee. Companies or projects looking to adopt an agile process neglect the fundamental concern of an individual developer: "What will my day to day look like working in an agile environment?"
Team player Dave Hoover wants to share a software development practice he enjoys. It emerged from the practices of extreme programming as a competitive yet simultaneously collaborative practice. Dave has found that this practice promotes the flow of knowledge between software developers better than any other practice he has experienced. As you might have guessed from the title of this week's column, this practice is called ping-pong programming, or P3 for short.
Pair programming is an Agile practice that has been shown to greatly improve code quality without a huge increase in development time. This article explains the ins and outs of pair programming and some things you need to consider before you tell team members to grab a partner and get programming.