Categories
Specs

The W3C HTML WG decision on RDFa prefixes

Recovered from the Wayback Machine.

One HTML WG decision I agree with is the one associated with Issue 120 on RDFa prefixes.

Considering that RDFa support in XHTML/HTML to this point has made use of prefixes, I don’t understand why we even contemplated not supporting prefixes just because RDFa is being ported to HTML5. Frankly, it’s not the HTML5 WG’s design decision to make—RDFa in HTML5 is a port, the design for RDFa resides with another group.

As for RDFa prefixes being confusing, one of the most fundamental design patterns, in computer tech and elsewhere, is the concept of variable/value pairs, with a shorter, easy to type and remember variable or abbreviation used in place of a longer, more complex value.

Then there’s the fact that RDFa has significant adoption, and dropping support for prefixes will break the web. I’ve heard that this is an important criteria for other HTML5 design decisions. If nothing else, consistency demands we support prefixes.

I could go on, but the proposal to keep prefixes does a commendable job and I don’t need to repeat its arguments.

Categories
Specs

W3C HTML WG Decisions: hidden, longdesc, table summary, and the myth of hidden metadata

Recovered from the Wayback Machine.

In preparation for HTML5 Last Call, the HTML WG (Working Group) co-chairs have been rolling out several decisions—among them ones related to the img longdesc and table summary attributes.

The HTML decision on longdesc was based on the following observation:

The strongest argument against inclusion was the lack of use cases that clearly and directly support this specific feature of the language. The fact that longdesc has little observable uptake amongst users reinforces this: all the evidence indicates that users don’t see this feature to be compelling, and the lack of user demand has been noticed by implementors.

The issue was later re-opened, primarily because of the collection of formal use cases, aggregated through the efforts of WG member, Laura Carlson.

I agree with the decision of re-opening the issue, but feel that the original decision against londesc to have been made in error. The co-chairs stated in the earlier decision that the use cases stated in the original change proposal to keep longdesc were abstract, rather than actual use cases. However, the existence, or not, of use cases has not been a noticeable decision criteria for most of HTML5. Why then this seemingly inconsistent demand for one attribute, when the same demand has not been made of other attributes?

As an example, where is the non-abstract use case for a hidden attribute? There’s was little or no interest in this attribute at the time it was created or renamed from “irrelevant” to “hidden”. The only time the attribute seems to have generated interest is when I filed a change proposal to remove it. The grand implementation plan for it is to set it’s default styling as “display: none”, and automatically add an ARIA value of aria-hidden—both of which can be done now, easily, and without having to use a special purpose attribute.

However, the WG co-chair decision on hidden was that implementors and authors were interested in the attribute. So, hidden stayed.

Yet authors also expressed an interest in keeping longdesc. We know from the discussions before the longdesc poll that people were interested in, even passionate about longdesc. Additionally, if we compare actual implementations between the two, there is broader implementation support for longdesc than hidden.

More importantly, unlike the hidden attribute, which duplicates simple to use and existing technology, there is no replacement for longdesc. If we consider that longdesc’s value is to hold a URI that points to a complex description of the image typically maintained in a separate web page, and to do so without providing a visual indicator in the page, no one has come up with an alternative that provides the same functionality that longdesc provides.

If the concept of deprecation was still supported in HTML5, the lack of alternative would have been obviously evident. Yet, elements and attributes can be moved directly from actively supported to actively discouraged, without regard for existing implementations. As Laura has so ably demonstrated—longdesc has seen use, has been implemented, and there is at least some support for the attribute.

The same can be said for table summary and the decision to make this attribute obsolete. Again, this attribute has a specific use: to provide a textual description of the visual infrastructure of an HTML table for complex tables. Like img longdesc, many HTML tables won’t need a summary attribute. When one is needed, though, there is no alternative to provide this information in the manner that summary provided—a text description that is primarily focused at those using AT devices, such as a screenreader.

Putting the information into the text is redundant, and will be irritating for most people reading the page. Frankly, web page authors just won’t do it.

Providing it in the caption is an inappropriate use of the caption element. We’re told to break the complex data table into simpler tables, but it’s not up to us to say what is or is not an acceptable table structure—not just to provide justification for making obsolete an existing attribute.

How about actual uses of summary? One reason for pulling both table summary and img longdesc is that both have been used incorrectly in the past. Well, without raiding Google’s data store, I’m reasonably certain we’d find the same thing can be said about most HTML 4 elements. Without having to resort to prescience, I’m also fairly certain the same will eventually be said of hgroupfigureasidesection, and article.

