Stratification. Putting "regulars" into an open floor plan and leaving managers with offices is this concept on steroids (yes, I've actually seen that).
I believe that there is an unplanned unorchestrated ongoing attempt throughout the industry to prevent programmers from being seen as professionals. Reverse dress codes (you'll get odd looks and questions if you aren't dressed casually, but instead throw on a suit or even just a tie), cubicles, and open office space are all ways that this is done.
Seconded; it's a cost and politics issue to have open floor plans, and mostly to "put those uppity programmers in their place." Wouldn't want them asking for what they're worth, now would we? And hey, by having them constantly distracted and not able to concentrate, they won't be as productive and therefore not feel justified in asking for what they're worth! I mean, if open floor plans and cubicles were really that conducive to thinking work, you'd see it in many more places, such as research, doctors offices, law firms, etc, etc.
I don't think it's a "conspiracy theory" in the traditional sense (although I do admit that my post was slanted a bit that way). I'm fairly certain it is as Crito said, "unplanned [and] unorchestrated". And there's no need for conspiracy: simple human nature in the aspects of politics and pettiness can easily explain it - it doesn't matter if you can prove what is more productive or cost effective, management ("owners" or their representatives) will continually push for more leverage and control over their workers, until they experience pushback, profits be damned.
A company wouldn't. I posit that individual middle managers are the problem: whilst they do want the people working for them to be productive, they often subconsciously act to make sure they have the supposed "status" and that this comes (unknowingly, to them) at a cost.
I had to wear a tie my first few years of working. It sucked. I see dressing how I want as a sign of power, but I do agree with your overall point. Because I can dress how I want, doesn't mean I should look like a slob or unprofessional. I still wear nice clothes to work, just not corporate drone clothes anymore.
Dressing however you like is a great perk. However in my experience, many companies who say that they let their engineers dress however they like are actually requiring (although not explicitly) that their engineers dress down. If you are the sort of person who enjoys wearing a tie, you may find that doing so as an engineer is untenable at many tech companies.
Most people don't bother trying to dress that way so they never encounter the pushback and therefore never even realize that there is an unspoken rule in place. I recommend that everybody try to go to work on a monday with at least a white button up shirt with long sleeves and a tie. I think many of you who work places "without" dress codes will find the experience to be illuminating.
When I tried it, somebody from HR had a nice "chat" with me, explaining that the corporate culture was for engineers to dress casually.
Its the same chat that black people who didn't speak in dialect used to get, or who dared to learn to read, or get uppity in general. Its a pretty disturbing symptom of a sick workplace.
I haven't worn a tie to my current job, but routinely wear button up shirts and sport coats. The other engineers might joke if I have a job interview, but no one will tell you to not dress that way.
I'm not sure how I would respond if someone said I was not allowed to dress nice. It just seems like a completely foreign concept.
It is more than possible that you work at a company that actually has an no dress code / a permissive dress code. I think those workplaces exist and I appreciate and value the concept. What concerns me is reverse dress codes that sometimes hide in plain sight, disguised as "no dress codes".
I believe that there is an unplanned unorchestrated ongoing attempt throughout the industry to prevent programmers from being seen as professionals. Reverse dress codes (you'll get odd looks and questions if you aren't dressed casually, but instead throw on a suit or even just a tie), cubicles, and open office space are all ways that this is done.