<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>TimKadlec.com</title>
	
	<link>http://timkadlec.com</link>
	<description>A Wisconsin based web developer writing about the web.</description>
	<lastBuildDate>Mon, 08 Feb 2010 17:02:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/timkadlecfull" /><feedburner:info uri="timkadlecfull" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><item>
		<title>Performance Optimization Made Quick and Simple</title>
		<link>http://feedproxy.google.com/~r/timkadlecfull/~3/f_IjkuYya8U/</link>
		<comments>http://timkadlec.com/2010/02/performance-optimization-made-quick-and-simple/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 08:00:23 +0000</pubDate>
		<dc:creator>Tim Kadlec</dc:creator>
				<category><![CDATA[Performance]]></category>

		<guid isPermaLink="false">http://timkadlec.com/?p=236</guid>
		<description><![CDATA[Optimizing your site's performance doesn't have to be very difficult. Make use of the tools available to you, and it's downright scary how quickly you can speed up a site.]]></description>
			<content:encoded><![CDATA[<p>Optimizing your site&#8217;s performance doesn&#8217;t have to be very difficult. Take this site for example. Typically, I take care of optimization as part of the build process. However, for the sake of demonstration, I thought this time around I&#8217;d take care of each step by itself, using freely available tools where applicable.</p>
<p>First off was setting expires tags and turning gzipping on. Since I&#8217;ve done this in too many .htaccess files to count, this was simply a copy/paste job with very little tweaking necessary.<span id="more-236"></span></p>
<p>Then, I decided to optimize the images (what few there are). I ran <a href="http://developer.yahoo.com/yslow/smushit/">Smush.It</a> from the <a href="http://developer.yahoo.com/yslow/">YSlow</a> tool in Firefox. That compressed the images which I then downloaded to my computer and then promptly pushed right back up to the server. It took me 5, maybe 10 minutes and it cut the image size by about 33% total.</p>
<p>The icons for the RSS, Twitter and LinkedIn links in the footer were separate images &#8211; each requiring its own HTTP request. By using the <a href="http://spriteme.org/">SpriteMe</a> bookmarklet, I was able to generate a new sprite and the necessary CSS in a few minutes and trim those 3 HTTP requests down into one. I also ran <a href="http://optipng.sourceforge.net/">OptiPng</a> from the terminal window on my Mac on the new sprited image to shave off about 40% of the size.</p>
<p>I then minimized the CSS and Javascript (what little I was using) using <a href="http://www.phpied.com/omg-initial-checkin/">OMG</a>, which shaved ~30% off the file size of each.</p>
<p>Without any of these optimizations, my YSlow grade was a C and my page size was about 150K. After the 1/2 hour investment (if that&#8230;I&#8217;m being generous here) my YSlow grade came in at an A with a page size around 80K. Not bad for such little work.</p>
<p>There&#8217;s much more I can, and will, do here (caching, data-uri&#8217;s, etc.) but the moral of the story is that not optimizing your sites because it takes too long is just no longer an argument you can use. Make use of the tools available to you, and it&#8217;s downright scary how quickly you can speed up a site.</p>
<img src="http://feeds.feedburner.com/~r/timkadlecfull/~4/f_IjkuYya8U" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://timkadlec.com/2010/02/performance-optimization-made-quick-and-simple/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://timkadlec.com/2010/02/performance-optimization-made-quick-and-simple/</feedburner:origLink></item>
		<item>
		<title>Changing Things Up</title>
		<link>http://feedproxy.google.com/~r/timkadlecfull/~3/NXkZWo7vJEI/</link>
		<comments>http://timkadlec.com/2010/02/changing-things-up/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 04:26:34 +0000</pubDate>
		<dc:creator>Tim Kadlec</dc:creator>
				<category><![CDATA[This Site]]></category>

		<guid isPermaLink="false">http://timkadlec.com/?p=160</guid>
		<description><![CDATA[After a very long, drawn out design/build process, I finally decided to just get it over with and push the new design live (as anyone not reading this in their RSS reader can see).]]></description>
			<content:encoded><![CDATA[<p>After a very long, drawn out design/build process, I finally decided to just get it over with and push the new design live (as anyone not reading this in their RSS reader can see). There&#8217;s a few bits of code and a little bit of styling I&#8217;ve not quite fine-tuned yet, but if I keep waiting, the design would never get put up. As it is, it&#8217;s been sitting on my computer in virtually the same state it appears now for the last month or so without being touched.</p>
<p>In addition to a new look, the underlying code has changed. I used to blog on a home-brewed VBScript based system. This incarnation of the blog, however, is built on Wordpress. It&#8217;s also built using HTML5 and makes use of some CSS3 selectors for presentation. The idea was to simplify the publishing process to encourage more writing, and as part of that, I also wanted to simplify the look a little bit. Using HTML5 and CSS3 just give me an excuse to play around with those technologies a bit.<span id="more-160"></span></p>
<p>Finally, with a new design, comes slightly different content. Historically, I&#8217;ve always treated the site as a place for web development related articles exclusively. The problem with this is that A) it&#8217;s not particularly personal and B) my interests have expanded greatly. So, going forward the site will no longer be limited to just web development &#8211; though there will still be plenty of that. Let&#8217;s just say if I find it interesting, and feel inclined to write about it, it&#8217;ll make it&#8217;s way onto the site. As a result, the blog will also reflect a slightly more personal tone than it historically has.</p>
<p>There&#8217;s still a few rough spots to iron out with the new look &#8211; so if you stumble upon anything missing or that obviously looks out of place, feel free to <a href="mailto:tim@timkadlec.com">shoot me a line</a> about it if you feel so inclined.</p>
<img src="http://feeds.feedburner.com/~r/timkadlecfull/~4/NXkZWo7vJEI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://timkadlec.com/2010/02/changing-things-up/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://timkadlec.com/2010/02/changing-things-up/</feedburner:origLink></item>
		<item>
		<title>The Power of Dissonance</title>
		<link>http://feedproxy.google.com/~r/timkadlecfull/~3/ymOAM8IYjVU/</link>
		<comments>http://timkadlec.com/2010/01/the-power-of-dissonance/#comments</comments>
		<pubDate>Tue, 05 Jan 2010 05:43:51 +0000</pubDate>
		<dc:creator>Tim Kadlec</dc:creator>
				<category><![CDATA[Work Process]]></category>

		<guid isPermaLink="false">http://chrisrobinsondesign.com/timtest/?p=98</guid>
		<description><![CDATA[There's a certain level of comfort in surrounding yourself with people like yourself. Comfort, however, is not often equal to progress. When it comes to expanding your mind to new possibilities and advancing your knowledge and skills, a little dissonance goes a long way.]]></description>
			<content:encoded><![CDATA[<p>People tend to associate with people most like them. We hang out with people with similar hobbies, career paths, social circles and viewpoints. There&#8217;s a certain level of comfort in surrounding yourself with people like yourself.</p>
<p>Comfort, however, is not often equal to progress. When it comes to expanding your mind to new possibilities and advancing your knowledge and skills, a little dissonance goes a long way.<span id="more-98"></span></p>
<p>One popular phrase you hear thrown around is the &#8220;wisdom of crowds&#8221; &#8211; the many are smarter than the few. However, it is important to note that the wisdom of crowds does not equal crowd psychology (the power of people acting collectively). Instead, the wisdom of crowds is only true when the crowd consists of a variety of people with different viewpoints, opinions and backgrounds.</p>
<p>Why is it that we need this diversity to excel and grow? It&#8217;s because as we become certain that something is true, our mind locks onto that idea. We have a tendency to filter out any information that may conflict with our firmly held opinions, and only focus on those that support them. This behavior, of course, strengthens our existing opinions and sheds no light on alternate solutions and beliefs that may be superior to the ones we have chosen to latch onto.</p>
<p>As Jonah Lehrer says in <em><a href="http://www.amazon.com/gp/product/0618620117?ie=UTF8&amp;tag=timkadcom-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0618620117">How We Decide</a></em>, &#8220;The only way to counteract the bias for certainty is to encourage some inner dissonance. We must force ourselves to think about the information we don&#8217;t want to think about, to pay attention to the data that disturbs our entrenched beliefs.&#8221;</p>
<p>The way to overcome our certainties, and to challenge ourselves to new heights of accomplishments and knowledge is to consider other perspectives than our own, to surround ourselves with people who will challenge our beliefs. And then we must listen. We must not filter out their commentary, we need to consider it and view our problems with a fresh perspective. That&#8217;s how we develop our skills and that&#8217;s how we create new, innovative solutions.</p>
<img src="http://feeds.feedburner.com/~r/timkadlecfull/~4/ymOAM8IYjVU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://timkadlec.com/2010/01/the-power-of-dissonance/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://timkadlec.com/2010/01/the-power-of-dissonance/</feedburner:origLink></item>
		<item>
		<title>Learning From Monkeys</title>
		<link>http://feedproxy.google.com/~r/timkadlecfull/~3/dFOu0fHXqPs/</link>
		<comments>http://timkadlec.com/2009/07/learning-from-monkeys/#comments</comments>
		<pubDate>Thu, 23 Jul 2009 00:00:00 +0000</pubDate>
		<dc:creator>Tim Kadlec</dc:creator>
				<category><![CDATA[Work Process]]></category>

		<guid isPermaLink="false">http://localhost/1969/12/learning-from-monkeys-2/</guid>
		<description><![CDATA[While browsing YouTube diligently working, I stumbled upon a video showing how to open a banana like a monkey. I like bananas, and who doesn't like monkeys, so I gave it a watch. Turns out, I've been opening bananas the wrong way my entire life.]]></description>
			<content:encoded><![CDATA[<p>While <span style="text-decoration: line-through;">browsing YouTube</span> diligently working, I stumbled upon a <a href="http://www.youtube.com/watch?v=nBJV56WUDng">video showing how to open a banana like a monkey</a>. I like bananas, and who doesn&#8217;t like monkeys, so I gave it a watch. Turns out, I&#8217;ve been opening bananas the wrong way my entire life.</p>
<p>Basically, for those of you who haven&#8217;t seen it, it shows how a typical person opens a banana using the stem. As we all know sometimes this method works just fine and sometimes the stem is tough and we have to struggle a bit to peel it, smashing the top of our banana in the meantime.<span id="more-31"></span></p>
<p>A monkey, meanwhile, simply pinches the other end of the banana, which causes a split in the banana peel, and then smoothly peels the banana. It works amazingly well.</p>
<p>What&#8217;s the point? The point is, this morning I thought I knew all there was to know about peeling bananas. I would never have expected that there was a better, more efficient technique I could be using. I was very confident that my method was the best one out there.</p>
<p>How many times do we take that approach with our design or development skills?  We assume we know all we need to know about a topic, so instead of continually experimenting and reanalyzing our techniques, we plod along confident that our current method of work is the best. Even if there is a better way, we certainly wouldn&#8217;t find it by reading <em>that</em> book or <em>that</em> blog.</p>
<p>Meanwhile, there&#8217;s a better way out there. It might be only a minor improvement, or it might be something that completely alters the way we work. We won&#8217;t know it though, unless we continue to question our knowledge and show a consistent desire to improve. Sometimes, no matter how much we think we know, we can learn from even the most unlikely sources.</p>
<img src="http://feeds.feedburner.com/~r/timkadlecfull/~4/dFOu0fHXqPs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://timkadlec.com/2009/07/learning-from-monkeys/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://timkadlec.com/2009/07/learning-from-monkeys/</feedburner:origLink></item>
		<item>
		<title>One Step Forward, Two Steps Back</title>
		<link>http://feedproxy.google.com/~r/timkadlecfull/~3/dn_5K6CX5SQ/</link>
		<comments>http://timkadlec.com/2009/06/one-step-forward-two-steps-back/#comments</comments>
		<pubDate>Fri, 26 Jun 2009 00:00:00 +0000</pubDate>
		<dc:creator>Tim Kadlec</dc:creator>
				<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://localhost/1969/12/one-step-forward-two-steps-back-2/</guid>
		<description><![CDATA[Microsoft made great leaps forward with IE8, and just when I start thinking they deserve a nice pat on the back for embracing standards, they give me another reason to lose faith in them. The recent announcement is that Outlook 2010, like Outlook 2007, will use Microsoft Word for it's rendering engine]]></description>
			<content:encoded><![CDATA[<p>Microsoft made great leaps forward with IE8, and just when I start thinking they deserve a nice pat on the back for embracing standards, they give me another reason to lose faith in them.</p>
<p>The recent announcement is that Outlook 2010, like Outlook 2007, will use Microsoft Word for it&#8217;s rendering engine. No&#8230;you read that right&#8230;Word&#8217;s rendering engine. A rendering engine that doesn&#8217;t support simple CSS statements like float, width or height. <span id="more-32"></span>Here&#8217;s their stance on why they&#8217;re opting to use the Word rendering engine again:</p>
<blockquote><p>We&#8217;ve made the decision to continue to use Word for creating e-mail messages because we believe it&#8217;s the best e-mail authoring experience around, with rich tools that our Word customers have enjoyed for over 25 years. Our customers enjoy using a familiar and powerful tool for creating e-mail, just as they do for creating documents. Word enables Outlook customers to write professional-looking and visually stunning e-mail messages.<br />
<cite>William Kennedy<br />
<span class="title">Corporate Vice President, Office Communications and Forms Team</span></cite></p></blockquote>
<p>Now I understand their desire to allow their users to create &#8220;visually stunning&#8221; emails easily. However, the side effect of their current method of enabling that is that they force anyone creating HTML emails to tailor to their poor support of current HTML and CSS standards. Unfortunately, the team behind Outlook apparently doesn&#8217;t think these standards apply to email. They claim that there is &#8220;<q>no widely-supported consensus in the industry about what subset of HTML is appropriate for use in e-mail for interoperability.</q>&#8221; Really?</p>
<p>In response to their announcement, <a href="http://fixoutlook.org">fixoutlook.org</a> was set up and encouraged Twitter users to retweet in protest of the decision. At the time of their statement, over 20,000 people had tweeted the message. I understand that Twitter users are only a subset of the people who will be using and developing for Outlook 2010, but still&#8230;.how can 20,000 people, many of whom are developers and designers who work with these technologies daily, not demonstrate some sort of consensus? Even if not, wouldn&#8217;t the logical move be to try to support as much of the HTML and CSS standards as possible?</p>
<p>In the meantime, this really sends an inconsistent message about Microsoft&#8217;s willingness to play nicely with others. While the IE8 team made a commitment to improving their standards support significantly, the team behind Outlook 2010 is ignoring them and is forcing everyone else to make the effort to play along with them, making it very difficult for innovation across the board.</p>
<p>If you&#8217;re on Twitter, head over to <a href="http://fixoutlook.org">fixoutlook.org</a> and be sure to add your name to the list of people who realize how bad of an idea this is. If you&#8217;re not on Twitter, how about telling the Outlook team your thoughts on <a href="http://blogs.msdn.com/outlook/archive/2009/06/24/the-power-of-word-in-outlook.aspx#commentform">their article</a> defending their choice to use the Word rendering engine. Let&#8217;s find out how many people equal a consensus.</p>
<h2>More Information</h2>
<ul class="reg">
<li><a href="http://www.email-standards.org/blog/entry/microsoft-to-ignore-web-standards/">The Email Standards Project original call to action</a></li>
<li><a href="http://www.zeldman.com/2009/06/24/sour-outlook/">Jeffrey Zeldman&#8217;s thoughts</a></li>
<li><a href="http://blogs.msdn.com/outlook/archive/2009/06/24/the-power-of-word-in-outlook.aspx">Outlook&#8217;s Response to the Protest</a></li>
</ul>
<img src="http://feeds.feedburner.com/~r/timkadlecfull/~4/dn_5K6CX5SQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://timkadlec.com/2009/06/one-step-forward-two-steps-back/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://timkadlec.com/2009/06/one-step-forward-two-steps-back/</feedburner:origLink></item>
		<item>
		<title>Developing Smarter with Progressive Enhancement</title>
		<link>http://feedproxy.google.com/~r/timkadlecfull/~3/2M13uaSwkR0/</link>
		<comments>http://timkadlec.com/2009/06/developing-smarter-with-progressive-enhancement/#comments</comments>
		<pubDate>Thu, 18 Jun 2009 00:00:00 +0000</pubDate>
		<dc:creator>Tim Kadlec</dc:creator>
				<category><![CDATA[CSS]]></category>

		<guid isPermaLink="false">http://localhost/1969/12/developing-smarter-with-progressive-enhancement-2/</guid>
		<description><![CDATA[It is alright if your site doesn't look exactly the same in every browser. Getting clients to accept that fact is important because it can save them both time and money (not to mention save you a few headaches).]]></description>
			<content:encoded><![CDATA[<p>Progressive enhancement is not only a smart idea, but it&#8217;s the right idea for anyone looking to produce cost-effective websites. It is alright if your site doesn&#8217;t look exactly the same in every browser. In fact, because of factors like font rendering, it&#8217;s impossible to maintain the exact same appearance across all browsers. Getting clients to accept that fact is important because it can save them both time and money (not to mention save you a few headaches).</p>
<p>Let&#8217;s take an example. Let&#8217;s say that our client, Great Sprockets Inc., wants a design with a few rounded corners and semi-transparent backgrounds sprinkled in. We decide not to use progressive enhancement. Everybody should get these rounded corners and semi-transparent backgrounds.</p>
<p>So, we oblige. We create some 24-bit PNGs for the backgrounds. IE6 doesn&#8217;t support PNG24 transparency natively, so we add in a call to a script to fix that. We create a few images for the rounded corners, add a couple of extra element to our markup to position them, and we&#8217;re good to go.</p>
<p>Now our other client, Even Greater Sprockets Inc., also wants rounded corners and semi-transparent backgrounds. However, recognizing that neither is important to the actual branding of the site, they agree to practice a bit of progressive enhancement.</p>
<p>So, using two lines of CSS, we give rounded corners to all Firefox and Webkit-based browsers. Again, using CSS, we use <a href="http://www.timkadlec.com/post.asp?q=61">RGBa</a> to create semi-transparent backgrounds in the browsers that support them, and let others fall back to a fully opaque background color. And that&#8217;s it. No images, no extra Javascript calls, and no extra elements in our markup.</p>
<p>One client has ensured that every visitor to their site with a relatively modern browser, regardless of browser capabilities, gets rounded corners and semi-transparent backgrounds. As a result, they added time to the development of their site, and therefore money to their bill. In addition, they&#8217;ve increased the time it takes for their page to load by adding a few extra HTTP requests necessary to load the necessary images and scripts.</p>
<p>The other client has offered these embellishments only to browsers that support them natively. As a result, their development time is lower, and so is their bill and page load time. Their branding is still in tact, and their site still looks good, it&#8217;s just without a few added aesthetic touches.</p>
<p>Which option makes more sense to you?</p>
<img src="http://feeds.feedburner.com/~r/timkadlecfull/~4/2M13uaSwkR0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://timkadlec.com/2009/06/developing-smarter-with-progressive-enhancement/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://timkadlec.com/2009/06/developing-smarter-with-progressive-enhancement/</feedburner:origLink></item>
		<item>
		<title>A Big Day for Microformats</title>
		<link>http://feedproxy.google.com/~r/timkadlecfull/~3/1tBll-kMHyU/</link>
		<comments>http://timkadlec.com/2009/05/a-big-day-for-microformats/#comments</comments>
		<pubDate>Wed, 13 May 2009 00:00:00 +0000</pubDate>
		<dc:creator>Tim Kadlec</dc:creator>
				<category><![CDATA[Microformats]]></category>

		<guid isPermaLink="false">http://localhost/1969/12/a-big-day-for-microformats-2/</guid>
		<description><![CDATA[Today was a big day for Microformats - very big. First, they announced that the new value-class-pattern is ready for implementation. Then, that announcement  was trumped by Google announcing that they will be starting to index Microformats and RDFa and using that data to enrich their search results.]]></description>
			<content:encoded><![CDATA[<p>Today was a big day for Microformats &#8211; very big. First, they announced that the new <a href="http://microformats.org/blog/2009/05/12/value-class-pattern/">value-class-pattern </a> is ready for implementation. The value-class-pattern is a great step forward, as it provides needed accessiblity improvements, and in my opinion, gives the developer a bit more flexibility over how to structure their markup.</p>
<p>That was a pretty big announcement in its own right, and I was very pleased to see the new pattern approved and garnering a bit of buzz. That announcement, however, was trumped by Google announcing that they will be starting to <a href="http://radar.oreilly.com/2009/05/google-announces-support-for-m.html">index Microformats and RDFa</a> and using that data to enrich their search results.</p>
<p>Microformats has been around since 2003, but the adoption has been a bit sluggish. While overall quite easy to implement, it can been difficult to demonstrate the value of using Microformats at times due to a lack of major support, and therefore, major incentive. That shouldn&#8217;t be a problem anymore, because Google is definitely providing that major incentive.</p>
<h2>How They&#8217;ll Be Used</h2>
<p>Google has a good vision for how to make use of the harvested data in their results. They&#8217;ll be providing these &#8220;rich snippets&#8221;, as they&#8217;re calling them, to provide both additional content and meaning about the pages in their search results. For example, a page featuring reviews will feature the average star rating, and number of reviews the page contains, right there in the search results.</p>
<p>In addition to reviews, this initial launch will also provide &#8220;rich snippets&#8221; for people. Using contact information parsed from sites like LinkedIn, for example, search results may indicate a person&#8217;s job title and location, to help users determine if the results they are looking at are likely to be associated with the person they&#8217;re looking for.</p>
<p>On top of that, Google plans for to use these Microformats to allow users to be a bit more specific with their searches. An example given was that a user could search for all reviews on a printer where the average rating was over 3 stars. This allows users to tailor the content they receive by the context in which they are interested.</p>
<p>Not only does this new feature enhance the user experience, but the use of Microformats and RDFa data should also provide signifcant value for sites smart enough to markup their content using them. According to studies done by Yahoo on similar enhancements to search results, they found these kinds of improvements resulted in a <a href="http://searchengineland.com/yahoo-searchmonkey-becomes-more-mainstream-14498">significant improvement in click-through rates</a>, in some cases up to a 15% increase.</p>
<h2>More Coverage</h2>
<p>There&#8217;s been lots of great coverage on Google&#8217;s announcement, and I highly encourage you to have a look at some of the insights offered in the posts below:</p>
<ul class="reg">
<li><a href="http://googlewebmastercentral.blogspot.com/2009/05/introducing-rich-snippets.html">Introducing Rich Snippets</a></li>
<li><a href="http://radar.oreilly.com/2009/05/google-announces-support-for-m.html">Google Announces Support for Microformats and RDFa</a></li>
<li><a href="http://radar.oreilly.com/2009/05/google-adds-microformat-parsin.html">Google Engineering Explains Microformat Support in Searches (Interview)</a></li>
<li><a href="http://searchengineland.com/google-search-now-supports-microformats-and-adds-rich-snippets-to-search-results-19055">Google Search Now Supports Microformats and Adds &#8220;Rich Snippets&#8221; to Search Results</a></li>
</ul>
<p>In addition, if you haven&#8217;t explored <a href="http://microformats.org/wiki/Main_Page">Microformats</a>, I encourage you to do so now. With Google starting to index Microformats, and in turn leverage the harvested data to enhance search results, whether or not Microformats are valuable is no longer debatable.</p>
<img src="http://feeds.feedburner.com/~r/timkadlecfull/~4/1tBll-kMHyU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://timkadlec.com/2009/05/a-big-day-for-microformats/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://timkadlec.com/2009/05/a-big-day-for-microformats/</feedburner:origLink></item>
		<item>
		<title>Building a Stronger DOM</title>
		<link>http://feedproxy.google.com/~r/timkadlecfull/~3/ewGuBeXdnp0/</link>
		<comments>http://timkadlec.com/2009/05/building-a-stronger-dom/#comments</comments>
		<pubDate>Thu, 07 May 2009 00:00:00 +0000</pubDate>
		<dc:creator>Tim Kadlec</dc:creator>
				<category><![CDATA[(X)HTML]]></category>

		<guid isPermaLink="false">http://localhost/1969/12/building-a-stronger-dom/</guid>
		<description><![CDATA[In Nate Koechley's excellent talk on Frontend Engineering, he talks about the importance of building a "stronger DOM". By marking up your site with meaningful elements and attributes, you give your markup more value and provide a richer experience for both users and machines.]]></description>
			<content:encoded><![CDATA[<p>In <a href="http://nate.koechley.com/blog/">Nate Koechley&#8217;s</a> excellent talk on <a href="http://video.yahoo.com/watch/4671445/12486762">Frontend Engineering</a>, he talks about the importance of building a &#8220;stronger DOM&#8221;. By marking up your site with meaningful elements and attributes, you give your markup more value and provide a richer experience for both users and machines.</p>
<p>In addition, a strong DOM provides you with numerous attributes and elements that you can make use of to style the content to your hearts desire. This gives you much more power and control with your CSS, and helps to greatly decrease your usage of extraneous divs and classes</p>
<p>A very quick way to improve your markup skills, and therefore the value of your content, is to expand your knowledge of HTML elements, and start making use of a few you might not have been aware of.</p>
<h2>
<fieldset> and<br />
<legend></legend>
</fieldset>
</h2>
<p>The fieldset element is used to group related controls and labels within a form. They are a great way to help make your form easier to understand, and more accessible for speech-navigated user agents.</p>
<p>It should be used in conjunction with the legend element to provide an even richer and more usable experience. The legend element basically defines a caption for the fieldset. Here&#8217;s an example of how you could use these elements in your markup:</p>
<ol class="code">
<li>
<form method="post"></form>
</li>
<li class="tab1">
<fieldset></fieldset>
</li>
<li class="tab2">Team Captain</li>
<li class="tab2"><label for="captain">Name</label></li>
<li class="tab2">
<input id="captain" name="captain" type="text" /></li>
<li class="tab1">
<fieldset></fieldset>
</li>
<li class="tab2">Player #2</li>
<li class="tab2"><label for="player2">Name</label></li>
<li class="tab2">
<input id="player2" name="player2" type="text" /></li>
<li></li>
</ol>
<h2><q></q></h2>
<p>An often forgot element that you can start using immediately in your text is the q element. The q element is very similar to the blockquote element, but should be used in a different context. The blockquote element is meant to be used for longer, <em>block-level</em> quotes. The q element, on the other hand should be used for short quotes.</p>
<p>All major browsers, other than IE6 and IE7, will automatically insert quotation marks around the content within the q element, according to the HTML spec. There&#8217;s a few ways to work around this, but my favorite solution is the one proposed by Stacy Cordoni in an <a href="http://www.alistapart.com/articles/qtag/">A List Apart article</a> from 2006. Her solution is to remove the quotes from around the q element using the :before and :after pseudo-classes to even the playing field. Then, with each of the major browsers not rendering quotes, you can insert them directly into your markup, ensuring that all browsers render your quote the same.</p>
<ul class="code">
<li>&#8220;<q>Remember that drover, the one I shot in the mouth so&#8217;s the teeth come out the back of his head?</q>&#8220;, asked Munny.</li>
</ul>
<h2><cite></cite></h2>
<p>The cite element is used to identify a reference or citation to another source, like a book or another website. By default, each of the major browsers render the cite element in italics. Making use of our q element example, adding the cite element would give us something like this:</p>
<ul class="code">
<li>&#8220;<q>Remember that drover, the one I shot in the mouth so&#8217;s the teeth come out the back of his head?</q>&#8220;, asked <cite>Munny</cite>.</li>
</ul>
<h2><dfn></dfn></h2>
<p><dfn>The dfn element is used to markup the defining instance of a word or phrase. It&#8217;s important to note that it is not intended to markup the actual definition itself, but instead the word or phrase being defined. Most major browsers will render the content within the dfn element in italics, though of course you can alter that as you wish with CSS.</p>
<ul class="code">
<li>The <dfn>dfn element</dfn> is used to markup the defining instance of a word or phrase.</li>
</ul>
<h2><ins> and <del></del></ins></h2>
<p>Here&#8217;s one for anyone who writes any sort of articles online. You can use the ins and del elements to identify content that has been either inserted or deleted since the content&#8217;s publication. The ins element, by default, is underlined, and the del element, by default, is striked through.</p>
<ul class="code">
<li>SXSW&#8217;s parties are a great time to <del>booze it up with</del> <ins>mingle with</ins> fellow developers.</li>
</ul>
<h2>
<address></address>
</h2>
<p>The address element is slightly misleading. One would think you would use it to mark up a physical address, but that&#8217;s not necessarily the case. The address element is actually intended to contain the contact point for the document containing it. While this certainly could contain a physical address, it doesn&#8217;t have to. It could house any sort of contact information provided that it is contact information for the author and/or owner of the document in question.</p>
<p>For example, I could use the address element to provide my contact information since I am the owner of this article, like so:</p>
<ul class="code">
<li>
<address><a href="mailto:tim@timkadlec.com">tim@timkadlec.com</a></address>
</li>
</ul>
<p>By default, the address element is rendered in italics in each of the major browsers.</p>
<h2>See For Yourself</h2>
<p>If you&#8217;re interested, I <a href="underused.htm">put up a page</a> with examples of each of the elements above. I did not apply any CSS, so you can see how each element is rendered by default in different browsers.</p>
<p></dfn></p>
<img src="http://feeds.feedburner.com/~r/timkadlecfull/~4/ewGuBeXdnp0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://timkadlec.com/2009/05/building-a-stronger-dom/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://timkadlec.com/2009/05/building-a-stronger-dom/</feedburner:origLink></item>
		<item>
		<title>Ideas and Alibis</title>
		<link>http://feedproxy.google.com/~r/timkadlecfull/~3/-hWKcyz5Ey0/</link>
		<comments>http://timkadlec.com/2009/04/ideas-and-alibis/#comments</comments>
		<pubDate>Thu, 23 Apr 2009 00:00:00 +0000</pubDate>
		<dc:creator>Tim Kadlec</dc:creator>
				<category><![CDATA[Work Process]]></category>

		<guid isPermaLink="false">http://localhost/1969/12/ideas-and-alibis/</guid>
		<description><![CDATA[Ideas and alibis are very much alike. Everyone has plenty of both. Some are good, and some are bad. The big difference is that while no one has a problem using alibis, very few are willing to consistently act on their ideas (me included).]]></description>
			<content:encoded><![CDATA[<p>Ideas and alibis are very much alike. Everyone has plenty of both. Some are good, and some are bad. The big difference is that while no one has a problem using alibis, very few are willing to consistently act on their ideas (me included).</p>
<h2>Excuses, Excuses</h2>
<p>There are several reasons why people tend to pass on acting on their own ideas. Some of the major ones are fear of criticism, fear of failure, self-doubt, or the feeling that there is not enough time. Based on these reasons, we can come up with a multitude of alibis for not pursuing these ideas.</p>
<p>One that I commonly use is that the &#8220;time is not right&#8221;. I often tell myself that I should wait on acting on my ideas until sometime where the circumstances are better aligned for it. Sometime in the future when I have more of the knowledge necessary or where I have more time available to me; that&#8217;s when I&#8217;ll move forward on my ideas.</p>
<p>The fact though, is that postponing ideas quickly becomes a habit. The truth is, there will always be more research that could be done, and there will always be distractions that make us feel like we don&#8217;t have the time to act. Acting on an idea will always expose yourself to criticism, and there is always the chance that the idea will not be perceived as a success. If we keep waiting until the circumstances are &#8220;just right&#8221;, we&#8217;ll be putting that idea in a perpetual holding state, until either we decide not to act on it at all, or someone else has already beaten us to it.</p>
<h2>Make Your Ideas Count</h2>
<p>At least by acting on those ideas, we make them count for something. They may not be met with an extraordinary amount of success, and occasionally they may even be met with flat out failure (though I believe that if you really go after your idea with vigor, true failure will occur very infrequently). For each non-successful idea you have and pursue, that is one more lesson you&#8217;ve learned and one more step you&#8217;ve taken towards making your next idea meet with greater success.</p>
<p>The conclusion then, is that ideas were meant to be pursued, not postponed. Quit coming up with excuses and start moving forward on those ideas and goals that you&#8217;ve been putting off. If you never try any of them, it is a certainty that none of them will work out. By pursuing them, at least you give them the chance.</p>
<img src="http://feeds.feedburner.com/~r/timkadlecfull/~4/-hWKcyz5Ey0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://timkadlec.com/2009/04/ideas-and-alibis/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://timkadlec.com/2009/04/ideas-and-alibis/</feedburner:origLink></item>
		<item>
		<title>Book Review: Object-Oriented Javascript</title>
		<link>http://feedproxy.google.com/~r/timkadlecfull/~3/rJ3oNblKY2s/</link>
		<comments>http://timkadlec.com/2009/04/book-review-object-oriented-javascript/#comments</comments>
		<pubDate>Tue, 14 Apr 2009 00:00:00 +0000</pubDate>
		<dc:creator>Tim Kadlec</dc:creator>
				<category><![CDATA[Books]]></category>

		<guid isPermaLink="false">http://localhost/1969/12/book-review-object-oriented-javascript/</guid>
		<description><![CDATA[Object-Oriented Javascript is written by Stoyan Stefanov, a web developer at Yahoo. The book covers a lot of information, starting with the basics all the way through to a few basic, albeit useful, design patterns.]]></description>
			<content:encoded><![CDATA[<h2>Who Wrote It?</h2>
<p>Object-Oriented Javascript is written by Stoyan Stefanov, a web developer at Yahoo. Stoyan&#8217;s thoughts on all things web can be found at <a href="http://www.phpied.com/">phpied.com</a>. He also runs a blog on <a href="http://phonydev.com/">iPhone development</a>, and a site dedicated to Javascript design patterns at <a href="http://www.jspatterns.com/">JSPatterns.com</a> (it&#8217;s been quiet for quite awhile now, but I&#8217;m hoping to see it brought out of retirement).</p>
<h2>What&#8217;s Covered?</h2>
<p>Exactly what you&#8217;d expect given the title&#8230;.object-oriented Javascript! Actually, the book covers a lot of information, starting with the basics (variables, loops, functions, etc.) all the way through to a few basic, albeit useful, design patterns.</p>
<p>The book is very well written and its discussions precise. Stoyan doesn&#8217;t take a lot of time going through complex examples. Instead, he gives bite-size chunks for you to play with and expand upon. If you&#8217;re someone who prefers playing with concepts yourself over going through expanded examples in books, this book is right up your alley.</p>
<p>While the book has chapters on the DOM and primitive data types, it is in the discussions of topics like closures and inheritance where the book really stands out. These sometimes confusing topics are presented in a very clear and concise way, helping to break down the learning barrier that so often stands in the way of truly understanding those subjects.</p>
<h2>Should I Read It?</h2>
<p>The book is intended to be accessible to even developers with no prior Javascript experience, and it does a reasonable job of doing so. Thankfully, the information is covered very well, making it likely that even the introductory chapters will be worth the read for more experienced Javascript developers.</p>
<p>I&#8217;m sure the refinement and overall quality of the information presented is in no small part due to the plethora of quality technical reviewers. It&#8217;s clear Stoyan took the task of accurately presenting this information very seriously, as his list of technical reviewers sounds a bit like a who&#8217;s who of web development.</p>
<h2>Final Verdict</h2>
<p>I really enjoyed Object Oriented Javascript and highly recommend it. For beginners, its not as soft an introduction as <a href="http://www.amazon.com/gp/product/1590595335?ie=UTF8&amp;tag=timkadcom-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1590595335">DOM Scripting</a>, nor is it as exhaustive in detail as <a href="http://www.amazon.com/gp/product/0321423305?ie=UTF8&amp;tag=timkadcom-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0321423305">PPK on Javascript</a>. That being said, its content is perhaps the most complete of any Javascript book accessible to beginners that I&#8217;ve read thus far, and it&#8217;s certainly one of the best <em>written</em> books I&#8217;ve read. Even more experienced developers will find very useful information in some great coverage of more advanced object-oriented techniques and very useful appendices.</p>
<h2>Great&#8230;Where Do I Get a Copy?</h2>
<ul class="reg">
<li><a href="http://www.amazon.com/gp/product/1847194141?ie=UTF8&amp;tag=timkadcom-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1847194141">Buy Through Amazon.com</a></li>
<li><a href="http://www.packtpub.com/object-oriented-javascript-applications-libraries/book">Get the book from Packt Publishing</a></li>
</ul>
<img src="http://feeds.feedburner.com/~r/timkadlecfull/~4/rJ3oNblKY2s" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://timkadlec.com/2009/04/book-review-object-oriented-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://timkadlec.com/2009/04/book-review-object-oriented-javascript/</feedburner:origLink></item>
	</channel>
</rss>
