If you’re user-agent sniffing, announcements like this should deter you. They’re one of the many reasons not to sniff user-agents. Internet Explorer 11 is making a huge change in how it identifies itself, with a new user-agent broadcasting as:
Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv 11.0) like Gecko
This is interesting in a number of ways. First it gives us insight into the browser wars of old. For those that aren’t familiar, Microsoft realized that people were sniffing user-agents and shunning Internet Explorer, so they cleverly added the string “Gecko” into their user-agent. It’s a gross generalization, but that’s why user-agents are so out of whack. Further, user-agent spoofing is built right into browsers today, so the take-home message here is to not do it. At all. Especially for mission-critical logic.
What’s even more interesting though is Microsoft’s confident statement that they don’t even want IE-targeting conditional logic to work anymore. They’re committing to countless websites now incorrectly identifying the browser at hand. This speaks to how Microsoft views IE11. They’re stating (read: I’m stating on their behalf?) that IE11 has officially caught up with everyone else. Part of me thinks that’s awesome, but that part hasn’t sniffed a user-agent in recent memory. It’s a big commitment that might have interesting repercussions in certain offices around the world when it becomes widespread.