Scrum: Weight Watchers for Managers.

One thing that struck me was how similar Scrum and Weight Watchers is. Scrum is basically weight watchers for managers whose eyes are bigger than their team, so to speak.

With Weight Watchers, you get so many points per day. If you eat more points, then you get fat. Everyone knows that. What I didn’t know, till I started, was how having a set number of points forced me to consider what I was spending my points on. Sure, I could have a sausage mcmuffin, but thats like a bujillion points, and most importantly, I’m hungry an hour later. All that white flour turned instantly to sugar, my insulin hit the roof, I’m hypoglycemic and can’t think straight. Long term, my arteries are clogged, I’m overweight and I’m heading for heart failure. And, the more weight you carry around, the more you have to eat just to break even.

Its like that for programming. Most managers probably know that they are demanding too much from their team, their body, but they aren’t aware of all the poor choices that get made. They just want the candy, the donuts, the feel-good food. A demo by Friday, a new feature here, a deadline when. Hack it in. All those hacks are like cholesterol, and fat, just clogging up the program’s arteries. Things like tests, refactoring, team communication, are the leafy greens of programming, and managers just don’t like them. They know they should be putting it on the menu, but damn, that Bacon-Guacamole-Cheese Burger looks tasty and I can have it right now!

Are You Satisfied?

Weight Watchers puts the points in your face. I hate salad. I’ve eaten more salad this last week than in the entirety of 2007 I think. Its zero points for the lettuce, and then I add like a roast chicken breast, some fat free dressing and some kidney beans, and hey, I’m stuffed. With only so many points, I’m worried about one thing: am I satisfied?

That’s what Scrum does for you. Its about making you, the manager, the product owner, confront the costs of your eating choices. Yes you could eat what you want but your body, your team, your code, will be a lethargic, sickly, bloated thing that will ultimately cardiac arrest.

Presumably, this isn’t a chartable project. This is a product going to fight it out in the market. If you, the manager, are the brains of this operation then you need to make smart choices about what you put in your body. You need to be aware of how that donut and coffee not only puts on the pounds, but doesn’t actually satisfy you for very long. You need to think about what really satisfies you.

Scrum does two things:

1. It forces you, the manager, to consider how much you can “eat” per period, usually two weeks. You can’t eat more than that. So choose what you want on the menu wisely. You’ll also need to eat some of that nasty leafy-green stuff, like testing. Stuff that you may not like the taste of, but that keeps you fit.

2. It shows you the long term effects of your eating. For example, if you want to overwork your team, you’ll see an initial productivity increase, but within a few weeks you’ll see the productivity drop to less than it was before, and with more bugs. Your body has gotten fat, your arteries clogged, and you can now do less for the same effort. However, if you eat well, make good choices, you’ll see the muscle build, and you’ll learn more about your body and how it works. You’ll learn when to eat a few extra points, and how to make tasty, yet healthy choices.

P4VsPkg update

I’m waiting to be registered on the perforce public depot so I can add my stuff. I’m also waiting for a package load key (PLK) so that the plug-in can be installed on machines without the VSSDK installed. Until then, you can get the latest version of the plug-in from my p4vspkg page. I just added context-menu commands to supplement that automated checkout code, so that you can do things like diff. You’ll need the VSSDK to compile or run it.

This is for VS 2005 btw.

P4VsPkg

Thankfully we’re using Perforce at the office, having made do with subversion for a long time. My only complaint about Perforce is its integration with Visual Studio, which allegedly isn’t really their fault, because the SCCI interface is pants. Back at High Moon, Noel Llopis wrote a great Add-In for VS that gave you options like Add and Edit on the context menu for files. This inspired me to go one step further, and write a plug-in that would just add, edit, rename and delete files automatically, as you worked. The result is P4VsPkg which I’ve put on the perforce public depot.

The Hackers Diet

About two weeks ago I stumbled across the hackers diet. I think I was looking for how to make tea at the time. I told my wife about it, and her immediate response was, “I’ve told you all that!” She was a personal trainer when I met her, amongst other things. Whats different is this diet speaks my language. It comes with Excel spreadsheets and a Palm Pilot application. It talks about feed back mechanisms.

Its author is John Walker, founder of Autodesk. In the preface he says:

The absurdity of my situation finally struck home in 1987. “Look,” I said to myself, “you founded one of the five biggest software companies in the world, Autodesk. You wrote large pieces of AutoCAD, the world standard for computer aided design. You’ve made in excess of fifty million dollars without dropping dead, going crazy, or winding up in jail. You’ve succeeded at some pretty difficult things, and you can’t control your flippin’ weight?”

I’m taking it slowly, and by that I mean I’m not calorie counting yet. I’m doing the 15 minutes of exercise every morning, and I’ve cut out coke, fries, and twixes, and I’m choosing smaller portions. I’m hungry at times, but not madly so. I’ve bought an accurate scale too. I haven’t lost much weight yet, but I have a downward trend at the cost of very little pain. This is immensely pleasing! I shall be tracking my progress here.

About time

Finally I’m starting a blog. I keep thinking of interesting things to share, but have nowhere to share them, so here it is.

I have the great fortune to be a Senior Architect at High Moon Studios. Our CTO, Clinton Keith, has pioneered Agile Game Development, while Noel Llopis, our first Senior Architect has introduced modern practices like Test Driven Development. Most of the stuff we do is trade-secret, but our company encourages us to share our experiences in a “hey, we know what we’re doing, why don’t you come join us“, kind of way.

I somehow manage to make time for some projects of my own (thanks to an incredibly generous wife). I’m currently working on a visual finite state machine editor, called StateSharp which integrates with Visual Studio to generate FSM source code from diagrams you create.