<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>onenaught.com &#187; Accessibility</title>
	<atom:link href="http://www.onenaught.com/posts/category/accessibility/feed" rel="self" type="application/rss+xml" />
	<link>http://www.onenaught.com</link>
	<description>A blog on web standards, accessibility, css, javascript, xslt, and more</description>
	<lastBuildDate>Fri, 30 Jul 2010 13:55:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
<image>
		<title>One Naught</title>
		<url>http://www.onenaught.com/wp-content/themes/onenaught/images/onenaught.png</url>
		<link>http://www.onenaught.com</link>
		<width>116</width>
		<height>130</height>
		<description>OneNaught.com</description>
	</image>		<item>
		<title>Accessibility 2.0 Conference</title>
		<link>http://www.onenaught.com/posts/64/accessibility-20-conference</link>
		<comments>http://www.onenaught.com/posts/64/accessibility-20-conference#comments</comments>
		<pubDate>Tue, 29 Apr 2008 22:38:06 +0000</pubDate>
		<dc:creator>Anup Shah</dc:creator>
				<category><![CDATA[Accessibility]]></category>

		<guid isPermaLink="false">http://www.onenaught.com/?p=64</guid>
		<description><![CDATA[<img src="http://www.onenaught.com/wp-content/uploads/accessibility2-logo.jpg" class="post-img" align="left" alt="Accessibility 2.0; A million flowers bloom, Conference." /> I attended the <a href="http://www.abilitynet.org.uk/accessibility2/">Accessibility 2.0 conference</a>, held in London on 25th April, 2008.

This post is a summary of some main points from each session, including links to notes from others, as well as slides from presenters.]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.onenaught.com/wp-content/uploads/accessibility2-logo.jpg" class="post-img" alt="Accessibility 2.0; A million flowers bloom, Conference." /> I attended the <a href="http://www.abilitynet.org.uk/accessibility2/">Accessibility 2.0 conference</a>, held in London on 25th April, 2008.</p>
<p>While I won&#8217;t summarize all the things that the session speakers said (there are some links towards the end for that), here are some key things I took away from each presenter:</p>
<h3 id="toc-open-data-keynote-presentation-from-jeremy-keith">Open Data &#8212; Keynote Presentation from Jeremy Keith</h3>
<p>This guy is usually quite funny, but this time he decided to read something he had written. I thought this was going to be a long and dry session, but instead it was very interesting, looking at the importance of</p>
<ul>
<li>Open data for accessible information (to everyone) and for digital preservation</li>
<li>Standards for format longevity and innovation (bred by constraints)</li>
</ul>
<p>He was approaching accessibility from the perspective of accessible data for everyone.</p>
<h3 id="toc-assistive-technologies-and-ajax-by-steve-faulkner">Assistive Technologies and AJAX by Steve Faulkner</h3>
<p>Steve Faulkner is a noted accessibility expert and has lots of detailed information about accessibility  on <a href="http://www.paciellogroup.com/blog/">his blog</a> (and in particular, some decent research on how screen readers work in different scenarios). His examples mainly came from <a href="http://twitter.com/">Twitter</a>, the micro-blogging tool.</p>
<p>There were some interesting examples of how <a href="http://www.w3.org/WAI/intro/aria">WAI ARIA</a> live regions would help make some simple features accessible, such as the text countdown that shows how many characters you have left to type, common on many sites where you fill in text areas.</p>
<p>(One of his points about the problem of using the <code>abbr</code> element&#8217;s title attribute to put in an <a href="http://www.w3.org/TR/NOTE-datetime">ISO 8601</a> date time format eventually led to a public argument during the final panel session between <a href="http://www.isolani.co.uk/blog/access/AccessibilityOfDateTimeMicroformat<br />
">Mike Davies</a> and <a href="http://adactio.com/journal/1457/">Jeremy Keith</a>!)</p>
<h3 id="toc-fencing-in-the-habitat-by-christian-heilmann">Fencing in the Habitat by Christian Heilmann</h3>
<p>Christian Heilmann works for Yahoo but has long <a href="http://www.wait-till-i.com">blogged</a> about accessibility, JavaScript and more.</p>
<p>This talk was about how not to approach accessibility. He has already published his <a href="http://www.wait-till-i.com/2008/04/26/fencing-in-the-habitat-doing-things-right-and-getting-the-accessibility-wrong/">slides and notes for the talk</a>, so the only thing I will add here are my main take-away points:</p>
<ul>
<li>There&#8217;s no need to scare people into doing accessibility anymore</li>
<li>It&#8217;s generally easy (despite a lot of misconceptions) and helps so many people. He described the immense joy some elderly people had when they were given a wii without any knowledge how to use it. Yet, very quickly they were having immense fun playing on it! Accessibility is more than guidelines; it is also about usability.</li>
</ul>
<h3 id="toc-rich-media-and-web-applications-for-people-with-learning-disabilities-by-antonia-hyde">Rich Media and Web Applications for People with Learning Disabilities by Antonia Hyde</h3>
<p>This talk was really interesting about how a group that is often left behind in accessibility implementations &#8212; people with learning disabilities &#8212; are affected by the web.</p>
<p>A number of instructive videos showed how some people can struggle with common features on sites.</p>
<p>She ran out of time but put up her <a href="http://hiantonia.wordpress.com/2008/04/26/3/">slides on her blog</a>.</p>
<h3 id="toc-user-generated-content-by-jonathan-hassell">User Generated Content by Jonathan Hassell</h3>
<p>Jonathan Hassell is the head of Audience Experience and Usability for BBC Future Media &amp; Technology. He also leads the BBC Usability &#038; Accessibility team so had quite a lot of interesting things to say.</p>
<p>User generated content is of course a major issue in modern web sites when it comes to concerns like standards and accessibility.</p>
<p>One of the strategies Hassell mentioned was to use a moderator approach, accepting it is really hard to get end users to know about how to create accessible content. This way, a moderator adds accessibility and other things once the content has been created.</p>
<p>This is quite an expensive way to do thing, he accepted and sometimes will not be possible.</p>
<p>The other problem is that as more content moves away from basic text-based formats that is the web, assistive technologies will struggle even more to provide accessible alternatives. While not impossible, the implications include the following:</p>
<ul>
<li>Those formats require accessibility be built in, or have alternatives</li>
<li>Content producers will become increasingly responsible for accessible content</li>
</ul>
<p>The other point he stressed, like many others, is that accessibility is a misleading word; it is really an issue of usability.</p>
<p>As content becomes more multi-media the additional challenge he finds is how to make such multi media accessible in innovative ways. One example was using 3D and stereo sound in a Flash-based children&#8217;s game where they had to push a train carriage from the left part of the screen to the right hand side. By using 3D sound and stereo, audio feedback to a child who is blind or has poor eyesight, would still allow them to experience more of the game than usual. Another game showed sign language being used.</p>
<p>Another interesting point he made was regarding JavaScript: As a number of people have noted for a long time, there is a common misconception that JavaScript is an accessibility no-no. Hassell noted that it helped make the new BBC home page <em>more</em> accessible to screen readers, rather than less.</p>
<h3 id="toc-a-case-study-building-a-social-network-for-disabled-users-by-stephen-eisden">A Case Study: Building a Social Network for Disabled Users by Stephen Eisden</h3>
<p>This talk was about the user testing, accessibility audits and technology decisions that come with building a social network for disabled users called Disability Information Portal (DIP). After evaluating a few different ways to do this, they settled on WordPress as the basis of their network, currently in pilot stage, <a href="http://www.dip-online.org/">http://www.dip-online.org/</a>.</p>
<p>Eisden also noted that an accessible site was generally a more usable site, too.</p>
<h3 id="toc-tools-technologies-to-watch-or-to-avoid-by-ian-forrester">Tools &amp; Technologies to Watch or to Avoid by Ian Forrester</h3>
<p>Ian Forrester runs BBC&#8217;s <a href="http://backstage.bbc.co.uk/">Backstage</a>, a web site for designers and developers.</p>
<p>This promised to be an excellent session, but for some reason they only gave him about 20 minutes and he had some 80 slides to go through! So he had to cut really short which was disappointing. I had the opportunity to talk to him a bit more after the sessions were over, and that was really interesting. He has a good interest in XSLT too <img src='http://www.onenaught.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Some of the points he did manage to get across were how some Web 2.0 sites made it hard enough for normal users to do things, let alone people with additional needs. Examples included hard to understand user licenses and terms &amp; conditions; Flash videos and captioning; using various sites to import contacts or export data, etc.</p>
<h3 id="toc-accessibility-2-0-panel-discussion-chaired-by-julie-howell">Accessibility 2.0 Panel Discussion chaired by Julie Howell</h3>
<p>This panel was an interesting enough discussion, chaired by one of the most prominent people in the accessibility circles. Nothing to really add here that is not captured in the notes by others listed below.</p>
<h3 id="toc-slides-and-notes-from-each-session">Slides and notes from each session</h3>
<p>AbilityNet, who hosted the conference will be putting up <a href="http://www.abilitynet.org.uk/accessibility2/">videos and transcripts of each session</a> shortly.</p>
<p>Jeremy Keith, one of the speakers, and well known for his work on DOM Scripting (I think he coined that term?) was taking notes during the session and posted them as follows:</p>
<ol>
<li><a href="http://adactio.com/articles/1450/">Open Data</a> by Jeremy Keith.</li>
<li><a href="http://adactio.com/journal/1451/">Making twitter tweet</a> by Steve Faulkner.</li>
<li><a href="http://adactio.com/journal/1452/">Fencing in the habit</a> by Christian Heilmann.</li>
<li><a href="http://adactio.com/journal/1453/">Rich Media and Web applications for people with learning disabilities</a> by Antonia Hyde.</li>
<li><a href="http://adactio.com/journal/1454/">User-generated Content</a> by Jonathan Hassell.</li>
<li><a href="http://adactio.com/journal/1455/">A case study: Building a social network for disabled users</a> by Stephen Eisden.</li>
<li><a href="http://adactio.com/journal/1456/">Tools and Technologies to Watch and Avoid</a> by Ian Forrester.</li>
<li><a href="http://adactio.com/journal/1457/">Accessibility 2.0 panel discussion</a> with Mike Davies, Kath Moonan, Bim Egan, Jonathan Hassell, Antonia Hyde and Panayiotis Zaphiris, moderated by Julie Howell.</li>
</ol>
<p>Christian Heilmann also did some live-blogging and posted his <a href="http://developer.yahoo.net/blog/archives/2008/04/accessibility_2.html">notes</a> up on the Yahoo Developer Network. He also includes a number of additional links to speakers, and other live-bloggers.</p>
<h3 id="toc-summarising-the-whole-day">Summarising the whole day</h3>
<p>A common theme running through the day was that <a href="http://www.onenaught.com/posts/38/web-accessibility-not-just-for-disabled-people">web accessibility is not just for disabled people</a>; it is about usability and ensuring as wide an audience as possible can access the content.</p>
<p>Jeremy Keith also had a useful summary:</p>
<blockquote cite="http://adactio.com/journal/1458/">
<p>All in all, it was a great day of talks with some recurring points:</p>
<ul>
<li>Accessibility is really a user-experience issue.</li>
<li>Guidelines for authoring tools are now more relevant than guidelines for content.</li>
<li>Forget about blindly following rules: nothing beats real testing with real users.</li>
</ul>
<p class="source">&#8211; <cite>Jeremy Keith, <a href="http://adactio.com/journal/1458/">Open Data and Accessibility</a>, April 26, 2008</cite></p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.onenaught.com/posts/64/accessibility-20-conference/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Web Accessibility: not just for disabled people</title>
		<link>http://www.onenaught.com/posts/38/web-accessibility-not-just-for-disabled-people</link>
		<comments>http://www.onenaught.com/posts/38/web-accessibility-not-just-for-disabled-people#comments</comments>
		<pubDate>Wed, 28 Nov 2007 15:37:27 +0000</pubDate>
		<dc:creator>Anup Shah</dc:creator>
				<category><![CDATA[Accessibility]]></category>

		<guid isPermaLink="false">http://www.onenaught.com/posts/38/web-accessibility-not-just-for-disabled-people</guid>
		<description><![CDATA[<p><img src="/wp-content/uploads/accessibility.png" alt="Accessibility." class="post-img" align="left" /> Accessibility on the web not only benefits people who are considered disabled, but a much wider, often aging, population.</p>

Some people still claim that people with such needs don't use the web (see further below). Watching people use the web using assitive technology may however, change perceptions.
]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.onenaught.com/wp-content/uploads/accessibility.png" alt="Accessibility" class="post-img" /> Although this is another issue discussed many times, it keeps popping up from time to time. This is therefore my view on it.</p>
<p>The shortest summary I could probably give is this:</p>
<p>Accessibility on the web not only benefits people who are considered disabled, but a much wider, often aging, population.</p>
<p>Some people still claim that people with such needs don&#8217;t use the web (see further below). Watching people use the web using assitive technology may however, change perceptions.</p>
<p><span id="more-38"></span></p>
<h3 id="toc-what-does-accessibility-mean">What does accessibility mean?</h3>
<p>A decent article by Jonathan Snook asked <a href="http://snook.ca/archives/accessibility_and_usability/what_does_accessibility_mean/">What does accessibility mean</a> and summarised his thoughts as follows:</p>
<blockquote cite="http://snook.ca/archives/accessibility_and_usability/what_does_accessibility_mean/"><p>
As a web professional, I try to build sites that reach the largest audience possible. Every design decision has a consequence and those consequences have to be weighed against the goals of the site. Accessibility is just usability after all. We&#8217;re not designing and building these sites for ourselves, we&#8217;re doing it for other people, too. While it may seem easier to just ignore whole segments of the population, for the vast majority of us building web sites, we already have the tools and knowledge out there.</p>
<p>&#8230; So, let me try and boil this down into some bullet points:</p>
<ul>
<li><strong>Accessibility is usability.</strong> We&#8217;re all just trying to make things that people can use.</li>
<li><strong>Basic accessibility isn&#8217;t hard.</strong> We should be doing stuff like alt-text, making sure form fields are labelled, etc.</li>
<li><strong>Don&#8217;t expect perfection.</strong> It&#8217;s possible to get it wrong, especially as more layers of interactivity is added. It&#8217;s not a bad thing. Just learn from it.</li>
<li><strong>Just because we can&#8217;t, doesn&#8217;t mean we shouldn&#8217;t.</strong> By this I mean, just because we might not be able to cater to everybody doesn&#8217;t mean we shouldn&#8217;t do it at all.</li>
</ul>
<p class="source">&#8211; <cite>Jonathan Snook, <a href="http://snook.ca/archives/accessibility_and_usability/what_does_accessibility_mean/">What does accessibility mean</a>, snook.ca, November 27, 2007</cite></p>
</blockquote>
<p>He noted (as did some of the commenters on his blog) that many aspects of accessibility can be achieved simply through better markup, or more meaningful, semantic markup.</p>
<p>While some additional technology layers such as JavaScript and AJAX can complicate matters, it doesn&#8217;t always have to.</p>
<p>Sometimes effort is needed. Other times, these technologies can actually help, as accessibility isn&#8217;t just about blind people, and isn&#8217;t just about when JavaScript is turned off, though these scenarios can be important in themselves.</p>
<p>As an aside, it is interesting that estimates of how many people have JavaScript turned off vary from around 5 to 8% of users, depending who you read. That is a large percentage, often larger than users of browsers such as  Safari, depending on your site.</p>
<p>So, from some perspectives accessibility can also mean different technology configurations &#8212; thinking of Google as a &#8220;blind&#8221; user may also offer a different perspective!</p>
<h3 id="toc-blind-people-dont-use-the-web">&#8220;Blind people don&#8217;t use the web&#8221;</h3>
<p>Snook&#8217;s article linked to Jeremy Keith&#8217;s short post on the <a href="http://adactio.com/journal/1359/">reaction of some people</a> in response to the <a href="http://www.news.com/Blind-patrons-sue-Target-for-site-inaccessibility/2100-1030_3-6038123.html?tag=nefd.top">lawsuit being brought against Target for preventing blind people from shopping on it</a>. </p>
<p>The reactions were along the lines of &#8220;blind people don&#8217;t use the internet&#8221;, and other such arguments that the web standards movement addressed years ago (but, as with many issues, it still keeps coming up).</p>
<h4 id="toc-a-self-fulfilling-argument">A self-fulfilling argument</h4>
<p>Interestingly, such arguments as those above are self-defeating, or a self-fulfilling prophecy:</p>
<ol>
<li>Argue that people with accessibility needs don&#8217;t use the web;</li>
<li>Therefore create web sites which pose a barrier for such people;</li>
<li>Therefore argue that such people don&#8217;t use the internet.</li>
</ol>
<p>And so, you can easily get stuck in a recursive loop without any exit condition.</p>
<h4 id="toc-assistive-technology-can-help-many-people-not-just-those-considered-disabled">Assistive technology can help many people, not just those considered disabled</h4>
<p>In 2003, Microsoft commissioned Forrester Research to conduct a study on accessible computer technology and found that,</p>
<blockquote cite="http://www.microsoft.com/presspass/press/2004/feb04/02-02AdultUserBenefitsPR.mspx"><p>
<strong>57 percent of current working-age computer users may benefit from accessible technology</strong> because of mild to severe vision, hearing, dexterity, speech and cognitive difficulties and impairments. As the U.S. population continues to age, the number of people who experience these impairments will increase, and more people will likely turn to accessible technology to mitigate the effects of their changing physical abilities.</p>
<p class="source">&#8211; <cite><a href="http://www.microsoft.com/presspass/press/2004/feb04/02-02AdultUserBenefitsPR.mspx">New Research Study Shows 57 Percent of Adult Computer Users Can Benefit From Accessible Technology</a>, Microsoft, February 2, 2004 (Emphasis added)</cite></p>
</blockquote>
<p>Now, that is quite some time back and limited to the US working population, but shows that accessibility isn&#8217;t just people having official disabilities, but includes a much wider population.</p>
<p>Further, considering changing abilities as people age, and that in many Western societies in particular an aging population is likely to increase, then these things have greater significance for people creating software, including web sites.</p>
<h4 id="toc-seeing-people-use-assitive-technologies-on-the-web">Seeing people use assitive technologies on the web</h4>
<p>In addition, actually seeing people who do have special needs attempt to use the internet is interesting.</p>
<p>Roger Johansson posted links to <a href="http://www.456bereastreet.com/archive/200710/videos_of_people_using_assistive_technology/">videos of people using assistive technology</a>, and not just screen readers.</p>
<p>Web Accessibility In Mind, or WebAIM, also posted some videos showing how <a href="http://webaim.org/blog/accessible_tables_test_cases/">simple markup choices can affect accessibility of HTML data tables for screen reader users</a>.</p>
<p>I have also been to the Royal National Institute for the Blind in London to talk to and watch blind people using retail e-commerce web sites. It was a good experience. At one point for example, a particular site they visited had an unannounced pop-up, which was incredibly disorienting for the user (who was a reasonably seasoned JAWS screen reader user). It was good to see that when a window popped up from an action, such as clicking a button or link worked without problems (because it was the result of a user action, not an unexpected automatic action as part of a page load). So, not all pop ups are bad <img src='http://www.onenaught.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>At that same session (this was back in 2005), they used a site we had creating using modern web standards, headings, (some of which were moved off screen, as they were not needed for the visual design, but were important as part of the document), lists for menu items, tables only for tabular data, and so forth. We didn&#8217;t mention any of this to the screen reader users, but they commented that they had no problems on such a page, and the use of headings was really handy.</p>
<h3 id="toc-more-information">More information</h3>
<p>The point is that <strong>simple and appropriate markup choices go a long way to provide accessible content</strong> and it may help more people than you realise.</p>
<p>The W3C&#8217;s web accessibility initiative provides guidelines for further accessibility and there are of course other techniques that can help when using more advanced techniques, such as DOM manipulation via JavaScript, or AJAX.</p>
<p>Here are some examples and articles for further reading:</p>
<ul>
<li><a href="http://www.w3.org/WAI/">Web Accessibility Initiative (WAI)</a> from the W3C</li>
<li><a href="http://www.w3.org/TR/aria-roadmap/">Roadmap for Accessible Rich Internet Applications (WAI-ARIA Roadmap)</a>, part of the WAI</li>
<li><a href="http://www-03.ibm.com/able/resources/ajaxaccessibility.html">AJAX Accessibility Overview</a>, by Becky Gibson, Web accessibility architect, IBM April 2006</li>
<li><a href="http://developer.mozilla.org/en/docs/ARIA:_Accessible_Rich_Internet_Applications/Relationship_to_HTML_FAQ">ARIA: Accessible Rich Internet Applications/Relationship to HTML FAQ</a>, a decent FAQ from Mozilla</li>
<li><a href="http://simon.html5.org/specs/aria-proposal">ARIA Proposal</a> for <a href="http://html5.org/">HTML 5</a></li>
<li><a href="http://juicystudio.com/article/improving-ajax-applications-for-jaws-users.php">Improving Ajax applications for JAWS users</a> by Gez Lemon, 19th January, 2007 (this article notes an undocumented behaviour in JAWS that can be used simply and quickly to notify screen reader users of updates to part of the page).</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.onenaught.com/posts/38/web-accessibility-not-just-for-disabled-people/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Hiding Content on Web Pages for Accessibility</title>
		<link>http://www.onenaught.com/posts/35/hiding-content-on-web-pages-for-accessibility</link>
		<comments>http://www.onenaught.com/posts/35/hiding-content-on-web-pages-for-accessibility#comments</comments>
		<pubDate>Mon, 05 Nov 2007 22:23:28 +0000</pubDate>
		<dc:creator>Anup Shah</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[SEO]]></category>

		<guid isPermaLink="false">http://www.onenaught.com/posts/35/hiding-content-on-web-pages-for-accessibility</guid>
		<description><![CDATA[Web pages often benefit from some text that may not be necessary from a visual design perspective, but offer additional context to say blind users using a screen reader. Some CSS techniques to achieve this include moving text off the screen in such a way that screen readers will still read them out. However, there is a concern that search engines may not like this technique as it could be abused for keyword stuffing and other such practices. What are the implications?]]></description>
			<content:encoded><![CDATA[<h3 id="toc-move-text-off-the-screen-not-displaynone">Move text off the screen, not display:none</h3>
<h4 id="toc-why-bother">Why bother?</h4>
<p>Visual designs often require hiding text in such a way that screen readers will still read the text and thus provide extra context for the screen reader user.</p>
<p>For example, a visual design may make the main navigation section of the page obvious and so a heading to announce it may be unnecessary or undesirable.</p>
<p>However, from the perspective of good document structure/semantics and accessibility, it would be good to have the heading in there.</p>
<p>Screen reader users, for example, often scan a page through having a list of headings being read out to them.</p>
<h4 id="toc-the-problem-of-displaynone-in-css">The problem of <code>display:none</code> in CSS?</h4>
<p><code>display:none</code> in CSS would seem ideal (plus some additional rules in an aural stylesheet, perhaps).</p>
<p>Unfortunately, screen readers are inconsistent in the way they handle <code>display:none</code>.</p>
<p>In addition, most do not yet support the aural stylesheet sufficiently.</p>
<h4 id="toc-positioning-text-off-the-screen-is-more-reliable">Positioning text off the screen is more reliable</h4>
<p>For years, I have been using an &#8220;off-top&#8221; technique whereby content can be moved off the top of the screen, in such a way that it will still be read out by screen readers. Here is an example:</p>
<pre class="syntax-highlight:css">
.css-label {
    height:1px;
    left:0px;
    overflow:hidden;
    position:absolute;
    top:-500em;
    width:1px;
}
</pre>
<p>A simple example of using the above may be to provide a header to a section such as the navigation:</p>
<pre class="syntax-highlight:html">
&lt;h2 class="css-label"&gt;Navigation&lt;/h2&gt;
</pre>
<p>Some use use an &#8220;off-left&#8221; approach instead, though it seems to cause the odd problems with earlier versions of Opera and Safari (any one using those anymore?)</p>
<p>That being said, a comment left on <a href="http://juicystudio.com/article/screen-readers-display-none.php">Gez Lemon&#8217;s post about display:none issues</a> answers my question of whether off-top is better or not than off-left saying there may be some issues with off-top. I&#8217;ll need to look into that further, but either of those are certainly better than using display:none.</p>
<h4 id="toc-more-information">More information</h4>
<p>For further reading, see the following:</p>
<ul>
<li><a href="http://www.abilitynet.org.uk/webarticle67">Hiding Content from View</a>, AbilityNet, November 2007</li>
<li><a href="http://juicystudio.com/article/screen-readers-display-none.php">Screen Readers and display: none</a>, Gez Lemon, Juicy Studio, 12 October, 2007</li>
</ul>
<h3 id="toc-will-search-engines-see-this-as-keyword-stuffing">Will search engines see this as keyword stuffing?</h3>
<p>A comment left on Gez Lemon&#8217;s post asked what would be the impact on search engine listing? </p>
<p>Comments are closed on that post, so I will try to answer it here, as it is something I have been wondering for a long time.</p>
<p>The concern from an SEO point of view is that search engines may think you are tricking them even though this is a legitimate techniques for a legitimate purpose. However, some people could use these techniques for keyword stuffing, thus putting this useful technique in jeopardy and making it harder to provide sufficient context to assistive technologies.</p>
<h4 id="toc-search-engines-would-likely-have-a-hard-time-detecting-this-in-an-automated-manner">Search engines would likely have a hard time detecting this in an automated manner</h4>
<p>But for search engines to detect this they would at least need to parse all the CSS. Then, they would have to looking for all the different permutation of these rules and be 100% sure this is being done for keyword stuffing and not for some other legitimate reason.</p>
<p>Sounds tricky (and easy to circumvent &#8212; e.g. by using JavaScript to set these styles, as it is only being hidden from visual user agents).</p>
<p>Or, search engines would need to implement an entire DOM and calculate where on a screen all the text would go. Some major web browsers struggle to do this properly, so search engines aren&#8217;t likely to do it too well either, I would think.</p>
<h4 id="toc-but-they-may-use-manual-checks-for-better-results-that-would-be-good-for-legitimate-use-of-this-technique">But they may use manual checks for better results; that would be good for legitimate use of this technique</h4>
<p>However, while automation and throwing lots of servers at a problem may seem problematic (for now!), these things require human, subjective, interpretation. So why not have people check sites manually?</p>
<p>Google, for example, does have a little army of people to manually verify sites are not using unfair tricks. So I guess if they are concerned about this particular technique, they might be able to get software to go a certain distance and then flag up suspicious cases to be manually checked. Legitimate sites should then be okay.</p>
<h4 id="toc-more-information1">More information</h4>
<p>But don&#8217;t take this as advice! Search engines often change the way they work! So check out this article from SEOMoz, a prominent SEO web site: <a href="http://www.seomoz.org/blog/guide-to-hidden-text">A Comprehensive Guide to Hidden Text &amp; Search Engines</a> (10 July, 2007).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.onenaught.com/posts/35/hiding-content-on-web-pages-for-accessibility/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Quick link: Accessible PDF comparison</title>
		<link>http://www.onenaught.com/posts/27/quick-link-accessible-pdf-comparison</link>
		<comments>http://www.onenaught.com/posts/27/quick-link-accessible-pdf-comparison#comments</comments>
		<pubDate>Sat, 01 Sep 2007 11:52:07 +0000</pubDate>
		<dc:creator>Anup Shah</dc:creator>
				<category><![CDATA[Accessibility]]></category>

		<guid isPermaLink="false">http://www.onenaught.com/posts/27/quick-link-accessible-pdf-comparison</guid>
		<description><![CDATA[A useful article compares tagged PDFs generated from Acrobat, Office 2007 and OpenOffice, looking at how each tool (or plugin) provides various options for tagging PDFs so that the output will be more accessible. The test document is just a simple one, and even there differences can be seen!]]></description>
			<content:encoded><![CDATA[<p>This was a useful article on <a href="http://alastairc.ac/2007/08/comparing-tagged-pdfs-from-office-and-acrobat/">comparing tagged PDFs generated from Acrobat, Office 2007 and OpenOffice</a>.</p>
<p>The article looks at how each tool (or plugin) provides various options for tagging PDFs so that the output will be more accessible. The test document is just a simple one, and even there differences can be seen!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.onenaught.com/posts/27/quick-link-accessible-pdf-comparison/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML 5 = Improved Web, Accessibility, Productivity?</title>
		<link>http://www.onenaught.com/posts/6/html-5-improved-web-accessibility-productivity</link>
		<comments>http://www.onenaught.com/posts/6/html-5-improved-web-accessibility-productivity#comments</comments>
		<pubDate>Fri, 10 Aug 2007 08:26:59 +0000</pubDate>
		<dc:creator>Anup Shah</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[General Web Development]]></category>
		<category><![CDATA[HTML 5]]></category>

		<guid isPermaLink="false">http://www.onenaught.com/posts/6/html-5-improved-web-accessibility-productivity</guid>
		<description><![CDATA[HTML 5 is gaining increasing interest, with the potential to improve accessibility, make richer web sites more consistent and help make developing web sites that bit easier. A lot of new useful elements are proposed and some big companies are backing this. Yet, it will still likely be a long time before we see this.]]></description>
			<content:encoded><![CDATA[<h3 id="toc-rich-sites-taking-off-accessibility-being-left-behind">Rich sites taking off; accessibility being left behind</h3>
<p>Rich, AJAX-based sites are taking off. When done well, they provide rich user experiences. Unfortunately, it feels as though accessibility is being left behind. This is a sad irony, given accessibility was important in galvanizing so much support for web standards.</p>
<p>Screen readers struggle with dynamic pages, tag soup is still prevalent, and some browsers still don&#8217;t implement standards properly.</p>
<p>In addition, HTML (as it was defined almost a decade ago!), CSS and JavaScript were not built with today&#8217;s web applications in mind. Some people therefore suggest other technologies such as Flash, which has come a long way, and now includes various accessibility features, too.</p>
<p>But there has long been a move to update the HTML specifications. It has been slow moving but recent months have seen a number of interesting things arise.</p>
<h3 id="toc-proposal-for-html-5-is-promising">Proposal for HTML 5 is promising</h3>
<p>The W3C has long had <a href="http://www.w3.org/TR/xhtml2/">XHTML 2</a> specification drafts, while the Web Hypertext Application Technology Working Group (WHAT WG) has been suggesting <a href="http://www.whatwg.org/specs/web-apps/current-work/">HTML 5</a> to deal with rich internet applications that are becoming the norm today.</p>
<p>In fact, <a href="http://lists.w3.org/Archives/Public/public-html/2007May/0909.html">the W3C voted to adopt HTML 5</a> as <a href="http://lists.w3.org/Archives/Public/public-html/2007Apr/0429.html">proposed by Apple, Mozilla and Opera</a>.</p>
<p>Not only that, but the W3C has agreed to the proposal of having Ian Hickson of Google (and spokesperson of the WHAT WG) and David Hyatt from Apple /Safari to be the initial HTML 5 specification editors.</p>
<p>XHTML 2 goes down the route of strict XML-based syntax and validation (markup errors result in errors on the browser, not browsers trying to still show the page). This is nice ideally, and could allow a clean start away from the current HTML mess. However, many have felt it will be difficult to adopt and not everyone will be able to ensure well-formed markup. The HTML 5 approach has been to be backward compatible (though it now also entertains an XML-version of the markup, i.e. XHTML 5).</p>
<p>The other concern is for older browsers that may have to render newer version(s) of HTML. HTML 5 tries to be somewhat backward compatible, so potentially an older browser will be able to render the new pages even if it is not as visually as appealing. (XHTML 2 seems to be like this too, given older browsers will just try to treat it as HTML and anything not understood would just be ignored.)</p>
<p>There are certainly lots of debates going on out there about HTML 5 versus XHTML 2 and various details of each specification, but the bigger picture is the potential for improved accessibility, productivity, usability, richer applications, etc.</p>
<h3 id="toc-better-markup-is-the-foundation">Better markup is the foundation</h3>
<p>The potential comes from the richer markup that is proposed.</p>
<p>HTML 5, for example, introduces a whole host of new elements, from structural elements such as <code>header</code>, <code>footer</code>, <code>nav</code>, and <code>section</code>. New multimedia elements include <code>video</code> and <code>audio</code>. And new form elements/types include <code>date</code>, <code>email</code>, and <code>datagrid</code>. There is even a proposed <code>event-source</code> to catch server side events. (Read the really useful <a href="http://dev.w3.org/html5/html4-differences/Overview.html">HTML 5 differences from HTML 4</a> article by Anne van Kesteren, from Opera.)</p>
<p>Key benefits for users would include</p>
<ul>
<li>Consistency <em>across</em> web sites</li>
<li>Accessibility</li>
</ul>
<p>Key benefits for businesses, individuals and organisations developing web applications include</p>
<ul>
<li>Increased productivity</li>
<li>Legal compliance (where accessibility is a legal requirement)</li>
</ul>
<p>The consistency benefit is interesting: while some may fear that web sites will end up looking the same, some fundamental functional features are important for consistency across sites, such as form controls.</p>
<p>Why? We expect desktop applications to behave in the similar ways (e.g. the menu bar along the top of OSX or the top of each application in Windows, etc). In the same way some fundamental consistency of interaction on the web will be important too, for example, how dates are picked, how email addresses are validated, how data grids work, etc. This will help new users to a site quickly adapt, rather than having to learn a subtly new way of doing something similar to elsewhere.</p>
<p>This will be good for accessibility because assistive technology can more easily work out what a <code>header</code> is, or what a <code>nav</code> is. It will therefore be far easier to present navigation and usage options to the users of such software. Even browsers will be able to build more accessibility features right into the browser. All this without sacrificing design and development flexibility.</p>
<p>HTML 5&#8242;s proposals for numerous new input types and other semantic markup elements (e.g. calendar related inputs, better data grids, header/footer elements, etc) is really key, IMO.</p>
<p>Anne Van Kersteren provides some useful examples of form controls:</p>
<blockquote cite="http://dev.opera.com/articles/view/improve-your-forms-using-html5/">
<p>Nowadays web developers use nifty scripts to perform form validation on the client side. Soon you&#8217;ll be able to simply write the following:</p>
<pre><code>&lt;form&gt;
 &lt;p&gt;&lt;label&gt;Name: &lt;input name=name <strong>required</strong>&gt;&lt;/label&gt;&lt;/p&gt;
 &lt;p&gt;&lt;label&gt;E-mail: &lt;input name=email type=<strong>email</strong> required&gt;&lt;/label&gt;&lt;/p&gt;

 &lt;p&gt;&lt;label&gt;URL: &lt;input name=url type=<strong>url</strong>&gt;&lt;/label&gt;&lt;/p&gt;
 &lt;p&gt;&lt;label&gt;Comment: &lt;textarea name=comment <strong>required</strong>&gt;&lt;/textarea&gt;&lt;/p&gt;

 &lt;p&gt;&lt;input type=submit value=React!&gt;&lt;/p&gt;
&lt;/form&gt;</code></pre>
<p class="source">&#8211; Anne Van Kersteren, <a href="http://dev.opera.com/articles/view/improve-your-forms-using-html5/">Improve your forms using HTML5!</a>, Dev.Opera, 13 December, 2006</p>
</blockquote>
<p>Examples of why this is beneficial:</p>
<ul>
<li><strong>Developers</strong> get to focus on developing sites and apps, rather than common controls (which would all be different between different sites).</li>
<li><strong>Users</strong> get familiar widgets (which are probably similar to the operating system, too, making such sites quicker to learn and use).</li>
<li><strong>Assistive technology</strong> will help their users use the site more easily. Assistive technology vendors will have richer elements to support but typically only do it once (per element per browser implementation!).</li>
<li><strong>Improved quality</strong> as not only would HTML bloat may be reduced, even more important might be the reduction in JavaScript, hence the reduction of buggy sites, memory leaks, performance issues, etc.</li>
</ul>
<p>This would translate into more productive businesses and organisations. The content is also potentially easier and better for indexing for search engine.</p>
<p>All round win-win, in my view!</p>
<p>Of course this is overly optimistic. Some companies already provide these pre-packaged controls with today&#8217;s HTML so some <em>perceived</em> efficiency/productivity may not be as high as it sounds (ignoring the extra work that might be needed to make such controls accessible, search engine friendly, etc).</p>
<p>With something like HTML 5 being adopted and used widely, hopefully this means people can spend more time innovating, and less time dealing with browser problems!</p>
<h3 id="toc-when-will-this-happen">When will this happen!</h3>
<p>So lets come back down to earth again!!</p>
<p>Its all well and good to talk about the potential of something like HTML 5, but will it ever happen? Almost everyone will agree that this will all take a long time to adopt.</p>
<p>Browsers need to add new code. (Will those browser releases even be in remotely the same time frame? Does this ultimately depend on Microsoft&#8217;s Internet Explorer supporting it?)</p>
<p>And getting assistive technologies such as screen readers to support a new specification may take even longer.</p>
<p>If these new specifications are desirable, what will provide the impetus for tons of web developers to want to learn something new, for businesses to spend resources in up-skilling and moving to these?</p>
<p>Search engines.</p>
<p>What? Yes, search engines. If search engines were to buy into HTML 5 and say they will index the new tags, then businesses may have compelling enough reason to move into that direction. Better indexing may mean more accurate results. (Ranking of course is different to indexing which is a separate issue!)</p>
<p>Of course some people may now just have more HTML elements to abuse and stuff with inappropriate content. I don&#8217;t imagine any time soon search engines saying some elements will have higher precedence for ranking purposes, and instead continue to focus on social factors, how popular the site is, etc. But indexing is still important: let search engines find content, but let them also understand what is there so if the page does rank, then the right information can be shown, which helps users decide if they want to follow the link.</p>
<p>There are signs that things are moving in the right direction: Google as well as Apple, Mozilla and Opera are putting weight behind HTML 5. Ian Hickson has already started providing <a href="http://google-code-updates.blogspot.com/2007/08/optimisation-data-for-html5-parser.html">some initial analysis for HTML 5 parser implementors</a>, for example.</p>
<p>But there is one big player missing in the above that can also be make or break. Microsoft. Whatever we feel about the company (most web developers that follow web standards despise IE!) their browser install base is so wide it cannot be ignored.</p>
<h3 id="toc-what-about-microsoft-and-internet-explorer">What about Microsoft and Internet Explorer!</h3>
<p>This may feel odd to think about, but there&#8217;s another potential winner in HTML 5 adoption: Internet Explorer!</p>
<p>Microsoft&#8217;s IE is generally regarded as the least capable of modern browsers (e.g. buggy/limited CSS support, limited W3C DOM support, etc). With something like HTML 5, it is a clean slate for Microsoft.</p>
<p>If Microsoft want to rebuild their reputation with web developers, they should also buy into HTML 5, but this time truly support the standards, rather than go half way, win the wars and then act as most monopolies would!</p>
<p>There are people at Microsoft, such as Chris Wilson who leads the IE development, to whom standards is definitely important (their need to support older sites full of tag soup &#8212; partly their own doing &#8212; has slowed them down from making fixes and supporting even more modern standards) so it may be more realistic this time than in the past.</p>
<h3 id="toc-where-next">Where next?</h3>
<p>There are definitely some odd technical decisions, outstanding concerns, and debates in terms of where XHTML 2 and HTML 5 are headed. With the W3C&#8217;s adoption of HTML 5, XHTML 2 seems dead for now, but it seemed to have a few good things which don&#8217;t seem to be there in HTML 5. HTML 5 also has a few seemingly inconsistent decisions. And so on.</p>
<p>So what can be done? A few things, I guess. E.g.:</p>
<ul>
<li><a href="http://www.w3.org/html/wg/html5/">Read the HTML 5 drafts</a></li>
<li><a href="http://www.w3.org/2004/01/pp-impl/40318/instructions">Join the HTML working group at the W3C</a> if you have time!</li>
<li><a href="http://www.whatwg.org/">Get involved with the WHAT WG</a></li>
<li>Start pressuring search engines and browser vendors! <a href="http://www.webstandards.org">WebStandards.org</a>, is this a campaign for you guys??</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.onenaught.com/posts/6/html-5-improved-web-accessibility-productivity/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>The power of line height and whitespace</title>
		<link>http://www.onenaught.com/posts/10/the-power-of-line-height-and-whitespace</link>
		<comments>http://www.onenaught.com/posts/10/the-power-of-line-height-and-whitespace#comments</comments>
		<pubDate>Fri, 27 Jul 2007 22:51:27 +0000</pubDate>
		<dc:creator>Anup Shah</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[General Web Development]]></category>
		<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">http://localonenaught/posts/10/the-power-of-line-height-and-whitespace</guid>
		<description><![CDATA[Simple things like using wider fonts (e.g. verdana instead of arial, or georgia instead of times), generous line height, and good use of white space (e.g. margins and paddings) can dramatically improve the accessibility, usability and aesthetics of your pages. Use them!]]></description>
			<content:encoded><![CDATA[<p>A few times now, I have been asked to look at someone&#8217;s web site or web app and see if I can apply any quick wins to improve the poor look and feel.</p>
<p>Sometimes, all I have done is just the following:</p>
<ul>
<li>Switch from Arial to Verdana</li>
<li>Put some line-height on the body (a good amount, such as 1.5, even 1.8 or more)</li>
<li>Where I can, provide good use of margins and paddings around major chunks of content</li>
</ul>
<p>Nothing more. And those times I have not thought much of it, but then I get a few comments like &#8220;Wow! It looks SO much better! What did you do!&#8221;</p>
<p>Conclusion? CSS line-height and white space are your friends! Not only do they improve usability, but simple accessibility, too, while being more aesthetically pleasing. Use them!</p>
<p>Side notes:</p>
<ul>
<li>Other times, I may have also needed to improve/clean the markup too.</li>
<li>Public links not available at the moment, sorry &#8212; will see if I can get some screenshots.</li>
<li>If you require a serif font, try switching from the narrow Times New Roman to something wider like Georgia. Wider fonts (for content) such as Verdana and Georgia improve screen reading, as the brain can more easily make out the shapes etc. For that reason, also avoid all caps. Titles are a different case, and things like Times New Roman (especially italicized) can look quite nice. My personal thought of Arial: I don&#8217;t like it!</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.onenaught.com/posts/10/the-power-of-line-height-and-whitespace/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Should Web Developers Avoid WYSIWYG Editors?</title>
		<link>http://www.onenaught.com/posts/4/should-web-developers-avoid-wysiwyg-editors</link>
		<comments>http://www.onenaught.com/posts/4/should-web-developers-avoid-wysiwyg-editors#comments</comments>
		<pubDate>Sun, 22 Jul 2007 23:35:43 +0000</pubDate>
		<dc:creator>Anup Shah</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[General Web Development]]></category>

		<guid isPermaLink="false">http://localonenaught/posts/4/should-web-developers-avoid-wysiwyg-editors</guid>
		<description><![CDATA[For professional web developers, WYSIWYG editors are usually inappropriate, because they may  encourage bad practice; may not give the developer full control of the output they need to create; is the wrong paradigm when seemingly competing requirements for web sites are considered; and many WYSIWYG editors rely on Internet Explorer which produces poor quality markup. Fortunately, being able to hand edit your markup output is not only easier than it may initially appear, but gives you flexibility to get what you need.]]></description>
			<content:encoded><![CDATA[<p>Although this post covers a topic often hashed out before, I find it surfaces from time to time. This is my view of it:</p>
<p>A clarification before continuing: we are talking about professional web development. Not necessarily people who need to enter content through a CMS, for example. (Good quality <abbr title="What You See Is What You Get">WYSIWYG</abbr> editors are important for such users, however, which will be the subject of another post!)</p>
<p>For many people, a nice WYSIWYG editor seems like a good idea:</p>
<ul>
<li>It offers convenience when creating markup for web pages</li>
<li>The ability to either drag various controls onto some kind of canvas, or quickly hit a &#8216;b&#8217; button or choose a font, seems efficient and quick</li>
</ul>
<p>However, what seems efficient and quick may actually slow down development and maintenance because of things like:</p>
<ul>
<li>Poor quality output markup and code</li>
<li>Inaccessible content</li>
<li>Excessive output (code bloat)</li>
<li>Potential cross-browser compatibility issues</li>
</ul>
<p>The main reasons, I feel, are the following, in no particular order:</p>
<ul>
<li>WYSIWYG editors may encourage bad practice</li>
<li>Developers may lose full control of the output</li>
<li>Competing requirements for web sites often not achieved through WYSIWYG; WYSIWYG is the wrong paradigm</li>
<li>A number of WYSIWYG editors rely on Internet Explorer!</li>
</ul>
<p>What you see may not be what you need.</p>
<p><span id="more-4"></span></p>
<h3 id="toc-wysiwyg-editors-may-encourage-bad-practice">WYSIWYG editors may encourage bad practice</h3>
<p>(X)HTML markup is about the document structure, not how it looks (although this is of course immensely important overall).</p>
<p>Using a WYSIWYG editor <em>might</em> encourage bad practice, if the developer is not already well-versed in web development.</p>
<h4 id="toc-why-your-choice-of-markup-is-important">Why your choice of markup is important</h4>
<p>Consider a simple example of rendering a list of menu options, running across a page, each option separated by a vertical bar. People often use a div or a paragraph element and separate links with a space and &#8216;|&#8217; rather than semantically marking it up as a list of menu options (a &#8216;ul&#8217; or &#8216;ol&#8217;), followed by CSS to float each &#8216;li&#8217; next to each other and give a left or right border to all but one the first or last item, for example.</p>
<p>If a web developer knows what they are doing, they may be able to use the WYSIWYG editor to quickly write out a bulleted or numbered list in this way. More often than not, it seems, people preferring WYSIWYG editors are those that will not do this. They may be middle tier or desktop GUI developers doing web development, or preferring tools that hopefully hides the details of web development for the perception of efficient development.</p>
<p>As WYSIWYG may be natural for the more mature desktop GUI environment, I can understand such developers expecting to use similar tools for web pages. However, I don&#8217;t think that necessarily applies to web pages.</p>
<p>For the web, while the look of a site/page is incredibly important, the different technologies used on a web page serve different purposes. (X)HTML is about document <em>structure</em>; CSS is used for the look, for example.</p>
<h4 id="toc-who-cares-aboutbenefits-from-semantics">Who cares about/benefits from semantics?</h4>
<p>A semantically marked page makes it more accessible to a wider audience.</p>
<p>One of the powerful things about the web is the ability to interpret the document (i.e. the (X)HTML) in many ways, by many tools (web browsers, search engines, screen readers, etc).</p>
<p>Accessibility is a legal requirement in many countries. Much can be achieved simply by using better markup so that assistive technology can understand and represent the content to their user as accurately as possible.</p>
<p>It is also, to a lesser extent, good for search engines to <em>index</em> your content &#8212; think of Google as a blind user! (But note, indexing is not the same as <em>ranking</em> &#8212; will clarify this in a later post!)</p>
<h4 id="toc-wysiwyg-editors-often-provide-inappropriate-buttons-and-shortcuts">WYSIWYG editors often provide inappropriate buttons and shortcuts</h4>
<p>A WYSIWYG editor doesn&#8217;t encourage thinking about such semantics of the markup; if it looks right then that is enough. </p>
<p>Many WYSIWYG editors offer the classic word processor type of icons, &#8216;<abbr title="bold">b</abbr>&#8216;, &#8216;<abbr title="italics">i</abbr>&#8216;, even the confusing and often unnecessary &#8216;<abbr title="underline">u</abbr>&#8216;. These are all presentational even though they are given prominence.</p>
<p>Some WYSIWYG editors do use the more semantically useful <code>strong</code> instead of &#8216;b&#8217;. But, for &#8216;i&#8217;, while most will go for <code>em</code>, <code>cite</code> is often another use for italics. (There are also times when neither <code>em</code> or <code>cite</code> truly represent the purely presentational italics required in some types of text. Toolbars however, rarely offer all the options, or they get cluttered very quickly!)</p>
<h3 id="toc-developers-may-lose-full-control-of-the-output">Developers may lose full control of the output</h3>
<p>Some development tools have been notorious for making it difficult for developers to view the HTML source and make manual changes. Microsoft&#8217;s Front Page was probably the most well known! Even their Visual Studio 2002 and 2003 were very bad in this area (made it almost impossible to use an XHTML doc type if using the WYSIWYG editor), though Visual Studio 2005 is a lot better (but still not that great &#8212; another post will talk about this!)</p>
<p>By their nature, WYSIWIG tools will decide to mark up content in a certain way. Developers will therefore switch to the source view from time to time to correct or enhance things. Some tools (again, older Front Page and Visual Studio 2002, 2003 spring to mind, in particular!) actively change your own changes! I think, to be fair, this is less prevalent in editors today, but many are still using these older ones, so the problem does exist.</p>
<p>(To its credit, ASP.NET 2 comes with something called the <a href="http://weblogs.asp.net/scottgu/archive/2006/05/02/CSS-Control-Adapter-Toolkit-for-ASP.NET-2.0-.aspx">CSS Control Adapter Toolkit</a>, which allows you to change how something is rendered. IMO only, it feels messy and a roundabout way to do something that could have been marked up better in the first place. I can see where it could still be used, even for decent initial markup. It is unfortunately mis-named. These adapters should be used to create semantic markup, regardless of whether it is for CSS or not.)</p>
<p>Why do web developers need full control? To have the freedom to create what is needed, to meet the various web page requirements. Also, if using modern CSS-based layout techniques, knowing the nature of the output is important to create optimal code.</p>
<h3 id="toc-competing-requirements-for-web-sites-often-not-achieved-through-wysiwyg-wysiwyg-is-the-wrong-paradigm">Competing requirements for web sites often not achieved through WYSIWYG; WYSIWYG is the wrong paradigm</h3>
<p>Seemingly competing requirements of a web site may include the following:</p>
<ul>
<li>Cross-browser compatibility (without having to inefficiently code differently for each browser)</li>
<li>Accessibility (a legal requirement in many countries)</li>
<li>Search engine visibility (important for many, many businesses</li>
<li>Fast downloading</li>
</ul>
<p>The power of the World Wide Web is its ability to provide content to a variety of people, and technology.</p>
<p>Whether it is the web browser, or a search engine, or assistive technology, all these things will access your same content and try to interpret and represent it as best they can for their user. From a business perspective, richer and richer functionality is needed, yet the page always needs to load quickly, so reducing excessive markup bloat can be important.</p>
<p>It is therefore crucial that the underlying markup is sound and semantically accurate (within the current limitations of (X)HTML).</p>
<p>Providing this extra semantic markup doesn&#8217;t get in the way of nice visual designs. (Sometimes it can help reduce the code you need to achieve the same designs.)</p>
<p>The perception that WYSIWYG editors will be efficient falls down when thinking about all the time that will be needed subsequently to &#8216;fix&#8217; it for SEO, accessibility, cross browser compatibility, etc.</p>
<p>When done up front, as part of the initial project, it is much cheaper (and, I find, often without any excessive overhead).</p>
<p>It is the importance of semantic markup, that makes WYSIWYG the wrong paradigm. It is not what you see that is important (from an editor and (X)HTML point of view), but how you mark your content up.</p>
<p>The above menu list example is worth pondering again. A web standards-aware developer, even if they use a WYSIWYG editor, will opt for a bulleted or ordered list. That on its own is not what you will see by default, if CSS is used to lay it out horizontally, as per above.</p>
<p>If a WYSIWYG editor attempts to provide CSS support too, that could help, and a number of editors are now providing sophisticated support for it (e.g. DreamWeaver and the next release of Visual Studio).</p>
<p>To help out, an editor could implement a standards-compliant CSS engine that can continuously update the WYSIWYG canvas as the developer edits it. This would make for an expensive product, potentially! Or, the editor would need to hook into an underlying browser, which leads to the next problem:</p>
<h3 id="toc-a-number-of-wysiwyg-editors-rely-on-internet-explorer">A number of WYSIWYG editors rely on Internet Explorer!</h3>
<p>There used to be a time when web developers had to suffer developing for Netscape 4 as well as IE. Netscape in those days used to be full of problems. Now, it is mostly IE 6 and below in particular, that are the buggiest browsers when trying to use modern, established standards/recommendations to achieve all the competing requirements.</p>
<p>That being said, many modern web techniques can still be successfully used even with these browsers.</p>
<p>However, for those WYSIWYG editors that try to provide CSS support, using IE 6 or even IE7 as the underlying rendering engine is the wrong approach. You want to develop to standards, not specific browsers. Reasons:</p>
<ul>
<li>Of all the modern browsers, IE (6 and 7) have the most CSS and other rendering bugs</li>
<li>Standards-based development should be tested against more standard compliant browsers first (e.g. Firefox and Opera)</li>
<li>This encourages better coding practices</li>
<li>Only then should the problems that mostly occur in IE be dealt with</li>
<li>This works even when IE is the major browser for the site, because <strong>the pain of supporting multiple browsers diminishes significantly if developing according to standards, rather than browsers</strong></li>
</ul>
<h3 id="toc-can-wysiwyg-for-web-markup-ever-be-good">Can WYSIWYG for web markup ever be good?</h3>
<p>Where web developers know what they are doing, decent WYSIWYG tools could be used responsibly.</p>
<p>But, even if say marking up the simple menu example above as a bulleted list, then what you see may not be what you get if the editor doesn&#8217;t support CSS.</p>
<p>Where the editor does have CSS support, if the Internet Explorer 6 (or even 7) rendering engine is being used, then what you see may encourage inappropriate fixes or code that works in the WYSIWYG editor, but then breaks in other browsers, or even a future IE that fixes its numerous current problems!</p>
<p>One the one hand, I hope that future editors will be far better at these things. On the other hand, even if they improve can they improve enough?</p>
<p>Possible reasons why WYSIWYG may become useful:</p>
<ul>
<li>Editors should get better over time</li>
<li>Many vendors are embracing modern techniques and standards</li>
<li>Many tools are incorporating sophisticated CSS-based techniques and ideas</li>
</ul>
<p>For example, <a href="http://www.digitalmedia.com.au/node/417">DreamWeaver CS3 by default creates descendant selector chains when it generates CSS for you</a>, which sounds very powerful. <a href="http://weblogs.asp.net/scottgu/archive/2007/07/25/vs-2008-web-designer-and-css-support.aspx">Visual Studio 2008 will try to encourage better CSS rules re-use</a>. These and other tools offer a ton of CSS management capabilities as well as markup support, so that might be quite useful.</p>
<p>A number of editors also provide additional &#8220;widgets&#8221; out of the box. E.g. menu bars, animation and other visual features, etc. If, after evaluation, these are appropriate for your needs, produces appropriate markup, meets accessibility, search engine and other needs, then it would seem useful to use those widgets.</p>
<p>However, possible reasons why WYSIWYG may still be unnecessary or hamper development in the foreseeable future:</p>
<ul>
<li>Ultimately, it is still feels like the wrong paradigm. What you see may not be what you get and may certainly not be what you need</li>
<li>Developers will still need to know the output they need if they are to address the multiple requirements typical of most web sites</li>
<li>Writing the output by hand is ever so quick anyway, and not something to be scared of (we are talking about web professionals here, so intimate markup knowledge is assumed)</li>
</ul>
<p>(HTML is quite limited in what elements you have at your disposal. While not everyone would know every single element and attribute, the common ones are easily remembered when done repeatedly, just like a programmer in say C will remember most capabilities, but occasionally require a reference manual for some more obscure stuff. And despite the limited web languages, as a post at 37signals notes, <a href="http://www.37signals.com/svn/posts/487-what-if-i-actually-like-html-css-and-javascript">coding in those limited web languages is quite pleasant</a>. I&#8217;d tend to agree. I know many programmers may see HTML/CSS/JavaScript as too low or not enough of a language, and I certainly like Object Oriented Programming, but I agree with that previous post when it comes to web interfaces!)</p>
<p>Will improved WYSIWYG editors help make the &#8220;wrong paradigm&#8221; issue go away, or diminish as a concern? Don&#8217;t know.</p>
<p>Regardless of the direction, knowing the underlying markup will remain important for a long time, I feel. Kind of like how even though SQL has been around for decades, as have tools that can generate SQL for you (e.g. by drawing lines between two tables, entering conditions in some sort of condition builder), serious DBAs prefer to code by hand. Or, although various tools can create C# or Java or other code for you, developers still need to know those languages.</p>
<h3 id="toc-using-open-standards-on-the-server-side-to-output-open-standards-on-the-client-side">Using open standards on the server side to output open standards on the client side</h3>
<p>One thing I have done successfully with ASP.NET (including ASP.NET 2) is by-pass the whole ASP.NET controls mechanism, in effect, overriding the Render() method to transform XML data with some XSLT instead. XSLT is an open standard and offers full control over the output that needs to be created.</p>
<p>This helps to create a very clear separation between presentation logic (the code to process inputs/posts to the page, request services/data from the middle tier, etc) and output construction (i.e. creation of the markup/response to the client).</p>
<p>Although the way you write your presentation logic is dependent on your platform, the output construction is somewhat platform independent. (With object oriented languages like C# and PHP 5 on the server side, the design pattern for the presentation logic code is also highly reusable.)</p>
<p>I have been able to port the same pattern from classic ASP, to ASP with COM+, to ASP.NET and even to PHP with practically no changes to the XSLT (other than the use of the node-set feature or how the document() function might be used, which are typically minor changes).</p>
<p>Of course, this might be overkill for simple sites, or inappropriate for some situations, so will be the subject of a subsequent post.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.onenaught.com/posts/4/should-web-developers-avoid-wysiwyg-editors/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
