Sunday, February 10, 2008

I Suck At Agile Development (Part 4)

ok. i finally finished the book a couple of days ago. so, here is a list of the remaining practices of an agile developer on agile collaboration:

38. schedule regular face time. use stand-up meetings. stand-up meetings keep the team on the same page. keep the meeting short, focused, and intense.

39. architects must write code. good design evolves from active programmers. real insight comes from active coding. don't use architects who don't code-they can't design without knowing the realities of your system.

40. practice collaborative ownership. emphasize collective ownership of code. rotate developers across different modules and tasks in different areas of the system.

41. be a mentor. knowledge grows when given. there's fun in sharing what you know-you gain as you give. you motivate others to achieve better results. you improve the overall competence of your team.

42. allow people to figure it out. give others a chance to solve problems. point them in the right direction instead of handing them solutions. everyone can learn something in the process.

43. share code only when ready. never check in code that's not ready for others. deliberately checking in code that doesn't compile or pass its unit tests should be considered an act of criminal project negligence.

44. review code. basic styles of review include: the all-nighter with the entire team; the pick-up game where another developer "picks" up the code as soon as the code is ready (rotate developers); and pair programming where one person is the driver, the other navigator and they occasionally switch roles. code reviews are invaluable in improving the quality of the code and keeping the error rate low. if done correctly, reviews can be practical and effective. review code after each task, using different developers.

45. keeps others informed. publish your status, your ideas and the neat things you're looking at. don't wait for others to ask you the status of your work.

resources:
agile developer www.agiledeveloper.com/download.aspx
pragmatic programming www.pragmaticprogrammer.com

up next, version control and subversion! yes, very exciting i know...

3 comments: