Wednesday, June 17, 2009

Outwitting the fashion police

This is a public service announcement for all geeks.

Are you tired of people pointing out that you shouldn't use socks and sandals? I know, it really annoyed me too. It's like they are trying to take away your geek card.

But there's a solution.

For a year now, I've been avoiding the fashion police by instead of "sandals" wearing "shoes with holes in their sides". I've got these Keen's that look enough like shoes that nobody ever bats an eye at you wearing them with socks (Ok, by "nobody", I mean my wife, but that's all that matters, right?).

The problem is that it looks like the fashion police may be starting to figure it out. The model I have seems to be no longer in production, and now all the new ones I find are pretty obviously sandals (toes and/or heel showing).

So when I wear out my current ones, I'm going to be in trouble again. Damn.

Thursday, June 11, 2009

Happiness is a warm SCM

I'll have to post this while I'm still happy, because the merge window for Linux 2.6.31 opened a day ago (well, somewhat more, but I don't take patches immediately after doing a release), and so far it's been such a nice thing that I thought I'd better post while in a good mood. Before somebody sends me the merge request from hell.

So why am I in a good mood?

My real "work" is not really writing code any more, and hasn't been for a long time. No, I worry most about the whole "flow of patches", and the way development happens, rather than so much about any individual piece of code I maintain. And the last few release cycles have had a couple of really hard-to-merge issues - not because the code was necessarily bad, but because of how it was then presented to me as a fairly messy history.

And so far, the 2.6.31 merge window is going swimmingly. The x86 tree, which has gone through a yo-yo of different development models with (different) problems, seems to have gotten to that "good place" where it seems to be working.

Part of the problem is that 'git' is such a flexible tool that you can use it in various modes, and mix things up freely. The whole distributed nature means that there's no gatekeeper, you can do whatever you want. And the flexibility and power is good, but it does mean that it's also easy to make a mess of it - the old UNIX philosophy of giving people rope, and letting them hang themselves with it if they want to.

So it takes time for people (me included) to learn the rules that work. And it seems people are learning. And that feels really good.