Archive for November, 2005

Sleep and lack thereof

Tuesday, November 22nd, 2005

I was amazed to learn (through the TV) a couple of weeks ago that fretting and worrying and thinking about unfinished business and cash problems and responsibilities and all that stuff is actually triggered by a chemical process in the brain. The upshot of it was that it’s OK to worry and fret at night, and that it’s totally counterproductive to start worrying about the fact that you’re worrying about something (you get the idea, right?). This can be a vicious circle.

Funny as it seems, this knowledge has helped me sleep better. Knowing that it’s just some ol’ chemical kicking in at three in the morning, rather than legitimate worries and problems, is a really comforting thought. Once my brain’s woken up enough to perform this process of reflection, I can easily get back to sleep.

Now I hope I don’t start worrying about wether this whole information was just a placebo PSA to help worrying insomniacs like myself.

[Update] Oh yeah, I heard that exercise and a healthy diet are also supposed to help. But who would really want to do that?

Two Scrum books — One of them more SCRUMptious than the other

Sunday, November 20th, 2005

Introduction

I recently attended a CSM (Certified Scrum Master) training course and was (still am) pretty convinced that Scrum is a very good approach to running your software development projects — making sure you meet (or exceed) your customer’s expectations, reacting to changing requirements, while at the same time allowing the development team to maintain focus and control. While preparing for this course, I read the two canonical Scrum texts: Agile Software Development with Scrum, by Ken Schwaber and Mike Beedle, and Agile Project Management with Scrum, by Ken Schwaber.

What is Scrum?

Scrum (not SCRUM — it’s not an acronym) is an agile development methodology. You might say that Scrum is XP’s (not so) ugly step-sister. Where XP focuses more on the actual programming side of things (pair programming, test-driven development, etc.), Scrum provides a light-weight methodology and framework for keeping your project on track.

By following an iterative, strictly time-boxed, project schedule a development team delivers project functionality (business value for the customer), making sure that the project owner is always aware of what the project is doing and where it’s going. A Scrum project delivers software in increasingly complete releases. Each iteration of the process (a ‘Sprint’, in Scrum lingo) must finish with a potentially shippable unit of increment. This unit of increment is presented to the customer (or a representative of the customer) in a Sprint review meeting, which serves as the basis for planning the next iteration. The importance of team communication is emphasized by the introduction of daily (!) meetings — the Daily Scrum. In the Daily Scrum, the entire team brings itself up-to-date. Each team member briefly presents his progress as well as any issues preventing him from achieving his goal.