<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <link href="https://friendlybit.com/feed/" rel="self" type="application/atom+xml" />
    <link href="https://friendlybit.com/" rel="alternate" type="text/html" />
    <updated>2009-04-03T17:31:32+02:00</updated>
    <id>https://friendlybit.com</id>
    <title type="html">Friendly Bit - Web development blog</title>
    <subtitle>Friendly Bit is a blog by Emil Stenström, a Swedish web developer that occasionally gets ideas of how to improve the internet.</subtitle>
    
        <entry>
            <title type="html">Projectors: a great accessibility argument</title>
            <link href="http://friendlybit.com/accessibility/projectors-a-great-accessibility-argument/" rel="alternate" type="text/html" title="Projectors: a great accessibility argument" />
            <published>2009-04-03T17:31:32+02:00</published>
            <updated>2009-04-03T17:31:32+02:00</updated>
            <id>http://friendlybit.com/accessibility/projectors-a-great-accessibility-argument/</id>
            <author>
                <name>Emil Stenström</name>
            </author>
            <summary type="text">So there I sat, at the demonstration of a new website I&#39;ve been part of building. About 10 people in the room, some of which had never seen the site before....</summary>
            <content type="html" xml:base="http://friendlybit.com/accessibility/projectors-a-great-accessibility-argument/">
                &lt;p&gt;So there I sat, at the demonstration of a new website I&#39;ve been part of building. About 10 people in the room, some of which had never seen the site before. There had been preparations, and we had gone through which parts of the site we were going to present. Only the simple part left…&lt;/p&gt;
