Why Standards Fail

Back in 2000, CSS co-creator Bert Bos set out to explain the W3C’s design principles—“to make explicit what the developers in the various W3C working groups mean when they invoke words like efficiency, maintainability, accessibility, extensibility, learnability, simplicity, [and] longevity….”

Eventually published in 2003, the essay, although ostensibly concerned with explaining W3C working group principles to the uninitiated, actually articulates the key principle that separates great design from the muck we normally wade through. It also serves as a warning to Bert’s fellow W3C wizards not to seek the dark magic of abstract purity at the expense of the common good. Tragically for these wizards, and for we who use their technologies, it is a warning some developers of W3C specifications continue to overlook.

Design is for people

In his introduction, Bert summarizes the humanistic value that is supposed to be at the core of every web standard:

Contrary to appearances, the W3C specifications are for the most part not designed for computers, but for people. … Most of the formats are in fact compromises between human-readability and computer efficiency….

But why do we want people to read them at all? Because all our specs are incomplete. Because people, usually other people than the original developers, have to add to them….

For the same reason we try to keep the specifications of reasonable size. They must describe a useful chunk of technology, but not one that is too large for an individual to understand.

Over the succeeding 25 web pages (the article is chunked out in pamphlet-sized pages, each devoted to a single principle such as “maintainability” and “robustness”) Bert clearly, plainly, and humbly articulates a series of rather profound ideas that are key to the web’s growth and that might apply equally admirably to realms of human endeavor beyond the web.

For instance, in the page entitled “Use What Is There,” Bert says:

The Web now runs on HTML, HTTP and URLs, none of which existed before the ’90s. But it isn’t just because of the quality of these new formats and protocols that the Web took off. In fact, the original HTTP was a worse protocol than, e.g., Gopher or FTP in its capabilities….

And that fact shows nicely what made the Web possible at all: it didn’t try to replace things that already worked, it only added new modules, that fit in the existing infrastructure. …

And nowadays (the year 2000), it may look like everything is XML and HTTP, but that impression is only because the “old” stuff is so well integrated that you forget about it: there is no replacement for e-mail or Usenet, for JPEG or MPEG, and many other essential parts of the Web.

He then warns:

There is, unfortunately, a tendency in every standards organization, W3C not excluded, to replace everything that was created by others with things developed in-house. It is the not-invented-here syndrome, a feeling that things that were not developed “for the Web” are somehow inferior. And that “we” can do better than “them.” But even if that is true, maybe the improvement still isn’t worth spending a working group’s resources on.

Shrinkage and seduction

In his gentle way, Bert seems to be speaking directly to his W3C peers, who may not always share his and Håkon‘s humanism. For, despite what designers new to CSS, struggling for the first time with concepts like “float” and the box model may think, Bert and Håkon designed the web’s layout language to be easy to learn, teach, implement, maintain, and (eventually) extend. They also designed CSS not to overwhelm the newcomer with advanced power at the cost of profound complexity. (“CSS stops short of even more powerful features that programmers use in their programming languages: macros, variables, symbolic constants, conditionals, expressions over variables, etc. That is because these things give power-users a lot of rope, but less experienced users will unwittingly hang themselves; or, more likely, be so scared that they won’t even touch CSS. It’s a balance.”)

This striving to be understood and used by the inexperienced is the underlying principle of all good design, from the iPhone to the Eames chair. It’s what Jared Spool would call usability and you and I may consider the heart of design. When anything new is created, be it a website, a service, or a web markup language, there is a gap between what the creator knows (which is everything about how it’s supposed to work), and what you and I know (which is nothing). The goal of design is to shrink this ignorance gap while seducing us into leaping across it.

What were once vices are now habits

You can see this principle at work in CSS, whose simplicity allowed us to learn it. Although we now rail against the limitations of CSS 1 and even CSS 2.1, what we are really complaining about is the slow pace of CSS 3 and the greater slowness with which browser makers (some more than others) adopt bits of it.

