Collaboration: At the Extremities of Extreme
Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Abel Avram on Jan 28, 2009
In this presentation filmed during QCon SF 2007, Linda Rising tried to approach agility from a different perspective, that of how we are wired to work and sleep, which turns out to be very similar to iterations. The conclusion was that we are not to do agile, but to rather be agile.
Watch: Perfection Is An Unrealistic Goal (54 min.)
Linda introduced the audience to the discoveries related to sleep, that humans tend to have cycles of about 90 minutes of sleep. While this was not new information, what was interesting was that people have started to discover that we have cycles of work.
We think that being more productive requires doing multitasking or working more hours, Linda said. The truth is that we are more productive when we do short but intensive work then take a break and refuel the energy.
If you switch attention from a primary task to a secondary one—from a program you're writing to an email that's just come in—the time it takes to complete the program increases by an average of 25%. Imagine the impact when many people now check email 50, 75, 100 times a day.
One how to improve, Linda said:
Improvement is more realistic—not 15% by the end of the quarter—but 1% by the end of the next iteration.
Linda made the following suggestion:
- Focus without interruption for ~90 min
- Take a break for 15-20 min and expand your perspective, take a walk, …
- Repeat until the end of the workday
Agile practices seem to be related to our mental activity, with how the brain is wired. Iterations, retrospectives, small increments, they seem to be the key to true productivity and success.
Nice topic!
I haven't tried this myself, but I'm interested in the Pomodoro technique to teams working, which gels quite nicely with Linda's suggestions for focussed work periods (90 minutes in her case), followed by break out time.
Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.
Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).
Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.
Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.
One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.
InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.
Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.
John Davies examines Visa’s architecture and shows how enterprises have architected complex integrations incorporating Hadoop, memcached, Ruby on Rails, and others to deliver innovative solutions.
2 comments
Watch Thread Reply