Perfect. The American Heritage® Dictionary of the English Language, Fourth Edition defines the word perfect as Lacking nothing essential to the whole; complete of its nature or kind
.
As a strong advocate for web standards and semantics, I’ve been actively pursuing perfection in this area for a while now and have recently begun to feel disillusioned. After covering all the bases (read: <b>ed and <br>eakfast), and performing all the fancy tricks, it seems I’ve run headlong into the outer edges of what HTML and CSS are capable of doing. Oh sure, I still try and make the technology do more than it’s deemed able. But it’s in this territory that the “rules” get vague. For example, how well do you think HTML is able to add meaning to your content? Don’t give me simple examples of using paragraphs and headings, or emphasis and strong tags. I mean really, what’s the better choice to mark up a breadcrumb navigation menu? A nested unordered list? A comma delimited paragraph with spans around each element for styling purposes? And what of the delimiter? What denotes “a child of”? Then there’s the infamous heading debate. Which interpretation of the vague spec is best?
So what to do when …there exists a lot of room for interpretation…
in the spec? Does it even matter? The U.S. Census Bureau reports 1st Quarter 2006 Retail E-Commerce Sales are up almost 5% from 1st Q 2005. In fact, they’ve been steadily climbing since 1999 without so much as a hickup during the dot com crash!
So what does that tell us? Will standards and semantics really help a company’s bottom line? Maybe. They’ll save money on bandwidth and maintenance costs. But take a look at Google’s markup and tell me if semantics is the secret to their success.
All I’m saying is that standards and semantics have their place, but sometimes in our zeal we don’t see the forest for the trees. Though standards and semantics make life a lot easier for the developer, and they make it a little easier on the pocketbook when it comes to maintaining a site, they aren’t what’s going to save the web and I think it’s about time that we stopped acting like they were.
In fact, I propose that we get our collective tail in gear and start developing apps that are specifically designed to take advantage of good, semantic markup. (I have a few ideas that–should I find the time–I’m considering developing.) Only then will standards and semantics really make a difference, when services won’t function without meaningful markup. Otherwise, you could throw a table, some font tags or a thousand line breaks into a pot, mix it all up and unless you view the source, it won’t matter one iota.
Tag soup anyone?★

Very well said. It makes sense to say that if browsers (or apps) just stopped supporting “bad” code then there would be a whole lot of messed up sites out there and people would have to change. Scary thought actually.
Semantics help to develop good accessibility features. If your page is marked up well, you can really leverage the CSS media types. Web allot of designers completely ignore the needs of blind people who are forced to use screen readers.
But if you have a good semantic markup, you can easily leverage the power of @media to your benefit. For example you can create a @media aural definitions that will make your page much more accessible. If you properly use <acronym< tags, and in css use the speak:spell-out; attribute the screen reader will know to spell abbreviations.
You can also make the screan readers skip the advertisement blocks, banners and etc…
Similarly, you can use css to strip your page to bare bones essentials for displaying on mobile devices by using the @media handheld. Same goes for using @media print to set up nicely printable web pages.
These are some concrete benefits of good semantic markup, that we can capitalize on today. But of course they will not make you rich. They will simply make the web a better place.
When I think of standards and semantics, I do not think about profits and benefits to the company. I see these things as essential technology that make the web more livable for everyone. Redesigning a website to standards, is like putting a wheelchair ramp and a recycling bin in your building. Neither one gives you direct benefits. But having them is important.
Natalie: Unfortunately no browser maker would volutarily break a multi-billion dollar industry. So it’s up to us to catalyze change from the grassroots by building apps that leverage meaningful markup.
Luke: I’m going to play devil’s advocate for a minute and ask if the number of disabled people on the web is high enough to make it on most major companies’ radars. Believe me, I’m all for a better web, and I truly believe that everyone should have equal access, but judging from the trends, most companies build sites with the majority demographic in mind and their budgets and timelines don’t make much room for those who fall in the marginal percentages. It’s wrong, I know, but in sadly how business is currently conducted. Then again, suing target could be the wakeup call the industry needed. Good on the NFB!
Oh, I know. I can dream though. :)
Ara: yes you are right. It is unfortunate, but comanies will not care. So it’s up to developers to push for better standards. If they get shot down because of deadlines, profit margins and etc – though.
But if they do get a chance to do things right, that’s one step towards a better web. Everyone wins – the design team has an easily maintainable website, the company can brag about compliance, and users get more accessible content.
Is it allways worth the extra cost and effort to do this? No, of course not. But it doesn’t mean we shouldn’t do it whenever possible.
Luke: Well it’s certainly true that building standards compliant sites makes it a lot easier on the developer to maintain and even to build. It’s also true that “a better web” is really the goal of our efforts. Unfortunately when you’re Joe Businessman who’s more worried about the big picture which really means he’s worried about his bottom line, he’ll just go with what brings in more cash. And if that means hiring a guy whose done web dev for three days in Dreamweaver using all the crap markup in the world for five bucks an hour, then that’s what he’ll do. He doesn’t give a rip about semantics and validation, just as long as his site works. So that’s why we need to start making it so that it no longer works without meaningful markup by creating services and apps that run purely on semantic and valid markup.
I know, it’s a longshot, but hey, you’ve got to start somewhere. The blind suing companies who are… blind… to the cause of web standards is also a good way to raise awareness.
Ara: There is indeed a lot that could be done. Search engines using a little bit more of the semantics in HTML like
- cite attribute in blockquote and q,
- Tools extracting an outline of a document just by looking at the sequence of a h1/h2/h3, etc.
- Authoring tools which does semantics. No, I don’t want to “insert a blockquote…”, I want to “insert a quote: text:… author:… title:… link:…”
There are so many neat things to do, to create around that.
See for examples – http://www.w3.org/2003/12/semantic-extractor.html which was just a testbed of what could be done.
As for Semantics, do you really need it? Yes, you just did by using english words and grammar to express your opinions. But as human, we are lucky we have very good parsers in the brain. ;)
Oh! I love the idea of indexing the cite attribute! Continuing with that idea, why not start indexing tags like:
<code> – searching for code snippets
<var> – searching variables inside <code> segments
<samp> – searching for output samples (like error messages)
<address> – who displays your address on their page
<cite> – who cites particular work
<acronym> and <abbr> – search for the word used as acronym or abbreviation (ie semantic web OWL vs animal owl).
Of course browser support for nicer default rendering these tags would be nice.
Hi Ara
Nice write up, I find it frustrating sometimes whilst writing up code and the ambiguity of how things can be built. I love trying to break down semantics whilst working on a project but on a day to day basis the great standards battle should just be taking place anyway…
Any new site that is built these days absolutely should be built responsibly, I wonder if a governing body should take responsibility of new websites comissioned? This way it would become compulsary before it even got online! I know that might sound extreme but it takes the responsibility off the users of a website to complain and places it on the person building it.
I know this is a difficuly scenario and that it will be years before anything changes fully so I am going to continue doing what I believe in and try to have some hope that things will get better one day.
One final note, I went to see Cameron Moll speak at @media2006 this year and he was talking about the mobile web. There are lots of people going on about the mobile web etc and how easy it is to build for by just tagging on a handheld stylesheet… well it’s not! The whole mobile landscape is a absolute mess where there are few standards that people working together on and it’ll be years before they are even close to reaching the point we are at with the normal web… things just get better huh?