Note that at one time we would have railed against browser makers who implemented parts of a specification that was still under development; now we admire them. Note, too, that it has taken well over a decade for developers to understand and browsers to support basic CSS, and it is only from the perspective of the experienced customer who craves more that advanced web designers now cry out for immediate CSS 3 adoption and chafe against the “restrictions” of current CSS as universally supported in all browsers, including IE8.

If CSS had initially offered the power, depth, and complexity that CSS 3 promises, we would still be designing with tables or Flash. Even assuming a browser had existed that could demonstrate the power of CSS 3, the complexity of the specification would have daunted everyone but Eric Meyer, had CSS 1 not come out of the gate first.

The future of the future of standards

It was the practical simplicity of CSS that enabled browser engineers to implement it and tempted designers to use (and then evangelize) it. In contrast, it was the seeming complexity and detachment from practical workaday concerns that doomed XHTML 2, while XHTML 1.0 remains a valid spec that will likely still be working when you and I have retired (assuming retirement will be possible in our lifetime—but that’s another story).

And yet, compared to some W3C specs in progress, XHTML 2 was a model of accessible, practical, down-to-earth usability.

To the extent that W3C specifications remain modular, practical, and accessible to the non-PhD in computer science, they will be adopted by browser makers and the marketplace. The farther they depart from the principles Bert articulated, the sooner they will peter out into nothingness, and the likelier we are to face a crisis in which web standards once again detach from the direction in which the web is actually moving, and the medium is given over to incompatible, proprietary technologies.

I urge everyone to read “What is a Good Standard?“, and I thank my friend Tantek for pointing it out to me.

[tags]W3C, design, principles, bertbos, maintainability, accessibility, extensibility, learnability, simplicity, specs, standards, css, markup, code, languages, web, webdesign, webstandards, webdevelopment, essays[/tags]

