I believe Joel gets some of his ideas about workspace arrangements from the book "Peopleware" by DeMarco and Lister.<p>In the book, they don't necessarily argue for an individual private office for every programmer, but argue that a quality work environment has enormous benefits. Interruptions cause huge problems, and random noise can be distracting as well. A door that shuts is one of the most important parts of being able to reduce interruptions and random noise.<p>A personal office isn't mandatory in order to make progress along those lines. The book actually suggests that you set aside a space for a small group of people (1-4), with furniture that can be easily rearranged. <p>
edit: Just a another comment on the article...<p>BDUF Big Design Up Front: I think it might be a mistake to assume Joel's arguments in favor of software specifications imply BDUF. A specification is a fluid thing. It helps ease communication between all parties throughout the development process, and lets you save time figuring out some kinds of problems.
I disagree with his idea that you should not have a private office.<p>Granted, I don't currently have an office job, but given that a phone call or knock on my door will rip me straight out of the flow, I can't imagine even being able to get in it in the first place in a room with half a dozen other people all madly typing away, making noises, and moving around in my peripheral vision.
I wonder how much joelonsoftware contributes to his companies success. The blog is something one couldn't easily mimic, as few people can write as well.