Main

Browsers Archives

March 25, 2008

IE8's graphical live bookmark: the "WebSlice"

Internet Explorer 8 Beta introduces a new live bookmark feature they call "WebSlices". WebSlices actually subscribe you to portions of a Web page. It's a pretty cool idea-- with some easy mark-up in your page, you can allow users to subscribe to subscribe to your site's information without creating an extra RSS feed. And, users can view the feed not as a text list in a grey menu, but as a slightly larger window with its original HTML/CSS formatting. It's kind of like a graphical RSS feed, but without the work of maintaining the feed.

Continue reading "IE8's graphical live bookmark: the "WebSlice"" »

March 17, 2008

Joel's got it right; it's about browser-share, not designers

So you've heard about IE8 and how it implements standards mode, right? Unless you add a specific meta tag to your page that indicates to IE8 that it should render pages to its full capability (<meta http-equiv="X-UA-Compatible" content="IE=8" />), it will render them as if it were IE7 instead. And it's set the web industry abuzz with wonder and discussion. Why would you upgrade a browser with new capabilities but have them turned off by default?

Jeffrey Zeldman says that Microsoft is just guaranteeing that future versions of IE (8 and onward) will work with the existing sites of "millions of small business owners, school teachers, pastors, coaches, and so on who create websites every day, armed with crappy software and little else." That could be true, but does Microsoft really care about those millions of small-time content creators? After all, they've never seemed to care too much about all of us professionals.

But I think that Joel Spoelsky put it best in today's article, Martian Headsets (a.k.a., pragmatists versus idealists). Joel points out that it's not the web designers, professional or not, that Microsoft is worried about: it's the end user. He argues that if end users were come down to their desktop computer in the morning after it's been automagically Microsoft Updated to IE8 in the middle of the night, and if IE8 were set to standards mode by default, then most of the sites people viewed would break. And who or what would these end users blame? The creators of the web site which looked so good and worked so well just the previous day? Nope.

They'd blame IE8. And perhaps, just perhaps, IE would lose some market share.

Now I think that makes sense as a reason for Microsoft to be cautious in how IE8 renders sites. They probably don't care too much about making life easy for professional developers-- after all, we all know how to add a meta tag to a site pretty easily, and who knows, some of use will make some money off of it. Microsoft probably doesn't even care about the small business owners and coaches who-- let's face it-- wield little money and even little influense in the technology industry. But I can't blame them for not wanting to "break the web" for users.

Look at Joel's article, it's well worth a read.

October 31, 2007

Safari browser now available for Windows

For those of us who don't have immediate access to a Mac for testing our code, there's now a tool to help. Apple has released a version of its Safari (Beta 3) browser for Windows. It uses the same rendering engine, WebKit, on both Mac and Windows (as well as on the iPhone, for that matter), so you can be reasonably confident that web sites tested in Safari on Windows will render and behave similarly on the Mac. (I am not advocating that anyone completely skip testing on non-Windows platforms, just saying that there's a quick "cheat" available.)

October 4, 2007

Simple browser and OS sniffing in ColdFusion

It still happens these days that every so often you have to write different code for different browsers-- you might output different form controls for Firefox versus IE, or might write in different stylesheets for older browsers, or you might write out different JavaScripts for IE5 on the Mac. So what's the easiest way to tell which browser and OS is calling your page?

Obviously, you can look through the server's CGI variables too see this information. But you don't want to parse through it every time you have an if-else condition, so I suggest identifying this information once per request or even just once per session with the following code:

<!--- Get the user's platform and browser --->
<cfif CGI.HTTP_USER_AGENT contains "MSIE">
	<cfset REQUEST.userAgent = "IE">
<cfelseif CGI.HTTP_USER_AGENT contains "Opera">
	<cfset REQUEST.userAgent = "OP">
<cfelseif CGI.HTTP_USER_AGENT contains "Safari">
	<cfset REQUEST.userAgent = "SF">
<cfelseif CGI.HTTP_USER_AGENT contains "Netscape">
	<cfset REQUEST.userAgent = "NS">
<cfelseif CGI.HTTP_USER_AGENT contains "Gecko">
	<cfset REQUEST.userAgent = "MZ">
<cfelse>
	<cfset REQUEST.userAgent = "NS">
</cfif>

<cfif CGI.HTTP_USER_AGENT contains "Mac">
	<cfset REQUEST.platform = "Mac">
<cfelseif CGI.HTTP_USER_AGENT contains "Linux">
	<cfset REQUEST.platform = "Linux">
<cfelse>
	<cfset REQUEST.platform = "PC">
</cfif>

Afterwards, you can just refer to REQUEST.userAgent and REQUEST.platform to get the user's environment.

May 3, 2007

Google Browser Sync

I just found out about Google Browser Sync for Firefox. With it you can synchronize your browser settings across computers (including "bookmarks, history, persistent cookies, and saved passwords"), and even restore tabs and windows from your previous session. You can control which settings are synced.

But while it all sounds convenient, syncing my history, tabs, and windows is about all I would allow it to do. I mean, there's a reason that saved passwords and cookies were written with local filesystem security-- they're not meant to be shared across different computers through a network. Sure, the Browser Sync extension encrypts your data, but I just don't want my history, cookies, and passwords stored on anyone else's systems. After all, encryption once thought to be "unbreakable" has been broken plenty of times before.

So I may use Google Browser Sync, but if I do I'm going to use it in a very limited fashion. The convenience of having my passwords and cookies synced is not worth the security risk of having them stored elsewhere on the 'Net.