In the lifetime of every single project I've ever worked on, there's this little "game" that's informally played at the very end of the ship cycle. It's never been formalized, but it's always been played (at least it was in every group I've ever worked in).
I call it "Last Checkin Chicken", it's kinda like the childrens game of "Hot Potato".
The way the game works is that no group wants to be the last group that makes a checkin in a particular release of the product. I've never really understood why this is, maybe it's because we could have shipped one day earlier if it hadn't been for that darned last bug (which is silly, but).
Since nobody wants to make the last checkin, whenever you make a checkin, you hold your breath and hope and pray that somebody else makes a checkin (and thus your checkin isn't the last one in the product). If you ARE the last person making a change, then you don't win a prize or have to wear goat horns, or anything, it's just an invisible badge of shame :)
Last Checkin Chicken has varients. Some groups hold informal office pools about which group is going to be the one that makes the last checkin ("Heh, I bet it's going to be the Glibert team, their code is just garbage", "Nah, it's going to be Snorklewanger team, they always find stuff at the last minute"). And within the individual teams, there is even further speculation, either by feature ("I know we've had trouble with the FLOMBERT feature, if it's our team that has the last bug, it's going to be in that feature") or developer ("Man, Terry writes crappy code, bet the last fix is in code he wrote").
Ultimately, Last Checkin Chicken is something that developers do during the somewhat tense final hours of a project as a strange way of blowing off steam, ultimately it's harmless.
Checkin Limbo I just read Larry Osterman's post where he describes Last Checkin Chicken ( http://blogs.msdn.com/larryosterman/archive/2006/10/25/last-checkin-chicken.aspx
I made the check in to the last build of Vista beta1, and I am proud of it:)
I always referred to the phase after RC as 'waiting for disaster to strike'. It rarely did, but it felt that was what I was waiting for until we could all look at ourselves and say 'ship it'.
In the final hours I've been the person doing triage, final fixes and in some cases big pushes. Imagine having a versioning conflict that didn't show up because you have 2gig of ram! That was a simple Flash 6 - Flash 7 project, but the pride i got from shipping was immense. To be honest, in the time we had it was amazing, though i can see flaws, none were breaking. I've seen worse stuff ship from big companies.
I only wish the adrenalin flowed like it does in them final days all the time. Teams bond, ideas evolve faster, i love it.
Who has build 5920 as the final rtm? Surely there is a sweepstake?
Seems ironic, though. I would think it's a badge of pride that someone fixed a problem before ship, even if it was just an hour before ship. Doesn't Checkin Chicken push developers to want to defer fixes until a service pack, at least subconsiously?
5920 won't be it, it'll be a 5824+16*n.x+y where n and y are internal counters.
Apparently the servicing guys have some magic formula that calculates why 16 and what x, n and y are, but I don't quite understand why.
For a while, my money was on the ship team stretching out the numbers and making RTM = build 6000 (Windows 6.0). Doesn't look like it now, though.
> Doesn't Checkin Chicken push developers to want to defer fixes until a service pack, at least subconsiously?
Perhaps, but at this point in the game, developers don't get to choose which bugs are fixed now and which are deferred, that's up the higher-ups. If you have a bug that needs to be fixed, you gotta fix it!
Dean, that's not totally true. Developers have a HUGE influence in the decision. You're right, the individual developers don't get the final say (and haven't for quite a while), but the powers that be absolutely look to the developers for advice as about what bugs to take.
Actually, think about it and it doesn't sound as bad as the owner of the first bug filed after the RC/release. :P
Larry, well that's what I mean. Obviously it's the developers who have the knowledge about the code to decide whether the fix is feasible in the time that's left or not. But it's not like a developer would be able to just not fix the bug if he didn't want to.
Doesn't sound like a classic Chicked game to me. That would be 2 guys _wanting_ to make the last checkin, and each waits for the other one to blink (checkin) first.
You Microsoft weirdos and your traditions. :-)
(Pass the M&Ms)
PS: Typo: varients -> variants
Jonathan: I was thinking the same thing. It's not chicken; it's a simple race!
Weird -- i've never run across Last Check-in Chicken before. It's usually the last thing on my mind at 4am in the morning. More like, oh-my-god just sign the friggin' release off would you, i've got six months sleep i need to catch up on.
I've been involved in a few RTM build number bets, though ("You're betting 600? No WAY are we gonna have 600 builds." 1000+ builds later (we introduced continuous builds)).
I always figure the testers are under more stress than developers, after all they're the ones that say the product works.