<?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>Clayton McIlrath &#187; web standards</title> <atom:link href="http://thinkclay.com/tag/web-standards/feed" rel="self" type="application/rss+xml" /><link>http://thinkclay.com</link> <description>Creative Media Design, Powered by Wordpress</description> <lastBuildDate>Sat, 15 Oct 2011 19:40:31 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.2.1</generator> <item><title>Tip of the Day: CSS Formatting</title><link>http://thinkclay.com/technology/tip-of-the-day-css-formatting</link> <comments>http://thinkclay.com/technology/tip-of-the-day-css-formatting#comments</comments> <pubDate>Wed, 07 Sep 2011 04:56:31 +0000</pubDate> <dc:creator>Clay McIlrath</dc:creator> <category><![CDATA[Technology]]></category> <category><![CDATA[best practices]]></category> <category><![CDATA[CSS]]></category> <category><![CDATA[front-end]]></category> <category><![CDATA[Tip of the Day]]></category> <category><![CDATA[web standards]]></category> <guid
isPermaLink="false">http://thinkclay.com/?p=1526</guid> <description><![CDATA[One thing I really hate about agile front-end dev is the lack of formatting standards between devs. Some developers block their rules, others keep everything on one line. Some indent their rules, others don&#8217;t. The list goes on and on. I have a list of formatting rules that my team has adopted and all the [...]]]></description> <content:encoded><![CDATA[<p>One thing I really hate about agile front-end dev is the lack of formatting standards between devs. Some developers block their rules, others keep everything on one line. Some indent their rules, others don&#8217;t. The list goes on and on. I have a list of formatting rules that my team has adopted and all the front-end devs that I respect also follow, so if you care about improving your code and agile development, please adopt a standard of some sort and stand firm by it:</p><h3>Block vs Single Line</h3><p>Default to single line, because many rules will only contain one or two styles and its a waste and pain to scroll vertically through code. Most editors support the 80 column rule, so if your styles get longer than that, convert to block (easy to set a macro to do it for you in most IDE&#8217;s and editors).</p><div
class="wp_syntax"><div
class="code"><pre class="css" style="font-family:monospace;"><span style="color: #6666ff;">.foo</span> <span style="color: #00AA00;">&#123;</span> <span style="color: #000000; font-weight: bold;">background</span><span style="color: #00AA00;">:</span> <span style="color: #cc00cc;">#ccc</span><span style="color: #00AA00;">;</span> <span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span> <span style="color: #000000; font-weight: bold;">left</span><span style="color: #00AA00;">;</span> <span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span> <span style="color: #933;">10px</span><span style="color: #00AA00;">;</span> <span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #6666ff;">.bar</span> <span style="color: #00AA00;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">cursor</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">pointer</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">display</span><span style="color: #00AA00;">:</span> <span style="color: #993333;">block</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">float</span><span style="color: #00AA00;">:</span> <span style="color: #000000; font-weight: bold;">left</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">height</span><span style="color: #00AA00;">:</span> <span style="color: #933;">29px</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">margin</span><span style="color: #00AA00;">:</span> <span style="color: #933;">7px</span> <span style="color: #cc66cc;">0</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">padding</span><span style="color: #00AA00;">:</span> <span style="color: #cc66cc;">0</span> <span style="color: #933;">16.2%</span><span style="color: #00AA00;">;</span>
	<span style="color: #000000; font-weight: bold;">width</span><span style="color: #00AA00;">:</span> <span style="color: #933;">26px</span><span style="color: #00AA00;">;</span>
<span style="color: #00AA00;">&#125;</span></pre></div></div><h3>Indentation</h3><p>It&#8217;s so much easier to read code that is indented to show hierarchy and white space that separates or groups similar or related objects together. This is a standard I see most front-end developers following, but if you&#8217;re not, smack yourself now and get with the program.</p><div
class="wp_syntax"><div
class="code"><pre class="css" style="font-family:monospace;">ul <span style="color: #00AA00;">&#123;</span> <span style="color: #00AA00;">&#125;</span>
	li <span style="color: #00AA00;">&#123;</span> <span style="color: #00AA00;">&#125;</span>
		li a <span style="color: #00AA00;">&#123;</span> <span style="color: #00AA00;">&#125;</span>
&nbsp;
<span style="color: #6666ff;">.foo</span> <span style="color: #00AA00;">&#123;</span><span style="color: #00AA00;">&#125;</span>
	<span style="color: #6666ff;">.bar</span> <span style="color: #00AA00;">&#123;</span><span style="color: #00AA00;">&#125;</span></pre></div></div><p>That&#8217;s all on formatting for now. Adopt these standards and read on, because I&#8217;m sure I&#8217;ll be back on this rant before too long.</p> ]]></content:encoded> <wfw:commentRss>http://thinkclay.com/technology/tip-of-the-day-css-formatting/feed</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Tip of the Day: CSS Border Radius</title><link>http://thinkclay.com/technology/tip-of-the-day-css-border-radius</link> <comments>http://thinkclay.com/technology/tip-of-the-day-css-border-radius#comments</comments> <pubDate>Mon, 29 Aug 2011 05:05:46 +0000</pubDate> <dc:creator>Clay McIlrath</dc:creator> <category><![CDATA[Technology]]></category> <category><![CDATA[best practices]]></category> <category><![CDATA[CSS]]></category> <category><![CDATA[developer tools]]></category> <category><![CDATA[front-end]]></category> <category><![CDATA[Tip of the Day]]></category> <category><![CDATA[web standards]]></category> <guid
