I just read an interesting post from Microsoft’s Internet Explorer team on The IE7 User-Agent String. This statement in particular illustrates a problem not unfamiliar to Opera users:
There are a few remaining sites which fail to recognize IE7 because they are performing exact string matches to look for specific IE version strings. Those checks will need to be removed or updated to accommodate IE7.
Yes, you read that correctly: there are websites out there using bad browser sniffing code which will send the wrong code to Internet Explorer 7. In fact, they go on to say that they’ve released a tool which will let IE7 pretend to be IE6!
To enable you to workaround any remaining sites that block access to Internet Explorer 7, we developed the User Agent String Utility. The utility comes in the form of a small executable that opens an IE7 instance that sends the IE6 user agent string. It also provides a mechanism for you to report problem web sites to Microsoft so that we can follow up with the affected site owners.
I’ll admit to a certain amount of schadenfreude, but it also points up just how bad a strategy browser sniffing can be when done thoughtlessly: It effectively builds an expiration date into your website after which even the browser you designed it for will run into problems.
*This post originally appeared on Confessions of a Web Developer, my blog at the My Opera community.
SANS is reporting that some of the leaked copies of IE7 beta 1 floating around may be bugged with spyware. Now, seriously, is anyone surprised by this? That’s always a risk with warez. I’m reluctant to grab any program, even one that allows free redistribution like Firefox, via P2P, unless there’s a way to verify it. (BitTorrent handles this internally—assuming you trust the torrent site.)
If you’re not getting a program directly from the supplier or a distributor that you trust, you should always check it before installing. Even if you are getting it from a trusted source, it’s worth checking, since servers do occasionally get hacked. Most open-source programs distribute either a PGP/GPG signature or a checksum using an MD5 or SHA1 hash along with their downloads. Assuming you get the checksum from a trusted source, you can verify that the package hasn’t been altered.
For IE7, if you have to try out beta 1, go through proper channels (MSDN or the beta program) or get it from someone you trust…who went through channels. Otherwise, you’re better off waiting for beta 2.
Well, I didn’t get around to downloading IE7 beta 1 yesterday, so I won’t be able to check it out over the weekend. But it’s become clear that, from a web developer’s point of view, all the action is slated for beta 2. Yesterday the IE team posted on Standards and CSS in IE, listing a number of CSS bugs they’ve fixed and a number of new features they’ve already implemented. It reads like a wish list:
- HTML 4.01
- Improved (though not yet perfect)
- CSS 2.1 Selector support (child, adjacent, attribute, first-child etc.)
- CSS 2.1 Fixed positioning
- Alpha channel in PNG images
:hover on all elements
- Background-attachment: fixed on all elements not just body
Fixed positioning! Child and Attribute selectors! Full PNG transparency (though we knew about that one already)!
Now if they’ll just implement
max-width and fix the behavior of
width, and add generated content via
:after, I think my wish list will be complete. (Assuming, of course, a low enough bug level.)
There’s timing. Microsoft has released the first IE7 beta, and Opera has released a security update. (The latest Firefox update was last week.)
Reaction to the IE7 beta has been… less than enthusiastic. I can’t install it at work since we’re standardized on Windows 2000 (IE7 requires Windows XP or newer), and I can’t download it at home since this version is only available through MSDN. Anne van Kesteren is not impressed. Neither is CNET. Asa Dotzler is trying to start a new round of Firefox marketing. Dean Edwards (author of the may-need-a-new-name IE7 standards compatibility script) is eagerly awaiting his copy. KuraFire has compared several reviews and summed up the response:
I guess that, yes, this was a disappointing first step for IE7, but even so, we should’ve expected no more than that. As much as we may all want IE7 to be a sign of great improvements in the Microsoft camp, reality once again points out that time and patience is necessary in dealing with this dinosaur of browser.
With any luck the next beta will show more improvement.
Edit: More reactions from Mezzoblue, mainly on trying to install it and what’s changed in CSS, and from WaSP‘s Molly Holzschlag, focused on what comes next.
According to IEBlog, IE7 will have tabs. OK, everyone who’s surprised, raise your hands.
It seems obvious that every feature in Firefox 1.0 that has been used to promote the browser to the general audience will show up in the next version of Internet Explorer. That’s just common sense. People left your product to get X, so you provide X yourself in hopes of luring them back. And since Firefox is developed openly, the IE team can see what they’re planning and try to guess what the next big draw will be.
So Firefox 1.1 will probably not be able to compete with IE7 on feature set, at least as far as the end-user is concerned. And since designers have to respond to the market (for all our “Spread Firefox” and “Browse Happy” buttons, we don’t really have much effect on what browser people are using), improved standards compliance has never been a major factor in adoption.
What does that leave?
- Security. This is a tricky one, particularly with the recent publicity over vulnerabilities. We (FF supporters) need to emphasize more secure and not totally secure, which is what people are hearing and debunking.
- Open Source/Free Software. Only a small portion of the audience cares about this. Too many people don’t know the difference between Free Software and free software.
- Not Microsoft. Microsoft has ticked off a lot of people with their business practices, especially in Europe. And Americans love to root for the underdog. (Remember when little Microsoft was going to save us from the big bad IBM?) Probably not a long-term strategy, though.
- Compatibility. IE doesn’t run on Linux, and the Mac version is basically dead. Firefox is fast becoming the default browser on a number of Linux distributions, and while the Mac version isn’t perfectly integrated, they’re working on it. So for someone like me, who uses Windows, Linux, and MacOS on a regular basis, a common browser has strong appeal (even if I do keep looking for the preferences in the wrong place).
(Cross-posted at Spread Firefox)