If you view human beings as perfectly rational machines then dress codes make no sense, but that's not what we are. Dressing formally puts you in a different frame of mind. It reminds you that your work is serious and that different standards apply to how you act and talk than in your casual personal life. If you dress to work the way you'd show up to a dive bar, then you're that much closer to behaving like you do a…
But my main problem with the idea in the article is:
> The problem is this: If everything is casual, what exactly do you do to show your seriousness?
> There isn’t such a simple way to visually demonstrate you are determined to join the ranks of the upwardly mobile. Looking smart on “casual Friday” may get you a better date, but the boss will not sit up and take notice.
You show this through professional accomplishments - deep and wide technical ability, doing your job well, being reliable, resolving problems others get stuck on, ending up as one of the people both coworkers and clients gravitate towards for advice/help with difficult problems and so on. This stuff gets noticed.
The author seems to hold the view that it should be possible to rise up by playing the game of workplace social dynamics and that the fact that this is difficult in our field compared to more traditional fields presents a problem. But is that really a bad thing?
He is likely not a software developer, but I've heard this "I don't know what I have to do to be taken more seriously" sentiment (only a couple of times) from people in SD. However those were people who were weaker technically but had a strong desire to get ahead, manage projects and people, etc. Their problem had nothing to do with discrimination based on social class and everything to do with discrimination of superficial and/or narrow professional knowledge. At most companies, expertise shows, and usually very quickly.
His "positive" example of China etc is:
> The young and ambitious really can set themselves apart from the slackers, even if doing so looks conformist and stifling when multiplied and observed on a larger scale. Societies of upward mobility, when based on large and growing business enterprises, look and feel somewhat oppressive. Much as many of us might not want to admit it, the casual and the egalitarian are closer to enemies than to allies.
But why would we even want the "young and ambitious" to set themselves apart through the way they dress or by conforming in other ways, and why would we want to decide who is a "slacker" based on that? People can set themselves apart by being exceptional at what they do. Nobody can claim this doesn't, overall, work very well in the software industry. The author is basically complaining about the lack of ability to advance in your career through superficial means.