<?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>ScottGale.com</title>
	<atom:link href="http://scottgale.com/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://scottgale.com/blog</link>
	<description>Exploring New Web Technologies</description>
	<lastBuildDate>Fri, 07 Oct 2011 12:14:11 +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>Coverflow using CSS 3D Transforms</title>
		<link>http://scottgale.com/blog/coverflow-css-3d-transforms/2011/05/24/</link>
		<comments>http://scottgale.com/blog/coverflow-css-3d-transforms/2011/05/24/#comments</comments>
		<pubDate>Tue, 24 May 2011 01:42:31 +0000</pubDate>
		<dc:creator>Scott Gale</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[web standards]]></category>

		<guid isPermaLink="false">http://scottgale.com/blog/?p=334</guid>
		<description><![CDATA[As HTML5 and CSS3 technology grows, WebKit CSS 3D transforms are emerging and allowing web developers to do some great things within the browser. To exemplify this, I&#8217;ve put together a CSS coverflow demo that functions inside the browser using CSS 3D transformations, reflections, multiple background attachments, and touch events. View the Demo (best in [...]]]></description>
			<content:encoded><![CDATA[<p>As HTML5 and CSS3 technology grows, WebKit CSS 3D transforms are emerging and allowing web developers to do some great things within the browser.  To exemplify this, I&#8217;ve put together a CSS coverflow demo that functions inside the browser using CSS 3D transformations, reflections, multiple background attachments, and touch events.</p>
<p><a href="http://scottgale.com/blogsamples/coverflow/index.html">View the Demo (best in Chrome or Safari)<img class="alignnone size-full wp-image-335" title="CSS Coverflow" src="http://scottgale.com/blog/wp-content/uploads/2011/05/webkit.jpg" alt="CSS Coverflow 3D Transforms for WebKit" width="600" height="215" /></a></p>
<p>This works on the iPad and iPhone as well using gestures, swipe left to right or right to left to change the item.  This example uses <a href="http://paulbakaus.com/lab/js/coverflow/">Paul Bakus&#8217;</a> code as a base and building it out with lots of new tech.</p>
<p>Here is the step by step on how I built it.</p>
<p><strong>Step 1: Create Perspective</strong></p>
<p>To build the CSS 3D transform you have to first find your wrapping div and add <strong>-webkit-perspective: 500px;</strong> to it.  For this I used the &#8220;bd2&#8243; class wrapper.<br />
<code><br />
.coverflow .bd2 {<br />
&nbsp;&nbsp;&nbsp;-webkit-perspective: 500px;<br />
&nbsp;&nbsp;&nbsp;margin: 0;<br />
&nbsp;&nbsp;&nbsp;height: 60%;<br />
&nbsp;&nbsp;&nbsp;border: none;<br />
&nbsp;&nbsp;&nbsp;overflow: hidden;<br />
&nbsp;&nbsp;&nbsp;width: 100%;<br />
&nbsp;&nbsp;&nbsp;position: relative;<br />
}<br />
</code></p>
<p>The perspective gives the illusion of depth on the z axis.</p>
<p><strong>Step 2: Apply the CSS 3D Transform</strong><br />
Then apply the CSS 3D transform rotation depending on the location of the image:<br />
<code>var webTransform = "rotateY("+(side === "right"? 55 : -55 )+"deg)";</code></p>
<p>When the transform is applied it uses the perspective to calculate how much movement is required.  You can play with this by expanding and contracting the window to see how the browser deals with it.  The <strong>perspective code</strong> is very important, your rotation won&#8217;t work without you defining it.</p>
<p><strong>Step 3: Enhance the view with the reflection</strong><br />
To do the reflect was pretty simple.  I used the -webkit-box-reflect with a transparent gradient so that it would fade the reflect out.  Here is the code:<br />
<code><br />
.coverflow .hproduct img {<br />
&nbsp;&nbsp;&nbsp;-webkit-box-reflect:<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;below 0px<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-webkit-gradient(linear, left top, left bottom,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;from( transparent ), color-stop(0.5, transparent),<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;to( rgba(50,50,50,0.7) )<br />
}<br />
</code></p>
<p>You also have to make sure that your containing div is tall enough to pick up the reflect.  I placed some webkit specific code in there because for other browser&#8217;s it doesn&#8217;t need to be as tall.<br />
<code><br />
@media screen and (-webkit-min-device-pixel-ratio:0) {<br />
&nbsp;&nbsp;&nbsp;.hproducts .hproduct {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;height:225px;<br />
&nbsp;&nbsp;&nbsp;}<br />
}<br />
</code></p>
<p>Note: All subsequent steps are extra enhancements to make the coverflow that much better.</p>
<p><strong>Step 4: Allow for scaling</strong><br />
There are a few cool tricks I used to make this allow for scaling.  By using multiple background attachments I was able to allow for the slider to scale as the window size changes.  Here is the example:<br />
<code><br />
.coverflow .slider {<br />
&nbsp;&nbsp;&nbsp;position: absolute;<br />
&nbsp;&nbsp;&nbsp;bottom: 5px;<br />
&nbsp;&nbsp;&nbsp;left:0;<br />
&nbsp;&nbsp;&nbsp;margin:0 10%;<br />
&nbsp;&nbsp;&nbsp;width: 80%;<br />
&nbsp;&nbsp;&nbsp;height: 19px;<br />
&nbsp;&nbsp;&nbsp;background: url(files/scrollbar-left.png) no-repeat top left,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url(files/scrollbar-right.png) no-repeat top right,<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url(files/scrollbar-center.png) repeat-x;<br />
}<br />
</code></p>
<p>I also put a width of 100% on the containing div to allow for it to scale.</p>
<p><strong>Step 5: Capturing the touch gestures</strong><br />
I attempted to use jswipe for this to no avail.  So, my solution was to attach a couple events and code this without the help of a plugin. The key to this is 3 events: <strong>touchstart, touchmove, touchend.</strong> Here is how I utilized these:<br />
<code><br />
document.ontouchend = function() {<br />
&nbsp;&nbsp;&nbsp;//swipe left<br />
&nbsp;&nbsp;&nbsp;if( self.swipeLeft &#038;&#038; self.swipe ) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.moveTo(self.current-1);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$("div.slider").slider("moveTo", self.current, null, true);&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;//swipe right<br />
&nbsp;&nbsp;&nbsp;} else if(self.swipe) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.moveTo(self.current+1);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$("div.slider").slider("moveTo", self.current, null, true);<br />
&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
}</p>
<p>document.ontouchmove = function(e){<br />
&nbsp;&nbsp;&nbsp;//move only if you swipe across<br />
&nbsp;&nbsp;&nbsp;if( Math.abs(e.touches[0].pageX - self.startX) > 150 ) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if( (e.touches[0].pageX - self.startX) > 5 ) {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.swipeLeft = true<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} else {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.swipeLeft = false;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;self.swipe = true;<br />
&nbsp;&nbsp;&nbsp;}<br />
}</p>
<p>document.ontouchstart = function(e) {<br />
&nbsp;&nbsp;&nbsp;self.startX = e.touches[0].pageX;<br />
&nbsp;&nbsp;&nbsp;self.swipe = false;<br />
}<br />
</code></p>
<p>Basically this detects the range of your swipe and if it is from left to right large than 150 pixels it moves the images accordingly.  The ontouchend can be replaced with any function to perform the needed action.  The W3C has recently posted a link for touch events here: <a href="http://www.w3.org/TR/touch-events/">http://www.w3.org/TR/touch-events/</a></p>
<p><strong>Step 6: Deal with all the other browsers</strong><br />
Believe it or not, not every browser is equal, so to build out this I used the philosophy of progressive enhancement.</p>
<p>So here are some samples based on what features you have:</p>
<p>If you have no <strong>JavaScript</strong>, you get something similar to this:<br />
<a href="http://scottgale.com/blog/wp-content/uploads/2011/05/no-javascript-progressive-enhancement.jpg"><img src="http://scottgale.com/blog/wp-content/uploads/2011/05/no-javascript-progressive-enhancement.jpg" alt="CSS Coverflow No JavaScript Fallback" title="No Javascript Progressive Enhancement View" width="600" height="123" class="alignnone size-full wp-image-357" /></a></p>
<p>Running <strong>IE7</strong>, you get something like this:<br />
<a href="http://scottgale.com/blog/wp-content/uploads/2011/05/ie7-coverflow.jpg"><img src="http://scottgale.com/blog/wp-content/uploads/2011/05/ie7-coverflow.jpg" alt="IE7 CSS Coverflow" title="ie7-coverflow" width="600" height="196" class="alignnone size-full wp-image-362" /></a></p>
<p>Running <strong>FF</strong>, you get something like this:<br />
<a href="http://scottgale.com/blog/wp-content/uploads/2011/05/firefox-css-coverflow.jpg"><img src="http://scottgale.com/blog/wp-content/uploads/2011/05/firefox-css-coverflow.jpg" alt="FireFox CSS Coverflow Image" title="firefox-css-coverflow" width="600" height="209" class="alignnone size-full wp-image-358" /></a></p>
<p><strong>Step 7: Rejoice! You made it.</strong><br />
There are a number of great techniques used for this all rolled into one.  <strong>CSS -webkit-box-reflect, CSS RotateY, multiple background attachments, touchstart, touchmove, touchend</strong>, and browser compatibility handling.  These are exciting new additions to browser technology.  Browsers are evolving to make our tasks as designers and developers easier.  It&#8217;s an exciting time to be a web developer.</p>
]]></content:encoded>
			<wfw:commentRss>http://scottgale.com/blog/coverflow-css-3d-transforms/2011/05/24/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>QR Generator</title>
		<link>http://scottgale.com/blog/qr-generator/2011/01/20/</link>
		<comments>http://scottgale.com/blog/qr-generator/2011/01/20/#comments</comments>
		<pubDate>Thu, 20 Jan 2011 00:23:19 +0000</pubDate>
		<dc:creator>Scott Gale</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://scottgale.com/blog/?p=329</guid>
		<description><![CDATA[A QR Code is a two-dimensional code, readable by QR scanners, mobile phones with a camera, and smartphones. Text, Data, and most importantly URLs can be encoded onto these codes. QR codes are growing in popularity.  As I work on a post outlining the features, pitfalls, when to use, and when not to use, I [...]]]></description>
			<content:encoded><![CDATA[<p>A QR Code is a two-dimensional code, readable by QR scanners, mobile phones with a camera, and smartphones.  Text, Data, and most importantly URLs can be encoded onto these codes.  QR codes are growing in popularity.  As I work on a post outlining the features, pitfalls, when to use, and when not to use, I thought it would be worth posting an easy QR generator in case anyone wants to try these out.</p>
<p><iframe src="/blogsamples/qrcodes/qrcodes.html" width="600" height="300"></iframe></p>
<p>For a QR iPhone Reader I use this one: http://itunes.apple.com/us/app/scan/id411206394?mt=8<br />
But if you are looking for a QR reader that has more options, copy to clipboard etc, try: http://itunes.apple.com/us/app/qr-scanner/id377643590?mt=8</p>
]]></content:encoded>
			<wfw:commentRss>http://scottgale.com/blog/qr-generator/2011/01/20/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why JavaScript Pop Ups are Evil</title>
		<link>http://scottgale.com/blog/why-javascript-popups-are-evil/2011/01/02/</link>
		<comments>http://scottgale.com/blog/why-javascript-popups-are-evil/2011/01/02/#comments</comments>
		<pubDate>Sun, 02 Jan 2011 17:23:20 +0000</pubDate>
		<dc:creator>Scott Gale</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://scottgale.com/blog/?p=317</guid>
		<description><![CDATA[For over a decade of website design, Pop-Ups have been finding their way onto websites of all kinds. Anything from the giant click here flashing button that pops up a new window to embedded aggressive pop ups with questionable means have forced us users to constantly hit the close button. I have to admit, I [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://scottgale.com/blog/wp-content/uploads/2011/01/bounce-rate.png"><img class="alignnone size-full wp-image-320" title="bounce-rate" src="http://scottgale.com/blog/wp-content/uploads/2011/01/bounce-rate.png" alt="" width="166" height="159" /></a>For over a decade of website design, Pop-Ups have been finding their way onto websites of all kinds.  Anything from the giant click here flashing button that pops up a new window to embedded aggressive pop ups with questionable means have forced us users to constantly hit the close button.  I have to admit, I have built my share of sites that have embedded pop ups.  Why have I done this?  Well because I was a party to a project where the client communicator, whether that be the project manager, or just their account representative was unable to steer them away, even though every usability fiber of their being was screaming &#8220;Bad Idea!&#8221;.  Today I arm you with the logic to build a successful argument against why poorly executed pop-ups are not only a bad usability experience but can negatively impact the user experience and quality conversion.  And, if you are a client wanting pop-ups or some variant, listen up!</p>
<p><strong>Poor User Experience</strong><br />
Autotrader, Amazon, Google, Zappos why have they all given up the landing page pop-up?  It seems obvious doesn&#8217;t it?  User experience.  When a user lands on your site they have a very specific goal in mind.  Every site is different, every site has its own set of goals, and its own set of needs that it can fulfill for the user.  We know that for many inventory-driven sites, the user will go immediately to inventory and narrow inventory items into manageable chunks.  One user that lands on your site might be looking for the service phone number, while one user might be interested in the BMW 3-Series with the Sport Package.  When a user lands on your site, you need to fulfill these needs as quickly as possible.  You MUST organize what they see into manageable chunks of information (7 items or less if I had to put a number on it) so that they can get to where they are going with the least amount of resistance.  This basic philosophy is what increases conversion and fulfills the overall goals of the site.  This has been proven time and time again.</p>
<p>When pop-ups are used on a landing page as an onLoad event, this throws all these fundamentals right out the window.  When you take over the page, or pop-up a layer that forces the user to interact with whatever comes into the forefront you are not satisfying the users needs.  It is merely a distraction for over 80% of the people that have a different goal in mind than what you are popping into their face.  Yes, if you pop-up, say, a car special, into someone&#8217;s face, you will get more leads for that specific special, but at what cost? You will be passing up a much better and more important conversion when a user finds exactly what they are looking for.  You are also going to lose a lot more people when they bounce.</p>
<p><strong>Some Stats on Pop Ups and Bounce Rates</strong><br />
So here is the nitty gritty.  In March (of 2010) I started tracking the amount of time it takes for users to close pop-ups across thousands of sites that we run at Dealer.com.  The result?  7 months has shown that the most common time it takes to close the pop-up is 3 seconds.  This is basically (with the load time included) the amount of time it takes for the user to find and click on the close button.  We can see from this observation that we are creating a barrier to satisfying the users needs.</p>
<p>Recently I ran a test to prove another hypothesis.  That the bounce rate would actually increase when adding a pop-up.  I ran the a/b test over the period of a month and found the following:</p>
<p>Test: A/B pop-up<br />
Bounce Rate without the pop up: 28.62%<br />
Bounce Rate with pop up: 31.75%</p>
<p>So we can see that there was a 3.13% increase in the bounce rate while the pop-up was added.</p>
<p><strong>Just Pop-Ups?</strong><br />
You might hear a lot, &#8220;well this implementation is different.&#8221;.  Lots of other proposals occur around taking over the page with an interactive advertisement etc.  Remember, these are pop-ups in disguise!  In fact, they may be worse because it will take the user longer to find the close button!  Take some time and think about the user experience and conversion.  Apply the understanding of the stats and the arguments above to come to the right conclusion that benefits everyone.  A great replacement to the pop up is allowing for a promotional area on the site to feature the appropriate item of interest AND MAKE SURE IT LINKS TO SOMETHING.  That way if the user does like what they see, they can click and find more information, but they don&#8217;t have to click to close it to get to where they need to go.</p>
<p><strong>Conclusion</strong><br />
Pop-Ups will get you more leads for a specific event at the cost of impacting other conversion areas and impacting the user experience.  Do your best to help your client realize this before they make a mistake that will cost them money.  As the web developer or project manager you want to make sure that you advise your client to make positive strides toward their online marketing presence.  Don&#8217;t be afraid to suggest alternative approaches such as a promotional area on the landing page.  As a client, web developer, project manager, and anyone involved in making an online marketing presence: put the user first and how your site helps them, conversion and great success will follow!</p>
]]></content:encoded>
			<wfw:commentRss>http://scottgale.com/blog/why-javascript-popups-are-evil/2011/01/02/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Internet Explorer 6 and the Universal Stylesheet</title>
		<link>http://scottgale.com/blog/internet-explorer-6-the-universal-stylesheet/2010/11/01/</link>
		<comments>http://scottgale.com/blog/internet-explorer-6-the-universal-stylesheet/2010/11/01/#comments</comments>
		<pubDate>Mon, 01 Nov 2010 00:16:52 +0000</pubDate>
		<dc:creator>Scott Gale</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://scottgale.com/blog/?p=289</guid>
		<description><![CDATA[Anyone who has done any website development in the last decade knows the web developers worst enemy.  It&#8217;s a browser plagued by security Issues, compatibility problems, poor build efficiency, and slow render times.  It&#8217;s a browser that came out 9 years ago but just hasn&#8217;t fully gone away.  Yes, you guessed it, it&#8217;s Internet Explorer [...]]]></description>
			<content:encoded><![CDATA[<p>Anyone who has done any website development in the last decade knows the web developers worst enemy.  It&#8217;s a browser plagued by security Issues, compatibility problems, poor build efficiency, and slow render times.  It&#8217;s a browser that came out 9 years ago but just hasn&#8217;t fully gone away.  Yes, you guessed it, it&#8217;s Internet Explorer 6.  In this article I will present all the problems and some real solutions for the browser that just won&#8217;t die, so that my fellow web developers can present a convincing argument to rid ourselves of the IE6 dependencies once and for all.  By using Google Chrome Frame, serving the Universal Stylesheet, and setting client expectations we can get some real solutions together for moving the web forward.<br />
<br/><strong>The Problems</strong><br />
<strong>Compatibility</strong><br />
Web Development is surging forward at an incredibly rapid pace.  With the emergence of CSS3 and HTML5 a lot of common older front-end issues have been solved.  Chrome, FireFox, and Internet Explorer are all working to ensure the best compatibility with what the W3C has put forth.  So where is IE6 in all of this?  Nowhere.  There is no support for CSS3 and HTML5, and why should there be?  Microsoft built this browser in 2001, NINE years ago, (thats 200 in internet years.)  So to experience the web as best as we can, we have to move forward.<br />
<strong>My old web app only works in IE6</strong><br />
Wow, so you haven&#8217;t done any new development in 9 years to correct this?  Yikes first of all.  Statistics show that IE6 usage is higher during the week than the weekend.  Which points to employers still forcing IE6 browser usage on employees.<br />
<strong>Efficiency</strong><br />
Time spent for (IE7, IE8, IE9, FF, Chrome, and Mobile) = Time spent for IE6.<br />
Given any web project, it takes a front-end web developer the same amount of time to develop a site for IE7, IE8, IE9, FF, Chrome, and Mobile as it does for JUST IE6.  This is because of the number of incompatibility issues, hacks, wrangling and just general lack of support that IE6 has.  This creates a huge waste of time for all companies attempting to make things look identical in this browser.  It&#8217;s time to get rid of this, so we can take the web forward.<br />
<strong>Speed</strong><br />
IE6&#8242;s rendering engine is so incredibly slow that even the Google Chrome Frame plugin layer, running on top of IE6 executes the loading of the page faster than IE6&#8242;s native rendering engine.  This problem is exacerbated further by companies trying to make advanced web techniques work in this ancient rendering engine.<br />
<br/><strong>The Solutions</strong><br />
<strong>Google Chrome Frame</strong><br />
This doesn&#8217;t solve everything, but it is very important that IT professionals take the time to understand how this works, because it is a very mis-understood piece of software.  The only time this plugin runs, is if the website you are browsing has the appropriate meta information that tells the plugin to launch.  So it is a perfect scenario if you are an IT person and you have to have your users running IE6 still.  This is because a user on your network running IE6 will run in IE6 mode until they go to a site that says &#8220;launch chrome frame&#8221; at which point it will switch over to a much better browser with standards support that doesn&#8217;t suffer from all the problems listed above.<br />
<strong>Serve the Universal Stylesheet</strong><br />
Andy Clarke has come up with a great solution for IE6&#8242;s problems: the Universal Stylesheet.  The universal stylesheet applies a simplified layer to the content so that IE6 renders content quickly.  It slims down the page significantly and allows for pure content.  This works under the principal that content is king and that by allowing for just pure content makes the browsing experience faster and gets the user to where they need to go quick.  In fact, on the sites where I have served the Universal Stylesheet the bounce rate of IE6 vs other browsers has been only a nominal +5% differential.  Andy Clarke&#8217;s universal stylesheet info can be found here: <a href="http://forabeautifulweb.com/blog/about/universal_internet_explorer_6_css/">For a beautiful web.</a><br />
<strong>Set Client Expectations</strong><br />
Make sure that your client knows up-front that IE6 will not look the same as modern &#8220;Grade A&#8221; browsers.  It&#8217;s a good idea to build this into the contract.  In all cases where I have said this, clients have been ok with this.  If a discussion ensues then I hope that the points I have brought up here help to relay the problems and solutions.  Make sure they understand that IE6&#8242;s browser share is low and rapidly decreasing.  IE6 makes up 6% of web traffic.  Over the past year IE6&#8242;s browser share has dropped over 40% and continues to fall.</p>
<p>To all website clients out there; Google, Amazon, YouTube, Facebook, have all dropped support in different areas of their systems for IE6.  IE6 is dying, few people use it anymore and fewer still will use it next month.  More and more people are shifting to modern browsers and mobile options with excellent web standards support.  As web developers we are focusing on the now and on the future for you.  Let us do that, and put the past behind us.</p>
<p>To my fellow web developers; It&#8217;s time to stand up and rid ourselves of this browser.  This article outlines the necessary steps going forward for how, learn the techniques and use them, lets take the web forward and make our departments and jobs more efficient.<br />
﻿</p>
]]></content:encoded>
			<wfw:commentRss>http://scottgale.com/blog/internet-explorer-6-the-universal-stylesheet/2010/11/01/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>IE 9 and the Future of Web Standards</title>
		<link>http://scottgale.com/blog/ie-9-and-the-future-of-web-standards/2010/05/11/</link>
		<comments>http://scottgale.com/blog/ie-9-and-the-future-of-web-standards/2010/05/11/#comments</comments>
		<pubDate>Tue, 11 May 2010 00:21:05 +0000</pubDate>
		<dc:creator>Scott Gale</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://scottgale.com/blog/?p=273</guid>
		<description><![CDATA[Recently it was announced that for the first time in over a decade Internet Explorers global market share has dropped below 60%.  Although in my personal experience the stats don&#8217;t reflect that, it is an important moment for web developers.  At one point in history (not long ago) when you asked most web developers what [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://scottgale.com/blog/wp-content/uploads/2010/05/internet-explorer-9-homepage.png"><img class="alignnone size-full wp-image-284" title="internet-explorer-9-homepage" src="http://scottgale.com/blog/wp-content/uploads/2010/05/internet-explorer-9-homepage.png" alt="Internet Explorer 9 Homepage, IE9" width="410" height="259" /></a>Recently it was announced that for the first time in over a decade Internet Explorers global market share has dropped <a href="http://arstechnica.com/microsoft/news/2010/05/chrome-continues-surge-as-ie-drops-below-60-market-share.ars" target="_blank">below 60%</a>.  Although in my personal experience the stats don&#8217;t reflect that, it is an important moment for web developers.  At one point in history (not long ago) when you asked most web developers what browser to install, the answer would invariably come back; FireFox.  Interestingly though, FireFox has plateaued a bit, and WebKit based browsers are now impinging the dominant IE market share.  We&#8217;ve seen an emergence of WebKit based browsers, especially Chrome in recent statistics.  This is widely attributed to the simple fact that Chrome focused on the two things that people really care about on the web; <strong>speed</strong> and <strong>standards support</strong>.</p>
<p>This trending competition in the browser space is a great thing.  Nobody wants innovation stunted by having everyone dependent on one browser.  Web standards are a great thing as well,  because it enables proper content delivery to all, no matter the browsing engine.  Here is where the philosophy of Google, Microsoft, and Mozilla have combined: The &#8220;Same markup&#8221; notion.  This is where both competition and web standards can flourish.  All these companies have recently stated the philosophy of code rendering the same way, no matter what browser you are in.  You may be browsing using the Trident rendering engine for <a href="http://blogs.msdn.com/ie/archive/2010/05/05/html5-and-same-markup-second-ie9-platform-preview-available-for-developers.aspx" target="_blank">IE9</a> or the WebKit rendering engine for Chrome and <a href="http://www.apple.com/hotnews/thoughts-on-flash/">Safari</a>.</p>
<p>The problem is when reality catches up with us.  Lets face it, Microsoft has never been that great about web standards.  FireFox has found it&#8217;s niche but there are still subtle differences between Mac and PC in rendering.  The WebKit rendering engine has different versions for Chrome, Safari, and mobile.  It is my hope that these companies working together with the w3c can help developers to solve some of these problems and bring website development into a more mature environment.</p>
<p>Microsoft released the <a href="http://ie.microsoft.com/testdrive/">second developer platform preview</a> for IE9 this month.  They have been working with the w3c to add and support the standards.  They have been quite involved, but previously, even after being involved they did not support a number of standards.  Why will this round be different?  It appears they are more engaged.  When I head to &#8220;An Event Apart&#8221; in two weeks, Microsoft is speaking on how to kill IE6.  They are there speaking to the web developer community and with the w3c.  When I tested IE 9 this week I noticed that it does have a few encouraging signs of progress:</p>
<p>1. IE9 now supports the use of CSS3 selectors.  When I tested this on <a href="http://www.css3.info/" target="_blank">CSS3.info</a> I confirmed that all of the selectors were supported.<br />
2. IE9 supports <a href="http://ie.microsoft.com/testdrive/HTML5/01BorderRadius/Default.html">CSS3 rounded corners</a>!  Thank the lord!  It&#8217;s about time.  Where are you guys on box-shadow?</p>
<p><a href="http://scottgale.com/blog/wp-content/uploads/2010/05/scottgale-ie9.png"><img class="alignnone size-thumbnail wp-image-274" title="ie9 screenshot" src="http://scottgale.com/blog/wp-content/uploads/2010/05/scottgale-ie9.png" alt="Internet Explorer 9 rendering ScottGale.com" width="150" height="106" /></a>I have included a screen shot of <a href="http://scottgale.com/blog/">scottgale.com</a> rendering on IE9 with a couple tweaks.  Still no drop-shadow, but I do get some corner rounding, which is a big start.  You can see that it is picking up the rounding for the select boxes, the submit button, and the bottom corners.</p>
<p>They also mention that they support CSS3 media queries for mobile, netbooks, and full desktops.  However,  my dream would be that these are not necessary.  I see this as a baby step for Microsoft in the right direction, hopefully they can keep that going.</p>
<p>In the spirit of competition and standards, these companies need to come together and do what is best for web developers.  If these companies can&#8217;t pull together the &#8220;Same markup&#8221; philosophy then don&#8217;t expect developers to get behind the spirit of browser competition.  What will happen is everyone will start touting a single browser that is fast and supports web standards.  For Microsoft with their sliding browser percentage, it&#8217;s time to step up and help improve the lives of the web developers and the end users.  It&#8217;s time for all the companies to come together and make real web standards happen.</p>
]]></content:encoded>
			<wfw:commentRss>http://scottgale.com/blog/ie-9-and-the-future-of-web-standards/2010/05/11/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Best iPad Apps Roundup</title>
		<link>http://scottgale.com/blog/best-ipad-apps-roundup/2010/05/08/</link>
		<comments>http://scottgale.com/blog/best-ipad-apps-roundup/2010/05/08/#comments</comments>
		<pubDate>Sat, 08 May 2010 16:40:05 +0000</pubDate>
		<dc:creator>Scott Gale</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[best ipad apps]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[ipad apps]]></category>
		<category><![CDATA[touch interface]]></category>

		<guid isPermaLink="false">http://scottgale.com/blog/?p=223</guid>
		<description><![CDATA[So now that both the iPad and the iPad 3G are out, I thought I would post a roundup of the best iPad apps out there that I&#8217;ve found.  I know there is a lot of curiosity around the potential of the iPad and its interface.  I would love to hear from other people what [...]]]></description>
			<content:encoded><![CDATA[<p>So now that both the iPad and the iPad 3G are out, I thought I would post a roundup of the best iPad apps out there that I&#8217;ve found.  I know there is a lot of curiosity around the potential of the iPad and its interface.   I would love to hear from other people what apps they have enjoyed.</p>
<p><strong><a href="http://scottgale.com/blog/wp-content/uploads/2010/05/evernote1.png"><img class="alignnone size-full wp-image-254" title="Evernote-iPad" src="http://scottgale.com/blog/wp-content/uploads/2010/05/evernote1-e1273332981755.png" alt="Evernote iPad App" width="149" height="112" /></a>Evernote</strong> &#8211; This is one of the best apps ive ever used.  In fact, the draft for this post was typed on the iPad in Evernote.  It syncs all your notes and documents with your iphone, ipad, and computer.  Making sure that anytime a new though jumps into your head you have a place to stay organized.  Creativity doesn&#8217;t just happen 9-5, Monday &#8211; Friday, so it&#8217;s nice to have your thoughts in sync.</p>
<p><a href="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0009-e1273328560389.png"><img class="alignnone size-thumbnail wp-image-232" title="Marvel-iPad-App" src="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0009-e1273328560389-150x150.png" alt="Marvel iPad App Screenshot" width="150" height="150" /></a><strong>Marvel</strong> &#8211; This app represents one of the great points of differentiation between the iPad and the Kindle.  The Kindle is great for books, but for news and things like comics it was always a problem.  The iPad&#8217;s capability really kicks up the options for those categories.  As an added bonus, Marvel allows you to download some of their classic comics for free.  There is another app called &#8220;Comics&#8221; if you aren&#8217;t happy with just Marvel.</p>
<p><strong><a href="http://scottgale.com/blog/wp-content/uploads/2010/05/npr.png"><img class="alignnone size-thumbnail wp-image-257" title="NPR-iPad" src="http://scottgale.com/blog/wp-content/uploads/2010/05/npr-150x150.png" alt="NPR iPad App" width="150" height="150" /></a>NPR</strong> &#8211; Great app for news buffs.  NPR posts great articles that are  excellent to read on the crystal clear iPad screen.  One of the cooler  features of this app, however, is that you can stream your favorite  shows from NPR right to the iPad on demand.</p>
<p><strong>AIM</strong> &#8211; I can&#8217;t show a screenshot of this one without having to blur out everyone&#8217;s Facebook comments and my AIM buddy list.  For me, the instant messaging client is a necessity for work  communication, so that is a major part of why it made my list.  This app is a pretty standard AIM client but nice to  have nonetheless.  The app has &#8220;Lifestream&#8221; which will aggregate your  social activity but I prefer hootsuite for my social aggreation.</p>
<p><strong><a href="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0011.png"><img class="alignnone size-thumbnail wp-image-230" title="Pandora-iPad" src="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0011-150x150.png" alt="Pandora iPad Screenshot" width="150" height="150" /></a>Pandora</strong> &#8211; Standard Pandora app with an iTunes looking interface.  I&#8217;m a Pandora fan.  I haven&#8217;t found any limitations in this application versus the full web version yet.  The expandable menu for each song allows you to bookmark the song or the artist.  There is also an option to buy the song direct from iTunes or search the artist in iTunes which I find handy if you have interest in the songs you are hearing.  It is a bummer that since there is no multitasking, once you start browsing for the artist in iTunes, the iPad has to stop playing Pandora.  One other thing that I noticed is you can&#8217;t delete a station if you accidentally add one which is easy to do with the sensitive touch interface.</p>
<p><a href="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0001.png"><img class="alignnone size-thumbnail wp-image-240" title="WordsHD-iPad" src="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0001-150x150.png" alt="Words HD iPad App" width="150" height="150" /></a><strong>Words HD</strong> &#8211; Scrabble with a luxurious board compared to the iPad&#8217;s tiny cousin the iPhone.  I wonder if I&#8217;m getting an unfair advantage playing on the &#8220;big screen&#8221;.  It&#8217;s a great way to stay in touch with the family if you were scrabble opponents as kids like mine was.  Plus, you might learn something.  One down side of words is that you never get penalized for playing incorrect words, so you can try combinations until you&#8217;re blue in the face.  Scrabble also makes an application for $9.99 that I haven&#8217;t tried yet.  It would really be nice to play against more than just one person.</p>
<p><a href="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0012.png"><img class="alignnone size-thumbnail wp-image-229" title="Molecules" src="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0012-150x150.png" alt="" width="150" height="150" /></a><strong>Molecules</strong> &#8211; This one is an install and forget it sort of thing.  It is fun to play with for about 10 minutes and think of doctors using the iPad to enhance their general diagnosis capabilities.  There are molecule setting options for DNA, Acetylcholinesterase, Insulin, and TRNAPHE.  The application also offers different views (I prefer the cylinder view myself).  If you are in the medical field there is one very cool thing you can do with this.  This application connects to the RCSB Protein Data Bank.  In a matter of minutes I was able to download the Crystal Structure of the 2009 H1N1 virus, view, and rotate on the screen, pretty cool.</p>
<p><a href="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0003.png"><img class="alignnone size-thumbnail wp-image-238" title="Netflix-iPad" src="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0003-150x150.png" alt="Netflix iPad App" width="150" height="150" /></a><strong>Netflix</strong> &#8211; I love being able to stream high quality movies using the Netflix app.  I watched one over WiFi that looked amazing.  When you watch movies over 3G Netflix downsamples the stream.  The 3G at my house using full bars was noticeably slower when browsing movies and loading the app.  The video quality was not great and jerky in parts, but you&#8217;re watching a streaming movie from the cell towers so, not quite there yet.  I think AT&amp;T is a tad deluded about their network capability but that is a separate post.</p>
<p><strong>SugarSync</strong> &#8211; Even though there is no accessible file system on the iPad I sync my documents to the cloud via SugarSync.  The files you sync to SugarSync can be viewed and emailed to others using their iPad app.  Dropbox is also on this bandwagon.  Make&#8217;s it easy to be sure you have access to your important files anywhere.  I tested viewing docx and xlsx files and it worked fine.  It does not allow you to edit the documents however.</p>
<p><a href="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0015.png"><img class="alignnone size-thumbnail wp-image-226" title="Labyrinth-iPad" src="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0015-e1273328984588-112x150.png" alt="Labyrinth iPad Application" width="112" height="150" /></a><strong>Labyrinth 2 HD </strong>- Fun game to try out the gyroscope.  This has a multiplayer option and is made by Illusion Labs, the same company that coded the Skateboarding came Touch/Grind HD.  This game has a lot of features for encouraging social engagement through multiplayer, online browsing, and level creation, but really I just tried the single player levels.  It takes a little while to get the hang of all the new obstacles that are in this, but once you get past that it is pretty fun, a tutorial will take you through the basics.</p>
<p><strong>ABC</strong> &#8211; Stream ABC shows, although it crashed my iPad a couple times.</p>
<p><a href="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0007.png"><img class="alignnone size-thumbnail wp-image-234" title="Yahoo-iPad" src="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0007-150x150.png" alt="Yahoo Entertainment iPad Application" width="150" height="150" /></a><strong>Yahoo  Entertainment</strong> &#8211; I have multiple TVs in the house and only 1 has a  cable box.  This is a great TV guide if you have analog TVs in the house  or don&#8217;t want use the guide.  This has some other features, such as,  video on demand for news and sports.  It also has entertainment news in a  format that I&#8217;m not crazy about.  I personally am just using this for  the guide capability.  One of the really handy features of the guide is  the &#8220;Show Details&#8221; option.  By using this you can click on a show and  see all the information about all the shows in the season, so if you are  coming in mid-stream, you can see where the season is at with respect  to the story line.</p>
<p><a href="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0008-e1273329467861.png"><img class="alignnone size-thumbnail wp-image-233" title="Weather-iPad" src="http://scottgale.com/blog/wp-content/uploads/2010/05/IMG_0008-e1273329467861-150x150.png" alt="Weather iPad App" width="150" height="150" /></a><strong>The Weather Channel</strong> &#8211; Nice array of weather functionality and views.  The app utilizes the iPad&#8217;s location services and can do multiple map overlays including clouds and radar.  I personally never really trust weather reports so its nice to be able to play back the radar and see what is actually about to happen.  This app also offers a streaming video weather reports, but the local reports are pretty robotic.</p>
<p><a href="http://scottgale.com/blog/wp-content/uploads/2010/05/homescreen1-e1273335241732.png"><img class="alignnone size-full wp-image-262" title="iPad-Home-Screen" src="http://scottgale.com/blog/wp-content/uploads/2010/05/homescreen1-e1273335241732.png" alt="iPad Home Screen, iPad Image" width="149" height="193" /></a>These are my favorite apps that I have dug up so far.  You might be asking, where are Facebook, Hootsuite, LinkedIn, Google Docs, and Google Voice.  If you look at my home screen you&#8217;ll notice that I have a few of those on there.  However, these are simply Safari home screen links to the respective sites.  I&#8217;ve found that for the most part all those items listed above work fine for the iPad using their straight up web browser modes.  Facebook has a link for touch devices called <a href="http://touch.facebook.com/">touch.facebook.com</a> but I find I just end up using the actual full site.<br />
So for these there aren&#8217;t apps for them, but are apps needed?  The beauty of the iPad is that standard websites with no browser plugins work great.</p>
<p><strong>Apps I tried and didn&#8217;t love:</strong></p>
<p>For both Amazon and Kayak the search functionality is quite a bit more limiting than on the actual site, and both their full sites work fine on the iPad.  So from my perspective there is no real point in having an app for those, but if you do build an app, it needs to be able to reproduce the search criteria.  It&#8217;s the same problem on the iPhone but the point for simplicity is a little more arguable for the iPhone due to the form factor.  For Twit Touch &#8211; I love the TWIT network but this app keeps crashing my iPad.  It&#8217;s nice to be able to watch streaming live TWIT shows, but I really need more stability from that app.</p>
<p>So there is my first roundup.  Looking forward to what gets built in the future.  Please comment and let me know some great apps that you have found.</p>
]]></content:encoded>
			<wfw:commentRss>http://scottgale.com/blog/best-ipad-apps-roundup/2010/05/08/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>How to build a WordPress HTML5 theme</title>
		<link>http://scottgale.com/blog/how-to-build-a-wordpress-html5-theme/2010/04/22/</link>
		<comments>http://scottgale.com/blog/how-to-build-a-wordpress-html5-theme/2010/04/22/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 02:45:05 +0000</pubDate>
		<dc:creator>Scott Gale</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[web standards]]></category>

		<guid isPermaLink="false">http://scottgale.com/blog/?p=160</guid>
		<description><![CDATA[iPhone, iPad, video HTML5 deployment, Webkit, Chrome, Safari, web standards, canvas elements, and disappearing flash support.  These are just a few of the many reasons to explore HTML5 and its capability.  Add WordPress, a very customizable system that allows skinning of the underpinning code in order to achieve the desired result and you get a [...]]]></description>
			<content:encoded><![CDATA[<p>iPhone, iPad, video HTML5 deployment, Webkit, Chrome, Safari, web standards, canvas elements, and disappearing flash support.  These are just a few of the many reasons to explore HTML5 and its capability.  Add WordPress, a very customizable system that allows skinning of the underpinning code in order to achieve the desired result and you get a great basic test case for HTML5.</p>
<p>What follows is quick synopsis of how to setup an HTML5 WordPress skin and some of the benefits this brings:</p>
<p>To start, I setup basic HTML5 markup.  Utilizing new tags.  Here is what the structure looks like:<br />
<a href="http://scottgale.com/blog/wp-content/uploads/2010/04/html5-layout-sm.png"><img class="alignnone size-full wp-image-162" style="float: none;" title="html5-layout-sm" src="http://scottgale.com/blog/wp-content/uploads/2010/04/html5-layout-sm.png" alt="" width="400" height="519" /></a></p>
<p>Using this basic system as a framework, I added <a title="microformats" href="http://scottgale.com/blog/microformats-and-seo/2010/03/18/">microformats</a> to the header and footer for human and machine readable information.  You can view the source and search for &#8220;vcard&#8221; to see my microformat header.</p>
<p>Next, I started utilizing some of the great things that HTML5 and CSS3 have to offer.  HTML5 has new form field types that work well for the iPad, iPhone, and Webkit.  In other browsers they fall back to be standard text input fields so it&#8217;s not a problem to use them in general markup, even for IE6 (everyones favorite).  Here is a breakdown of some of the new HTML5 form fields:<br />
<strong>&lt;input type=&#8221;search&#8221; placeholder=&#8221;SEARCH&#8221; value=&#8221;"/&gt;</strong><br />
<span style="font-weight: normal;">The new search input type has a really cool attribute called &#8220;placeholder&#8221;.  Placeholder is a value that disappears when the form field focuses, a function that we no longer have to emulate with JavaScript on browsers that support this.  The type search also tells the iPhone, iPad, and future dynamic keypads to use a different &#8220;enter&#8221; key.  Note how the iPad shows &#8220;Search&#8221; on the keyboard:<br />
<a href="http://scottgale.com/blog/wp-content/uploads/2010/04/html5-search.jpg"><img class="alignnone size-full wp-image-166" style="float: none;" title="html5-search" src="http://scottgale.com/blog/wp-content/uploads/2010/04/html5-search.jpg" alt="" width="264" height="340" /></a> </span><br />
<strong>&lt;input type=&#8221;email&#8221;/&gt;</strong><br />
This field type also tells mobile devices to change their keyboard accordingly.  Here is an example of the iPad keyboard with this field type:<br />
<a href="http://scottgale.com/blog/wp-content/uploads/2010/04/html5-email1.jpg"><img class="alignnone size-medium wp-image-182" style="float: none;" title="html5-email" src="http://scottgale.com/blog/wp-content/uploads/2010/04/html5-email1-232x300.jpg" alt="" width="232" height="300" /></a><br />
<strong>&lt;input type=&#8221;url&#8221;/&gt;</strong><br />
This field type also tells mobile devices to change their keyboard accordingly.  Here is an example of the iPad keyboard with this field type:<br />
<a href="http://scottgale.com/blog/wp-content/uploads/2010/04/html5-url.jpg"><img class="alignnone size-medium wp-image-170" style="float: none;" title="html5-url" src="http://scottgale.com/blog/wp-content/uploads/2010/04/html5-url-232x300.jpg" alt="" width="232" height="300" /></a><br />
<a href="http://scottgale.com/blog/wp-content/uploads/2010/04/html5-url.jpg"></a></p>
<p>Now its time to add the CSS.  Using CSS3 for rounded corners, drop shadows, and gradients, quickly eliminates the need for extra divs, classes, and most importantly, <strong>images</strong>.  I used these styles to do the buttons, the input fields, header and footer styling, and even the background.  Here are some of the basic CSS3 styles used:</p>
<pre>/* create the body gradient */
body {</pre>
<pre>	background: -moz-linear-gradient(top, #fff, #ccc);
	background: -webkit-gradient(linear, center top, center bottom, from(#fff), to(#ccc));
}</pre>
<pre>/* do the rounded corners and drop shadow on the header */
header {
	-moz-border-radius-topleft:8px;
	-webkit-border-top-left-radius:8px;
	-moz-border-radius-topright:8px;
	-webkit-border-top-right-radius:8px;
	-moz-box-shadow: 0px 0px 3px rgba(0, 0, 0, 1);
	-webkit-box-shadow: 0px 0px 3px rgba(0, 0, 0, 1);
	box-shadow: 0px 0px 3px rgba(0, 0, 0, 1);
}</pre>
<pre>/* create the button for form submission and search submission */
form .submit {
	background: -moz-linear-gradient(top, #073842, #000);
	background: -webkit-gradient(linear, center top, center bottom, from(#073842), to(#000));
}</pre>
<p>With these styles it&#8217;s quick, easy, and image free to do what use to be a much more arduous process for many of us.</p>
<p><strong>Now you&#8217;re all done except for IE</strong></p>
<p>Now that the markup is in place and the styles are in place.  We have to make it work for lesser browsers that can&#8217;t handle new standards (aka IE).  There seems to be a misconception out there that this is difficult, but it is actually a few simple steps.  For my blog I conceded that there would be some degradation of the look for browsers that don&#8217;t support CSS3 so that makes life easier, and of course it may be a luxury not everyone can afford.</p>
<p>IE Step 1: Add support for styling of the HTML5 tags<br />
To do this, all we have to do is include a JS file called <a href="http://code.google.com/p/html5shiv/" target="_blank">html5shiv</a> hosted on googlecode.com.  This in essence does a document.createElement and a few other things to get IE to recognize the HTML5 elements.  We can wrap this in conditional comments because it is only required for IE.</p>
<pre>&lt;!--[if lte IE 9]&gt;
&lt;script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"&gt;&lt;/script&gt;
&lt;![endif]--&gt;</pre>
<p><strong>IE Step 2: IE specific CSS</strong><br />
For any IE specific CSS that you want to do (I added a few different border treatments and color tones to make the site still look ok) add the IE specific CSS file.</p>
<p>So the sum of your checking for IE should look something like this:</p>
<pre id="line13">&lt;!--[if IE]&gt;
  &lt;script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"&gt;&lt;/script&gt;
  &lt;link rel="stylesheet" href="/blog/wp-content/themes/scottgale/style-ie.css" type="text/css" media="screen" /&gt;
&lt;![endif]--&gt;</pre>
<p>Make sure after you add this to validate your markup with the <a href="http://validator.w3.org/" target="_blank">w3c validator</a>.  It handles HTML5 quite well from my experience.</p>
<p><strong>And now your are done!</strong></p>
<p>I hope this helps everyone to explore this new web standard.  The blogosphere is an easy place to try this out and help perpetuate these ideas.  Please let me know if I need to explore any of these concepts in more detail for people.</p>
]]></content:encoded>
			<wfw:commentRss>http://scottgale.com/blog/how-to-build-a-wordpress-html5-theme/2010/04/22/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Custom HTML5 WordPress Skin Released!</title>
		<link>http://scottgale.com/blog/custom-html5-wordpress-skin-released/2010/04/19/</link>
		<comments>http://scottgale.com/blog/custom-html5-wordpress-skin-released/2010/04/19/#comments</comments>
		<pubDate>Mon, 19 Apr 2010 01:27:25 +0000</pubDate>
		<dc:creator>Scott Gale</dc:creator>
				<category><![CDATA[Tech]]></category>

		<guid isPermaLink="false">http://scottgale.com/blog/?p=157</guid>
		<description><![CDATA[I just released my custom HTML5 WordPress skin, and it is a relief to get back to being able to post after working on this. Over the course of working on this I found many new HTML5 tidbits that really help us struggling web developers. Over the next week I plan on highlighting some of [...]]]></description>
			<content:encoded><![CDATA[<p>I just released my custom HTML5 WordPress skin, and it is a relief to get back to being able to post after working on this.  Over the course of working on this I found many new HTML5 tidbits that really help us struggling web developers.</p>
<p>Over the next week I plan on highlighting some of the tech I used so keep an eye out for the next post.  Some cool stuff to mention:</p>
<ul>
<li>New Form Fields that preset iPhone and iPad entry according to field type.</li>
<li>New search field capability supported in Safari.</li>
<li>Only 8 images required to make the whole site, rest done with CSS3 gradients and rounded corners</li>
<li>Google Chrome Frame Support, making the web faster and removing IE 1 user at a time.</li>
<li>Google hosted code fix for IE</li>
<li>New tags such as section, article</li>
<li>Added microformat support</li>
<li>And many more, stay tuned..</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://scottgale.com/blog/custom-html5-wordpress-skin-released/2010/04/19/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Microformats and SEO</title>
		<link>http://scottgale.com/blog/microformats-and-seo/2010/03/18/</link>
		<comments>http://scottgale.com/blog/microformats-and-seo/2010/03/18/#comments</comments>
		<pubDate>Thu, 18 Mar 2010 02:08:03 +0000</pubDate>
		<dc:creator>Scott Gale</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[web standards]]></category>
		<category><![CDATA[machine-readable]]></category>
		<category><![CDATA[microformats]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[standards]]></category>

		<guid isPermaLink="false">http://scottgale.com/blog/?p=116</guid>
		<description><![CDATA[For a long time search engines have been making sense of a web development approach that doesn&#8217;t incorporate consistent markup for consistent items. Search engines have managed to do a great job with this, however, now we have the advantage of microformats and other Rich Snippets. With microformats we can make both machine readable and [...]]]></description>
			<content:encoded><![CDATA[<p>For a long time search engines have been making sense of a web development approach that doesn&#8217;t incorporate consistent markup for consistent items.  Search engines have managed to do a great job with this, however, now we have the advantage of microformats and other Rich Snippets.  With microformats we can make both machine readable and human readable code.  This concept will encourage SEO professionals to engage web developers as well as become more code savvy themselves.</p>
<p>Microformats are simple standardized ways of organizing website information.  Microformats have implications for web development standards, SEO, and application development around parsing website information.<br />
<a href="http://microformats.org/about"><img class="alignnone size-full wp-image-135" title="micro-diagram" src="http://scottgale.com/blog/wp-content/uploads/2010/03/micro-diagram.gif" alt="" width="445" height="213" /></a></p>
<p>Lately, there has been a lot of discussion around these snippets for SEO, geo tagging, etc.  I find this a bit ironic because they have been around for so long.  (The microformat search term on Google hit its peak in 2007.)  However, what hasn&#8217;t been around for very long is the Google adoption of all of these &#8220;Rich Text Snippets&#8221;.  The term Rich Text Snippets includes microformats, microdata, and RDFa&#8217;s.  I&#8217;ve seen some examples on the microformats blog and Google has been blogging about all the support they have been adding.  Google actually made some mistakes in their examples, but it looks like they corrected them.  So I thought I would outline my favorite examples of microformats to get that information out there.  Hopefully we can perpetuate the wide-spread use of these.</p>
<p>These are my favorite markup uses for each format:</p>
<p><strong>Review:</strong></p>
<pre>&lt;div class="hreview"&gt;
  &lt;span class="item"&gt;
    &lt;span class="fn"&gt;Scott Gale's Blog&lt;/span&gt;
  &lt;/span&gt;
  Reviewed by &lt;span class="reviewer"&gt;John Smith&lt;/span&gt; on
  &lt;span class="dtreviewed"&gt;
    Jan 6&lt;span title="2009-01-06" /&gt;
  &lt;/span&gt;.
  &lt;span class="summary"&gt;Love the website&lt;/span&gt;
  &lt;span class="description"&gt;
    I like your blog because it offers me, an SEM evangelist and
    sales guy, an insight into the world of technology from
    someone who understands the very essence of its infrastructure.
  &lt;/span&gt;
  Rating:
  &lt;span class="rating"&gt;4.5&lt;/span&gt;
&lt;/div&gt;</pre>
<p><strong>Person</strong></p>
<pre>&lt;div class="vcard"&gt;
  My name is
  &lt;span class="fn"&gt;Scott Gale&lt;/span&gt;,
  My blog url is:
  &lt;a href="http://scottgale.com/blog" class="url"&gt;scottgale.com/blog&lt;/a&gt;.
  I live in
  &lt;span class="adr"&gt;
    &lt;span class="locality"&gt;South Burlington&lt;/span&gt;,
    &lt;span class="region"&gt;VT&lt;/span&gt;
  &lt;/span&gt;
  and work as a
  &lt;span&gt;Web Developer&lt;/span&gt; at
  &lt;span&gt;Dealer.com&lt;/span&gt;.
&lt;/div&gt;</pre>
<p><strong>Business:</strong></p>
<pre>&lt;div class="vcard"&gt;
   &lt;span class="fn org"&gt;Scott Gale's Web Shop&lt;/span&gt;
   Located at
     &lt;div class="adr"&gt;
        &lt;span class="street-address"&gt;16 Any Dr.&lt;/span&gt;, &lt;span class="locality"&gt;South Burlington&lt;/span&gt;, &lt;span class="region"&gt;VT&lt;/span&gt;.
     &lt;/div&gt;
     &lt;span class="geo"&gt;
        &lt;span class="latitude"&gt;
           &lt;span class="value-title" title="37.774929" /&gt;
        &lt;/span&gt;
        &lt;span class="longitude"&gt;
           &lt;span class="value-title" title="-122.419416" /&gt;
        &lt;/span&gt;
     &lt;/span&gt;
     Phone: &lt;span class="tel"&gt;206-555-1234&lt;/span&gt;
     &lt;a href="http://scottgale.com/blog"&gt;scottgale.com/blog&lt;/a&gt;
&lt;/div&gt;</pre>
<p><strong>Product:</strong></p>
<pre>&lt;div class="hproduct"&gt;
   Make: &lt;span class="brand"&gt;Maserati&lt;/span&gt;
   &lt;span class="category"&gt;Automotive&lt;/span&gt;
   &lt;h1 class="fn"&gt;Granturismo&lt;/h1&gt;
   Nicely equiped for:
   &lt;span class="price"&gt;$134,000&lt;/span&gt;.
   &lt;span class="description"&gt;The Maserati GranTurismo design exudes elegance
   and has room for 4.  Reinvented from the ground up.&lt;/span&gt;
   &lt;a href="http://www.scottgale.com/Maserati-GranTurismo" class="url"&gt;View Details&lt;/a&gt;
&lt;/div&gt;</pre>
<p><strong>Video: (RDFa from Google&#8217;s site)<br />
</strong></p>
<pre>    &lt;object width="512" height="296" rel="media:video"
      resource="http://example.com/video_object.swf?id=12345"
      xmlns:media="http://search.yahoo.com/searchmonkey/media/"
      xmlns:dc="http://purl.org/dc/terms/"&gt;
     &lt;param name="movie" value="http://example.com/video_object.swf?id=12345" /&gt;
     &lt;embed src="http://example.com/video_object.swf?id=12345"
       type="application/x-shockwave-flash" width="512" height="296"&gt;

     &lt;a rel="media:thumbnail" href="http://example.com/thumbnail_preview.jpg" /&gt;
     &lt;a rel="dc:license" href="http://example.com/terms_of_service.html" /&gt;
     &lt;span property="dc:description" content="Cute Overload defines Baroo? as: Dogspeak for
      'Whut the...?'Frequently accompanied by the Canine Tilt and/or wrinkled brow for enhanced effect." /&gt;
     &lt;span property="media:title" content="Baroo? - cute puppies" /&gt;
     &lt;span property="media:width" content="512" /&gt;
     &lt;span property="media:height" content="296" /&gt;
     &lt;span property="media:type" content="application/x-shockwave-flash" /&gt;
     &lt;span property="media:region" content="us" /&gt;
     &lt;span property="media:region" content="uk" /&gt;
     &lt;span property="media:duration" content="63" /&gt;
    &lt;/object&gt;</pre>
<p>(Would be nice to see a video microformat, they audio spec is in review currently.)</p>
<p>With Google&#8217;s adoption of these standards it puts microformats in the running for some serious SEO discussion.  Google has a lot of <a href="http://www.google.com/support/webmasters/bin/topic.py?hl=en&amp;topic=21997">documentation</a> about this.  They also have a <a href="http://www.google.com/webmasters/tools/richsnippets">rich snippet testing tool</a> to confirm that your html is properly formed and able to be parsed.  </p>
<p>Also, I stumbled upon a <a href="http://jay.beweep.com/2009/12/29/unexplored-seo-opportunities-utilizing-semantic-structured-web/">great post by Jay Myers</a> about the potential of these formats and how it relates to SEO.</p>
<p>With Google&#8217;s adoption of this it puts microformats as a new and important SEO component.  Utilizing the examples above coupled with the tools that Google has for testing will help create a more human and machine readable web.  <a href="http://microformats.org/wiki/get-started">Microformats.org</a> can help get you started if you are interested in becoming a contributor.</p>
]]></content:encoded>
			<wfw:commentRss>http://scottgale.com/blog/microformats-and-seo/2010/03/18/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>My new blog mock in HTML5</title>
		<link>http://scottgale.com/blog/my-new-blog-in-html5/2010/03/10/</link>
		<comments>http://scottgale.com/blog/my-new-blog-in-html5/2010/03/10/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 04:14:43 +0000</pubDate>
		<dc:creator>Scott Gale</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[Tech]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[web standards]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[design]]></category>

		<guid isPermaLink="false">http://scottgale.com/blog/?p=112</guid>
		<description><![CDATA[So this week I discovered http://conceptfeedback.com/ (http://bit.ly/bJk6CO). I know lots of people say, don&#8217;t trust the opinions of random people out there but at the same time, that is the internet constituency hitting my site. It is good to have some opinions from a diverse set of people. I loved the opinions that I have [...]]]></description>
			<content:encoded><![CDATA[<p>So this week I discovered <a href="http://conceptfeedback.com/">http://conceptfeedback.com/</a> (<a href="http://bit.ly/bJk6CO">http://bit.ly/bJk6CO</a>).  I know lots of people say, don&#8217;t trust the opinions of random people out there but at the same time, that is the internet constituency hitting my site.  It is good to have some opinions from a diverse set of people.  I loved the opinions that I have received thus far, some good ideas have come out of it.  I encourage people to try this service, as long as you review other people&#8217;s work it is free to try.</p>
<p>So here is the mockup I posted there, which I have built in HTML5:</p>
<p><a href="http://scottgale.com/blog/wp-content/uploads/2010/03/screenshot1.jpg"><img class="alignnone size-medium wp-image-113" title="screenshot1" src="http://scottgale.com/blog/wp-content/uploads/2010/03/screenshot1-300x196.jpg" alt="New Blog Mockup" width="300" height="196" /></a></p>
<p>You can check out and comment on the new concept in conceptfeedback.com or on this site.  Once I have this fully solidified I will send around my general markup philosophy for setting up a wordpress skin in HTML5.</p>
]]></content:encoded>
			<wfw:commentRss>http://scottgale.com/blog/my-new-blog-in-html5/2010/03/10/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

