Friday, May 23, 2008

Usability, Design, and CSS

Andy Budd on Usability, Design, and the Death of CSS [Design Principles]: "SP: What's your opinion of CSS Frameworks, and how do they fit into the approach you guys take in developing a solution for a client?"

We have an internal framework that we use for our wireframes -- our prototypes. Wireframes are not things that live by themselves, so it doesn't really matter how semantic or pure they are.

This library, or "framework" if you want to be down with the hip kids, is a mixture of HTML and CSS and JavaScript, which we use time and time again for our wireframing. It makes use of jQuery, and a company we work with called New Bamboo have helped us to develop a jQuery plugin called polyPage, which allows multiple state changing within a wireframe, which is really cool.

So I think these libraries -- frankly, I think "framework" is a bit of a grandiose term for something like Blueprint, for example. Essentially it's three or four CSS files and a page worth of HTML. It's not a framework -- a framework, I think, is a much bigger thing. And there's a certain element of trumpet-blowing going on there. By calling it a framework, it makes it sound like it's this big, important thing like Ruby on Rails. Everyone knows Ruby on Rails is hot, everyone knows Django is hot -- let's call it a CSS framework, and it will be big.

I think what you need to do is develop your own framework. You need to develop a series of tools, a library of elements that work for your team, that work for the types of sites you build, that work for the internal belief system structure and knowledge that your team has.

I think generic libraries like Blueprint box you in to certain solutions. They have a certain amount of flexibility, sure. You can choose between one of any number of columns -- I think it's 16 or 24 -- and you can span columns and stuff. But it's still limited to this column behaviour. And you're limited to the size of the gutters and the width of the window, and if that doesn't necessarily fit with your designs, what do you do? Do you spend hours hacking your library to fit with your designs? . . . . . .

Andy Budd on Usability, Design, and the Death of CSS [Design Principles]

But on the other hand the whole purpose of web standards, partly, is digital preservation -- if everyone created web sites in the proper fashion, we wouldn't have this problem in the first place. Wishful thinking, perhaps.

I honestly think that CSS is basically a dead technology after this next revision. I think that's really sad, because I'm a standards advocate, but that's what I believe. I don't think we'll see a CSS4. I don't think we'll see half of the modules in CSS3 implemented, or even end up in the specification, because CSS3 has been under development for 8 years or something ridiculous, and in 8 years we haven't got a single module complete yet. We've got a few almost finished.

But I do think that in this world where I've got a PS3 at home that performs live texture-mapping rendering in 3D, on the fly, why we can't get a browser that can render rounded corners on a box in 2008. You know, we should all have jet packs here! A rounded corner box or multiple background images shouldn't be rocket science.

I think part of the problem is that there are innate problems with the standards development mechanism, and I think there are innate problems with the browser vendors, and I do think we're going to see other technologies -- sadly, proprietary technologies like Flash and Flex and XAML and XML and MXML and non-native Web technologies -- take over, because we are limited with what we can do with our current technology. The reason we're seeing all of these JavaScript libraries come out is because they're supplementing what the standards and the browsers should be doing. It's kind of a stupid situation to be in, and we've got to lobby the W3C to pull their finger out to get these standards ratified, we've got to lobby the browser vendors to stop arguing among each other over petty little things and implement them, and there needs to be a radical shake-up in the way these things are created.

Andy Budd on Usability, Design, and the Death of CSS [Design Principles]: "I do think it's really hard though, and I think what you need to do is specialise. I think gone are the days of the generalist, because I think that, sadly, if you're a generalist, it does mean that you're doing everything not to the highest possible quality. Because there are so many specialists now, you've got to compete with those. So starting off and being really good at web standards, for example, if you want to get a job in industry, if you're really good at HTML and CSS then you will get a job, it doesn't take that long to learn HTML and CSS.

But learning the softer usability skills -- you can learn heuristics, you can learn basic principles. But it's not until you've actually sat down and built loads of sites and screwed them up that you can do that properly."


Post a Comment

<< Home