Irascian Ltd - Ian Smith's Work Web Logs, Dave Shea Geek Dinner, London, 23rd January 2006

RSS 2.0 feed to Ian's work blogs

Digimarc Digital Watermarking | Get more information on how to digitally watermark images
Digimarc and the Digimarc logo are registered trademarks of Digimarc Corporation. The "Digimarc Digital Watermarking" Web Button is a trademark of Digimarc Corporation, used with permission.

Valid XHTML 1.1

Valid CSS!

Transcript of Q & A

DISCLAIMER: This transcript is provided on an "as is" best efforts basis and is based on a MiniDisc recording made where speech was not always legible because of noise in the room. Any errors made in transcribing what was actually said are mine, and not those of the speakers quoted, and may include spelling mistakes, incorrect names and other minor typo's. Readers should also bear in mind that statements read in cold print can often convey a completely different meaning from that intended by the speaker and perceived by the original audience. Note the transcript starts a minute or so after Dave started talking.

AJAX and Unobtrusive DOM

Dave Shea: As far as stuff I'm excited about... so, I've been talking a little bit about AJAX lately, and JavaScript and CSS and how all of these technologies kind of come together. One thing that I've really been liking, especially with JavaScript, is how JavaScript in particular has the ability to not only define all this extra functionality, which is really cool - we're moving from a document-based web to an application-based web, but it also has the ability to enhance CSS. Enhancing CSS in the sense that you can enhance it without actually modifying the intent of that CSS. You can do things like 'OK I'm going to give my CSS to all these browsers... I think this is particularly important right now because CSS is completely stagnant until Internet Explorer.. like 8.5 comes out, we're not going to see any of the really cool CSS2 stuff... like they've promised to fix some of the major CSS1 bugs that they should have fixed five years ago in IE7, so we've got a few more versions to go before we actually hit the good one where we can start doing more advanced stuff. In the meantime we can fill some of those holes with JavaScript and do so in a way that we have a fallback for browsers that can't support it. So you just kind of add that over and above, and at the same time, providing you write your JavaScript properly... have you guys heard about unobtrusive DOM scripting? That's something that Jeremy Keith is really big on, among other people. At the same time it's written in such a way that your JavaScript isn't going to impact the actual usability of your HTML, so you're adding this extra layer on top - this functionality layer. CSS gives you the presentation layer - that's how you make your HTML look nice, but HTML doesn't need the CSS to function. In the same way you add the JavaScript on top of the HTML and you get the functionality to make it function better but the HTML can still work without it.

So this is the whole idea behind unobtrusive DOM scripting. I like the fact that it's providing all this. Its giving us AJAX. It's giving us ways to make the browser a little more ? and start dealing with communications and dealing with all this stuff in a way where we can still be responsible for accessibility. But accessibility isn't really happening with AJAX right now so that's kind of the big problem! A lot of people are interested in the functionality and where we're going to go and how we're going to make these applications better without stopping to think 'We've kind of been through this at the beginning of the web. We've built all these really cool sites where we've got all this really cool technology going, where we've got all these ideas that are changing and then after five or six years we've sort of stepped back and said 'What about usability?'. Well Jacob Nielsen was there at the start of course, but... so where's the Jacob Nielsen of AJAX? That's what I'm kind of leading up to here. We might get to the point where somebody has to say 'Look, all this work you're doing.. yeah, it's cool. Yeah, it's enhancing the user experience, but we have to do so in a responsible way, and we have to make sure that it's not cool just for the sake of being cool!

Does anybody here use screen readers? Anybody interested in screen readers?

Attendee: I'm interested in the accessibility of AJAX not just the usability

Dave:That's exactly it, the accessibility of AJAX There are going to be two different duplications. It's going to be a long and difficult process. How do I AJAX a site and not affect a screen reader adversely and help people that need extra assistance. Even just serving up fonts that can scale in a browser, stuff like that. Not everybody needs Opera accessibility. The screenreader is the classic example we give. For the most part people with accessibility go far beyond that. There are way more things to think about, but that's kind of the classic one. Basically what I'm trying to say is that we haven't yet worked out how AJAX works effectively and that's going to be a learning process. We're going to have to do that over time and it's not going to be easy and it's not going to be quick, but we need people to champion that. That's what I'm really interested in - doing it right first time instead of Web 1.0., for lack of a better term, jumping in and doing it and worrying about the implications later.

Attendee(commenting on Dave consulting his PDA to see what subjects to cover): What OS is that running?

Dave: Palm OS. It's the only one that I've managed to get working with a Mac so it's the only choice I had. (FX: boo's!)What's wrong with the Mac? Have we got some Mac haters in the crowd? You guys are geeks - you should love 'em! It's UNIX, c'mon guys! Let's just go to questions...