Another reason for pulling both longdesc and summary is that hidden metadata is bad. Hidden metadata…balderdash. There is no “hidden” metadata—all the data in the web page is “visible” to some audience. And no, the data doesn’t all have to be available to all audiences. One of the arguments against table summary is that supposedly the information would be useful for others, such as those with cognitive disabilities. However, providing an exact textual description of the table seems more like additional noise for those who have cognition problems than a helpful device. I’m not an accessibility expert, but from a commonsense perspective, I have a difficult time understanding how something that is supposed to help the blind is also going to help those with completely different challenges. Is accessibility really one-size-fits-all?

The other “hidden metadata” argument is that if people copy and paste the table, or the img, the resource will become separated from the accessibility aid. This has been used as a primary argument against longdesc because this attribute can include a relative link, which will break if used in a different domain. Well, I don’t know who copies HTML tables, but if they do, they’ll do so in source, and copy and paste the whole thing. And copying an image doesn’t mean view-source and then copying the img element—it means right clicking on the actual graphic, and then saving it to our computers for use elsewhere.

So, we have one attribute, hidden, that’s easily re-produced with existing technologies, and with little or no use case support other than a group of people saying they want it when it’s existence was threatened, and we have two others—img longdesc and table summary—that can’t be replaced with existing technologies and have real world uses, but we keep the former and get rid of the latter.

I hope I can be forgiven for saying that the decisions seem…inconsistent.

Categories
HTML5

HTML5 Content logo

I created this logo originally for a new tech web site. Since I’ve merged all my separate sites back into one, I’m using this logo for all my HTML5 related postings.

I’m very fond of it.

HTML5 logo with cat scratch through it

Categories
HTML5 W3C

Long descriptions and political cartoons

One of the still open issues with HTML5 is the lack of a verbose descriptor for an image, since the longdesc attribute was made obsolete.

The longdesc attribute used to take a URL to a separate page or page fragment that contained a long text description for a complex or highly nuanced image. Typically, the only ones made aware of the attribute were screen reader users, though some browsers, such as Opera, provided access to the long description via the the right mouse button menu.

However, longdesc was made obsolete because, supposedly, there was no justification for its continued existence.

There is no better justification for a verbose descriptor/longdesc, though, than political cartoons, as I demonstrate over at Puppies @ Burningbird.

The argument that the material describing the image can be repeated in the page just doesn’t fly. To repeat the image data textually, just before or after the image, not only detracts from the image, it lessens the impact the political cartoon intends.

At the same time, political cartoons are highly sophisticated bits of imagery, which can’t be described in a small blurb in an alt attribute. They also provide essential information, because political cartoons are created specifically to convey important arguments about ongoing political and other activities.

It’s just plain asinine to fight against such a valuable aid as longdesc, or any equivalent, with the vehemence that the WhatWG participants in the W3C HTML WG have displayed.

Well, thank goodness HTML5 no longer exists and we live in a time of a versionless, living standards HTML. Since HTML now exists along an unbroken continuum, from the beginning to infinity, and since longdesc was a valid attribute at an early point in this continuum, longdesc remains valid…now, and forever.

Categories
Specs Technology Web

Why read about it when you can play?

Earlier today I got into a friendly discussion and debate on Twitter about a new web site called W3Fools. The site bills itself as a “W3Schools intervention”, and the purpose is to wake developers up to the fact that W3School tutorials can, and do, have errors.

The problem with a site like W3Fools, I said (using shorter words, or course, since this was Twitter), is that it focuses too much on the negative aspects of W3Schools, without providing a viable alternative.

But, they said, W3Fools does provide links to other sites that provide information on HTML, CSS, or JavaScript. And, I was also told, the reason W3Schools shows up first in search results is because of uncanny use of SEO optimization.

Hmmm.

It may be true that W3Schools makes excellent use of SEO, and it may be equally true that W3Schools commits egregious and painful errors. However, neither of these account for what W3Schools is doing right. If you don’t acknowledge what the site does well, you’re not going to make much headway into turning people off the site—no matter how many cleverly named sites you create.

