Why was the Windows source code trunk called the Blue Line?


The nickname doesn't get used much at all any more, but back in the day, the Windows source code trunk was called the Blue Line. Where did it get that name?

From the color of the whiteboard pen.

When the branching structure was worked out, the trunk was drawn with a blue pen. If you were in that meeting, and you wanted to raise a point about the diagram, you might say, "But when the red line meets the blue line…", or "How do changes get from the green line to the blue line?"

Everybody called the trunk the "blue line" in the meeting, and that nickname carried forward into the internal documentation. Of course, if you weren't at that meeting, it was a giant mystery why the trunk was called the Blue Line.

A mystery that has now been resolved, long after everybody stopped using that nickname.

Comments (15)
  1. Stefano says:

    So it means that with Win 8.1 (codenamed Blue) we're living with a build of the trunk? Are we going to receive nightly builds every day with Windows Update? Wow, that's bleeding edge :)

    (btw: I'd love to, but I know that it will never be possible – even if I'm sure that nowadays a nightly build of windows would also be always somehow working)

    btw: thanks for your posts, as always very interesting and funny!

  2. Mark Y says:

    Perhaps if people knew where the name came from, they'd still be using it.

  3. ErikF says:

    So is the checked build called "The Thin Blue Line"? Yes, I'm joking (although the TV show was very good if you like Rowan Atkinson!)

  4. j b says:

    Hey, what did tha blogg system to to my text above??? How did I make it add three lines of "javacript:…" garbage?

    Sorry about that! I didn't see it when I hit the "Post" button.

  5. The Count says:

    @j b: It's not three lines; the javascript garbage is on a single line which may be split up due to long line wrapping. But that depends on your browser windows width and font size. So for me, for example, it's only two lines.

  6. Assuming 12-point lines, three lines of garbage = 36 points = 1/2 inch = 43200 AH.

  7. mikeb says:

    I've said it before, but I feel compelled to say it again occasionally: I love these history posts.

  8. j b says:

    You'd probably find lots of such names/labels if you dig deep down in history – the IBM "801" RISC chip and the "Winchester" disk technology are quite famous.

    My variant of the history: In the very early 1980s, I was on a develpment team for an office automation suite (*before* the arrival of MSO!). We used an internal measurement unit of 1/86400 inch, called an "AH" both in the code and in the system documentation. Most younger programmers had no idea of the origin of the name, but some of us had been present at the early design disdussion where one of my colleagues argued strongly in favor of adopting 1/86javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$content$ctl00$w_4996$_b00ab5$ctl00$ctl00$ctl00$ctl05$bpCommentForm$ctl05$btnSubmit", "", true, "BlogPostCommentForm-ctl00_content_ctl00_w_4996__b00ab5_ctl00_ctl00", "", false, true))400 inch as a basic unit, and as a joke, some took to referring to it by the initials of this guy. By the end of the meeting, everybody had adopted "AH" as a replacement for "one eightsix thousand four hundreds of an inch". And so it was: AH was the name of the new unit.

  9. Timothy Fries says:

    We've had this exact same thing happen here from a whiteboard diagram made of a system and its data flow interactions, with the same color in fact.  One particular process came to be known as the 'Blue Pipe' because it was the pipe of data that was drawn in blue on a diagram.  That was 8 years ago, since then other new, similar processes that didn't have diagrams of their own have been playfully given other colors as names to fit the theme (Yellow Pipe, Red Pipe); including one colorful euphemism, the Brown Pipe which was intended for processing of corrupt and unreliable data that was… well… crap.

  10. @Stefano the trunk is the *least* bleeding-edge of all the branches, because nothing is ever checked into the trunk directly; changes start at the leaves and work their way toward the trunk.

    Once a change hits the trunk it then heads outward along all the branches simultaneously (other than the one it came in on, which already has the change.)

    If a change breaks something, it is (hopefully) caught before it reaches the trunk, so only that branch is broken. When the fix is found, it is checked in, and the breaking change and the fixing change are both pulled into the trunk together.

  11. voo says:

    If I'm not mistaken that's also how red-black trees came into existence. It seems surprising on first glance, but if you think about it, it's rather intuitive – lots of whiteboards involved when creatively working and naming things is generally annoyingly hard ("There are only two hard things in Computer Science: cache invalidation and naming things.")

  12. j b says:

    @voo,

    I love that quote! Do you have any source, or know its origin? (or is is your own?)

  13. Eric Lippert says:

    This is also why in the Roslyn syntax trees there is a private property "Green" that points to another tree node. The user-visible "red" tree is actually a facade over the immutable "green" tree, so named because those were the markers at hand when the architect drew the diagram.

  14. voo says:

    j b: One of my old hw profs mentioned it once on the side and it stuck. I don't think he mentioned the source, in any case I've no idea who came up with it :(

    A google search mentions Phil Karlton, whom I've never heard of, so I'll just attribute it to him. I did stumble upon the following gem though: "There are only two hard things in Computer Science: cache invalidation, naming things and off-by-1 errors"

Comments are closed.