-
Now the NDA is gone, this looks like a good starting point. Honest.
-
"Content is an expensive, messy business and fraught with quality risk. Network resources like minutes and texts are an attractive commodity and one where the wholesale price is falling all the time." Interesting analysis of Blyk.
-
"Ladies and gentleman, Hello World 2.0 uses no fewer than 7 messages queues, three command line applications (which can be executed on physically separate machines), and two Inversion of Control frameworks (but I’m fixing that tomorrow)." Huddle look at moving towards message queues.
-
Web Inspector gets an overhaul; it's looking pretty nice, now.
-
"The Pencil Project's unique mission is to build a free and opensource tool for making diagrams and GUI prototyping that everyone can use." Hmn.
-
"Here is a video which gives some insight into how Little Big Planet ( and Media Molecule! ) evolved from next to nothing into what it is today!" MediaMolecule put the LBP repository into codeswarm, and then published the video. Lovely.
-
"Rososo shows you which bookmarks have updated, and hides the rest. It is a good alternative to newsreaders, which, like your email inbox, tend to accumulate obligation and guilt." Not sure about only showing sites, rather than content, but I like the idea of peaceful software a lot.
-
"The Geoblogomatic is little machine that turns blogs into maps. It's in beta" "If you have a blog about places, or things in places, the Geoblogomatic can make a map of your blog posts." Awesome. Another fun thing from Tom.
-
"This is the funny thing: appreciation of Mega Man music is a microcosm for the kind of snobbery you see in indie-music-loving white people. It's also a microcosm for the popularity of the series as a whole." Definitely exhaustive, and quite sweet. (Also: Michael's blog's tagline is pretty much spot on).
COI Browser Standards Draft – my response
10 September 2008
The COI have recently published a draft of their browser guidelines for anyone developing a public sector website.
Frankly, I’m very unimpressed; they’re dangerous, vague in certain areas and over-specific in others, and promote some terrible ideas. I’d urge any designer or developer with an interest in this area to download the document and read it – it’s really not very long – and then leave feedback on the document with the COI through the appropriate form. The public have been asked for responses, and we have the scope to respond; if you feel as strongly about what’s in the document as I do, I hope that you will.
My own response follows.
As a web development professional, I’m very unimpressed with this consultation document, and would go as far as to suggest that some elements of it are actively harmful.
I appreciate the attempt to codify the need for effective browser-compatibility for all public sector websites. That said, the manner in which the document suggests which browsers to test is very poor.
All browsers are different, even though the HTML and XHTML specs remain the same. The purpose of browser-testing is not to ensure that sites look identical in all browsers; the purpose is to ensure that the site is usable in all browsers.
As such, lists of browsers to be tested in are dangerous; the best we can aspire to is to write good, valid code that is functional in all browsers, and priortise appearance for the most modern browsers.
I take exception to the notion that the browsers to be tested on are those which have >2% share of visits on a website. 2% of hits on a very popular public-sector website might account for a sizeable proportion of users, and to exclude them (especially if the lack of testing in their browsers leads to impared functionality) could well contravene the Disabilities Discrimination Act. Also, note that these statistics are not necessarily accurate, and may contain spoofed or inaccurate user data.
Going beyond the 2% hurdle, it would not be feasible to test in all browsers. The best solution is probably a form of graded browser support, much as Yahoo recommends, which itself is reviewed and updated over time, and which guarantees a minimum functionality in certain families of browsers, full support in others, and makes it clear which browsers simply are not supported. Browsers do not cost money; they are not complex tools to install, and developers should not be limited simply because a certain percentage of users on their website continue to user Internet Explorer 5.
Browser support should not be a series of boxes to check off, and it should not be specified retroactively based upon current users; it should be based upon accurate specifications and usage patterns, to ensure that public sector websites – many of which already have high production costs – are sustainable, maintainable, and functional for years to come.
As such, this preliminary draft has a long way to go before it accurately represents the state of web usage, not to mention web development, in 2008.
-
"An almost-real-time, behind-the-scenes look at the assigning, writing, editing, and designing of a Wired feature."
-
"Brands are built…out of culture…out of meanings from culture. In the Volvo campaign, the meaning was safety and symbol for this safety was a little girl. Pretty standard. But this book is interested in new ways to source meaning. Let's look at new, emerging brand tactics." More excellent posts from Grant.
-
"The current browsers, including Firefox, just can’t cut it. JavaScript isn’t fast enough (thereby limiting the UX), browsers are single threaded and they aren’t stable enough. If Google want to challenge Microsoft (or anyone else for that matter) in the desktop space they needed a better platform… Google’s solution is I think much neater – build an open source browser that supports multithreading, fast JavaScript execution and stuff Google Gears into the back end so it works offline." Now that's a good explanation.
Burning Chrome
03 September 2008
I’m sure this is the zillionth post on the internet about Google Chrome, but a thought struck me and I’ve not seen it articulated like this yet.
Tom Scott makes an excellent point about one reason for Chrome’s existence in his blog post on the topic:
Google want to offer much richer and, more importantly, faster web applications.
The current browsers, including Firefox, just can’t cut it. JavaScript isn’t fast enough (thereby limiting the UX), browsers are single threaded and they aren’t stable enough. If Google want to challenge Microsoft (or anyone else for that matter) in the desktop space they needed a better platform. Of course others have sought to solve the same problem – notably Adobe with Air and Microsoft with Silverlight. Google’s solution is I think much neater – build an open source browser that supports multithreading, fast JavaScript execution and stuff Google Gears into the back end so it works offline.
I think that’s all very sensible, and very true. But there’s also a much simpler strategy at work – a strategy around their brand.
Google need users on decent, standards-compatible browsers, to make the most of the rich web; they don’t want to be working around IE all the time. Forgetting the advances of a much better, JIT-compiled Javascript engine, they just need people to stop using IE.
The greatest coup Microsoft pulled with Internet Explorer was putting the word “Internet” in its name. It sits there, on the desktop of every new Windows computer, and it says “Internet”. So you click it.
Chrome is a browser from Google – Google, who, for many people, are now the Internet. It’s their first port of call, it’s their homepage; many user-testing surveys comment on users typing URLs straight into Google.
What better way to beat a browser with the word “Internet” in its name – a browser that seemingly can’t be beat no matter how hard we try – than the Internet Company itself making a browser?
Handling IE specific stylesheets with a Rails plugin
10 December 2006
Time to announce my first published Rails plugin: ie-specific. And, more importantly, time to explain it.
I work as a front-end developer for a large scientific publishing firm. We’re very much committed to standards compliance and accessibility, as such, make every effort to ensure our sites work in as many browsers as possible. And that includes Internet Explorer 5.
Now, prior to IE7, we did this (by and large) by producing standards-compliant stylesheets, and then adding browser hacks where they were the only solution, in order to achieve consistent look/feel in many browsers. Fast forward to IE7, and we’ve now got a problem: many browser hacks (notably * html
) no longer work in IE7 and yet it still has its own raft of styling quirks.
So we’ve decided to change the way we implement browser-hacking. On the project I’m currently working on, we now have a main.css
which contains all the standards-compliant, “correct” CSS. We then place the IE-specific styles inside IE conditional comments. Each browser version gets a css file of its own where necessary, named for the name of the relevant IE conditional filter – eg, lte-ie-6.css
, ie-6.css
, lte-ie-5.500
, etcetera.
When I started work on the front-end integration for this Rails project, it was clear that this was obviously something that could be automated in Ruby – and, given that we were probably going to use it again, it made sense to package it as a plugin so that the next time I came to need it for a project, a quick script/install
would be enough.
Enter ie-specific, currently hosted at Google Code given that a) it’s open-source and b) it’s an easy way to get anonymous public svn.
It’s really simple. First, install the plugin:
script/plugin install http://ie-specific-rails-plugin.googlecode.com/svn/ie-specific
Now, place any IE-specific stylesheets into #{RAILS_ROOT}/public/stylesheets/ie_specific
, named with the appropriate conditional filter (eg: lte-ie-6.css
). Similarly, you can place IE-specific javascript into #{RAILS_ROOT}/public/javascripts/ie_specific
. We use IE-specific Javascript to simulate min/max-width capabilities in Internet Explorer.
Finally, in the <head> of your layout, include the following ERb:
<%= ie_specific_styles_and_scripts %>
Each file in the ie_specific
directories will be automatically included inside appropriate conditional comments – CSS files will be imported via an @import
directive, and JS files will be appropriately escaped as CDATA
(important for us, because we write XHTML 1.0 strict). There’s no unnecessary duplication, either – lte-ie-6.css
and lte-ie-6.js
will automatically be placed inside the same conditional comment.
That’s it, really – it’s very simple, but it’s also a convenient way to keep markup and styles clean and let other developers know exactly what’s a hack and what’s not. For more info, check out the README. And let me know what you think!