54 thoughts on “Why Standards Fail

  1. CSS stops short of even more powerful features that programmers use in their programming languages: macros, variables, symbolic constants, conditionals, expressions over variables, etc. That is because these things give power-users a lot of rope, but less experienced users will unwittingly hang themselves; or, more likely, be so scared that they won’t even touch CSS. It’s a balance.

    And that right there is the trouble I’ve always had with the CSS WG remit. Give us rope, let people hang themselves. Can you imagine this attitude working for people developing PHP? Just because advanced capabilities are in the spec doesn’t mean people have to use them, in much the same way people don’t have to use OO in PHP, despite it being there. So yes, give me “macros, variables, symbolic constants, conditionals, expressions over variables” and a bunch of other stuff designers have been wanting for a decade or more.

    Until this backward attitude of “anyone should be able to immediately ‘do’ CSS” is consigned to the ideas trash can, CSS will never be flexible enough to do the job it needs to do efficiently.

    And that is why the browser vendors are wrestling control of the direction of specifications away from the W3C. They’re doing the things end users want from the product. They listen better to the clients. And not listening to the clients; that is why standards fail.

  2. Great article! I loved to read this digest.
    In the book Cascading Style Sheets from Bert & Hakon is where you can check how much they make a effort to make it easily for the new-comers. I miss this approach in other computing technologies

  3. Thank you for writing a good post about standards, particularly about CSS in web development.
    I can’t agree more with your paragraph about the progressive introduction of CSS beginning from version 1 to 3, that were smart move which let CSS become norm to most of the good developers/designers of web. It could be slower if CSS were too complicated early at the beginning.
    Perhaps, I think this usability must become the general principle which should be advocated in almost every introduction of new standard.
    Also, thank you for sharing a link “What is a good design?”

  4. Well done as always. A much needed reminder – and one of the reasons I fell in love with front end web slinging. Thanks for the writeup!

  5. Slightly off-topic and pretty close to right on topic. Design is for people, and we have to understand how people act and react towards standards in general.

    I wrote about “Web Standards — An Unnatural Feeling” when I was first struggling with the concept and selling it to the man.

    It isn’t that web standards are flawed – it just isn’t natural! We have, as a species, been predisposed to ignore convention and standards during development; regardless of efficiency or even common sense – sometimes it’s even out of our control. We will never see a complete and total adoption of web standards simply because standards in general fail.

    Standards make sense — economical, social, political, and even common sense! We live in a global society built on standards – but built on many different standards that aren’t together or even independently standardized. We live together on a respectively small and confined space, earth, – yet we have over six thousand different languages, thousands of different forms of currency, hundreds of different forms of batteries, a multitude of different types of power outlets, and a variety of forms of measurement for time, distance and even temperature. Web standards make sense – they just are not natural. It is in our nature to try and break the standard; to be better, unique or special – even if it doesn’t make logical sense. For every standard in place, it will be easy to find hundreds of exceptions.

  6. I wasn’t ‘there’ in the the early ’90-ies but I’m quite sure I don’t want to experience what the pioneers did! I’m from the post Flash generation and learned the proper (read: JZ) way.

    What failed? Who failed? Did we all screw up the future of CSS3 and XHTML2?

  7. Oh I don’t know about the rope hanging oneself issue. Their are probably plenty of things that could have made CSS better initially and now: variables could have helped. Expressions could be useful though they don’t quite fit into the paradigm of CSS. But variables alone code have solved the issue with overlaping specificity And accidentally changing one width but not another that most newbies struggle with.

    Also while I’ve mastered building pages with CSS much of CSS layout still feels kludgey which I think is a problem if the ultimate goal is to make the code user freindly to look at and learn.

  8. (My apologies if this is a duplicate: my connection flaked when I first attempted to comment.)

    I agree for the most part with Wilcox. Even if there were more complex features available (e.g., variables), a new designer could start using CSS and be effective quickly without using those more advanced features.

    In fact, isn’t that how it happens already? How many of you used font right off the bat? If you’re like me, you used the simpler constituent properties, font-family, font-weight, etc., at first because it’s more readable to the less experienced. Only after doing that for a while did I become comfortable with consolidating everything into font. Also how many people use JavaScript all the time, but have never written a closure? Even though they may never write a closure or use the ternary operator, I’m glad those features are there.

    That said, what I admire about Bos’s approach is the desire to keep it as simple as possible. I know I’ve looked at the syntax for doing something in a certain language and wondered, “Why did they do it that way? It would have been so much simpler just to do it this way.” There’s no virtue in complexity for complexity’s sake, and there’s no excuse for complexity when a little forethought would have borne a simpler solution. A complex feature need not require complex syntax. And with some thought, a complex feature can usually be broken down into simpler parts. I appreciate that folks like Bos put thought into how to keep things as accessible as possible to newcomers.

    So bring on the more advanced features–thoughtfully! We can start using them now; the newbies will catch up (and probably quickly).

  9. Surely a technology as flexible as CSS should also be taught flexibly? It is not surprise to me that new users become confused (over at least two different approaches to its application as well as its interpretation) when the people who invented can’t even agree on how and sometimes where it should be used!
    I have limited experience in user-interface design and the development process, though I can write HTML in [insert name of plain text editor here] and it will probably work. Admittantly I have to copy/paste the <!DOCTYPE section into the document and rarely do I use the “Strict” version, but I know that mixing doctypes throughout a site (click my link for evidence) is not a sin. If my code validates I can put the W3C stamp at the bottom of the page. Hurrah for me, I realise that double-checking my own output is usable is an extra step I can take to make sure my users get what they want from the data I present. Failure to do that is why standards fail and further supposed bickering over who controls such-and-such part of the syntax to use a certain MIME-type or graphical style is only waylaying the website-developer from delivering content to their users.
    A former instructor of mine readily admits to having a public argument with Jakob Nielsen over the “presentation layer” of the web. An example of Nielsen’s apparent rejection of in-depth “web-styling” in favour of almost pure markup is readily available at his site UseIt. Referring to my instructor as “Youth”, an example of their work comes to mind that makes principal use of tables as well as CSS. Sadly having been taken down you’ll have to take my word for it, but it involved some very good photography and internal links you could count on one hand on each page; I believe “spacer GIFs” were heavily involved. I know exactly which my albeit tiny userbase would prefer. That preference can be easily represented in CSS2, but if (for example) the full range of CSS3 selectors are going to be a bigger part of a browser’s toolkit and ensuing wow-factor (I’m writing this in Chrome that currently doesn’t pass the Acid 3 test) then please: hurry up and decide…

  10. Pingback: Planet HTML5
  11. I have to disagree with @Martin. Standards are essential to progress. Despite all the differences in the world there are several overarching standards that allow the world to communicate, facilitate transit, and conduct commerce with a degree of efficiency. This is especially true as related to technological mediums, a category into which the Web clearly falls. We need clear, solid, strict, yet comprehensible standards for the Web to grow.

    Mr. Bos (and Mr. Zeldman by proxy) are simply pointing out the failure of certain standards bodies to embrace community and work towards creating a usable spec over one that placates their technical narcissism.

    The point about an initial low barrier of entry and progressive enhancement of CSS is very valid, and one that could be overlaid on almost all popular web technologies — PHP, Javascript, Ruby on Rails, even HTML itself.

    The adoption and growth of HTML is directly attributed to the plain english nature of the markup. Now, because of slow standards adoption, and the limited flexibility that forces upon us, we are left to using semantic CSS selectors to make sense of (and bring order to) the DIV spaghetti that is now so common. HTML5 aims to change that, and the novelty of simplified, plain english tag names is appealing. However, it seems like a step sideways rather than forward. Once again, we’re attempting to advance the standard by looking at how it is used in the narrow context of right now rather than through a scope into the future. It would do us all well to look ahead to 2022 (through the lens of the Web’s brief history) and ask if the standard we are creating will still be valid. Who knows, with the rapid advancement of video and more advanced interactions, maybe we should hone our skills in Final Cut or Director rather than HTML.

  12. The relative accessibility of the CSS2.1 specification is what got me into web design and development. (The same goes for HTML.) Now that I’m relatively comfortable with those technologies, I of course want more! But I’m not sure I’m comfortable with raising the barrier to entry to the point that others fear to tread there. I doubt the web would be as exciting a place if HTML & CSS were too complex for the average curious person to try them out.

    It’s not quite hyperbole for me to believe that HTML & CSS helped save my life. (It’s a short, pathetic, and sad story in some ways, but almost true.) I’m not sure where I’d be without those specs being fascinating but not too intimidating to explore; that said, I’m pretty sure I wouldn’t be having as much fun.

  13. The earlier specs (ie CSS 2.1, HTML 4.01) were so much more readable, and that probably helped them to get adopted so quickly. It seems like most of the individual CSS3 modules are longer and less readable than the CSS 2.1 spec. And there’s like a dozen of them!

    But, there were also big inconsistencies in implementations. The shorter a spec is, the more is left up to the reader’s interpretation. And it’s not like we can expect browser vendors to actually get together and agree on stuff like this!

    Therein lies the challenge of a human readable spec versus a machine readable one I guess. I do like what HTML5 is doing, marking portions of the spec specifically as author info and other portions specifically browser developer info.

  14. Never really considered the reason for lack of more high-level functions in CSS, I merely assumed it was because it was more a presentational language than a software one. Nice to be enlightened :)

  15. If CSS had initially offered the power, depth, and complexity that CSS 3 promises, we would still be designing with tables or Flash.

    I couldn’t agree more. I believe that the very reason that CSS finally won out over using tables was because it was easily approachable to most folks — and also in no small part to your work and the work of others like Eric Meyer, Dan Cederholm, and countless others to help spread the word.

    I was stuck in a Gov’t contracting position at the US State Dept. when the web standards movement kicked in. The work of the W3C, yourself, and the others I mentioned above finally gave me both impetus and ammunition to get things moving towards web standards in the Federal Government (though myself and others would argue they still have a ways to go, but I digress).

    But Bert is right in my opinion. Complexity kills almost anything useful. In the words of Albert Einstein, “Make everything as simple as possible, but not simpler.” Words of wisdom. :-)

    Thanks again for the excellent articles and I hope you get to feeling better soon.

  16. @Matt Wilcox: The slope of the ongoing learning curve is just as important as the initial barrier to entry.

    CSS is a folk instrument. Like a guitar, most any person can sound a note from the moment they lay hands on it. And continued study is less daunting thanks to a relatively compact range.

    Care has to be taken when layering on ever more advanced features, because the popularity of a mass technology (whether rightly deserved or not) is often dictated by the perception that surrounds it.

    And that perception isn’t formed by first blush alone.

  17. Excellent article Jeffrey, and entirely valid points. Without people being able to easily use the technologies (like the guys over the road who freelance making low end small business websites in their spare time but have never even heard of web standards – GOSH), there simply wouldn’t be a web.

    Draw a horizontal continuum line across a piece of paper… somewhere on the left side you will have a point called the “person’s ability” where they have the skills and knowledge to achieve a given task. Then draw further to the right another point which is called the “point of complexity” which is the true state of the task they need to be able to achieve. Between those points lays the “knowledge gap” – the place where all those usability issues and accessibility issues and so forth lay.

    As a designer, our job is to bridge the knowledge gap for the user of the design so they hopefully experience as small a part of the knowledge gap as possible. If we’re good at what we do they don’t even notice the gap at all.

    My point is that design is about coming up with solutions (which means compromise), and those solutions need to be aimed at making things simple – or they won’t be used, as you say. I enjoyed reading this article in particular, great stuff.

    ps. its really refreshing to see the old passionate Jeffrey Zeldman, Old Man of the Sea, actively discussing web standards almost every day.

  18. Also, if you listen to the first five or so minutes of Bill Buxton’s (billbuxton.com – The Design Ecosystem talk) IXdA 2008 Conference Keynote he talked about the point of complexity. Unfortunately if you follow the link to the video it is now unavailable (it was brilliant – must see for any designer with a bit D), but follow the link to the IXdA and the mp3 is still available.

    Anyway, he says that any features above the user’s point of complexity ‘does not exist in human terms’. Its the ‘threshold of frustration’. Even if some technicians can demonstrate it the feature still does not exist in the world of normal users.

    He also says documentation is a book with a half life of 12 months.

    Yes, Bill works for Microsoft but I would class him as an insightful industry leader with a lot of common sense to share.

    Anyway, I hope you take some time to listen to Bill’s keynote because there is so much to take away from it as a designer (with a big D). It would be great to find a version of the video available, too.

    (apologies for the Microsoft rant)

  19. I find this \”dumbing down\” idea damaging to everybody. It is insulting to those things are dumbed down for, and frustrating to those who try and hone their skills to the highest possible standard.

    CSS is a language, for God\’s sake!

    What about dumbing down English to make it easier to foreigners??? Or to children??? That\’s pure non-sense.

    Do you expect to end-up playing Chopin at Carnegie Hall after only two days of piano practice?


    This dumbing down thingie only goes with this \”instant gratification\” cancer, where effort is scorned at, learning ridiculed, and achievements only valued if they were easy!

    And please do NOT confuse the ease of USE of the iPhone, like a hammer to a nail, not like a steam-roller to pin (Zune).

    Those are completely different topics!

    The iPhone is meant as a utility. Like a light bulb: switch it on, it works, switch if off, it stops.

    This has NOTHING to do with LEARNING. And learning, ALL FORMS OF IT, go through the mastery of some language (written or not)

    Dumbing down a language is one of the worst insults being made to mankind.

    OK. I go back to my Lisp (Clojure) and have a sad laugh at that pop culture that values the result more than the process, being dead (the final outcome) more than being alive and struggling but striving …

  20. “People could just use the lower-end stuff.” Could, shmould. Jeff’s point, and the point of the “balance” Bos mentions, is (in part) that it takes a critical mass of people for a standard to take hold. What we’re talking about are basic, across-all-sites standards. You write for the elite, great, you just extended adoption by 10 years, if not killed it right where it is.

  21. Also, he doesn’t seem to be suggesting CSS stay where it is–quite the opposite. Advances need to take steps, so they can be digested by the community.

    It’s not just about neophytes, it’s about that time when we’re all neophytes, during adoption.

  22. Verec: I’m not sure dumbing down is the right term in this instance. Its simply a reflection that the success of HTML, as such, was its simplicity to the non-technician. The moment you make a spec too complicated – feature creep – then the less likely someone will try to use it. So its a compromise between what you want as a power user (realising you are actually a minority interest not the sole interest in the specification) versus other interests.

    Hand me a 100 page PhD level document (with a half life of how long?) and I’ll tell you I’ll get back to you on that one. It’s just a human thing. And that’s not at all trying to disparage technical expertise, this is simply to say the vast majority of the web is non-PhD level people. And the web is successful partly because of this generality.

    Ideally there is overlap there between power users and others, but by throwing all the power user stuff into the same basket as the simple stuff it becomes less likely to be read and adopted.

    There is also the point that making programming capabilities into a markup language, for example, is crossing a certain level of separation – bringing behaviour into the display level. I can see where you’re coming from but dumbing down is probably not the right word for creating specifications that are widely available beyond .001% of people in the industry. Just my 2 cents, and fairly happy to agree to disagree.

  23. Alas, verec, not all language users begin like Ovid, supposedly speaking verse from birth. It takes time to learn something, and it’s not as if you teach a kid to read by throwing her the Oxford Shakespeare or whatever (though if that worked, it’d be fabulous).

    There’s at least an order of magnitude between making something accessible and “dumbing things down.” Obtaining the skill to control complex actions (such as speaking complete sentences, scaling a cliff, throwing a ball, or writing efficient code) takes time and practice. If the place to begin seems unachievable, it’s pretty easy to become discouraged. (Which is why we don’t teach preschoolers calculus, for example.)

    Regarding Jeffrey’s discussion of the CSS specification, etc., it’s not that achieving complex stuff is impossible with these technologies, it’s that it takes practice & skill to get to the point where the tricky stuff seems almost as effortless as redefining the font-size your text renders at.

    Sure, when you’ve achieved some level of expertise, it’s normal (and perfectly fine) to get frustrated with the limitations of “simple” things. The challenge then isn’t to cry out that it needs to be more complex a tool—it’s to figure out new ways of doing things & to evolve the complexity of your tools in a way that doesn’t at the same time make it impossible for new people to follow in your footsteps and learn how to do things.

  24. I don’t really follow the “simplicity” idea either, though I understand it helped to form the web as it is. On the other hand, it’s also responsible for the horrible state of the web today. Everyone’s nephew is “able to make a website”, so now the web is littered with crappy sites, messed up html code and bang-your-head-against-the-wall css.

    Sometimes I wished it was all a bit more complicated, so at least people fit for the job were actually making sites. More and more I dread working on implementations of others, as some of them are not only below standard, but simply embarrassing even to newcomers.

    Continuing like this is likely to ruin the fun for a lot of people, as “mastery” is something not quite possible in our job. At most, you are a wizard of hacks and you know the dark alleys to get things done.

  25. Pingback: Weekly digest of week 30 2009 | Capping IT Off | Capgemini | Consulting, Technology, Outsourcing
  26. @DN:

    It’s not just about neophytes, it’s about that time when we’re all neophytes, during adoption.


    But when you learn a new language or spec, you don’t start by reading version 1, then version 2, and so on. This seems to be the flaw in your argument.

  27. I have to disagree with some of what was said. We do need some standard so designers don’t need IE hacks and sometimes separate pages. Just because something is there does not mean we have to use it I wish IE was not the biggest piece of crap ever made but Microsoft likes making crap so we designers have to kiss their butt.

  28. Even though this article has a valid point about the adoption of a language in relation to its complexity, I feel that it fails to explain how lack of complexity helps to mature a language.

    In response, I have written an article of my own:
    html and css complexity

  29. I’ll assert that the web is the interesting place it is today because, a few years back, the Liberal Arts majors got interested in it.

    As with many, it was Mr. Zeldman’s readable and largely non-technical DWWS that got me interested in designing for the web. I was able to bridge his “ignorance gap”–I got it. His approach to explaining CSS and HTML enabled me to conceptually map these markup languages to things I understood, and was reasonably good at: visual design and human language. DWWS also obviously appealed to a lot of other Liberal Arts types, people from diverse backgrounds in writing, graphic design, advertising, and the like.

    I’ve never done more than cursorily read the specs, instead relying upon my mentors, Zeldman, Meyers, Cederholm, et. al. to interpret these specs into something that I can comprehend. Turning CSS into a programming language will create a barrier to entry for non-programmers. I don’t know what macros and conditionals are–my brain isn’t wired to think like a programmer. I do understand font-weight, margin, list-style, etc., because these concepts map to my world of visual design.

    Another aspect of the current crisis over the future of web standards is that academia is just now beginning to embrace web standards in design curricula, as opposed to teaching Flash and Dreamweaver (or not teaching web design at all). A lot of people in the technology fields fail to comprehend how slowly the traditional educational system changes, and how crucial it is to nurture this nascent interest in teaching web standards within traditional design programs. Turning CSS and HTML back over to the CompSci department will eventually kill the kinds of innovations in web design we’ve been enjoying from artists, writers, filmmakers, illustrators, and the other artsy-fartsy types.

    Keeping web standards simple isn’t dumbing them down–keeping web standards simple and accessible is essential to keeping them alive.

  30. CSS is a design language, its audience is designers. People who think according to design, and not code.

    Design is not applying web standards or a reuse of previous created examples, but supplying visual solutions to conceptual problems.

    Only a small percentage of the web is actually designed. There is a lot of decoration, but that is not design.

    Programmers generally do not understand this, and no amount of intelligent coding prevents them from the failure that is all around us.

    If coders were so smart, they would design well too, right?

    Keep CSS accessible to designers, and you will have a web worth looking at.

  31. Why does the world have to be exactly the same all over? I like the idea of standards falling a bit by the wayside. I like the idea of having different choices when it comes to the experiences on the web. I like being able to choose between Linux, Mac OS, Windows, Solaris, and anything else out there. I LIKE THAT. I like supposedly ‘incompatible’ uniquely-suited-for-the-job tools and experiences. Of course Flash isn’t incompatible with anything, it runs on everything, and is coming to an iPhone near you within 6 months.

    Let’s keep making the world a fun and interesting place filled with new and wonderful user experiences, let’s go beyond simple CSS/XHTML hacks, let’s go beyond pretending JavaScript manipulation of page elements is smart programming, lets truly embrace possibility with object oriented, MVC patterned Flex/Flash. You know you want it.

  32. I have to disagree with @Martin. Standards are essential to progress. Despite all the differences in the world there are several overarching standards that allow the world to communicate, facilitate transit, and conduct commerce with a degree of efficiency. This is especially true as related to technological mediums, a category into which the Web clearly falls. We need clear, solid, strict, yet comprehensible standards for the Web to grow.


    The point is: is this a proffesion, or a hobby? Because, if you say it’s the second, then I’ve been wasting my live during the last 11 years (in a proffesional point of view) and hence I and thousands of other proffesionals should start finding a real job. Should we?

    What happens is that some of you are confusing the aim of the web itself -the media- with the aim of HTML -the script/programming language- and the rest of web standards. Which are VERY different entities.

    The aim of the web should be to be open, close and accesible for everybody.

    But the aim of web standards should be to be as powerful as needed to obtain the best results possible, so we, proffesional developers, can make the best possible tools for everybody to publish, and edit all kind of contents. And, of course, mantaining those standards as simple as possible, but not simpler!

    Should we worry about my mother not understandig the next HTML generation or CSS 3? Oh, please! We should worry if she would be able to understand them!

    Sometimes I think that we are losing completely the focus.

    HTML5 aims to change that, and the novelty of simplified, plain english tag names is appealing. However, it seems like a step sideways rather than forward.

    Amen too!!

    CSS is a design language, its audience is designers.

    Nope. CSS is a language to apply design. Your work as a web graphic designer can finish with a PSD, then a XHTML+CSS proffesional can apply your design just as you wanted. The same like your work as a flyer designer finishes with a PSD that you send to printer’s. If you want to learn CSS, that’s great, but not necessarily you need to.

    New CSS features just improve and increase the possibilities of the actual CSS, just what we’ve been begging for ages.

Comments are closed.