Christian Heilmann

Author Archive

Scripting Enabled Videos are available now (starting with Denise Stephens)

Tuesday, January 6th, 2009

Last September I was very happy to be able to pull off Scripting Enabled, an accessibility hacking event in London, England. Over two days the speakers, around 150 attendees and 40 hackers educated and learnt about accessibility barriers on the web and – in the case of the hackers – removed some of them.

The event was only possible by partnering with the right people, in this case the Metropolitan University in London, BBC backstage, the Opera Developer Network, JustGiving.com, Channel4 and last but so not the least the Yahoo Developer Network.

The presentation slides of the conference have been available and on SlideShare for quite a while now, and I am proud to announce that the Yahoo Developer Network now hosts all the videos of the talks. Opera provided the full transcriptions of the videos and I will now start publishing them one by one on Scripting Enabled.

The first video is Denise Stephens on Multiple Sclerosis and inclusive Design. Denise talks about the he effects of MS and what it means for web design. She also explains her own project, Enabled By Design which tries to bridge the gap between the design and accessibility world much like Scripting Enabled tries to bridge the gap between the developer and the accessibility world.

TTMMHTM: Was it a good day, food info, scripting enabled video and twitter

Tuesday, January 6th, 2009

Things that made me happy this morning:

Detecting and displaying the information of a logged-in twitter user

Monday, January 5th, 2009

Wouldn’t it be cool (and somehow creepy) to greet your visitors by their twitter name, and maybe ask them to tweet a post? It can be really easily done.

Check it out yourself: Hello Twitter Demo
Update: this is not working any longer. Twitter have discontinued this functionality because of the phishing opportunities it posed.

This page should show you your avatar, name, location and latest update when you are logged into twitter. If nothing show up you either are not logged in or already exceeded your API limit for the hour (if you have twhirl running, like me, that can happen fast)

This is actually very easy to do as a logged-in twitter user can be detected with a simple API call in a script node:


http://twitter.com/statuses/user_timeline.json?count=1&callback=yourcallback

All you need to do is provide a callback function that gets the data provided by the API and get the right information out. The demo does this by assembling a string:


Trying to think of a cool use for this that is not spooky :)

TTMMHTM: Wallace and Gromit details, CSS scrubbing, accessibility stuff and UX London

Monday, January 5th, 2009

Things that made me happy this morning:

  • Wallace and Gromit’s “A matter of loaf and death” (for the Brits available on iPlayer for others on bittorrent) – I just love the amount of detail the people at Aardman put into their work. Check for example that the cardoor claims “dough to door delivery” and “flour to the people” , the car license plate is “doh nut5” , Piella’s shoes are real Poochi’s and there’s a TankTopMan shop: . All the details are listed on Wikipedia. If you have that much fun with your work, you’ve done something right!
  • Braille is 200 years old – let’s celebrate accessibility
  • The Videos of Scripting Enabled are ready and uploaded – I am now putting together video pages with the transcriptions and all
  • A backup strategy full of win
  • CSS Super Scrub a tool that analyzes CSS and removes redundant selectors
  • Uncoverr is a pretty cool site uncovering all the other media around a certain book – interviews, videos and such. Doesn’t find me though, maybe it is time for another book.
  • Wulffmorgenthaler showing the first ever Bimbo
  • I didn’t make the list of sexiest geeks what’s with that?
  • Guidedogs are just the start The NYT reports about helper monkeys, miniature horses and parrots!
  • Ticket sales for UX London have started. The new event by the dconstruct team.

Will a new browser war help web innovation?

Friday, January 2nd, 2009

Aircraft in formationI just spent an hour on the cycle in the gym watching the video of Douglas Crockford’s Web Forward presentation on my iPod touch. Douglas makes some great points about the state of the current technology for the web – especially browsers – being counterproductive to innovation.

I agree with all of what Douglas says (especially the security aspects of JavaScript and the need for vats), but I am not too sure about the notion at the end that we need another browser war to go forward.

I understand Douglas’ point about browser vendors and users knowing what they need, but I also see a big danger in allowing the way we work on the web to become multi-track once again. I worked through the first browser wars, and I am thoroughly sick of having to write code to work for one or the other browser. This is why we use libraries to work around these issues. The thing that is a bit academic about the view that browser vendors could fuel innovation by navel-gazing is that the end users are not really going to upgrade their browsers just to make our lives easier. Even serious security flaws don’t really get people to upgrade their browsers (I am not talking about us geeks, I am talking about offices and home users that just want to read their mails and get the news). We can innovate until the cows come home, but if it doesn’t reach the people we work for this is progress that makes us move away rather than forward.

I agree with Douglas that the W3C standards are a failure when it comes to innovation. For starters they haven’t moved in ages and the standards are not nearly as good as they should be to make us work efficiently. The DOM standard is too complex, HTML does not really provide what we need to describe interfaces and interaction and CSS is not the layout engine it could be and we need to hack with positioning and floating just to get a multi column layout.

You have to cut the W3C some slack though – if browser vendors hadn’t concentrated on putting bespoke functionality in browsers and followed the guidelines we’d have had a much easier life as web developers in the last few years and could have concentrated on working with the W3C to get the standards extended. This has improved immensely in the last years and even the biggest evildoers now got the CSS2 specs supported in the 8th revision of their browser. Communication is happening, the problem is speed.

The process of the W3C is academic and broken, I do very much agree with that. The WHATWG are kicking butt left right and center with the HTML5 specs and got a good gig going working with browser vendors to get support for what they do. I think this is a great approach and seeing that the W3C is now looking at HTML5 in favour of the overly complex XHTML shows we are moving in the right direction.

What I lack in the proposals of innovating with techies is that a standard is much more than how it works technically. This is what we have already done in the first browser wars: we coded to make it work. It bit us in the butt a few years later as what we built was either flaky and broke or bloated and full of hacks that are not needed any longer (I doubt you’d ever need a if(document.layers){} these days).

Web Development is a very frustrating and complex job. Simply making things work to me is not enough – it needs to work, be usable and easy to understand for developer who take over from you. Hacks and browser specific solutions are the opposite of that.

To me, pragmatic development means “keep it easy to understand”, not “make it work in all browsers” as “all browsers” is a very moving target. The danger we are running into right now is that we are looking at (bleeding) edge cases and see them as innovation and great pragmatic ways of working. I am a big fan of performance tweaking and saving bytes wherever we can. However you can overdo that. As Dustin Diaz explained Google are using as their doctype to save on some bytes and David Calhoun proved that it is working across the browser board right now. Fine and in the case of Google or Yahoo this does make quite a difference. However, a DOCTYPE is not only there to trigger standards mode – this is a nice side-effect. Its purpose is to tell user agents (and that is more than a browser) what the document is, how it is structured and what elements are allowed in which hierarchy. If you wanted to convert a document with this “skinny doctype” you are in trouble as the conversion tool has to hope that all is fine and dandy. Systems like Yahoo Pipes or YQL are a great way of getting data from the web and re-using it. If the data we put out on the web is not in a format we can rely on being valid, this data is unavailable.

I like to see the web as a pool of semantic and linked information, not as a collection of documents that render correctly.

At least one thing is for sure: this year will be interesting in terms of innovation and how we build for the web.

Check out Douglas’ video:


Douglas Crockford: "Web Forward" @ Yahoo! Video

(I am tempted to add VNV Nation’s Darkangel as the ambient soundtrack)