isPermaLink="false">http://thinkclay.com/?p=1517</guid> <description><![CDATA[Too often I look at code where developers aren&#8217;t keeping up with standards and browser adoption and compatibility. This tip will save you from writing a bunch of browser prefixes and thus writing extra, redundant code. As of the date of this posting the latest versions of Opera, Firefox, Chrome and Safari all support &#8220;border-radius&#8221; [...]]]></description> <content:encoded><![CDATA[<p>Too often I look at code where developers aren&#8217;t keeping up with standards and browser adoption and compatibility. This tip will save you from writing a bunch of browser prefixes and thus writing extra, redundant code. As of the date of this posting the latest versions of Opera, Firefox, Chrome and Safari all support &#8220;border-radius&#8221; without a prefix. I&#8217;ve confirmed this on <a
href="http://css3.info">http://css3.info</a> though I&#8217;m not sure what the latest adoption by IE9 is.</p><p>Also, for those that will rebuttal and argue that older versions of these browsers don&#8217;t support it, to you I&#8217;d say look up the statistics of old versions of these browsers being out in the wild and stuff it please, because the percentage of users that don&#8217;t upgrade these browsers is so low and insignificant that I really don&#8217;t want to hear the argument <img
src='http://thinkclay.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>That concludes today&#8217;s &#8220;Tip of the Day&#8221; check back again tomorrow!</p> ]]></content:encoded> <wfw:commentRss>http://thinkclay.com/technology/tip-of-the-day-css-border-radius/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Semantic Markup and Accessibility Standards</title><link>http://thinkclay.com/business/semantic-markup-and-accessibility-standards-an-overview</link> <comments>http://thinkclay.com/business/semantic-markup-and-accessibility-standards-an-overview#comments</comments> <pubDate>Mon, 03 Jan 2011 22:21:17 +0000</pubDate> <dc:creator>Clay McIlrath</dc:creator> <category><![CDATA[Business]]></category> <category><![CDATA[best practices]]></category> <category><![CDATA[semantics]]></category> <category><![CDATA[web standards]]></category> <guid
isPermaLink="false">http://www.new-age-design.com/?p=132</guid> <description><![CDATA[Web Standards Guideline With growing technology and standards, I take pride in meeting new standards according to W3C, in order to achieve a highly functional site and good user experience for everyone. These standards include but aren’t limited to W3C standards, semantic markup, meeting WCAG usability standards, and Section 508 Compliance. This guide provides a [...]]]></description> <content:encoded><![CDATA[<h3>Web Standards Guideline</h3><p>With growing technology and standards, I take pride in meeting new standards according to W3C, in order to achieve a highly functional site and good user experience for everyone. These standards include but aren’t limited to <strong><a
title="World Wide Web Consortium - Standards for creating semantic and accessible web sites" href="http://w3.org">W3C</a> standards, semantic markup</strong>, meeting <strong><a
title="Web Content Accessibility Guidelines - Best practices for creating accessible websites" href="http://www.w3.org/TR/WCAG10/">WCAG</a> usability standards</strong>, and <strong><a
title="Section 508 - Government rules and regulations for accessible websites" href="http://www.section508.gov">Section 508</a> Compliance</strong>. This guide provides a medium level of understanding of accessibility standards. If anything in this article is confusing you, then I recommend you refer to Nathan&#8217;s post on <a
title="Nathan Beck - An overview on Creating Accessible Websites" href="http://www.redswish.co.uk/accessible-web-design-the-whats-and-whys/">Accessible Web Design</a> for a more broad prospective.</p><h3>Semantic Markup</h3><p>Working with HTML and XML markup languages, it’s important for the code to be standards compliant by using tags, structure, and information that can be read and translated by all browsers. <strong>Semantic Markup</strong> is just a way of structuring code so that a browser/machine can do more work and take less off the user. For example, search engines, like Google, are heavily driven on specific tags such as Meta information, Alt tags for images, recognizable XML and HTML formatting, etc. Using meta tags for keywords, content definition, and descriptions all improve functionality for search engines and browsers.</p><h3><a
title="Section 508 - Government rules and regulations for accessible websites" href="http://www.section508.gov">Section 508</a> overview</h3><ul><li><strong>Software Applications and Operating Systems:</strong> includes usability for people that are visually impaired, such as alternative keyboard navigation.</li><li><strong>Web-based Intranet, Internet Information, and Applications</strong>: assures accessibility to web page graphics by the visually impaired using assistant technology such as screen readers and refreshable Braille displays. This is accomplished by using text labels and descriptors for graphics.</li><li><strong>Telecommunications Products</strong>: addresses accessibility for people who are deaf or hard of hearing. This includes technology compatibility with hearing aids, assistant listening devices, and TTYs.</li><li><strong>Videos or Multimedia Products</strong>: includes requirements for captioning of multimedia products such as training or informational multimedia productions. Captioning or video descriptors must be able to be turned on or off.</li><li><strong>Self Contained, Closed Products</strong>: products with embedded software, such as information kiosks, copiers, and fax machines, often cannot be used with assistant technology. This standard requires that access features be built into these systems.</li><li><strong>Desktop and Portable Computers</strong>: discusses accessibility related to mechanically operated controls such as keyboards and touch screens.</li></ul><h3><a
title="Web Content Accessibility Guidelines - Best practices for creating accessible websites" href="http://www.w3.org/TR/WCAG10/">WCAG summary</a></h3><p>The Web Content Accessiblity Guidelines (WCAG) is the only international draft for following web standards. It describes standards that <em>may be used</em>, <em>should be used</em> and <em>must be used</em>. The WCAG is considered the stable version of standards, but for more current standards for accessible websites you can refer to the <a
title="Web Accessibility Initiatives - Defining modern standards for semantic and accessible web sites" href="http://www.w3.org/WAI/">Web Accessibility Initiative</a> (WAI). They define standards more relevent and specific to newer Web Browsers, Operating Systems, and so forth.</p><p>There is a lot of best practices and examples defined in the WCAG and WAI, and though these standards are important, not every web developer needs to know them by heart or implement them into every site. They are mainly important for sites that provide a service, such as e-commerce, educational resource, government sites, etc. That&#8217;s why many times you&#8217;ll notice that government sites and educational sites have poor creativity, because they need to focus on delivering content to all audiences more than aesthetics. However, if you&#8217;re a web developer and interested in learning more about standards and implementing the, refer to the WCAG and the WAI and start <strong>creating hierarchy using headers</strong>, <strong>putting navigation into lists</strong>, and <strong>using Title and Alt tags appropriately</strong>.</p><h3><a
title="World Wide Web Consortium - Standards for creating semantic and accessible web sites" href="http://www.w3.org/">W3C</a> summary</h3><p>The W3C is a working draft defining all aspects of markup languages and some Object Oriented Programming (OOP) languages used on the web. They define standards that are compatible across multiple browser, operating systems and languages. As web developers, we live by these standards and must know them to properly breakdown a website. These standards are a guideline that we follow in order to have our sites be dynamic and compliant for future technologies and software.</p><h3>Where does <em>your</em> site fall according to these standards?</h3><p>Below are some highlights that you should become familiar with as you populate a site with content. It’s important that if your site is developed by a professional that applies these standards, to ask for documentation on how to use functionality that may have been put into place for you, such as Meta tags, Header Tags, and Listed Links.</p><ul><li><strong>Compliance across all major Operating Systems</strong>: Windows XP, Windows Vista, and Mac OS X</li><li><strong>Access to the visually impaired</strong>: JAWS, Window-Eyes, and Hal</li><li><strong>W3C &amp; WCAG standards</strong></li><li><strong>Organic Search Engine Optimization</strong></li><li><strong>Meta information</strong> for pages, scrips, and images</li><li><strong>Alt tags</strong> for alternative text on images</li><li><strong>Color contrast</strong> and color schemes legible for those with color blindness or vision problems</li><li><strong>Em based layout and font</strong>: allowing sizes to be relevant to the browser-defined size for compatibility with mobile devices, increasing the font size in the browser, and different screen resolutions.</li><li><strong>Listed links</strong> for navigation hierarchy</li><li><strong>Header tags</strong> to establish Hierarchy and SEO</li></ul><h3>How I try and meet those standards in Web Development</h3><p>As a <strong>web developer</strong>, I know the standards well. Like an electrician must know state codes and regulations, I follow standards laid out by federal law (Section 508), good practice guidelines (W3C) and usability requirements (WCAG). I also make sure to read up on other articles and refer to other professionals to practice what is most commonly needed and used, for more in depth on how to tackle accessibility as a web developer, check out <a
title="Nathan Beck - Best practices for standards compliant and accessible web sites for Web Developers" href="http://www.redswish.co.uk/accessible-web-design-the-how/">Nathan&#8217;s post at redswish</a>.</p> ]]></content:encoded> <wfw:commentRss>http://thinkclay.com/business/semantic-markup-and-accessibility-standards-an-overview/feed</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>Pros and Cons of using sIFR</title><link>http://thinkclay.com/technology/pros-cons-using-sifr</link> <comments>http://thinkclay.com/technology/pros-cons-using-sifr#comments</comments> <pubDate>Wed, 22 Jul 2009 07:56:58 +0000</pubDate> <dc:creator>Clay McIlrath</dc:creator> <category><![CDATA[Technology]]></category> <category><![CDATA[best practices]]></category> <category><![CDATA[developer tools]]></category> <category><![CDATA[flash]]></category> <category><![CDATA[front-end]]></category> <category><![CDATA[JS]]></category> <category><![CDATA[resources]]></category> <category><![CDATA[web browser]]></category> <category><![CDATA[web standards]]></category> <guid
isPermaLink="false">http://thinkclay.com/?p=1068</guid> <description><![CDATA[<a
href="http://thinkclay.com/technology/pros-cons-using-sifr"><img
class="alignleft" src="http://thinkclay.com/wp-content/uploads/2009/07/sifr.jpg" alt="sifr" title="sifr" width="300" height="200" /></a>sIFR (scalable Inman Flash Replacement): allows for dynamically-generated snippets of text to use any font supported in Flash using a combination of JavaScript and Flash embedding to replace characters on the page.
In <a
href="http://thinkclay.com/technology/cufon-sifr-flir" title="sIFR vs Cufon vs FLIR">my last post regarding sIFR</a>, I compared <strong>sIFR</strong> against <strong>Cufon</strong> and <strong>FLIR</strong>. Since there is a great deal of interest in them, I decided to go deeper into what I believe is the superior out of the three.. ]]></description> <content:encoded><![CDATA[<p><a
href="http://thinkclay.com/technology/pros-cons-using-sifr"><img
class="alignleft" src="http://thinkclay.com/wp-content/uploads/2009/07/sifr.jpg" alt="sifr" title="sifr" width="300" height="200" /></a>sIFR (scalable Inman Flash Replacement): allows for dynamically-generated snippets of text to use any font supported in Flash using a combination of JavaScript and Flash embedding to replace characters on the page.</p><p>In <a
href="http://thinkclay.com/technology/cufon-sifr-flir" title="sIFR vs Cufon vs FLIR">my last post regarding sIFR</a>, I compared <strong>sIFR</strong> against a few of the other popular font replacement methods such as <strong>Cufon</strong> and <strong>FLIR</strong>. Since there is obviously a great deal of interest in the subject of font replacement, I figured it would be beneficial to show a deeper analysis at sIFR which I believe is the superior out of the three.</p><h2>A deeper look at pros of sIFR</h2><p>sIFR is quite different to the many font replacement techniques in the wild. Instead of manually generating each header through an image generator such as <strong>FLIR</strong> and <strong>Cufon</strong> do, sIFR is able to load a flash object and replace each element on the fly. The scripted effect works for roughly 95% of world wide web users according to statistics for Flash support and JavaScript support in modern browsers. Note also, that sIFR is by no means required, and degrades gracefully if the user does not have one of these components required. I&#8217;m sure some purists would react with contempt, but this method causes no harm to usability and only effects load time if used incorrectly (such as replacing body text rather than headers).</p><h2>sIFR&#8230; what&#8217;s not to love?</h2><p>First and foremost, implementation can be slaughtered. For an inexperienced developer, sIFR can take up to an hour to implement (from what I&#8217;ve heard in complaints anyways) and can cause pages to load slowly. From my experience, both are due to an incompetent developer, as sIFR is quite easy to implement if you understand all front-end technologies (which you should be a front-end developer) and only causes slow load time if its used for large blocks of text. Compare sIFR to the first wave of Web 2.0 technologies.. to this day I see wannabe developers implementing 20k+ javascript libraries to do one simple &#8220;jiggle&#8221; or &#8220;ajax&#8221; ability, which you can do with a few lines of code if you understand raw JavaScript. We can&#8217;t blame the technology for human error.. sIFR is brilliant. It may have a ways to go before it&#8217;s perfect, but respecting the principles of semantics, usability, and accessibility.. <strong>sIFR</strong> by far is winning the race against <strong>Cufon</strong> and <strong>FLIR</strong>.</p><p>Now to address the purists and their complaint about flash and JS dependency. Plain and simply, if a user falls within the 3-10% that doesn’t have Flash or JavaScript enabled, then BIG DEAL. That&#8217;s what good old HTML/CSS are for.. a fall back solution. Should we punish those with modern browsers and technologies for the minority that will get a slightly-less-quality rendering? I don&#8217;t punish modern browsers by neglecting the wonders of CSS 3. If Internet Explorer sees a box with square corners instead of rounded.. BIG DEAL. So why should we fight about whether a user has JS or Flash enabled? Heck, you can even use image replacement at that point, if you really want to.</p><h2>The Big Picture</h2><p>The real issue is that there aren’t enough fonts supported in Internet Explorer. If we want to point fingers and find something to criticize, there it is. Firefox, Safari, Chrome, Opera.. they&#8217;re all supporting more CSS properties such as <strong>@font-face</strong>. However, due to copyright laws and support from Internet Explorer we are bound to 5-10 fonts that we can reasonably assume the user has installed, and that’s ALL we&#8217;ve got. Solutions have been offered and argued but the problems are still much broader.. ranging from font licensing, support and rendering, with no clear solution in sight.</p><p>sIFR is one solution of many offered by developers fighting a war for creative freedom. It&#8217;s here and now, it&#8217;s legal despite the font, and regardless of the few quirks.. it’s usable. If you use it, then I hope you implement it well. If you protest it, then I hope you have valid reasons, and aren&#8217;t just complaining because you&#8217;re ignorant. Take this post with a grain of salt.. it&#8217;s my 2 cents and nothing more.</p><h3>Read further:</h3><p><a
href="http://thinkclay.com/technology/cufon-sifr-flir" title="sIFR vs Cufon vs FLIR">Cufon vs sIFR vs FLIR</a><br
/> <a
href="http://decasa.eu/content/fonts-seo-and-compatibility-designer%E2%80%99s-dilemma">Style vs SEO</a><br
/> <a
href="http://www.fontembedding.com/fonts-and-the-law/">Fonts and the Law</a></p> ]]></content:encoded> <wfw:commentRss>http://thinkclay.com/technology/pros-cons-using-sifr/feed</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Where to start learning Web Development</title><link>http://thinkclay.com/technology/where-to-start-learning-web-development</link> <comments>http://thinkclay.com/technology/where-to-start-learning-web-development#comments</comments> <pubDate>Thu, 11 Jun 2009 20:13:29 +0000</pubDate> <dc:creator>Clay McIlrath</dc:creator> <category><![CDATA[Technology]]></category> <category><![CDATA[best practices]]></category> <category><![CDATA[developer tools]]></category> <category><![CDATA[freelance]]></category> <category><![CDATA[front-end]]></category> <category><![CDATA[resources]]></category> <category><![CDATA[semantics]]></category> <category><![CDATA[web standards]]></category> <guid
isPermaLink="false">http://thinkclay.com/?p=1016</guid> <description><![CDATA[<a
href="http://thinkclay.com/technology/where-to-start-learning-web-development" title="Learn Web Development"><img
src="http://thinkclay.com/wp-content/uploads/2009/06/start-web-development.jpg" alt="Start Learning Web Development" title="start-web-development" width="300" height="200" class="alignleft" /></a>There are SO MANY articles out there that get very deep into <strong>web development</strong> and programming concepts, but not many people know what to start learning if you're just starting in this field. I've put together a well-rounded list of resources and websites to read on a regular basis and learn as much as you can. If you become familiar with all of these websites, you'll quickly be the best in your field. All the information is free to anyone with a passion or desire to learn.]]></description> <content:encoded><![CDATA[<p><a
href="http://thinkclay.com/technology/where-to-start-learning-web-development" title="Learn Web Development"><img
src="http://thinkclay.com/wp-content/uploads/2009/06/start-web-development.jpg" alt="Start Learning Web Development" title="start-web-development" width="300" height="200" class="alignleft" /></a>There are SO MANY articles out there that get very deep into <strong>web development</strong> and programming concepts, but not many people know what to start learning if you&#8217;re just starting in this field. I&#8217;ve put together a well-rounded list of resources and websites to read on a regular basis and learn as much as you can. If you become familiar with all of these websites, you&#8217;ll quickly be the best in your field. All the information is free to anyone with a passion or desire to learn.</p><h2>Validators</h2><ul><li><a
href="http://www.totalvalidator.com">Total Validator</a>: simple HTML/CSS Validator with browser plugin support</li><li><a
href="http://validator.w3.org/">W3C Validator</a>: the organization that defines markup standards, and validates according to those standards</li><li><a
href="http://www.cynthiasays.com/">Cynthia Says</a>: screen reader which will help you with accessibility in mind</li></ul><h2>Accessibility</h2><ul><li><a
href="http://www.webaim.org/intro/">WebAIM</a>: Introduction to Accessibility</li><li><a
href="http://www.w3.org/TR/WCAG10/">WCAG</a>: Web Content Accessibility Guidelines</li><li><a
href="http://www.w3.org/WAI/intro/wcag.php">WCAG Overview</a>: Overview of WCAG Standards</li><li><a
href="http://www.w3.org/WAI/wcag-curric/overgid.htm">WCAG Tutorial</a>: A useful educational resource to learn the standards</li><li><a
href="http://www.section508.gov/index.cfm?FuseAction=Content&#038;ID=11">Section 508</a>: Federal requirements for web accessibility</li></ul><h2>Javascript Libraries</h2><ul><li><a
href="http://jquery.com">jQuery</a></li><li><a
href="http://script.aculo.us">Prototype / Scriptaculous</a></li><li><a
href="mootools.net">MooTools</a></li></ul><h2>Firefox Plugins for Developers</h2><ul><li><a
href="https://addons.mozilla.org/en-US/firefox/addon/2289">CSS Validator</a></li><li><a
href="https://addons.mozilla.org/en-US/firefox/addon/2104">CSS Viewer</a></li><li><a
href="https://addons.mozilla.org/en-US/firefox/addon/60">Web Developer Toolbar</a></li><li><a
href="https://addons.mozilla.org/en-US/firefox/addon/1843">Firebug</a></li></ul><h2>Tutorials</h2><ul><li><a
href="http://www.w3schools.com/">W3Schools</a>: Very in-depth, free tutorials on the most commonly used web markup and programming languages</li><li><a
href="http://www.alistapart.com">A List Apart</a>: Articles and tutorials on an extensive list of topics</li><li><a
href=" http://www.quirksmode.org/resources.html">QuirksMode</a>: Good articles and test pages concerning javascript and CSS</li></ul> ]]></content:encoded> <wfw:commentRss>http://thinkclay.com/technology/where-to-start-learning-web-development/feed</wfw:commentRss> <slash:comments>6</slash:comments> </item> <item><title>Cufon vs sIFR vs FLIR</title><link>http://thinkclay.com/technology/cufon-sifr-flir</link> <comments>http://thinkclay.com/technology/cufon-sifr-flir#comments</comments> <pubDate>Fri, 10 Apr 2009 03:03:57 +0000</pubDate> <dc:creator>Clay McIlrath</dc:creator> <category><![CDATA[Technology]]></category> <category><![CDATA[developer tools]]></category> <category><![CDATA[front-end]]></category> <category><![CDATA[JS]]></category> <category><![CDATA[resources]]></category> <category><![CDATA[semantics]]></category> <category><![CDATA[web browser]]></category> <category><![CDATA[web standards]]></category> <guid
isPermaLink="false">http://thinkclay.com/?p=827</guid> <description><![CDATA[<a
title="Cufon SIFR FLIR" href="http://thinkclay.com/technology/cufon-sifr-flir"><img
width="300" height="200" class="alignleft" title="sifr flir cufon" alt="SIFR FLIR Cufon" src="http://thinkclay.com/wp-content/uploads/2009/04/sifr-flir-cufon.jpg"/></a>In the past few years we’ve seen a growing trend towards forcing new typefaces on the web. CSS defines a property for browsers to support a property called <a
href="http://www.w3.org/TR/css3-webfonts/">@font-face</a> which lets the developer define new typefaces and include the original font file for the browser to download and render the site with. Support for this feature has been implemented in Safari and is due to release with the next versions of Firefox and Opera...]]></description> <content:encoded><![CDATA[<p><a
title="Cufon SIFR FLIR" href="http://thinkclay.com/technology/cufon-sifr-flir"><img
class="alignleft" title="sifr flir cufon" src="http://thinkclay.com/wp-content/uploads/2009/04/sifr-flir-cufon.jpg" alt="SIFR FLIR Cufon" width="300" height="200" /></a>Typography is a very important element to design, and it&#8217;s quite a shame that for the past decade we&#8217;ve resorted to using images to display this element, without having the flexibility to define different fonts outside of the 13 or so <a
href="http://www.ampsoft.net/webdesign-l/WindowsMacFonts.html">web safe fonts</a>. In the past few years, however, we&#8217;ve seen a growing trend towards forcing new typefaces on the web. CSS defines a property for browsers to support a property called <a
href="http://www.w3.org/TR/css3-webfonts/">@font-face</a> which lets the developer define new typefaces and include the original font file for the browser to download and render the site with. Support for this feature has been implemented in Safari already and is due to release with the next versions of Firefox and Opera. Though this is definitely good news and progress in the right direction, a few issues stand in the way:</p><ul><li>Copyright is an issue for downloading and sharing fonts via the font-face attribute</li><li>Internet Explorer 6-8 do not support font-face</li><li>Font-face could potentially pose a threat if malicious sites attach/spread viruses via the font files</li></ul><p>Until <strong>font-face</strong> is fully adopted, web developers must resort to complimentary or supplementary solutions to make non-traditional typefaces work. There are few major flash and javascript solutions in existence that offer solutions with different approaches to displaying these typefaces. The three major typeface scripts that I am going to discuss are <a
href="http://www.mikeindustries.com/blog/sifr/">SIFR</a>, <a
href="http://facelift.mawhorter.net/examples/">FLIR</a>, and <a
href="http://cufon.shoqolate.com/generate/">Cufón</a>. Before diving into details about each I&#8217;d like to point out that all of these solutions that I discuss are 100% SEO friendly, and all require JavaScript (and flash in the case of SIFR) but degrade to standard markup if JS is not enabled, also note that each of these play well with jQuery.</p><h2>SIFR (Scalable Inman Flash Replacement)</h2><p>First I must address the acronym, thought not the most relevant seeming, &#8220;Inman&#8221; is referring to <a
href="http://www.shauninman.com/">Shaun Inman</a> who originally conceived the idea of using the DOM and Flash together to support non-traditional typefaces. SIFR uses a flash object to render to the font face, and then Javascript to identify the DOM and replace the text as specified.</p><h3>Pros of SIFR</h3><ul><li>Text can be selected</li><li>Does not violate EULA or copyrights, since font is contained within the SWF object</li><li>You can easily add shadows, anti-aliasing, and other text effects in Flash</li></ul><h3>Cons of SIFR</h3><ul><li>Slightly slower load times</li><li>Requires both JavaScript and Flash to be enabled</li></ul><h3>My thoughts on SIFR</h3><p>Some people complain that SIFR is harder to implement, but if you&#8217;re a front-end web developer it&#8217;s vital to learn and master new technologies including really basic flash. All you have to do is open the flash file included in the zip, change the font of the text to the font you want to use, and then publish it. Instructions are included on how to do this and if it is &#8220;too challenging&#8221; than you&#8217;re in the wrong field!</p><p>Many have also commented and argued that SIFR is no more secure to stealing a font file and using it on your website. While I do agree with that statement, the issue is a legal matter. Like it or not, and argue it as you may, Adobe Flash is legally allowed to embed and use fonts that the developer has purchased. This is not true for any of the others.</p><h2>FLIR (Face Lift Image Replacement)</h2><p>Using PHP (and the GD library) FLIR renders text into a font of your choice by reading the text in a DOM and sending a request to the server with that string and returning an image of that text rendered in the new font. It&#8217;s a very clever idea, and works behind the scenes, but it&#8217;s not without it&#8217;s quirks.</p><h3>Pros of FLIR</h3><ul><li>Does not violate EULA or copyrights, since font is rendered as an image</li><li>Prints in the font rendered since it is an image</li></ul><h3>Cons of FLIR</h3><ul><li>Requires PHP with the GD enabled</li><li>Text cannot be selected</li></ul><h3>My thoughts on FLIR</h3><p>While FLIR is fast and efficient with few flaws, one restriction I cannot overlook is the requirement for PHP and GD on the server. Many corporate websites (addressing the big guys, not the freelancers with this one) work exclusively with .NET on Windows/IIS servers without PHP installed at all. This eliminates FLIR from the mix for many websites unfortunately. In addition, FLIR disables the user to be able to select text. This is not a huge draw back if used on headings, but if used on a even body of text then you&#8217;re killing usability.</p><h2>Cufon</h2><p>Cufon is basically a new and improved version of <a
href="http://typeface.neocracy.org/">Typeface.js</a>, with a focus on faster and easier implementation. Cufon uses the browser to draw vector objects using VML (Vector Markup Language) for Internet Explorer and the HTML 5 Canvas element for the more advanced browsers.</p><h3>Pros of Cufon</h3><ul><li>Faster load times than SIFR and FLIR, since it is all JS and nothing more</li><li>Has all the strengths of Typeface.js with fewer weaknesses.</li></ul><h3>Cons of Cufon</h3><ul><li>Violates EULA and copyrights due to fonts being embedded. Not many fonts are permitted to be rendered with this method</li><li>Text cannot be selected</li><li>You can&#8217;t apply a hover state to converted text</li></ul><h3>My thoughts on Cufon</h3><p>For many, Cufon is the best solution to work with. It allows for rendering on the fly, and works well for a developer to match a design without having to replace each heading with an image. Cufon even works quickly with large bodies of text! One thing I remain disappointed about is text selection; if this library aims to provide a solution for larger bodies of text, then it seems that text selection is a must.</p><p>As I have tested and worked with Cufon, I recommend it for the developer looking for a quick solution but only for personal or non-profit website. I&#8217;ve talked with a few professionals including a lawyer and confirmed that Cufon is not a legal solution for font-embedding on ANY website, but that unless you&#8217;re developing a large profile commercial site, you should be safe to use it freely.</p><p>If you&#8217;d like to learn more about Cufon, check out the <a
href="http://net.tutsplus.com/videos/screencasts/the-easiest-way-to-use-any-font-you-wish/" rel="external">tutorial on TutsPlus</a>.</p><h3>Read further:</h3><p><a
href="http://thinkclay.com/technology/cufon-sifr-flir" title="sIFR vs Cufon vs FLIR">Cufon vs sIFR vs FLIR</a><br
/> <a
href="http://decasa.eu/content/fonts-seo-and-compatibility-designer%E2%80%99s-dilemma">Style vs SEO</a><br
/> <a
href="http://www.fontembedding.com/fonts-and-the-law/">Fonts and the Law</a></p> ]]></content:encoded> <wfw:commentRss>http://thinkclay.com/technology/cufon-sifr-flir/feed</wfw:commentRss> <slash:comments>50</slash:comments> </item> <item><title>Developing a CMS Site. Part2: Coding Structure</title><link>http://thinkclay.com/news/developing-a-cms-site-part2-coding-structure</link> <comments>http://thinkclay.com/news/developing-a-cms-site-part2-coding-structure#comments</comments> <pubDate>Thu, 06 Nov 2008 08:07:42 +0000</pubDate> <dc:creator>Clay McIlrath</dc:creator> <category><![CDATA[News]]></category> <category><![CDATA[Tutorial]]></category> <category><![CDATA[best practices]]></category> <category><![CDATA[graphic design]]></category> <category><![CDATA[web standards]]></category> <guid
isPermaLink="false">http://www.new-age-design.com/?p=276</guid> <description><![CDATA[Now we dive into what I do best.. front-end web development and User Interface! If you&#8217;re a regular visitor to my site, you&#8217;ll notice that for the past three months I&#8217;ve had a pretty dull site, and have slowly been refining it. I&#8217;m going to aim this post not so much as a &#8220;how to&#8221; [...]]]></description> <content:encoded><![CDATA[<p>Now we dive into what I do best.. front-end web development and User Interface! If you&#8217;re a regular visitor to my site, you&#8217;ll notice that for the past three months I&#8217;ve had a pretty dull site, and have slowly been refining it. I&#8217;m going to aim this post not so much as a &#8220;how to&#8221; but more as a &#8220;how I&#8221; because it&#8217;s sometimes easier to look at the steps someone takes on a real project, than it is to be told steps to follow without having something tangeable to link to.</p><p>In the early design phase, I had a really vague idea of what I wanted my site to be, but I didn&#8217;t want it to be &#8220;typical&#8221; and I hadn&#8217;t really seen a site that matched what I was going for. I still started first by looking around at what I liked in other sites, and thinking of how I could incorporate that into my own. Then after the first week I happened to come across a theme that was absolutely gorgeous, by <a
href="http://darrenthoyt.com" title="Darren Hoyt - Web Designer">Darren Hoyt</a> and <a
href="http://thenestedfloat.com" title="Matt Dawson - Web Developer">Matt Dawson</a> and used it as my base for development. I love the grid, the structure and the User Interface that this layout has. My approach is once you&#8217;ve established your frame,  UI, and grid; you can slowly add creative enhancements as you go (at least that&#8217;s my preferred approach, some designers and such may argue it, depends on the scope really).</p><p>After I applied the new theme, I began my breakdown approach by changing the color scheme, and re-adjusting some of the positions/sizes/padding/etc on the elements of the page. For example, I wanted larger font sizes, better font spacing, a different color scheme, etc. Once i had the theme, I started making the modifications to the style sheets. Most themes will use just one or two stylesheets, editable within WordPress itself under the <em>Design</em> tab, or within the <em>wp-content/themes/yourtheme</em> if accessing the site via FTP. Style are typically labeled <em>style.css</em> or separated into different layout styles like <em>nav.css</em>, <em>type.css</em>, <em>posts.css</em> and so forth.</p><h3>HTML and CSS</h3><p>For those of you that are just starting out, I want to go over some basics so that I don&#8217;t lose you further down the road. I&#8217;m sure if you&#8217;ve been reading anywhere on how to make a website you&#8217;ve seen the acronyms HTML and CSS. These are two extremely important pieces to front-end development. They define structure and how to present structure.</p><p>HTML stands for HyperText Markup Language, which basically means it&#8217;s transferable content. HTML serves as the structure of a website. If HTML were part of a building a house, it would be the lumber, doors, windows, drywall, etc.</p><p>CSS stands for Cascading Style Sheets, which means transferable/reusable styles. CSS serves as the display of a website. If it were part of building a house, it would be the overall blueprint and floor plan, as well as the paint, trim and furniture.</p><p>Hopefully my analogies make sense.. moving forward.</p><h3>Using CSS to layout your site</h3><p>So if you downloaded a theme and opened the main CSS files, you&#8217;ll see that some of it just clicks. Things like &#8220;background-color&#8221; are literal to what they&#8217;re styling. The hardest part to CSS isn&#8217;t colors and fonts, but more in layout like sizes, margins, and paddings. I&#8217;m not going to define all the style definitions, but like I said before, CSS is both the blueprint and the paint, so some styles relate to structure and some relate to skin.</p><p>The best way to learn CSS is to mess around. The basics that you need to know are elements, classes and ID&#8217;s. Elements are HTML defined content, such as &lt;p&gt; paragraph tags, &lt;div&gt; structure tags, &lt;ul&gt; lists, &lt;h1&gt; headers, etc. Classes can be attached to these tags like &lt;p class=&#8221;redtext&#8221;&gt; in HTML and to style that in the CSS you would define the paragraph tag with the class <em>redtext</em> be writing <em>p.redtext { color: red; }</em> in the style sheet. The <em>period</em> represents the <em>class</em> and the <em>p</em> represents what <em>element</em> that style is attached to. To style all paragraph tags we could simple drop the class and write <em>p { color: red; }</em> because then we&#8217;re simply targeting the paragraph element. This principles works the same with <em>id&#8217;s</em> which are represented with a <em>#</em> symbol. The difference between an id and class is that a class can be used multiple times in a single page and an ID can only be used once.</p><h3>Homework</h3><p>For this next week, try to learn some CSS basics. If you&#8217;re a beginner, work from a theme that someone already did the hard part of laying out, and just change colors or adjust sizes slightly and tweak it until your happy. Try and get the site styled with the colors you like and sizes you like. If it looks boxy and boring, that&#8217;s GOOD. We don&#8217;t want to focus on the creative elements more than we focus on the layout and structure yet.. that comes with time.</p> ]]></content:encoded> <wfw:commentRss>http://thinkclay.com/news/developing-a-cms-site-part2-coding-structure/feed</wfw:commentRss> <slash:comments>7</slash:comments> </item> <item><title>Developing a CMS Site. Part1: Design</title><link>http://thinkclay.com/news/developing-a-cms-site-part1-design</link> <comments>http://thinkclay.com/news/developing-a-cms-site-part1-design#comments</comments> <pubDate>Thu, 30 Oct 2008 04:33:51 +0000</pubDate> <dc:creator>Clay McIlrath</dc:creator> <category><![CDATA[News]]></category> <category><![CDATA[Tutorial]]></category> <category><![CDATA[best practices]]></category> <category><![CDATA[graphic design]]></category> <category><![CDATA[web standards]]></category> <guid
isPermaLink="false">http://www.new-age-design.com/?p=144</guid> <description><![CDATA[I&#8217;ve decided to teach some of my coworkers and friends how to develop a dynamic website based on clean and valid XHTML/CSS and the WordPress CMS. This tutorial is aimed specifically for their benefit, but I figured i may as well offer it to the public, because I&#8217;m sure someone else out there will take [...]]]></description> <content:encoded><![CDATA[<p>I&#8217;ve decided to teach some of my coworkers and friends <strong>how to develop a dynamic website</strong> based on clean and <strong>valid XHTML/CSS</strong> and the <strong>WordPress</strong> CMS. This tutorial is aimed specifically for their benefit, but I figured i may as well offer it to the public, because I&#8217;m sure someone else out there will take interest.</p><p>***Please direct all comments and questions through this blog post rather than emailing me, that way others can review and build off communication back and forth***</p><h3>Prerequisites</h3><p>There are two main phases to web development and they are the most crucial. An application or website needs to have a good <strong>User Inteface (UI)</strong> and remain <strong>highly reliable/functional</strong>. These two phases are usually labeled as <strong>Front-end development</strong> (which covers everything from Graphic Design to coding in XHTML, CSS, Flash, and JS) and <strong>Back-end development</strong> ( which involves a server side programming language such as PHP, ASP, or Ruby and a database such as MySQL, MS SQL, etc). I&#8217;m going to use this terminology often throughout this tutorial, so it&#8217;s best that you research these terms now if you don&#8217;t know what those technologies are.</p><h3>Part 1: Design</h3><p>Lets get started. First I want you to draw a design. You can do this however you want, a lot of people jump right into Photoshop and start designing. I personally like to bust out a pen and paper and sketch first. I like to get a feel for layout, grid, and flow before I get too heavy into a designed mockup. This method may prove useful for those of you who don&#8217;t know photoshop, as it will help you understand and learn the process of creative and UI thinking and give you a blueprint to reference if you design without a PSD to breakdown.</p><p>Spend some time on this phase. Like I said its the most important phase. Often times, in the professional world, a designer will create 3 completely different mockups or wireframes presenting the same content. This allows and forces the designer as well as the client to see and think with three completely different concepts and ideas for presentation. I recommend that you do such as well. After you develop 3 completely different ideas, sit down with someone else and circle things that you like and dislike about each and try to chose the one that best presents the concept. If you can or want, merge ideas from the other concept designs with the base that you choose. Then refine it like crazy. Many iterations are often necessary to reach a design that you&#8217;re completely satisfied with.</p><p><em>The next tutorial will follow in 1 week. This will force those who are following my posts in real time, to spend the amount of time necessary to refine. Feel free to leave comments, ask questions, or make suggestions in the mean time.</em></p> ]]></content:encoded> <wfw:commentRss>http://thinkclay.com/news/developing-a-cms-site-part1-design/feed</wfw:commentRss> <slash:comments>1</slash:comments> </item> </channel> </rss>