Challenges (Don't call it Web 2.0)

Jo: What challenges do you think web designers face when faced with more convergence, when we're talking about the possibilities of IP TV, broadband TV, being able to pull in content throug RSS and all sorts of tools like that and actually get it through TV. What sort of challenge does that present to designers who are all thinking about Web 2.0 right now?

Dave: Boy, that's a big question! (FX: laugher)I think it's going to be a lot more of the same. We're transporting the data, your content being used in contexts for which you are unaware. Right now the big issue is screen resolution, right? That's the whole thing, but we have to think above and beyond that. What happens if we have a screen of 160x160. My Treo is 320x320 which is brilliant and it's gorgeous. But that's still only 320x320 on an Intel. So the whole difference between thinking of the web in terms of what people see in a browser, and then thinking about that in other contexts, so ultimately alternate media types. Mobile is a good example where we're starting to see that beimg important because cell phones are now starting to have browsers where you can do web content, and you can issue the same web page up to the mobile browser. Not that people really use that a lot. I've just started using that myself recently, and it still sucks really badly, even though I probably have one of the better mobile browsers, but we now have the ability to do it and it's going to get better over time. We're going to have to start thinking about our sites kind of more globally. People are not going to be coming in with big criteria which is what we designed for - we just have to be aware of that. Hopefully we'll have media types for TVs and stuff like that eventually one day, but that comes down to CSS media types being not supported elsewhere. So I don't know - it might be the case where the technology for a display comes out and the technology for actually building for that display comes later, which is kind of a really weird chicken and egg situation but, anyway...

Attendee comment: It's also a vendor problem. We did the Sky TV first interactive platform in my company, and the vendors of the set top boxes are as hard to talk to as vendors of screen readers, so when it comes to supporting any of those standards that are out... people will buy it anyway.

Dave: It's not just vendors either. Vendors is definitely a concern, but it's also your clients. You've got a client that comes in and views your site on some weird TV that was built five years before its time and they expect that your content which works on today's TVs - we're talking 10 years down the road here, obviously - on today's TVs it looks great, and so it's the whole support issue all over again where you've got even more devices to support. As far as what designers can do right now to plan for that? I'm not sure - I don't think the technologies are really there yet. The technologies have to define themselves first. Once we get that we're going to see how we can work with them. Like I said, it's a big question and I'm not sure there's a really good answer for that.

CSS 3, XAML, SVG and HTML 5

Anna: Do you think CSS is (indecipherable)or do you think there's a better way of laying out pages for content and presentation?

Dave: The thing is CSS never was good for laying out pages in the first place. It doesn't have a good grid system for laying out pages. It seems like just about all the ways of laying out pages with CSS is pretty much a hack. Floats are not layout tools. We should not have to layout whole pages of floats and we can't clear elements with it and all the stuff that goes along with that. I don't think CSS has ever got to the point where it was a good layout tool. It was just what we had, and what we had to use because it supported - more or less - amongst all the user browsers out there - more or less! You can tell that I'm used to using disclaimers when I talk. You can't talk about CSS without saying 'Here's all the exceptions...!' Going forward, it looks like CSS3 addresses all of that fun stuff. I'm going to be sitting on a panel about CSS3 and basically I think my entire contribution is going to be 'Uh! That's not going to happen'. I'm not sure what I can say about CSS3 because there are so many things that have to happen. It has to be finished - it's still in development. It is modularised so pieces can be done here and there and implemented in sections so that's kind of nice, but at the same time it's been stalled for a couple of years as far as I can tell from the outside. It has to be implemented in the browser. Not only do we have to have Mozilla, Firefox and Safari and all them implement it - we have to have Internet Explorer implement it - and then those browsers have to get to the users. Every time I talk about it I think 'We're looking at a 10 year timeframe, which is totally pessimistic and I hope I'm wrong, but I don't really see it happening any time soon. So, what will replace it? I don't know. There are a lot of technology companies looking at ways. Microsoft's Avalon/XAML - that's not the web, but they are pulling in content from the internet, right? That's the whole idea. It's a brand new presentation layer that you don't have to go to the web in order to use. It's really amazing. The stuff we're going to .. well first of all it's going to be just like Flash - we're going to see all this crappy stuff that doesn't really need to exist. But with time, as it refines, the amount of cool stuff that you're going to be able to do with Avalon is going to really turn developers' heads. It sucks because it's a proprietary Microsoft-only technology and that scares the hell out of me, I don't know about you guys. Maybe if you live in Microsoftland maybeyou're cool with it. I'm not, but what I say really doesn't affect Microsoft in any way. It's their strategy here - this is where they're going. Maybe there's going to be other vendors, the Adobe and Macromedia merge, you know. 'PDF and Flash is going to be this combined platform'. I don't know where they thought that was a good idea but maybe one of these is going to be the future. Right now from where I'm sitting I can't tell. I don't know where it's going, but I can tell you that CSS right now, it really sucks and somebody's going to solve that problem sooner or later.

Attendee comment: SVG?

Dave: SVG? Don't even get me started! No really - don't! SVG has a browser support issue. It's been around for ages but browsers don't support it. Firefox 1.5 is the first browser with native support, other than the full Mozilla suite. I think that's just preliminary support - I don't know anything about the implementation - I don't know how good it is. Does anybody know how good Firefox implementation is?

Attendee comment: It's good... a bit slow!

Dave: Is it a full implementation or justthe first bits and pieces?

Attendee comment: The first bits!

Dave: The first bits. OK. Adobe have all but abandoned their SVG plug-in so far as I know. I haven't seen any updates for a while.

Attendee comment: Are they not going to bundle that with Flash though?

Dave: Maybe they will. But then again Flash is now their platform, and having a platform means that supporting the open source alternative for that platform doesn't make much sense from a business standpoint. I don't know what's going to happen with that. I'm hoping that SVG could become something I could use but again the same problem with CSS3 - it's not practical and it's not going to be practical for a long, long time and I can see major business reaons why it may never become practical! So it's king of a 'wait and see' situation for SVG as well. But there are a lot of credible alternatives out there now and one of them has to catch on, or a couple of them. Hopefully we can have a diverse eco-system where we get to pick and choose the technology we can use. That would be nice if we're not forced into lock in through one vendor. That's my main hope really - that going forward we're going to have a bit more diversity. That's the best anyone can hope for right now - it's too unclear what will actually happen!

Attendee question: What do you think of AJAX? Do you ever foresee the day where JavaScript and XML is a requirement in the use of an application? It's all very well saying in the same way that CSS degrades but the AJAX parallel can be so difficult - it's almost intrinsic to the way the application actually works. I wonder to what extent that rich platform can get upgradeability!

Dave: Exactly!

Simon: Actually! Do you ever see those Google maps, a Swiss site called map.search.ch which actually came out almost a year before GoogleMaps that had the planning thing. If you went there without JavaScript it fell back on you clicking these sort of scrolling arrows down the side..

Dave: Sort of like Adquest basically?

Simon: Yeah. So they actually got it working a year before GoogleMaps. A version without JavaScript still works.

Dave: So basically I think the question is 'Could there every be an application which is so complex it cannot be rendered as HTML?' I think probably the answer is 'Yes' and that the browser makers are on top of that with HMTL5 which is this totally different solution I haven't talked about yet because I don't know a thing about it. Anybody here know about HTML5?

Simon: It's kind of interesting. There's a kind of splinter group that call themseves the 'What WG' - the What Working Group - and it's headed up by a guy called Ian Hickson who's been doing hacking on Mozilla, went to work for Ocram and is now at Google. Because the W3C have said 'We're not going to develop HTML4 any more. Everything's going to be XHTML' they've picked up HTML4 and said 'We'll take it forward and define new doctypes and elements'. If you've seen it, the canvas element in Safari which lets you from JavaScript draw images.. WWG have actually put out a standard for that and the Mozilla people have actually implemented that same standard. It's interesting because they've invented all this new stuff but they've got the backing of Mozilla and Safari and even Opera have talked about going to them with stuff. So, of course, the only person that's missing is Internet Explorer but they claim to have that covered as well because they're working on JavaScript hacks for Internet Explorer that will get... For example the canvas element, they've got a JavaScript layer in IE that will turn the canvas commands into VML - this weird Internet Explorer -specific drawing technique. They actually think they can get it to work. It's really crazy and it's kind of bizarre but they've gone off on their own and they've got a bit of grass roots support and they're really smart people. So it's interesting and it's one to watch!

Attendee: How can it be, having two sets of people setting standards?

Simon: Oh, it's terrible. But what they're saying is 'If the W3C aren't going to do it, we will'

Attendee 2: Just look at it: The What Working Group have already got it implemented in every browser other than Internet Explorer. And the W3C got CSS2 in 1997 and it's still not fully implemented! Which one's doing better work?

CSS Zen Garden

Stuart: If you were doing Zen Garden again today, starting from scratch would you do it differently?

Dave: Would I do it any differently? Obviously Css Zen Garden is the site that got me here to London today, amongst other things. There are a ton of things I'd do differently. I've had so much interest in different ways of doing it. You could implement it as a DOM Scripting testbed where your DOM Scripting and CSS go hand-in-hand together and provide you so that only is the CSS styling the HTML but the JavaScript is doing something extra to that HTML functionality-wise. There was actually a proof-of-concept of that, basically this simple animation, by simply adding as well as the link to a CSS file adding a link to a JavaScript file, and that guy had these nice clouds moving across the header and it was really nice looking but... that could be one way to change it. So far as the mark-up - I would totally change everything about the mark-up. One thing that's really bothered me about that site is I can't go in there and change anything any more! We're at almost 1000 designs - I think it's 850 and I have well over 200 in the queue - I'm so behind on that. That's another thing - it wouldn't be just me going through those designs! I may have to open that up at some point. So anyway something like 1000 designs where everyone has complete reliance on the HTML and the HTML structure being exactly the same. I've been able to go in and make minor text edits here and there but what I did when I first constructed it was I included all these instructions about how to submit right on that page - I wish I could edit that content and that mark-up at this point, but I can't. I'd take out a lot of the extraneous mark-up - it's too heavy on the document. A lot of people have emailed me to complain about just how heavy that is so I would probably move that down some. But at the same time it was kind of necessary at the time because we didn't know how to do the image replacement without a lot of those extra spans. It's caught on since and we've found out how to do it, but that's just kind of legacy. I think legacy management is what it all comes down to. I wish I had some way to take it and move it beyond what it is.

Attendee: CSS 2.0!

Dave: Exactly! Nah, I don't think so!

Attendee: But then maybe you could foster the whole CSS 3 thing

Dave: Make that an incentive for the working group to finish CSS 3, and the browser implementors to finish it?! Yeah, that's not a bad idea!

Diverse Devices

Attendee: I've been working with tables since 1992 or 1993. The beauty of it at the time was there were only a handful of browsers. Now we've got new ones coming at us all the time. Everything's got a browser in it. TVs, devices, MP3 players, whatever! So what are we going to do to deal with all these devices without giving ourselves a shit load of grief? Where do you draw the line where you're confident that your styling works everywhere?

Dave: Do you actually want support for all of that? You don't! It's up to them!

Attendee: What if you really want to go generic?

Dave: You have to remember that the web sucks universally on all those devices!

Attendee: What about Flash?

Dave: I don't know of a cell phone that supports Flash in the browser. I know some people use a Flash-SVG interface but...Oh Opera supports Flash in a browser so I'm wrong, but ...

Attendee: What I mean is there's all this effort to do all this incredibly cool CSS stuff - the Zen Garden stuff is what got me into CSS and I thought 'The Power of Personalisation' - but what about all the browsers on new devices. How do we deal with that?

Dave: I think you have to accept that your browser does not exist in a microcosm all of its own. This is really the trick - communicating this to your clients and your managers and your bosses. Your site is part of a greater whole and your site will not look good on those devices until the devices catch up to speed. You can start catering at the individual level but it's often way more trouble than it's worth, unless you have a proven user base on these devices then yes, you do have to do that extra work. But if it's just a case of 'What do we do if people come in from a TV?' just realise that most of the web is probably unusable on that TV and it's up to the TV to catch up to the standard of where the web is at right now. That's the only sane way to deal with it.

Wally: Can I just add to that point? I'm a developer for an e-commerce site. Let's say we take a million pound sterling in a year. We've implemented a lot from CSS Zen Gaden - that's where we started off. One of the problems I felt was 'Do I go back to Netscape 4.2?' and it was a simple metric to be fair of 0.1% of our users use 4.7. That equates to 0.1% of our turnover. Is it worth bothering with?

Attendee: That's because you're an e-commerce site. What about system media sites? What about places that are trying to close the digital divide? What about places that are about the actual common good, the greater good, the civic responsibility?

Wally: You've just got to convert that into your own pounds sterling. How much of the market do you want to hit? You can easily hit the whole market by...

Jon: I'm a platform agnostic if you like. Windows? Mac? I don't care! As a web designer for the last decade you can't focus on one. Much as I love the Mac, and much as the industry is very much driven in the design by the Mac, especially because of the printing world, the Mac users really do only make up 3% of the universe.

Wally: It's 0.7% for us!

Jon: It's interesting to hear Dave that you're a Mac user. Are you platform agnostic as well? Do you use Windows as well?

Dave: Absolutely!

Jon: I really hate it when people guffaw about Windows users because they are the majority, whether we like it or not, and not all of us do like it. Safari is really only on 3% of the universe

Attendee: But it's also the only one that passes ACID 2

Jon: Well if you want to make money then never use a Mac! But the opinion formers all seem to be Mac users strangely enough.

Attendee 2: We shouldn't think about browsers. We should think about the internet and media.

Attendee 3: Or the people! We should think about the people!

Attendee 2: That's what I mean. I used to work in radio. It was just a radio and we didn't care if it was a car stereo or a high-end machine. So the whole thing about does it look the same on different browsers is totally pointless. The idea is 'Does it work on the browser? Can I get my message across?'

Dave: Perhaps this conversation would be better over a beer!

(FX: applause)