First up, I read this article about the Windows build process. As I read it, I was a good combination of horrified and fascinated. I can’t even begin to comprehend the complexity involved in that thing… Five thousand programmers? That’s almost as many residents as live in the UC Berkeley dorms, and I can’t imagine all of them being organized towards one common goal, with the possibility that something someone does will impact someone else’s system in some unpredictable way…
And yes, I was horrified by both the complexity being described, and horrified that I was fascinated by what I was reading. Proof once again that I am a geek.
As I read the article, I imagined that the programmers at the lowest levels didn’t even know what they were working on — that they were given a specification for a subroutine, and were just asked to make it do something based on the input. This image was fueled by Stephenson’s description of Y.T.’s mom’s job with the Feds in Snow Crash, where the programmers are “interchangeable parts” turning out tiny widgets, and the actual software engineering is done by people who aren’t actually programming.
The quote that most caught my eye from the article was about the significance of a broken build, which boggled my mind almost as much as the complexity involved in the first place. And I
“We’ve sent out calls at 3 a.m. when the build is broken, find the developer that broke it, and get him into work right then and fix it immediately. The developers are on call 24 hours a day. There’s definitely an escalation process. A broken build is considered a critical, severity-1 problem.”
It also got me wondering how Mac OS X and Apple compares. Maybe I’ll find out some day.
Second, this interview with Marc Andreessen (one of the co-founders of Netscape) was kind of short, but he did say one thing that I found very thought provoking:
“Things like the back and forward button, we never intended that to be a permanent part of the interface. But people get locked into metaphors. You have to be careful with the metaphors you put in front of people because once they click onto one, that’s it.
Consider how pervasive the back and forward button have become these days — to the point of being “basic” features of our file system browsers — and you’ll see how significant it really is.