Should’ve Been Born A Couple Days Earlier

04/02/2008

This comes a day late, but certainly not a dollar short

Date: April 1, 2008 12:38 PM

From: J. Paul Reed <preed@songbirdnest.com>

To: Songbird Devs

Cc: Songbird QA

Subject: Version control system switch in Q2

Hey all,
I've been asked to evaluate version control systems that we should switch to, to better model our development and build processes.
One of the main goals behind this request is to employ a revision control system that will track changes more effectively, as well as provide a method to seamlessly integrate the agile process (stories, tasks, etc.) right into the version control system itself. We're also looking for advanced branching support, which current systems like Mercurial and git lack.
After some careful consideration of our options, I'm recommending that we switch to IBM's ClearCase.
You can find more information about ClearCase here:
* http://en.wikipedia.org/wiki/Clearcase
* http://www-306.ibm.com/software/awdtools/clearcase/
ClearCase has great support for implementing a complete end-to-end process, as well as great support for a lot of IDEs.
In case any of you have worked with ClearCase before, rest assured that I'll be working with Jan to get a req out for a ClearCase repository administrator. This will, obviously, be a full time position.
I'll be working on conversion scenarios later this week, with the initial import of our source code tree happening next week.
We should plan to be off of Subversion and git by the third week of April. I'll be sending out additional email with where to get your ClearCase client licenses the week of the 21st.
If there are any questions or concerns about this conversion, don't hesitate to send me email.
thanks,
Preed
--
J. Paul Reed
Manager, Build/Release Engineering

So… after people filter in from lunch, a couple of Birders, Peter (pvh, hacking up in Canada) and David (dbradley), have some questions in #songbird (edited for relevance):

13:17 <pvh> preed: wow, clearcase, eh?

13:17 <preed> pvh: it's the best system out there

13:17 <pvh> preed: so good it requires a fulltime repo admin?

13:18 <preed> "job security"

13:18 <pvh> preed: i'm not saying it's bad -- all i know about it is what's in

the wp article you linked

13:21 <pvh> preed: how are we going to do community version control / do you think we should stop doing community version control?

13:22 <preed> pvh: I think what we're gonna do is offer paid ClearCase licenses for people who want to contribute

13:22 <preed> and nightly tarballs for people who just want to write a patch or two

13:22 <pvh> preed: what about for people who just want to track HEAD?

13:22 <preed> yah, nightly tarballs

13:22 <pvh> preed: that kinda sucks, but i don't think it's a dealbreaker

13:22 <pvh> preed: so i can just mount my repo as a filesystem?

13:22 <pvh> preed: that's pretty cool

13:22 <preed> yeah

13:23 <preed> and if you're running Linux, you need a kernel module

13:23 <preed> it's really the version control system of the future

13:23 <preed> "the future is here... today!"

13:23 <pvh> what about my offline laptop?

13:23 <pvh> preed: i spend a lot of time working w/o net access

13:24 <pvh> preed: and over low bandwidth links

13:24 <preed> pvh: would hourly tarballs help?

13:24 <preed> I think we could do that

13:24 <pvh> preed: no, not for me

13:24 <pvh> preed: since i need to be *in* the VC system

13:25 <preed> pvh: maybe rdiff, then?

13:25 <pvh> preed: oh, i see at the bottom of the WP article

13:25 <preed> I can keep a copy checked out on my machine

13:25 <preed> and you can pull that?

13:25 <pvh> preed: dynamic views not available w/o net access

13:25 <pvh> preed: that sucks muchly for laptoppers and remotes

13:25 <preed> pvh: you know, you might have trouble using ClearCase anyway...

13:26 <pvh> preed: why's that?

13:26 <preed> I don't think there's a Canadian English translation of it yet

13:26 * pvh slaps preed with a salmon

13:26 <pvh> preed: is there an OS X version?

13:26 <preed> think so

13:26 <preed> maybe I could FedEx you the diffs?

13:26 * stevel agitates for hg or git

13:26 <preed> on floppy?

13:26 <redfive> I thought they stopped on OS 9

13:27 <preed> stevel: as my email explained, hg/git don't have the advanced branching capabilities we need.

13:27 <steve_k> preed: i think the kernel module only works with the 2.4.x kernels, damn binary code

13:27 <preed> steve_k: do they have an OpenSolaris kernel module?

13:27 <steve_k> well, i think there is a 2.4.x ubuntu

13:28 <steve_k> so we're probably OK

13:28 <stevel> preed: clearly not. :)

13:28 <pvh> http://www-1.ibm.com/support/docview.wss?ratlid=cctocbody&rs=984&uid=swg21161662 ?

13:28 <pvh> preed: no offense, but this sounds like an absolutely horrible idea at this point

13:28 <preed> pvh: well... I did spend a week researching it...

13:28 <pvh> preed: i'm not saying i can't be convinced, but i really see a lot more shortcomings than advantages so far

13:28 <steve_k> i don't mind, the 2.4 kernels have always been much more stable

13:29 <preed> I think it's the best solution available.

13:29 <pvh> preed: since it doesn't work on my platform, and doesn't work for me remotely, i might be somewhat biased against it

13:29 <pvh> preed: but presumably once it's set up and working it's super great

13:29 <preed> it really is...

13:29 <preed> maybe we can get you a better machine?

13:30 <pvh> preed: a non mac?

13:30 <preed> pay for DSL or something?

13:30 <erikstaats> Maybe we can set up a system with VNC for using ClearCase.

13:30 <preed> erikstaats: oh, that's a good idea

13:30 <preed> pvh: would that work?

13:30 <preed> I'll put it in a VM

13:30 <preed> it'll be superfast.

13:30 <erikstaats> So what is the best platform to run ClearCase?

13:31 <pvh> preed: maybe?

13:31 <preed> erikstaats: win32, I think

13:31 <preed> which, let's face it, is always the answer to the question "What is the best platform to do X?"

13:31 <dbradley> erikstaats: Unix'ish is probably the most common server

13:31 <erikstaats> OK, I'll set my win32 VM with it then.

13:31 <redfive> preed: maybe we can leverage some mozilla expertise

13:33 <dbradley> preed: So we're going to get an open license version?

13:33 <dbradley> preed: unlimited user I mean

13:34 <preed> dbradley: no, we'll get the exact number of licenses we need

13:35 <preed> they're very particular about that, for some reason

13:35 <pvh> :(

13:35 <pvh> preed: tell me some good things about clearcase

13:35 <dbradley> preed: Just wondering how external people are going to get code in

13:35 <preed> dbradley: patches, like always

13:36 <pvh> oh you son of a bitch

13:36 <mattc> HAAA

13:36 <pvh> preed: you worthless son of a bitch

13:36 <preed> :-)

13:36 <stevel> rofl

13:36 * pvh crawls under his desk

13:36 <steve_k> LULZ

13:36 <redfive> rotflmao

13:36 * pvh EPIC FAIL

13:36 * preed whispers... "gotcha"

13:36 -!- pvh is now known as pvh-shame

13:36 <stevel> and the office erupts in laughter

I think what amazes me the most is that this “switching to ClearCase” Fool has more or less worked the first April Fool’s Day I’ve been at every job I’ve had.
(Mozilla Corp. was, admittedly, a tougher sell…)
This year was definitely the best one yet, though… thanks to pvh and dbradley. ;-)