&lt;p&gt;So the presenter fires up the projector, connects it to his Mac, and looks at the projection. Half the site is outside of the screen. Turns out the maximum resolution is 800×600, and we&#39;ve designed the site for 1024! People started looking at each other.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&amp;quot;We have to be able to show the site with a projector!&amp;quot;, one from the audience proclaimed.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Awkward silence.&lt;/p&gt;
&lt;p&gt;&lt;img class=&#34;secondary&#34; src=&#34;http://farm1.static.flickr.com/34/110679756_98fdd45346.jpg?v=0&#34; alt=&#34;&#34; width=&#34;180&#34; height=&#34;175&#34; /&gt;&lt;/p&gt;
&lt;p&gt;I&#39;ve rarely heard people working with accessibility mention projectors as arguments for accessibility, but it turns out they are great for that purpose. Just look at it like this:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Resolution&lt;/strong&gt; is often at the very low end, and they get upgraded much slower than regular computers.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Brightness&lt;/strong&gt; is much lower than on a computer screen, especially at daytime, in a room with bad curtains.&lt;/li&gt;
&lt;li&gt;Many presenters &lt;strong&gt;move their mouse&lt;/strong&gt; by looking at the projection, which makes clicking things harder.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Interesting isn&#39;t it? Those three just happens to be exactly the same things that we try to optimize when working with accessibility:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;We try to avoid having people to &lt;strong&gt;scroll sideways&lt;/strong&gt;, because unexperienced users find that hard to do. A flexible design, that can adapt to different screen widths (within reason), is a great way to accomplish that.&lt;/li&gt;
&lt;li&gt;We work hard to make sure that the contrast between page elements is big enough. That way, the large part of the population with low vision (don&#39;t forget those that left their glasses at home…), can use the page without problems.&lt;/li&gt;
&lt;li&gt;We expand clickable areas of links and buttons, to make sure people with motor disabilities can still use our site.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;So, we could just as well have been optimizing the &amp;quot;projector experience&amp;quot; all along.&lt;/p&gt;
&lt;p&gt;How did the presentation go? Well, we simply zoomed the site out one step, and continued as usual. You are making sure your site zooms properly are you?&lt;/p&gt;

            </content>
        </entry>
    
        <entry>
            <title type="html">Accessibility as a platform to build upon</title>
            <link href="http://friendlybit.com/html/accessibility-as-a-platform-to-build-upon/" rel="alternate" type="text/html" title="Accessibility as a platform to build upon" />
            <published>2007-02-03T14:00:23+01:00</published>
            <updated>2007-02-03T14:00:23+01:00</updated>
            <id>http://friendlybit.com/html/accessibility-as-a-platform-to-build-upon/</id>
            <author>
                <name>Emil Stenström</name>
            </author>
            <summary type="text">Two things triggered this post. First a brave participant at the last Geek Meet stood up and asked the question: &#34;Why isn&#39;t it ok to require users have...</summary>
            <content type="html" xml:base="http://friendlybit.com/html/accessibility-as-a-platform-to-build-upon/">
                &lt;p&gt;Two things triggered this post. First a brave participant at the last &lt;a href=&#34;http://www.robertnyman.com/geekmeet/&#34;&gt;Geek Meet&lt;/a&gt; stood up and asked the question: &amp;quot;Why isn&#39;t it ok to require users have javascript enabled?&amp;quot;. A few days afterwards I got a lot of good replies to my article about &lt;a href=&#34;/js/flash-only-vs-ajax-sites/&#34;&gt;AJAX vs. Flash&lt;/a&gt;, claiming that users want multimedia, not plain HTML. To me, those are two different ways of asking one fundamental question: &amp;quot;Is it time we start requiring more from our users?&amp;quot;.&lt;/p&gt;
&lt;h2 id=&#34;html-our-history&#34;&gt;HTML: Our history&lt;a href=&#34;#html-our-history&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;HTML has existed for (at least) 10 years now. The first browser, Mosaic, supported HTML and the same documents that where viewable then is still possible to look at in today&#39;s browsers. You know those polls that are still made to figure out the percentage of users that support javascript or flash? You don&#39;t need those for HTML, everyone supports it. Browsers, Mobile phones, Screen readers, Search engines… Everywhere you turn you have HTML support.&lt;/p&gt;
&lt;p&gt;Now. HTML does not have everything you need to make a fully working website. So what you do is add another layer that figures out what the users what and generate HTML for them. It&#39;s an easy process and the point is that it does not put any pressure on the user at all, even today you can browse most sites with Mosaic. To me, that&#39;s fantastic! We truly have an global format for documents that works everywhere.&lt;/p&gt;
&lt;p&gt;Semantic code and web standards did not change the basics, we still use the same header elements that where there from the beginning. What was added was a meaning to each element that had gotten lost in the table-era. Suddenly screen readers could just present a list of headers and know that they presented a balanced view of the site.&lt;/p&gt;
&lt;h2 id=&#34;but-we-want-more-than-that&#34;&gt;But we want more than that!&lt;a href=&#34;#but-we-want-more-than-that&#34;&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;In parallell to semantic HTML, Flash and AJAX apps have evolved. They do a good job when it comes to interacting with the user, and interfaces instantly feel more alive. Some developers love them for that.&lt;/p&gt;
&lt;p&gt;My thesis is that even though we do want more multimedia there&#39;s good and bad ways of getting it. Throwing away 10 years of accessibility can&#39;t be the best way? What I want is a way to have both a structured and readable site that is accessible from anywhere, &lt;strong&gt;and&lt;/strong&gt; a site that can give users more interactivity if their browsers support it. Some say it isn&#39;t possible, but as a programmer I know that&#39;s not true. Based on previous comments I know it is possible to add a flash layer on top of a HTML site; you simply parse the HTML from flash.&lt;/p&gt;
&lt;p&gt;You have probably figured this out already but this is what many AJAX apps are doing. They are adding a more interactive layer, on top of HTML. Done right that has incredible consequences for how applications can be accessed by all sorts of devices.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Don&#39;t believe those who say accessibility rules out everything else. Use accessibility as a platform to build other apps on top of. Only require more for extras, not the basics.&lt;/strong&gt;&lt;/p&gt;

            </content>
        </entry>
    
        <entry>
            <title type="html">Judging the technical quality of a site</title>
            <link href="http://friendlybit.com/tutorial/judging-the-technical-quality-of-a-site/" rel="alternate" type="text/html" title="Judging the technical quality of a site" />
            <published>2006-10-01T00:28:08+02:00</published>
            <updated>2006-10-01T00:28:08+02:00</updated>
            <id>http://friendlybit.com/tutorial/judging-the-technical-quality-of-a-site/</id>
            <author>
                <name>Emil Stenström</name>
            </author>
            <summary type="text">When you look at a website to determine its quality on the code level, you need a different set of metrics than you did some years ago. This article is my...</summary>
            <content type="html" xml:base="http://friendlybit.com/tutorial/judging-the-technical-quality-of-a-site/">
                &lt;p&gt;When you look at a website to determine its quality on the code level, you need a different set of metrics than you did some years ago. This article is my attempt at specifying what metrics I use. Have a look at them, do they match yours?&lt;/p&gt;
&lt;p&gt;First I look at the &lt;strong&gt;validation&lt;/strong&gt;. Does the front page validate? Do all sub pages of the site validate? If they don’t, what kind of errors are there? While validation isn’t the most important metric, it’s a very quick way to get a feeling of if the coder is “web standards aware” or not. I use the &lt;a href=&#34;http://users.skynet.be/mgueury/mozilla/&#34;&gt;Firefox validation plugin&lt;/a&gt; that checks all the pages I visit and puts a little green check in the statusbar if the current page validates. For doing sitewide validation I use &lt;a href=&#34;http://www.htmlhelp.com/tools/validator/&#34;&gt;htmlhelp’s validation spider&lt;/a&gt; and let it loose on the site (check &amp;quot;Validate entire site&amp;quot;). Validation is slowly catching on as a standard tool in the webdev toolbox. Someone who is not using the validator probably doesn&#39;t know much about web standards.&lt;/p&gt;
&lt;p&gt;While on the subject of validation: don’t forget &lt;strong&gt;validating the CSS&lt;/strong&gt;. There’s a lot of basic errors that the validator finds that only leads to errors in some browsers. The W3C CSS validator might help you fix some of those right away. Before you complain: the CSS validator has a few issues. If you use line-height, you need pass it a decimal number; 1 becomes 1.0, 0 becomes 0.0. Secondly, if you use CSS 2.1 or CSS 3 properties you need to inform the validator you do. Add the &lt;a href=&#34;http://jigsaw.w3.org/css-validator/validator?uri=http%3A%2F%2Ffriendlybit.com&amp;amp;usermedium=all&amp;amp;profile=css21&#34;&gt;URL parameter “profile”&lt;/a&gt; with the value set to “css21” or “css3”, and revalidate. CSS errors and whether or not the style sheet is &lt;strong&gt;well organized&lt;/strong&gt; clearly propagates what &lt;a href=&#34;/css/levels-of-css-knowledge/&#34;&gt;CSS level&lt;/a&gt; the developer is on.&lt;/p&gt;
&lt;p&gt;Next I look at the &lt;strong&gt;doctype&lt;/strong&gt;. That single line of information at the first line of the HTML that defines what language the coder is using. Use of &lt;a href=&#34;http://accessites.org/gbcms_xml/news_page.php?id=23&#34;&gt;Strict or Transitional&lt;/a&gt; is what matters most. Most pages that validate as transitional can with very small changes be upgraded to strict. And why not? Strict signals that an effort has been made to ensure that the document separates structure from design. If you know how, there’s no reason not to. At this stage I also check that the doctype is properly set, there’s an IE bug that makes IE render things badly (quirks mode) if the doctype isn’t the first element of the page. Incorrect use of doctype is also a common way to recognize a beginner.&lt;/p&gt;
&lt;p&gt;Sites that pass the above code tests get another batch of checks. Is the code &lt;strong&gt;semantic&lt;/strong&gt;? (ie. does the HTML describe the content?) I look at elements, classes, and ids in use. Do they describe the content they contain? Bad sites use class names tied to design. Mediocre sites use general names like “wrapper” or “column2”. Great sites use “copyright”, “invitation”, and “footnote”. Many CMS:es generate design-oriented classes and ids, and only a few reach mediocre. This is one way to see that a site was robot-made.&lt;/p&gt;
&lt;p&gt;Another code issue is the &lt;strong&gt;content over HTML quotient&lt;/strong&gt;. For just a few lines of content you shouldn’t have to need huge amounts of HTML. You shouldn’t need 10 divisions just for one header. A high content over HTML quotient signals that the developer knows what he’s doing. An “overmarked” site means that the developer is on the right track but suddenly forgot that content is more important than the code behind it.&lt;/p&gt;
&lt;p&gt;One last angle is the &lt;strong&gt;accessibility&lt;/strong&gt; one. How will a screen reader read this site? Is all the content of the site available as readable text? Does the site require javascript when it isn’t needed? A good place to see if someone knows about accessibility (on the web) or not is checking the forms. Fieldsets, legends, and labels: they all tell their story about the developer and his knowledge about accessibility.&lt;/p&gt;
&lt;p&gt;A quality site ranks high in all of the above.&lt;/p&gt;

            </content>
        </entry>
    
</feed>