Google to employees: 'Mac or Linux, but no more Windows'
tuaw.com
tuaw.com
So, "ban" - not so much. More like "strongly discouraged unless there's a reason".
Unfair! I use Linux and Windows for web dev and they are both equally as good as the other.
EDIT; oh come on, at least justify it... :)
The other problem with Windows is that it doesn't make a very good server, and it's often useful to develop on the same OS you'll be eventually deploying to.
Google is making a business decision here: it is too expensive for them to support Windows at the level of security they desire, which is likely a higher standard than most software development shops, and perhaps many banks.
I've been unable to find anything equivalent to Puppet or Chef on Windows. Might I enquire what tools you use for managing Windows servers?
That said, I doubt I'd ever actually use an OSX server. There's little difference in functionality between an OSX server and a Linux server, and Linux servers have no licensing costs to worry about. Currently we're developing on OSX and Linux desktops, and deploying to Linux servers.
"Also, the tool set for web development on Windows is very mature and stable."
For .NET, maybe. Not for something like Ruby, I'm afraid. Also, we haven't found any good way of deploying to Windows. I'd be curious how you manage deploying applications to a Windows server.
This is ignoring PHP (one of the biggest web dev languages) and Python which do just as well on both.
Also I have never seen the need to develop on the same platform as your server (if your using a local server, well, then that makes sense - but it's not the best workflow and, in addition, that is not a limitation of the development but of the server requirements :))
I won't disagree Ruby is better on Linux though.
I tried RoR on Windows, and it is a second class citizen IMO, so I switched to Python/Django, and I've been happy since. Python/Django are pretty blissfully OS agnostic.
I've looked into powershell, but remote powershell isn't much better than shell scripts executed over SSH (and in some ways worse). Tools like Capistrano, Puppet, Chef, etc. don't seem to exist for Windows as yet.
OS X is pretty Unixy and has the ability to run virtually all the Unixy server stuff that runs on other Unixy platforms which are generally considered top tier server platforms. It's entirely possible that Windows is a better server, but you can't expect people to accept a statement like that on its face. Please provide some evidence.
Ultimately though this is just a TSA level maneuver. It's reactionary, short-sighted, and imperfect to a degree that is likely to make it nearly useless.
Security is a meta-property, for organizations as well as for software. You can't create security in software as a line-item feature. Nor can you create security in a company by using, or not using, a particular tool. Security ultimately is an overarching endeavor. If google is serious about security they need to approach it that way. The particularly dangerous failure mode for google's recent actions is that they think they've made a serious security enhancement (at best it's incremental), they become complacent, and then they get owned harder than before.
Hopefully this is just a teeny, tiny aspect of a larger security initiative, but from the outside it's difficult to tell if that's the case.