For instance, one of the superior information sites recommended by W3Fools is the Mozilla Doc Center, or MDC as it is affectionately known. Now, I’m a big fan of MDC. I use it all the time, especially when I want to get a better idea of what Firefox supports. But look at the work you have to put in to learn about a new HTML5 element, such as the new HTML5 hgroup element:

  1. Go to main page
  2. Click on HTML5 link
  3. Search through the topics until you see one that’s titled “Sections and outlines in HTML5”, which you know you want because it mentions hgroup
  4. Have a neuron fire and realize that you can just click directly on hgroup
  5. Go to the hgroup page, past the disclaimer about what version of Firefox supports the element, looking for an example of usage
  6. Realize there is no example of how to use hgroup
  7. Go to the original Sections and Outlines in HTML5 link
  8. Go past some stuff about elephants, looking for example
  9. Go past some bullets about why all this new sectioning stuff is cool, looking for an example
  10. Break down and use your in-page search to find hgroup
  11. Finally find an example of how to use hgroup

As compared to W3Schools:

  1. Go to main page
  2. Click on Learn HTML5 link
  3. Click on New Elements link
  4. Start to scroll down when you realize the new elements are listed along the left side
  5. Click on hgroup
  6. Look at example

One thing W3Schools does well is provide a clean, simple to navigate interface that makes it very easy to find exactly what you need with a minimum of scrolling or searching.

Returning to our comparison between W3Schools and MDC, we then search for information on SQL. Oh, wait a sec: there isn’t anything on SQL at the Mozilla site. That’s because Mozilla is primarily a browser company and is only interested in documenting browser stuff.

So then our intrepid explorer must find another site, this one providing information on SQL. And if they want to learn more about PHP, they have to find yet another site. To learn about ASP? Another site, and so on.

What W3Schools also provides is one stop shopping for the web developer. Once you’ve become familiar with the interface, and once the site has proved helpful, you’re more likely to return when you need additional information. Let’s face it: wouldn’t you rather use one site than dozens?

Screenshot of W3Schools page showing many of the topics

Let’s say, though, that you need information on CSS3. Well, you know that MDC covers CSS, so you return to the MDC site, and you click on the link that’s labeled “CSS”, and you look for something that says CSS3.

What do you mean there isn’t anything that says CSS3? What do you mean that transitions are CSS3—how am I, a CSS3 neophyte, supposed to know this?

Returning to W3Schools, I click the link in the main page that is labeled CSS3. Oh look, in the page that opens, there’s a sidebar link that’s labeled “CSS3 transitions”. And when I click that link, a page opens that provides an immediate example of using CSS3 transitions that I can try, as well as an easy to read table of browser support.

Screenshot of W3Schools CSS3 transitions page

W3Schools doesn’t throw a lot of text before the examples, primarily because we learn web material best by example. Remember that entire generations of web developers grew up with “View Source” as our primary learning tool.

But so far, I’ve only compared W3Schools to MDC. There are other useful sites that the W3Fools site approves. So I try the “Google: HTML, CSS, and JavaScript from the ground up” web page. When it opens, I click the link labeled CSS…

And I get a video about using CSS.

A video.

Remember in junior high or high school, when your science teacher would bring out the projector and you knew you were going to get a video? Do you remember that feeling that came over you? How you kind of relaxed, because you know the teacher wasn’t going to ask you any questions, and you didn’t have to write any notes, or even really pay attention?

I bet some of you even fell asleep during the video.

Videos are good for specific types of demonstrations—when something is complex, with many different steps, and the order of the steps and other factors have to be just so.

When it comes to CSS, HTML, and so many other web technologies, though, video is about the most passive and non-interactive learning experience there is. More importantly, if the video doesn’t have captioning, and most don’t, you’re also leaving part of your audience behind.

Now let’s return to the W3Schools site, this time looking at one of the CSS selector tutorials. The first thing you notice is that right below the example there’s a button, labeled “Try it Yourself”.

W3Schools screenshot showing the Try It button

Why read about it, when you can play?

One of the more annoying aspects of trying to learn about a specific HTML element, or a bit of CSS, is that you have to create an entire web page just to try it out. What W3Schools provides is that all important, absolutely essential, one button click to Try it out.

I’m not defending W3Schools. The site has played off the W3C title, though that doesn’t have a lot of meaning nowadays. More importantly, some of the material has errors and the site is resistant to correcting any of these errors, and this is unconscionable.

But you aren’t going to dent the popularity of the site without at least understanding why it is so popular. The W3Schools’ site is not popular because of SEO, and it’s not popular because of the W3 part of the name.

The W3Schools web site is so popular because it is so usable.