<?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>Adam Darowski &#187; Web Standards</title>
	<atom:link href="http://www.darowski.com/tracesofinspiration/category/web-standards/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.darowski.com/tracesofinspiration</link>
	<description>Adam Darowski is a daddy of two and User Experience Designer for BatchBlue Software.</description>
	<lastBuildDate>Sun, 23 Oct 2011 03:38:55 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Selective Degradation of Modern CSS for Internet Explorer</title>
		<link>http://www.darowski.com/tracesofinspiration/2009/11/30/selective-degradation-of-modern-css-for-internet-explorer/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2009/11/30/selective-degradation-of-modern-css-for-internet-explorer/#comments</comments>
		<pubDate>Tue, 01 Dec 2009 02:46:59 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Markup]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/?p=1032</guid>
		<description><![CDATA[Progressive enhancement. Graceful degradation. Progressive enrichment.
There are a lot of terms out there for &#8220;making sure things work nicely in every browser, even if it doesn&#8217;t work or look exactly the same in all of them&#8221;. I was thinking about the approach I took on a recent project, the Criminal Justice School Guide. I suppose [...]]]></description>
			<content:encoded><![CDATA[<p>Progressive enhancement. Graceful degradation. <a href="http://www.handcraftedcss.com/">Progressive enrichment.</a></p>
<p>There are a lot of terms out there for &#8220;making sure things work nicely in every browser, even if it doesn&#8217;t work or look exactly the same in all of them&#8221;. I was thinking about the approach I took on a recent project, the <a href="http://www.darowski.com/tracesofinspiration/portfolio/criminal-justice-school-guide/">Criminal Justice School Guide</a>. I suppose it is kind of like progressive enrichment&#8230; but with a bit of graceful degradation thrown in. </p>
<p>What does that mean? Well, first of all the case for this approach was an easy one to make when working with a client (<a href="http://avenue100.com/">Avenue100</a>, and directly with an old friend and colleague <a href="http://traydiggz.com/">Tracy Shaw</a>) who gets web standards. What I did was take a mockup and build the design in CSS using the very latest CSS techniques. Only then did I take a look at the design in other browsers.</p>
<p>The difference between what I did on this project and some others is that I only fixed major design elements. If it wasn&#8217;t a big deal, I shrugged it off. LET ME TELL YOU it was a great feeling. &#8220;Does that corner <em>really</em> need to be rounded? Nope!&#8221; This way the browser hacks are kept to a minimum (and quarantined in separate style sheets) and the site is ready to play ball when Internet Explorer finally is.</p>
<p>Let&#8217;s call it&#8230; &#8220;selective degradation&#8221;. <img src='http://www.darowski.com/tracesofinspiration/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Today I want to look at four areas of the design, see how they look in Internet Explorer vs. a real browser, and show the markup and style examples.</p>
<p><img src="http://www.darowski.com/tracesofinspiration/wp-content/uploads/2009/11/cj-examples.png" alt="cj-examples" title="cj-examples" width="800" class="framed" /></p>
<h2>1. Search field</h2>
<p>The first task was to create a search form that sits over a partially transparent rounded box that also sits on top of some other geometric shapes. It&#8217;s easy enough to cram all of that in a background image and let the form sit on top of it, but why do that when you can produce a more bulletproof approach that allows the rounded box to grow with the form (if need be). Here&#8217;s how I styled the form:</p>
<p><code class="block">form#search {<br />
&nbsp;&nbsp;float: right;<br />
&nbsp;&nbsp;background-color: rgba(183,180,170,.4);<br />
&nbsp;&nbsp;padding: 10px 20px;<br />
&nbsp;&nbsp;margin: 16px 12px;<br />
&nbsp;&nbsp;border-radius: 10px;<br />
&nbsp;&nbsp;-moz-border-radius: 10px;<br />
&nbsp;&nbsp;-webkit-border-radius: 10px;<br />
}<br />
</code></p>
<p>The <code>float</code>ing, <code>padding</code>, and <code>margin</code>s are all standard stuff. The <code>background-color</code> and <code>border-radius</code>, however, are not. <code>border-radius</code>, of course, will round the corners of the box. Only it doesn&#8217;t work in Internet Explorer (even IE8!). How about the <code>background-color</code>? That&#8217;s RGBa, which allows you to define a background color WITH a transparency level. Of course, IE8 can&#8217;t figure that out either.</p>
<p>So, what should we do? Well, just like I said right away. Cram it all in a background image. So, here&#8217;s the fix:</p>
<p><code class="block">div#header { background: url(../images/ie/header.png) no-repeat right top; }</code></p>
<p>All versions of IE are served a header that has the rounded, semi-transparent box as part of the background image. It&#8217;s not as bulletproof, but do users of Internet Explorer really care about that? Nope. Problem solved.</p>
<h2>2. Rounded content window</h2>
<p>See that rounded top of the content box? That&#8217;s a pretty important design element, so let&#8217;s keep it rounded for everyone. Easy enough to do in Firefox:</p>
<p><code class="block">div#content {<br />
&nbsp;&nbsp;clear: left;<br />
&nbsp;&nbsp;background-color: #FFF;<br />
&nbsp;&nbsp;border: 2px solid #EAEAEA;<br />
&nbsp;&nbsp;margin: 0 12px;<br />
&nbsp;&nbsp;padding: 12px;<br />
&nbsp;&nbsp;border-radius: 10px 10px 0 0;<br />
&nbsp;&nbsp;-moz-border-radius: 10px 10px 0 0;<br />
&nbsp;&nbsp;-webkit-border-top-left-radius: 10px;<br />
&nbsp;&nbsp;-webkit-border-top-right-radius: 10px;<br />
}</code></p>
<p>The part that rounds the corners, again, is the <code>border-radius</code>. Notice that <code>-webkit-border-radius</code> doesn&#8217;t adhere to the nice shorthand that <code>-moz-border-radius</code> and <code>border-radius</code> do. That&#8217;s why you get nice long attribute names like <code>-webkit-border-top-right-radius</code>. That&#8217;s a mouthful!</p>
<p>So, what has to happen to get these corners in IE? It&#8217;s actually a little bit complex, to be honest. Here&#8217;s what I did:</p>
<p><code class="block">div#content {<br />
&nbsp;&nbsp;padding: 0 12px 12px;<br />
&nbsp;&nbsp;border-width: 0 2px;<br />
}</code></p>
<p>So, here we removed the <code>padding</code> and <code>border</code> from the top of the content box. Then:</p>
<p><code class="block">ul#navigation {<br />
&nbsp;&nbsp;overflow: hidden;<br />
&nbsp;&nbsp;background: url(../images/ie/content-rounded-top.png) no-repeat left bottom;<br />
&nbsp;&nbsp;margin: 0 12px;<br />
&nbsp;&nbsp;padding: 10px 0 0 14px;<br />
}</code></p>
<p>We instead added the rounded corners as a <code>background-image</code> on the bottom of the navigation menu above the content box. We added some extra <code>padding</code> to make up for it.</p>
<p><code class="block">ul#navigation li {<br />
&nbsp;&nbsp;padding-bottom: 12px;<br />
}</code></p>
<p>Finally we added some padding to the bottom of the list items themselves. And that did the trick!</p>
<h2>3. Rounding of inner content boxes</h2>
<p>You see how some boxes inside of the content box have rounded corners, too? You know what I decided to do about these? Nothing. Not an important design element. NEXT!</p>
<h2>4. Partially transparent stripe</h2>
<p>The stripe that goes over the photograph is a pretty major design element as well. Once again, RGBa comes to the rescue:</p>
<p><code class="block">div#home-banner div#title {<br />
&nbsp;&nbsp;float: left;<br />
&nbsp;&nbsp;margin-top: 172px;<br />
&nbsp;&nbsp;padding: 8px;<br />
&nbsp;&nbsp;width: 625px;<br />
&nbsp;&nbsp;color: #FFF;<br />
&nbsp;&nbsp;background-color: rgba(0,54,99,.6);<br />
}</code></p>
<p><a href="http://twitter.com/scottmccracken/status/4002586414">RGBawesome</a>, indeed.</p>
<p>Et tu, IE? You guessed it. Just put the blue stripe in the image itself and serve that one to IE.</p>
<p><code class="block">div#home-banner { background-image: url(../images/ie/law-and-justice-ie.jpg);</code></p>
<p>Note that this approach doesn&#8217;t make sense if the image changes often. This one, luckily for me, does not.</p>
<p>There you have it. It was a great feeling to build the site with only modern browsers in mind. This allows you to structure the markup and style in the best, most semantic way possible. Then, you can fill in <em>only the necessary</em> gaps, improving the user experience in lesser browsers.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2009/11/30/selective-degradation-of-modern-css-for-internet-explorer/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Emphasized Links: What comes first, the a or the strong?</title>
		<link>http://www.darowski.com/tracesofinspiration/2009/03/06/emphasized-links-what-comes-first-the-a-or-the-strong/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2009/03/06/emphasized-links-what-comes-first-the-a-or-the-strong/#comments</comments>
		<pubDate>Sat, 07 Mar 2009 03:13:22 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Markup]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/?p=593</guid>
		<description><![CDATA[It all started quite harmlessly. I was working on a couple new pages and realized I&#8217;d never given much thought to how I handled the occasional bold link. Now, these isn&#8217;t presentational bold. I actually wanted to use emphasis on the words that are linked. We&#8217;re talking &#60;strong&#62;, not &#60;b&#62;, folks.
I tweeted:
When you place strong [...]]]></description>
			<content:encoded><![CDATA[<p>It all started quite harmlessly. I was working on a couple new pages and realized I&#8217;d never given much thought to how I handled the occasional bold link. Now, these isn&#8217;t presentational bold. I actually wanted to use emphasis on the words that are linked. We&#8217;re talking <code>&lt;strong&gt;</code>, not <code>&lt;b&gt;</code>, folks.</p>
<p>I tweeted:</p>
<blockquote cite="http://twitter.com/adarowski/status/1291230627"><p>When you place strong emphasis on a link, do you put the <code>&lt;strong&gt;</code> inside the <code>&lt;a&gt;</code> or the <code>&lt;a&gt;</code> inside the <code>&lt;strong&gt;</code>? I think I&#8217;m inconsistent.</p></blockquote>
<p>I had been putting the the <code>&lt;a&gt;</code> <strong>outside</strong> of the <code>&lt;strong&gt;</code>. Like this:</p>
<p><code>&lt;a href=&quot;http://mailchimp.com/&quot;&gt;&lt;strong&gt;MailChimp&lt;/strong&gt;&lt;/a&gt;</code></p>
<p>My reasoning was that if you take away the link, I would still want the phrase to be emphasized.</p>
<p>However, <a href="http://mattgillooly.com/">Matt</a> brought up some good points. His first was that I&#8217;m linking the phrase, not the emphasis. I can buy that. Also, he brought up the point that putting the <code>&lt;strong&gt;</code> outside is cleaner for semantic web scraping stuff.</p>
<p>I assumed this was minor and no big deal. But I&#8217;m happy to see that <a href="http://twitter.com/kirbyt/status/1291350559">there</a> <a href="http://twitter.com/chrisbloom7/status/1291354478">are</a> <a href="http://twitter.com/wrycoder/status/1291365443">others</a> who also care about this stuff. So, what do you do? What&#8217;s your reasoning?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2009/03/06/emphasized-links-what-comes-first-the-a-or-the-strong/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>The Heart of the Redesign: CSS Pseudo-elements</title>
		<link>http://www.darowski.com/tracesofinspiration/2009/02/22/the-heart-of-the-redesign-css-pseudo-elements/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2009/02/22/the-heart-of-the-redesign-css-pseudo-elements/#comments</comments>
		<pubDate>Sun, 22 Feb 2009 17:50:01 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Darowski Dot Com]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Markup]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/?p=498</guid>
		<description><![CDATA[One of my favorite parts of my site&#8217;s recent redesign—and the page that I started the redesign with—is the new Portfolio page. This is where the whole &#8220;exposed markup&#8221; thing came from. Here&#8217;s what I&#8217;m talking about:

What was I trying to do?
I have a full-time gig as the User Experience Designer for BatchBlue. That affords [...]]]></description>
			<content:encoded><![CDATA[<p>One of my favorite parts of <a href="http://www.darowski.com/tracesofinspiration/2009/02/16/markup-is-beautiful-the-darowskicom-redesign/">my site&#8217;s recent redesign</a>—and the page that I started the redesign with—is the new <a href="http://www.darowski.com/tracesofinspiration/portfolio/">Portfolio</a> page. This is where the whole &#8220;exposed markup&#8221; thing came from. Here&#8217;s what I&#8217;m talking about:</p>
<p><a href="http://www.flickr.com/photos/darowskidotcom/3296101705/" title="Adam Darowski : Portfolio by darowskidotcom, on Flickr"><img class="framed" src="http://farm4.static.flickr.com/3601/3296101705_877015d47a.jpg" width="500" height="359" alt="Adam Darowski : Portfolio" /></a></p>
<h2>What was I trying to do?</h2>
<p>I have a full-time gig as the User Experience Designer for <a href="http://batchblue.com">BatchBlue</a>. That affords me the ability to be a little creative with my portfoio—it isn&#8217;t my source of income. However, I do believe that all <a href="http://www.darowski.com/tracesofinspiration/2008/11/03/full-time-designers-should-do-some-side-work/">full-time designers should do a little freelance</a> to stay fresh. So, I&#8217;d still like to show what I&#8217;m about.</p>
<p>The design traits I want to convey to prospective clients and readers are simplicity, elegance, cleanliness, and a sharp attention to detail. I also want to communicate that markup and style are at the heart of what I do. I do a lot of different things, but I&#8217;m always happiest with a text editor, a web browser, and a refresh button.</p>
<p>Given all this background, my goal was to work the underlying markup into the visual design. </p>
<h2>How&#8217;d I do it?</h2>
<p>Since the &#8220;exposed markup&#8221; is merely presentational, I wanted to keep it out of the &#8220;real&#8221; markup. Basically, when you &#8220;View Source&#8221;, I don&#8217;t want you to see <code>&lt;h1&gt;&amp;lt;h1&amp;gt;Portfolio&amp;lt;/h1&amp;gt;&lt;h1&gt;</code>. I wanted the nice, clean <code>&lt;h1&gt;Portfolio&lt;h1&gt;</code>. The best way I could come up with to pull this off was with <a href="http://www.w3.org/TR/CSS2/generate.html#before-after-content">the :before and :after CSS pseudo-elements</a>.</p>
<p>Huh, pseudo-elements? Pseudo-elements are added to CSS selectors to give you a bit more selection control. The four pseudo-elements are <strong>:first-letter</strong> (allows you to style the first letter of the content contained within that tag), <strong>:first-line</strong> (allows you to style the first line), <strong>:before</strong> (allows you to add content before the tag), and <strong>:after</strong> (content after the tag).</p>
<p>The :before and :after pseudo-elements are great—except for one problem. You guessed it. IE. But not just IE6. IE7 still doesn&#8217;t support them. The additional content just doesn&#8217;t show up. For my portfolio, I decided that was a fine tradeoff. I&#8217;m really not targeting the type of users who would surf the web with IE (present company excluded, of course!). Besides, this approach actually well. If you use IE, you just don&#8217;t get the &#8220;exposed markup&#8221; tags. </p>
<p>Here&#8217;s how it looks in IE7:</p>
<p><a href="http://www.flickr.com/photos/darowskidotcom/3298490587/" title="Adam Darowski | Portfolio - in IE7 by darowskidotcom, on Flickr"><img class="framed" src="http://farm4.static.flickr.com/3533/3298490587_a8218a1c2f.jpg" width="500" height="321" alt="Adam Darowski | Portfolio - in IE7" /></a></p>
<h2>The markup</h2>
<p>The pseudo-elements allow me to use a pretty standard definition list:</p>
<p><code class="block">&lt;dl id=&quot;active-projects&quot;&gt;<br />
&nbsp;&nbsp;&lt;dt&gt;&lt;a href=&quot;http://www.darowski.com/tracesofinspiration/portfolio/batchbook/&quot;&gt;BatchBook&lt;/a&gt;&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd&gt;Small Business &lt;abbr title=&quot;customer relationship manager&quot;&gt;CRM&lt;/abbr&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd&gt;For &lt;a href=&quot;http://batchblue.com/&quot;&gt;BatchBlue Software&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd&gt;May 2007&amp;ndash;Present&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;dt&gt;&lt;a href=&quot;http://www.darowski.com/tracesofinspiration/portfolio/batchblue/&quot;&gt;BatchBlue.com&lt;/a&gt;&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd&gt;Corporate Website &amp;amp; Weblog&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd&gt;For &lt;a href=&quot;http://batchblue.com/&quot;&gt;BatchBlue Software&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd&gt;May 2007&amp;ndash;Present&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;dt&gt;&lt;a href=&quot;http://www.darowski.com/tracesofinspiration/portfolio/tabigail/&quot;&gt;Tabigail&lt;/a&gt;&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd&gt;A simple, gray, one-column, socially savvy WordPress theme&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd&gt;For the WordPress community&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd&gt;December 2008&amp;ndash;Present&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;dt&gt;&lt;a href=&quot;http://www.darowski.com/tracesofinspiration/portfolio/baseballtwit/&quot;&gt;BaseballTwit&lt;/a&gt;&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd&gt;Blog posts and Twitter tweets about baseball stats and history&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd&gt;For the sabermetric community&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd&gt;December 2008&amp;ndash;Present&lt;/dd&gt;<br />
&lt;/dl&gt;</code></p>
<h2>The CSS</h2>
<p>First, we know we want the :before and :after content to always appear italicized and (my favorite color) gray. So, let&#8217;s use the global selector with the pseudo-elements. This way we don&#8217;t have to reapply the color and style over and over again.</p>
<p><code class="block">*:before, *:after { color: #CECECE; font-style: italic; }</code></p>
<p>First, we&#8217;ll expose the opening and closing <code>&lt;dl&gt;</code> tags.</p>
<p><code class="block">dl#active-projects:before { content: &#39;&lt;dl id=&quot;active-projects&quot;&gt;&#39;;  }<br />
dl#active-projects:after { content: &#39;&lt;/dl&gt; &lt;!-- close #active-projects --&gt;&#39;;  }</code></p>
<p>For the content property, you can either use a string (like I did), an image (via <code>url(image.png)</code>), or any of the following: <code>open-quote</code>, <code>close-quote</code>, <code>no-open-quote</code>, or <code>no-close-quote</code>.</p>
<p><em><strong>Update:</strong> For some reason, this wasn&#8217;t rendering properly in Safari. The closing <code>&lt;/dl&gt;</code> was appearing after the first <code>&lt;dt&gt;</code>. So, instead, I needed to wrap the <code>&lt;dl&gt;</code> in a <code>&lt;div&gt;</code> (giving the <code>&lt;div&gt;</code> the id of &#8220;active-projects&#8221; instead). This tricked Safari into putting the closing <code>&lt;/dl&gt;</code> at the end of the <code>&lt;dl&gt;</code> where it belongs. If you know why Safari does this, please let me know!</em></p>
<p>Here&#8217;s the CSS for the <code>&lt;dt&gt;</code>:</p>
<p><code class="block">dt { margin: 10px 0 10px 24px; font-size: 125%; }<br />
dt a { font-weight: bold; }<br />
dt:before { content: &#39;&lt;dt&gt;&#39;; font-size: 80%; }<br />
dt:after { content: &#39;&lt;/dt&gt;&#39;; font-size: 80%; }</code></p>
<p>In the first line, the margin gives a little space on the top and bottom, plus a proper indenting for our markup. Since the <code>&lt;dt&gt;</code> is used for the project name, I bumped the size up a bit. I also made the links bold to stand out a bit more. Then, of course, comes the :before and :after. In this case, I also dropped the font size for the tags a bit (to offset the increase in size of the links).</p>
<p>And now, the <code>&lt;dd&gt;</code>:</p>
<p><code class="block">dd { text-indent: -38px; margin-bottom: 4px; padding-left: 56px; }<br />
dd:before { content: &#39;&lt;dd&gt;&#39;;  }<br />
dd:after { content: &#39;&lt;/dd&gt;&#39;;  }</code></p>
<p>In addition to a little bit of a margin, I added a bunch of padding on the left and then used a negative text-indent. In the event that the <code>&lt;dd&gt;</code> goes to two lines, this will cause it to indent quite nicely.</p>
<p>And there you have it&#8230; pretty bits of markup used as a design element without muddying your &#8220;real&#8221; markup.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2009/02/22/the-heart-of-the-redesign-css-pseudo-elements/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>My Favorite CSS Techniques</title>
		<link>http://www.darowski.com/tracesofinspiration/2008/11/14/my-favorite-css-techniques/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2008/11/14/my-favorite-css-techniques/#comments</comments>
		<pubDate>Fri, 14 Nov 2008 18:11:55 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[BatchBlue]]></category>
		<category><![CDATA[BatchBook]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Markup]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[Web Standards]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/?p=267</guid>
		<description><![CDATA[I&#8217;ve been creating websites for 12 years. I started using CSS many years ago, but for a long time (like many designers) I only used it for text formatting. It wasn&#8217;t until 2006 that I took the plunge into pure CSS for layout. Since then, I&#8217;ve developed some favorite techniques that I use over and [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been creating websites for 12 years. I started using CSS many years ago, but for a long time (like many designers) I only used it for text formatting. It wasn&#8217;t until 2006 that I took the plunge into pure CSS for layout. Since then, I&#8217;ve developed some favorite techniques that I use over and over again. Here, I&#8217;m finally putting them in one place. </p>
<p>These techniques don&#8217;t require any acrobatic wizardry or anything. They mirror my design approach—simple, clear, minimal, and (hopefully) easy to follow. It is because of this approach that my cross-browser fixes are usually quite minimal. That&#8217;s why you won&#8217;t see many IE tweaks here.</p>
<p>Before I start&#8230;</p>
<h2>How did I learn CSS?</h2>
<p>I&#8217;ve only picked up a few CSS books over the years, but I&#8217;ve leaned on those books <em>heavily</em>. They are:</p>
<ul>
<li><a href="http://simplebits.com/publications/solutions/"><em>Web Standards Solutions: The Markup and Style Handbook</em></a> by Dan Cederholm</li>
<li><a href="http://simplebits.com/publications/bulletproof/"><em>Bulletproof Web Design</em></a> (1st edition) by Dan Cederholm</li>
<li><a href="http://htmlmastery.com/"><em>HTML Mastery</em></a> by Paul Haine</li>
<li><a href="http://www.cssmastery.com/"><em>CSS Mastery</em></a> by Andy Budd</li>
</ul>
<p>What? No <a href="http://www.zeldman.com/dwws/">Zeldman</a>? I know, I know. I started with the local protégé, Mr. Cederholm. He&#8217;s taken me far.</p>
<p>Of course, I also read a ton of web design blogs and online publications. The key ones (for me) are:</p>
<ul>
<li><a href="http://simplebits.com/">SimpleBits</a> (Dan Cederholm)</li>
<li><a href="http://www.456bereastreet.com/">456 Berea Street</a> (Roger Johansson)</li>
<li><a href="http://www.alistapart.com/">A List Apart</a></li>
<li><a href="http://www.thinkvitamin.com/">Vitamin</a></li>
<li>Email list from the <a href="http://webstandardsgroup.org/">Web Standards Group</a></li>
</ul>
<p>Now that you know how I learned to do this, here&#8217;s what I find myself using over and over again:</p>
<h2>Image Replacement on Headers</h2>
<p>Headers (<code>h1</code>, <code>h2</code>, etc.) are very, very important. For starters, search engines <strong>love</strong> them. When Google crawls your page, it first asks &#8220;Okay, where&#8217;s the <code>h1</code>? That will tell me what this page is.&#8221; If you don&#8217;t include headers, then you&#8217;re making Google guess. Why make Google guess?</p>
<p>This is what the <code>h1</code> of Darowski.com looks like:</p>
<p><code>&lt;h1&gt;&lt;a href="http://www.darowski.com/tracesofinspiration"&gt;Adam Darowski&rsquo;s Traces of Inspiration&lt;/a&gt;&lt;/h1&gt;</code></p>
<p>And here&#8217;s how it renders with no CSS:</p>
<p><img src="http://www.darowski.com/tracesofinspiration/techniques/imagereplacement1.png" alt="h1 with no styling" /></p>
<p>Of course, that just ain&#8217;t gonna do. Here&#8217;s how it renders with the rest of the design:</p>
<p><img src="http://www.darowski.com/tracesofinspiration/techniques/imagereplacement2.png" alt="h1 styled and integrated with design" /></p>
<p>So, how do you do that? With image replacement. We&#8217;re taking the <code>h1</code>, then giving it a background image and height &#038; weight (using the dimensions from the background image). For the text itself, we give it a negative indent so that the text doesn&#8217;t appear on the page. It&#8217;s still there for screen readers and search engines, but the typical user won&#8217;t see it.</p>
<p>Here&#8217;s the CSS:</p>
<p><code class="block">h1 {<br />
&nbsp;&nbsp;margin: 0;<br />
}<br />
h1 a {<br />
&nbsp;&nbsp;display: block;<br />
&nbsp;&nbsp;background: url(darowski.png) no-repeat 0 0;<br />
&nbsp;&nbsp;height: 103px;<br />
&nbsp;&nbsp;width: 449px;<br />
&nbsp;&nbsp;text-indent: -9999px;<br />
}<br />
</code></p>
<p>Why is most of the code applied to the link inside the h1? Because if you apply the negative indent to the text <em>inside</em> the <code>h1</code>, the clickable link actually appears off the page. If you indent the text inside the clickable link, the link itself still appears on the page—only the text inside is hidden. I know, weird. But it works!</p>
<h2>Implementing types and values using Microformats</h2>
<p>Using <a href="http://microformats.org/">Microformats</a> to mark up an email address is pretty easy.</p>
<p><code>&lt;a href="mailto:adarowski@gmail.com"&gt;adarowski@gmail.com&lt;/a&gt;</code></p>
<p>becomes:</p>
<p><code>&lt;a class="email" href="mailto:adarowski@gmail.com"&gt;adarowski@gmail.com&lt;/a&gt;</code></p>
<p>And that&#8217;s it.</p>
<p>But what if you want to add more information to that email address, like if it is a home or work email address? In that case, inside of the object with the class of &#8220;email&#8221;, you need two more objects: one with the class name of &#8220;type&#8221; and another with the class name of &#8220;value&#8221;. The &#8220;type&#8221; is where you define home or work while &#8220;value&#8221; is the actual email address.</p>
<p>Here&#8217;s an example from my <a href="http://www.darowski.com/tracesofinspiration/about/">About page</a>:</p>
<p><code class="block">&lt;p&gt;Work Info:&lt;/p&gt;<br />
&lt;ul&gt;<br />
&nbsp;&nbsp;&lt;li&gt;Website: &lt;a href="http://batchblue.com/" class="url"&gt;http://batchblue.com/&lt;/a&gt;&lt;/li&gt;<br />
&nbsp;&nbsp;&lt;li&gt;Blog: &lt;a href="http://darowski.com/" class="url"&gt;http://blog.batchblue.com/&lt;/a&gt;&lt;/li&gt;<br />
&nbsp;&nbsp;&lt;li class="email"&gt;&lt;span class="type hidetext"&gt;Work&lt;/span&gt; Email: &lt;a href="mailto:adarowski@batchblue.com" class="value"&gt;adarowski@batchblue.com&lt;/a&gt;&lt;/li&gt;<br />
&nbsp;&nbsp;&lt;li class="tel"&gt;&lt;span class="type hidetext"&gt;Work&lt;/span&gt; Phone: &lt;span class="value"&gt;(888) 402-2824&lt;/span&gt;&lt;/li&gt;<br />
&lt;/ul&gt;<br />
</code></p>
<p>So, inside the <code>li</code> (which has the &#8220;email&#8221; class) lives two <code>span</code>s—one &#8220;type&#8221; and one &#8220;value&#8221;. The HTML renders like so with no CSS:</p>
<p><img src="http://www.darowski.com/tracesofinspiration/techniques/microformatstype1.png" alt="markup with microformats and no CSS" /></p>
<p>But you&#8217;ll notice that in this case, I have a &#8220;hidetext&#8221; style on the &#8220;type&#8221;. That&#8217;s because I only want to display it as &#8220;Email&#8221;. I simply add this style:</p>
<p><code>span.hidetext {<br />
&nbsp;&nbsp;display: none;<br />
}<br />
</code></p>
<p>and I&#8217;m done. It renders like so:</p>
<p><img src="http://www.darowski.com/tracesofinspiration/techniques/microformatstype2.png" alt="Microformatted markup with CSS to hide type" /></p>
<p>I don&#8217;t always hide the types, though. On <a href="http://flickr.com/photos/batchbluesoftware/2906686850/sizes/o/in/set-72157607657016965/">BatchBook&#8217;s contact detail pages</a>, the type works very well into the layout:</p>
<p><img src="http://www.darowski.com/tracesofinspiration/techniques/microformatstype3.png" alt="Microformat types for email addresses works into BatchBook's UI nicely" /></p>
<h2>Custom icons on list items</h2>
<p>Here&#8217;s one I use A LOT. Unordered lists are wonderful. I use them all the time. But that bullet that denotes an unordered list by default can be a bit boring. Here&#8217;s what I did to spruce up the bloggers list on the <a href="http://blog.batchblue.com/">BatchBlue Blog</a>:</p>
<p><img src="http://www.darowski.com/tracesofinspiration/techniques/customlists1.png" alt="BatchBlue Blog blogger list with icons or each list item" /></p>
<p>And here&#8217;s the markup:</p>
<p><code class="block">&lt;h2&gt;Bloggers&lt;/h2&gt;<br />
&lt;ul id="bloggers"&gt;<br />
&nbsp;&nbsp;&lt;li id="calhoun"&gt;&lt;a href="http://blog.batchblue.com/?author=6" title="Archive for Keri Calhoun"&gt;Keri Calhoun&lt;/a&gt;&lt;/li&gt;<br />
&nbsp;&nbsp;&lt;li id="darowski"&gt;&lt;a href="http://blog.batchblue.com/?author=5" title="Archive for Adam Darowski"&gt;Adam Darowski&lt;/a&gt;&lt;/li&gt;<br />
&nbsp;&nbsp;&lt;li id="larson"&gt;&lt;a href="http://blog.batchblue.com/?author=8" title="Archive for Will Larson"&gt;Will Larson&lt;/a&gt;&lt;/li&gt;<br />
&nbsp;&nbsp;&lt;li id="ohara"&gt;&lt;a href="http://blog.batchblue.com//?author=4" title="Archive for Pamela O'Hara"&gt;Pamela O'Hara&lt;/a&gt;&lt;/li&gt;<br />
&nbsp;&nbsp;&lt;li id="ransom"&gt;&lt;a href="http://blog.batchblue.com/?author=1" title="Archive for Sean Ransom"&gt;Sean Ransom&lt;/a&gt;&lt;/li&gt;<br />
&nbsp;&nbsp;&lt;li id="riggen"&gt;&lt;a href="http://blog.batchblue.com/?author=2" title="Archive for Michelle Riggen-Ransom"&gt;Michelle Riggen-Ransom&lt;/a&gt;&lt;/li&gt;<br />
&nbsp;&nbsp;&lt;li id="sweeney"&gt;&lt;a href="http://blog.batchblue.com/?author=7" title="Archive for Stephanie Sweeney"&gt;Stephanie Sweeney&lt;/a&gt;&lt;/li&gt;<br />
&lt;/ul&gt;<br />
</code></p>
<p>As you can see, we gave the list an id of &#8220;bloggers&#8221; and each list item an id of the blogger&#8217;s last name. That allows us to apply a different icon to each blogger&#8217;s list item.</p>
<p>But first, here&#8217;s the CSS to get the list looking the way we want (correct padding, left indenting, removing the default bullet):</p>
<p><code class="block">ul#bloggers {<br />
&nbsp;&nbsp;margin: 0;<br />
&nbsp;&nbsp;list-style: none;<br />
}<br />
ul#bloggers li {<br />
&nbsp;&nbsp;padding: 4px 0;<br />
&nbsp;&nbsp;margin: 1px;<br />
&nbsp;&nbsp;padding-left: 24px;<br />
}<br />
ul#bloggers li a {<br />
&nbsp;&nbsp;text-decoration: none;<br />
}<br />
</code></p>
<p>Next, here is the CSS for each of the individual line items:</p>
<p><code class="block">#calhoun { background: url(../images/keri-calhoun-icon.jpg) no-repeat left 2px; }<br />
#darowski { background: url(../images/adam-darowski-icon.jpg) no-repeat left 2px; }<br />
#larson { background: url(../images/will-larson-icon.jpg) no-repeat left 2px; }<br />
#ohara { background: url(../images/pamela-ohara-icon.jpg) no-repeat left 2px; }<br />
#ransom { background: url(../images/sean-ransom-icon.jpg) no-repeat left 2px; }<br />
#riggen { background: url(../images/michelle-riggen-ransom-icon.jpg) no-repeat left 2px; }<br />
#sweeney { background: url(../images/stephanie-sweeney-icon.jpg) no-repeat left 2px; }<br />
</code></p>
<p>If you look around any site I&#8217;ve created, you&#8217;ll probably see a lot of these. The footer at Darowski.com uses it:</p>
<p><img src="http://www.darowski.com/tracesofinspiration/techniques/customlists2.png" alt="Darowski.com footer with custom icons on list items" /></p>
<h2>Creative use of definition lists</h2>
<p>As much as I love unordered lists, there&#8217;s one thing I love more. Definition lists!</p>
<p>I admit, I had never even used one before reading <em>Web Standards Solutions</em>, but now I use them all the time. All contact info within BatchBook is laid out in definition lists. Think about it&#8230; what better defines the home email than the email address itself? The definition list is an unordered list with even more semantic meaning.</p>
<p>When we launched the new personas section of <a href="http://www.batchblue.com/">BatchBlue.com</a>, I went with a definition list. The names of the personas are the definition terms (<code>dt</code>) and the person used in the persona as well as the information that person is likely to track help define it (<code>dd</code>).</p>
<p>Here&#8217;s the complete markup:</p>
<p><code class="block">&lt;h3 class="persona-header"&gt;Who needs a CRM anyway?&lt;/h3&gt;<br />
&lt;div id="personas" class="clearfix"&gt;<br />
&nbsp;&nbsp;&lt;dl class="sales"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dt&gt;Sales professionals&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="photo"&gt;&lt;a title="Peter Caputa" href="http://www.linkedin.com/in/pc4media" target="_blank"&gt;PC4Media.net&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="track"&gt;Customers, &lt;span&gt;leads,&lt;/span&gt; conversions&hellip;&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;/dl&gt;<br />
&nbsp;&nbsp;&lt;dl class="freelancers"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dt&gt;Freelancers&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="photo"&gt;&lt;a title="Alex Taylor" href="http://bigringdesign.com/" target="_blank"&gt;Big Ring Design&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="track"&gt;Clients, &lt;span&gt;partnerships,&lt;/span&gt; invoices &hellip;&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;/dl&gt;<br />
&nbsp;&nbsp;&lt;dl class="virtalassistants"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dt&gt;Virtual assistants&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="photo"&gt;&lt;a title="Michelle Wolverton" href="http://chelpixie.com/" target="_blank"&gt;ChelPixie&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="track"&gt;To-dos, &lt;span&gt;schedules,&lt;/span&gt; executives&hellip;&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;/dl&gt;<br />
&nbsp;&nbsp;&lt;dl class="entrepreneurs"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dt&gt;Entrepreneurs&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="photo"&gt;&lt;a title="Jack Templin" href="http://thoughtcap.com/" target="_blank"&gt;ThoughtCap&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="track"&gt;Opportunities, &lt;span&gt;partners,&lt;/span&gt; VCs&hellip;&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;/dl&gt;<br />
&nbsp;&nbsp;&lt;dl class="editors"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dt&gt;Editors&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="photo"&gt;&lt;a title="Anisa Raoof" href="http://kidoinfo.com" target="_blank"&gt;KidoInfo&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="track"&gt;Writers, &lt;span&gt;deadlines,&lt;/span&gt; articles&hellip;&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;/dl&gt;<br />
&nbsp;&nbsp;&lt;dl class="consultants"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dt&gt;Consultants&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="photo"&gt;&lt;a title="Brent Leary" href="http://www.brentleary.com/" target="_blank"&gt;CRM Essentials&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="track"&gt;Clients, &lt;span&gt;vendors,&lt;/span&gt; proposals&hellip;&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;/dl&gt;<br />
&nbsp;&nbsp;&lt;dl class="eventorganizers"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dt&gt;Event organizers&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="photo"&gt;&lt;a title="Chris Brogan" href="http://chrisbrogan.com/" target="_blank"&gt;Chris Brogan&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="track"&gt;Speakers, &lt;span&gt;attendees,&lt;/span&gt; sponsors&hellip;&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;/dl&gt;<br />
&nbsp;&nbsp;&lt;dl class="nonprofits"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dt&gt;Non-Profits&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="photo"&gt;&lt;a title="Danielle Brigida" href="http://www.nwf.org/wildlife/" target="_blank"&gt;National Wildlife Federation&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="track"&gt;Donors, &lt;span&gt;fundraisers,&lt;/span&gt; volunteers&hellip;&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;/dl&gt;<br />
&nbsp;&nbsp;&lt;dl class="realestateagents"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dt&gt;Real estate agents&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="photo"&gt;&lt;a title="Gerry Bourgeois" href="http://realtyman.com/" target="_blank"&gt;RealtyMan.com&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="track"&gt;Buyers, &lt;span&gt;sellers,&lt;/span&gt; referrals&hellip;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="custom"&gt;&lt;a href="realestate/"&gt;Custom version available&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;/dl&gt;<br />
&nbsp;&nbsp;&lt;dl class="designers"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dt&gt;Designers&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="photo"&gt;&lt;a title="Mikey Hougland" href="http://lamikey.com/" target="_blank"&gt;lamikey.com&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="track"&gt;Projects, &lt;span&gt;clients,&lt;/span&gt; deliverables&hellip;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="custom"&gt;&lt;a href="designer/"&gt;Custom version available&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;/dl&gt;<br />
&nbsp;&nbsp;&lt;dl class="marketers"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dt&gt;Marketers&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="photo"&gt;&lt;a title="Saul Colt" href="http://saulcolt.com" target="_blank"&gt;Saul Colt&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="track"&gt;Press, &lt;span&gt;bloggers,&lt;/span&gt; social media&hellip;&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;/dl&gt;<br />
&nbsp;&nbsp;&lt;dl class="superheroes"&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dt&gt;Super Heroes&lt;/dt&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="photo"&gt;&lt;a title="Small Business Super Heroes" href="super-heroes.html"&gt;Super Heroes&lt;/a&gt;&lt;/dd&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;dd class="track"&gt;We know &lt;span&gt;you&rsquo;re out&lt;/span&gt; there!&lt;/dd&gt;<br />
&nbsp;&nbsp;&lt;/dl&gt;<br />
&lt;/div&gt; &lt;!-- close #personas --&gt;<br />
</code></p>
<p>An abbreviated version of how that looks unstyled:</p>
<p><img src="http://www.darowski.com/tracesofinspiration/techniques/personas1.png" alt="Unstyled personas box" /></p>
<p>And here&#8217;s how I got that to look:</p>
<p><img src="http://www.darowski.com/tracesofinspiration/techniques/personas2.png" alt="Styled personas box" /></p>
<p>I&#8217;ll admit&#8230; I&#8217;m a bit proud of that one. <img src='http://www.darowski.com/tracesofinspiration/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>So, the CSS. There&#8217;s a lot of it. Let&#8217;s start with the basic definition list:</p>
<p><code class="block">#personas {<br />
&nbsp;&nbsp;border-top: 1px solid #CACACA;<br />
&nbsp;&nbsp;border-left: 1px solid #CACACA;<br />
&nbsp;&nbsp;margin-bottom: 10px;<br />
&nbsp;&nbsp;width: 688px;<br />
}<br />
#personas dl {<br />
&nbsp;&nbsp;float: left;<br />
&nbsp;&nbsp;width: 163px;<br />
&nbsp;&nbsp;padding: 4px;<br />
&nbsp;&nbsp;border-bottom: 1px solid #CACACA;<br />
&nbsp;&nbsp;border-right: 1px solid #CACACA;<br />
&nbsp;&nbsp;margin: 0;<br />
}<br />
#personas dt {<br />
&nbsp;&nbsp;font-family: Georgia,serif;<br />
&nbsp;&nbsp;font-size: 120%;<br />
&nbsp;&nbsp;color: #004A8D;<br />
&nbsp;&nbsp;padding-bottom: 2px;<br />
}<br />
#personas dd {<br />
&nbsp;&nbsp;margin: 0;<br />
}<br />
</code></p>
<p>So, the whole thing is in a div (with an id of &#8220;personas&#8221;) that has a top and left 1-pixel border. The reason I did this is the individual definition lists inside the div will have bottom and right borders. That means we don&#8217;t have any double borders on any side.</p>
<p>Above, I&#8217;ve also set the width for each <code>dl</code> and floated it. The <code>dt</code> simply has some text formatting while the <code>dd</code> has its margin eliminated.</p>
<p>Here&#8217;s some more styling done to the definitions:</p>
<p><code class="block">#personas dd.track {<br />
&nbsp;&nbsp;color: #666;<br />
&nbsp;&nbsp;font-family: Georgia, serif;<br />
&nbsp;&nbsp;font-style: italic;<br />
&nbsp;&nbsp;font-size: 110%;<br />
&nbsp;&nbsp;line-height: 120%;<br />
}<br />
#personas dd.track span {<br />
&nbsp;&nbsp;display: block;<br />
}<br />
#personas dd.custom {<br />
&nbsp;&nbsp;font-size: 80%;<br />
&nbsp;&nbsp;margin-top: 3px;<br />
&nbsp;&nbsp;padding-left: 22px;<br />
&nbsp;&nbsp;background-position: left 50%;<br />
}<br />
#personas dd.custom a:link,<br />
#personas dd.custom a:visited,<br />
#personas dd.custom a:hover,<br />
#personas dd.custom a:active {<br />
&nbsp;&nbsp;color: #F88C17;<br />
&nbsp;&nbsp;text-decoration: none;<br />
}<br />
#personas dd.custom a:hover {<br />
&nbsp;&nbsp;color: #F88C17;<br />
&nbsp;&nbsp;text-decoration: underline;<br />
}<br />
#personas dl.realestateagents dd.custom {<br />
&nbsp;&nbsp;background: url(../images/icon-realestate.png) no-repeat;<br />
}<br />
#personas dl.designers dd.custom {<br />
&nbsp;&nbsp;background: url(../images/icon-designer.png) no-repeat;<br />
}<br />
#personas dl.designers,<br />
#personas dl.realestateagents,<br />
#personas dl.marketers,<br />
#personas dl.superheroes {<br />
&nbsp;&nbsp;min-height: 95px;<br />
}<br />
</code></p>
<p>First, we are styling the text of the &#8220;track&#8221; definition (that&#8217;s the one we use to explain what each persona will track). I threw a very non-semantic <code>span</code> on the middle item in each of those. The reason I did that is so I could make it display as block (force it to a new line) to make sure they all line up the same. </p>
<p>A couple items in the bottom row have another definition with the class &#8220;custom&#8221;. This is to denote we have a custom version of BatchBook for this persona. First, I adjust the font size, margin, and padding. Then, I set the background position of the icons (in the same manner as explained above). Next, I set the link styles. Then, I set the background images for the Real Estate and Designers version. If you&#8217;re a designer, you just may find <a href="http://www.batchblue.com/designer/">BatchBook for Designers</a> handy. <img src='http://www.darowski.com/tracesofinspiration/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>Finally, I set the minimum height of the bottom row to make room for that &#8220;custom&#8221; style, even if it isn&#8217;t there. That way the boxes all line up on the bottom. <em>(I realize this isn&#8217;t completely bulletproof, but these boxes will all have the exact same text in them so box height is easier to plan for.)</em></p>
<p>Finally, we have the thumbnail photos, which I&#8217;m actually going to cover in the next technique.</p>
<h2>CSS sprites</h2>
<p>I&#8217;ve recently been turned on to the wonder that is <a href="http://www.alistapart.com/articles/sprites/">CSS Sprites</a>. What are they? Well, for examples like the personas box above, I&#8217;d need to call 12 graphics. Instead of creating twelve graphics, I&#8217;ve created one that looks like this:</p>
<p><img src="http://www.darowski.com/tracesofinspiration/techniques/personas.jpg" alt="Personas CSS sprites file" /></p>
<p>Now, I just call the same graphic and only expose part of it, depending which persona it is. Sure, the file is bigger, but calling one image and caching it is a LOT easier on the server than fetching twelve smaller images. </p>
<p>And this is only a small example. Every button in BatchBook is now in one single graphic file (it&#8217;s pretty darn big). I just call that one graphic and adjust the background position.</p>
<p>So, here&#8217;s how the CSS works for the personas table. First, here&#8217;s how we style each photo:</p>
<p><code class="block">#personas dd.photo a {<br />
&nbsp;&nbsp;float: left;<br />
&nbsp;&nbsp;display: block;<br />
&nbsp;&nbsp;height: 45px;<br />
&nbsp;&nbsp;width: 45px;<br />
&nbsp;&nbsp;text-indent: -9999px;<br />
&nbsp;&nbsp;background: url(../images/personas.jpg) no-repeat;<br />
&nbsp;&nbsp;margin-top: 3px;<br />
&nbsp;&nbsp;margin-right: 8px;<br />
}<br />
</code></p>
<p>So, we float it, set a height &#038; width, indent the text (like covered earlier), set a background image, and give it some margins. Right now, we&#8217;re calling the same image and position for each. Here&#8217;s how we adjust the positioning for each photo:</p>
<p><code class="block">#personas dl.sales dd.photo a { background-position: 0 0; }<br />
#personas dl.freelancers dd.photo a { background-position: -45px 0; }<br />
#personas dl.virtalassistants dd.photo a { background-position: -90px 0; }<br />
#personas dl.entrepreneurs dd.photo a { background-position: -135px 0; }<br />
#personas dl.editors dd.photo a { background-position: -180px 0; }<br />
#personas dl.consultants dd.photo a { background-position: -225px 0; }<br />
#personas dl.eventorganizers dd.photo a { background-position: -270px 0; }<br />
#personas dl.nonprofits dd.photo a { background-position: -315px 0; }<br />
#personas dl.designers dd.photo a { background-position: -360px 0; }<br />
#personas dl.realestateagents dd.photo a { background-position: -405px 0; }<br />
#personas dl.marketers dd.photo a { background-position: -450px 0; }<br />
#personas dl.superheroes dd.photo a { background-position: -495px 0; }<br />
</code></p>
<p>So, with each <code>dl</code>, we change the horizontal position by 45 pixels (which makes sense, since the photos are 45 pixels wide!). If I need to add more personas, I just add them to the image, save it again, and add a few lines to the CSS. Done!</p>
<h2>Auto-clearing with .clearfix</h2>
<p>I use this one all the time, too—including in the personas example above. Say you&#8217;ve got a <code>div</code> and you put two elements in it. You float one left and float the other right. You need to clear that <code>div</code> so everything lines up correctly under it and nothing crashes together. </p>
<p>You could make sure the element after it uses a <code>clear: both;</code> style. But, you&#8217;d have to remember to put that in every single time. And what if you insert something in between them? It breaks. It is much cleaner to get the divs to clear themselves.</p>
<p>You can do with using the <a href="http://csscreator.com/?q=attributes/containedfloat.php">clearfix class</a>. Here&#8217;s how it looks:</p>
<p><code class="block">.clearfix:after {<br />
&nbsp;&nbsp;content: ".";<br />
&nbsp;&nbsp;display: block;<br />
&nbsp;&nbsp;height: 0;<br />
&nbsp;&nbsp;clear: both;<br />
&nbsp;&nbsp;visibility: hidden;<br />
}<br />
</code></p>
<p>Now, &#8220;after&#8221; the element with the class &#8220;clearfix&#8221;, it will render a &#8220;.&#8221;, display it as block (forcing a new line), set the height to &#8220;0&#8243; (I believe this is to make Firefox behave), hide it, and—of course—clear both!</p>
<p>In your IE6 and IE7 stylesheets, you&#8217;ll just have to add this:</p>
<p><code>.clearfix { height: 1%; }</code></p>
<p>That will trigger &#8220;hasLayout&#8221;. I&#8217;m not even going to try to explain hasLayout. I&#8217;ll leave it to <a href="http://www.satzansatz.de/cssd/onhavinglayout.html">this guy</a>.</p>
<h2>Font sizing: keywords &#038; percentages</h2>
<p>One of the first things you need to decide when you design a site with CSS is how you&#8217;re going to size your text. You&#8217;ve got (essentially) three options:</p>
<ul>
<li>Pixels (px)</li>
<li>Ems (em)</li>
<li>Keywords (small, medium, large, etc.)</li>
</ul>
<p>Pixels are fine for sizing text. It&#8217;s probably what you&#8217;re used to. But, there&#8217;s a problem. </p>
<p>It is quite common for users to increase the size of text on web pages. Let&#8217;s face it, a lot of sites are built by 20somethings with perfect eyesight. I wouldn&#8217;t be able to read many sites I created in college. I&#8217;m among those that will bump up the font size on sites occasionally.</p>
<p>But, as always, the problem is Internet Explorer. IE won&#8217;t adjust the size of text rendered in pixels. Kind of kills the #1 accessibility feature right there.</p>
<p>Ems are a perfectly usable workaround. But <a href="http://www.clagnut.com/blog/348/">as you can see</a>, they can be a bit difficult to grasp. I&#8217;ll be honest&#8230; I never bothered. I always thought it would be neat to create a completely em-based design so that the entire site zoomed in and out along with the text size. But now that modern browsers are replacing the text sizing option with a full-page zoom, that type of functionality is being handled by the browser. So, it&#8217;s a lot of extra work that, quite honestly, I&#8217;m glad I didn&#8217;t do.</p>
<p>So, what do I use? I use those silly keywords that come with HTML. You know&#8230; small, medium, large, etc. That&#8217;s me. Well, I actually only really use small. Because I use that as the baseline for my entire site. I then use percentages to adjust sizes accordingly.</p>
<p>First, what does it look like? I start off by establishing <code>small</code> as my baseline.</p>
<p><code>body { font-size: small; }</code></p>
<p>Then, in BatchBook I drop that down to 95% right off the bat to shrink it ever so slightly.</p>
<p><code>div#content { font-size: 95%; }</code></p>
<p>I actually leave this step out on BatchBlue.com. I guess that&#8217;s because when you&#8217;re actually inside the app, every pixel is roughly 5% more valuable. <img src='http://www.darowski.com/tracesofinspiration/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>This becomes the default font size. I then use percentages to scale headings up and supplemental text down. So, for example, if I&#8217;m adding a little note to a section that I want to appear a bit smaller, I&#8217;d mark it up as:</p>
<p><code>p.note { font-size: 90%; }</code></p>
<p>Then, to style my headings I scale it up:</p>
<p><code>h1 { font-size: 180%; }<br />
h2 { font-size: 140%; }<br />
h3  {font-size: 110%; }</code></p>
<p>With the increase in prominence of full-page zoom, I&#8217;ve considered going back to pixels. I still wouldn&#8217;t do a completely em-based design, though. I just don&#8217;t have the urge to show off my math skills that much.</p>
<h2>Override iPhone text adjustment</h2>
<p>I&#8217;ll finish with a very simple one. I like to make sure things look good on my iPhone, so I was delighted to find this on the Apple site:</p>
<blockquote cite="http://developer.apple.com/webapps/designingcontent.php">
<p>Safari on iPhone adjusts the text size so it&#8217;s more readable after the user double taps. After a double-tap, Safari on iPhone gets the width of the block of text and determines the width after a double-tap. Safari on iPhone then determines an appropriate multiplier that is applied to the layout.</p>
<p>Sometimes you might find that automatic text size adjustment doesn&#8217;t produce ideal results. For example, text in absolute-positioned elements might overflow the viewport after adjustment. Other pages might need a few minor adjustments to make them look their best. In these cases, you can override the text size adjustment.</p>
<p>Use the -webkit-text-size-adjust CSS property to override Safari&#8217;s default text size adjustment. The values for -webkit-text-size-adjust are:</p>
<ul>
<li>none: &lt;body style=&#8221;-webkit-text-size-adjust:none&#8221;&gt;</li>
<li>auto: &lt;table style=&#8221;-webkit-text-size-adjust:auto&#8221;&gt;</li>
<li>multiplier percentages: &lt;div style=&#8221;-webkit-text-size-adjust:200%&#8221;&gt;</li>
</ul>
</blockquote>
<p>Only thing is&#8230; I find the results from -webkit-text-size-adjust can make things look weird. You just never know. Sometimes a paragraph will appear half the size of an unordered list for no apparent reason. So, on BatchBlue.com and BatchBook, I&#8217;ve added this:</p>
<p><code>html {-webkit-text-size-adjust: none}</code></p>
<p>And we&#8217;re in business! Everything looks like it does on regular ol&#8217; Safari.</p>
<h2>Dassit!</h2>
<p>So, there you have it. That&#8217;s certainly not everything I use. And I&#8217;ve certainly used more complex solutions than those. But, the more complex something is, the less likely I am to use it again.</p>
<p><em>So, tell me dear reader, what are your favorite CSS techniques?</p>
<p>Or, what are you having a hard time wrapping your brain around (in regards to CSS)?</em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2008/11/14/my-favorite-css-techniques/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Multi-Author Comment Styling in WordPress</title>
		<link>http://www.darowski.com/tracesofinspiration/2008/06/07/multi-author-comment-styling-in-wordpress/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2008/06/07/multi-author-comment-styling-in-wordpress/#comments</comments>
		<pubDate>Sun, 08 Jun 2008 02:54:19 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Web Standards]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/?p=244</guid>
		<description><![CDATA[It always kind of bugged me a bit that comments I made on my own posts looked exactly like everyone else&#8217;s. It took me a long time to dig into how to make them look different, but I finally did. So, here&#8217;s how I styled author comments differently on this blog and on the BatchBlue [...]]]></description>
			<content:encoded><![CDATA[<p>It always kind of bugged me a bit that comments I made on my own posts looked exactly like everyone else&#8217;s. It took me a long time to dig into how to make them look different, but I finally did. So, here&#8217;s how I styled author comments differently on this blog and on the <a href="http://blog.batchblue.com">BatchBlue Blog</a>.</p>
<p>First of all, so you can get an idea of what I&#8217;m talking about, here&#8217;s how comments I leave on this blog look:</p>
<p><a href="http://www.flickr.com/photos/darowskidotcom/2560118020/" title="Darowski.com - Author Comment Style by darowskidotcom, on Flickr"><img src="http://farm4.static.flickr.com/3017/2560118020_83d85471bd.jpg" width="500" height="360" alt="Darowski.com - Author Comment Style" /></a></p>
<p>And on the BatchBlue Blog, here&#8217;s how a comment I leave looks:</p>
<p><a href="http://www.flickr.com/photos/darowskidotcom/2559295069/" title="BatchBlue Blog - Author Comment Style by darowskidotcom, on Flickr"><img src="http://farm4.static.flickr.com/3185/2559295069_58618b9289.jpg" width="500" height="322" alt="BatchBlue Blog - Author Comment Style" /></a></p>
<p>First thing I did was find <a href="http://www.mattcutts.com/blog/highlight-author-comments-wordpress/">this great blog post</a> by Matt Cutts (now with Google). His solution involved taking this:</p>
<p><code>&lt;li class=&quot;&lt;?php echo $oddcomment; ?&gt;&quot;</code></p>
<p>from the comments.php page and replacing it with:</p>
<p><code>&lt;li class=&quot;&lt;?php<br />
/* Only use the authcomment class from style.css if the user_id is 1 (admin) */<br />
if (1 == $comment->user_id)<br />
$oddcomment = &quot;authcomment&quot;;<br />
echo $oddcomment;<br />
?&gt;</code></p>
<p>Basically, what that is doing is taking any comments left by a logged in user with the user_id of 1 and applying the class &#8220;authcomment&#8221; to it. That works great if you have only one author. But the BatchBlue Blog has <strong>eight</strong> authors, with user_id from 1 to 8. Because I wanted to show a photo of the author next to his/her comment, I needed to give each author their own class name.</p>
<p>So, instead I used:</p>
<p><code>&lt;li class=&quot;<?php<br />
if (1 == $comment->user_id)<br />
$oddcomment = &quot;comment-ransom&quot;;<br />
if (2 == $comment->user_id)<br />
$oddcomment = &quot;comment-riggen&quot;;<br />
if (3 == $comment->user_id)<br />
$oddcomment = &quot;comment-lynch&quot;;<br />
if (4 == $comment->user_id)<br />
$oddcomment = &quot;comment-ohara&quot;;<br />
if (5 == $comment->user_id)<br />
$oddcomment = &quot;comment-darowski&quot;;<br />
if (6 == $comment->user_id)<br />
$oddcomment = &quot;comment-calhoun&quot;;<br />
if (7 == $comment->user_id)<br />
$oddcomment = &quot;comment-sweeney&quot;;<br />
if (8 == $comment->user_id)<br />
$oddcomment = &quot;comment-larson&quot;;<br />
echo $oddcomment;<br />
?&gt;&quot;</code></p>
<p>This way, comments I left would get the class &#8220;comment-darowski&#8221;, comments Michelle left would get &#8220;comment-riggen&#8221;, etc.</p>
<p>And the CSS to make it look like the image above&#8230;</p>
<p><code>li.comment-darowski {<br />
&nbsp;&nbsp;background: transparent url(../images/5-thumb.jpg) no-repeat left top;<br />
&nbsp;&nbsp;padding-left: 100px;<br />
}<br />
</code></p>
<p>And repeat that for each author, swapping out a different photo file name.</p>
<p>For this blog, I used a mild variation on the original code by Matt, just naming the style &#8220;comment-darowski&#8221;. The CSS:</p>
<p><code>li.comment-darowski {<br />
&nbsp;&nbsp;background: #FFC url(images/adam.png) no-repeat 14px 14px;<br />
&nbsp;&nbsp;border: 1px dotted #999999;<br />
&nbsp;&nbsp;padding: 10px 10px 10px 50px;<br />
}</code></p>
<p>So, there you are. Have fun!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2008/06/07/multi-author-comment-styling-in-wordpress/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Why Isn&#8217;t There a lh in (X)HTML?</title>
		<link>http://www.darowski.com/tracesofinspiration/2008/05/01/why-isnt-there-a-lh-in-xhtml/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2008/05/01/why-isnt-there-a-lh-in-xhtml/#comments</comments>
		<pubDate>Thu, 01 May 2008 18:13:19 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Last.fm]]></category>
		<category><![CDATA[Markup]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2008/05/01/why-isnt-there-a-lh-in-xhtml/</guid>
		<description><![CDATA[Something bugs me just about every time I mark up a list in (X)HTML.
There&#8217;s no list-head (&#60;lh&#62;) element.
Let&#8217;s say I&#8217;m marking up a list of my top three Last.fm artists. It would look something like:
&#60;ol&#62;
&#160;&#160;&#60;li>Teenage Fanclub&#60;/li&#62;
&#160;&#160;&#60;li>Mogwai&#60;/li&#62;
&#160;&#160;&#60;li>Yo La Tengo&#60;/li&#62;
&#60;/ol&#62;
Which, of course, would then render like:

Teenage Fanclub
Mogwai
Yo La Tengo

But what if I wanted to label that list [...]]]></description>
			<content:encoded><![CDATA[<p>Something bugs me just about every time I mark up a list in (X)HTML.</p>
<p>There&#8217;s no list-head (<code>&lt;lh&gt;</code>) element.</p>
<p>Let&#8217;s say I&#8217;m marking up a list of my top three Last.fm artists. It would look something like:</p>
<p><code class="block">&lt;ol&gt;<br />
&nbsp;&nbsp;&lt;li>Teenage Fanclub&lt;/li&gt;<br />
&nbsp;&nbsp;&lt;li>Mogwai&lt;/li&gt;<br />
&nbsp;&nbsp;&lt;li>Yo La Tengo&lt;/li&gt;<br />
&lt;/ol&gt;</code></p>
<p>Which, of course, would then render like:</p>
<ol>
<li>Teenage Fanclub</li>
<li>Mogwai</li>
<li>Yo La Tengo</li>
</ol>
<p>But what if I wanted to label that list something like &#8220;My Top 3 Artists on Last.fm&#8221;. What are my options? I could throw it in a paragraph (<code>&lt;p&gt;</code>) tag. But a random paragraph doesn&#8217;t really semantically relate it to the list. I could put it in a header tag (<code>&lt;h1&gt;</code>, <code>&lt;h2&gt;</code>, etc.). That would at least tell me it is a header to <em>something</em> and not just an arbitrary paragraph. But still, that header isn&#8217;t associated with the list itself in any meaningful way (beyond proximity).</p>
<p>If I marked this up in a table, I have the option to add a table header (<code>&lt;th&gt;</code>). Tables are for tabular data, so for this example, I&#8217;ll show what the markup would look like if I wanted to make a table of my top three artists with the number of times I played them.</p>
<p><code class="block">&lt;table&gt;<br />
&nbsp;&nbsp;&lt;tr&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;th&gt;My&nbsp;Top&nbsp;3&nbsp;Artists&nbsp;on&nbsp;Last.fm&lt;/th&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;th&gt;Play&nbsp;Count&lt;/th&gt;<br />
&nbsp;&nbsp;&lt;/tr&gt;<br />
&nbsp;&nbsp;&lt;tr&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;td&gt;Teenage&nbsp;Fanclub&lt;/td&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;td&gt;855&lt;/td&gt;<br />
&nbsp;&nbsp;&lt;/tr&gt;<br />
&nbsp;&nbsp;&lt;tr&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;td&gt;Mogwai&lt;/td&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;td&gt;755&lt;/td&gt;<br />
&nbsp;&nbsp;&lt;/tr&gt;<br />
&nbsp;&nbsp;&lt;tr&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;td&gt;Yo&nbsp;La&nbsp;Tengo&lt;/td&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;td&gt;705&lt;/td&gt;<br />
&nbsp;&nbsp;&lt;/tr&gt;<br />
&lt;/table&gt;</code></p>
<p>And that would render like this:</p>
<table>
<tr>
<th>My Top 3 Artists on Last.fm</th>
<th>Play Count</th>
</tr>
<tr>
<td>Teenage Fanclub</td>
<td>855</td>
</tr>
<tr>
<td>Mogwai</td>
<td>755</td>
</tr>
<tr>
<td>Yo La Tengo</td>
<td>705</td>
</tr>
</table>
<p>Like the header tags and <code>&lt;strong&gt;</code> tag, most (if not all) user agents will show the <code>&lt;th&gt;</code> in bold. Also, since the <code>&lt;th&gt;</code> is a different element than the standard <code>&lt;td&gt;</code>, it is really easy to style headers differently from other table cells.</p>
<p>Best of all, though, the <code>&lt;th&gt;</code> is nested <em>inside</em> the <code>&lt;table&gt;</code>, meaning that it is explicitly a part of that table. Simply adding a <code>&lt;p&gt;</code> or <code>&lt;h3&gt;</code> above the <code>&lt;table&gt;</code> wouldn&#8217;t have the same semantic value.</p>
<p>Really all I&#8217;m wondering is&#8230; why don&#8217;t we have a <code>&lt;lh&gt;</code> to use when marking up ordered and unordered lists?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2008/05/01/why-isnt-there-a-lh-in-xhtml/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>NewBCamp08 Presentation: Introduction to Web Standards</title>
		<link>http://www.darowski.com/tracesofinspiration/2008/02/23/newbcamp08-presentation-introduction-to-web-standards/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2008/02/23/newbcamp08-presentation-introduction-to-web-standards/#comments</comments>
		<pubDate>Sat, 23 Feb 2008 19:22:04 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Dan Cederholm]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Last.fm]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[Mobile Web]]></category>
		<category><![CDATA[NewBCamp]]></category>
		<category><![CDATA[Roger Johansson]]></category>
		<category><![CDATA[User Experience]]></category>
		<category><![CDATA[Web Apps]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2008/02/23/newbcamp08-presentation-introduction-to-web-standards/</guid>
		<description><![CDATA[
 &#124; View &#124; Upload your own

Today (a couple of hours ago, actually) I gave a presentation called &#8220;Introduction to Web Standards&#8221; at NewBCamp08, a new unconference in Providence. I&#8217;m pleasantly surprised by the turnout, considering it was a first time event with minimal marketing used to spread the word (Twitter played a hand, I [...]]]></description>
			<content:encoded><![CDATA[<div style="width:425px;text-align:left" id="__ss_278950"><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=newbcamp08-intro-to-web-standards-1203791806858790-4"/><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=newbcamp08-intro-to-web-standards-1203791806858790-4" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"><a href="http://www.slideshare.net/?src=embed"><img src="http://static.slideshare.net/swf/logo_embd.png" style="border:0px none;margin-bottom:-5px" alt="SlideShare"/></a> | <a href="http://www.slideshare.net/adarowski/newbcamp08-intro-to-web-standards?src=embed" title="View 'NewBCamp08: Intro to Web Standards' on SlideShare">View</a> | <a href="http://www.slideshare.net/upload?src=embed">Upload your own</a></div>
</div>
<p>Today (a couple of hours ago, actually) I gave a presentation called &#8220;Introduction to Web Standards&#8221; at <a href="http://newbcamp.com">NewBCamp08</a>, a new unconference in Providence. I&#8217;m pleasantly surprised by the turnout, considering it was a first time event with minimal marketing used to spread the word (<a href="http://twitter.com/newbcamp">Twitter</a> played a hand, I bet).</p>
<p>Here&#8217;s my talk about Web Standards, microformat goodness, and some URL as UI craziness. The talk seemed to be pretty well received and had a decent turnout with some excellent questions asked. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2008/02/23/newbcamp08-presentation-introduction-to-web-standards/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Presenting at NewBCamp</title>
		<link>http://www.darowski.com/tracesofinspiration/2008/02/18/presenting-at-newbcamp/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2008/02/18/presenting-at-newbcamp/#comments</comments>
		<pubDate>Mon, 18 Feb 2008 05:19:57 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[NewBCamp]]></category>
		<category><![CDATA[Providence Geeks]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2008/02/18/presenting-at-newbcamp/</guid>
		<description><![CDATA[
Last week, I met up with a bunch of my Providence tech peeps for a breakfast with superblogger Jeff Pulver. While there, he shot this video of Sara Streeter talking about NewBCamp, an unconference happening in Providence this coming weekend (February 23rd, 9am–4pm).
I&#8217;ll be on the &#8220;speaker list&#8221; for the event (since it is a [...]]]></description>
			<content:encoded><![CDATA[<p><object width="425" height="355"><param name="movie" value="http://www.youtube.com/v/JPzHr7wDsLI&#038;rel=1"></param><param name="wmode" value="transparent"></param><embed src="http://www.youtube.com/v/JPzHr7wDsLI&#038;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"></embed></object></p>
<p>Last week, I met up with a bunch of my Providence tech peeps for a breakfast with superblogger <a href="http://jeffpulver.com/">Jeff Pulver</a>. While there, he shot this video of Sara Streeter talking about <a href="http://newbcamp.com">NewBCamp</a>, an unconference happening in Providence this coming weekend (February 23rd, 9am–4pm).</p>
<p>I&#8217;ll be on the &#8220;speaker list&#8221; for the event (since it is a first time event, we&#8217;re pre-populating as many speaker slots as we can&#8230; usually not done for an unconference). I&#8217;ll be speaking about web standards, microformats, hackable URLs and all sorts of fun goodies. I&#8217;m putting my talk together now (hoping it is more of a &#8220;conversation&#8221; than a &#8220;talk&#8221;) and I&#8217;m looking forward to it. This will actually be my first time presenting outside of companies I&#8217;ve worked for.</p>
<p>If you&#8217;re in the area, please <a href="http://newbcamp08.eventbrite.com/">register</a> and come on down. There&#8217;s just a lil&#8217; $10 fee to help cover things like lunch. There are still open presentation slots, so please come and share your wisdom!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2008/02/18/presenting-at-newbcamp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Burdens of Being Semantically Sound</title>
		<link>http://www.darowski.com/tracesofinspiration/2007/09/16/the-burdens-of-being-semantically-sound/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2007/09/16/the-burdens-of-being-semantically-sound/#comments</comments>
		<pubDate>Sun, 16 Sep 2007 05:13:43 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2007/09/16/the-burdens-of-being-semantically-sound/</guid>
		<description><![CDATA[I love semantic HTML. When I see things marked up in paragraph tags that should be marked up in unordered lists, it bugs me. 
So, I&#8217;ve been trying to style a long list of contact information&#8230; a pretty prominent piece of code that&#8217;s going to get used over and over. While some might do:
&#60;p&#62;Email: adarowski@gmail.com&#60;/p&#62;
or [...]]]></description>
			<content:encoded><![CDATA[<p>I love semantic HTML. When I see things marked up in paragraph tags that should be marked up in unordered lists, it bugs me. </p>
<p>So, I&#8217;ve been trying to style a long list of contact information&#8230; a pretty prominent piece of code that&#8217;s going to get used over and over. While some might do:</p>
<p><code>&lt;p&gt;Email: adarowski@gmail.com&lt;/p&gt;</code></p>
<p>or even:</p>
<p><code>&lt;p&gt;&lt;span&gt;Email:&lt;/span&gt; adarowski@gmail.com&lt;/p&gt;</code></p>
<p>&#8230; that just feels wrong. Why? We are defining field types here. This is the dictionary definition usage of <a href="http://www.w3.org/TR/html401/struct/lists.html#h-10.3">a definition list</a>.</p>
<p>So, the ideal is:</p>
<p><code>&lt;dl&gt;<br />
&nbsp;&nbsp;&lt;dt&gt;Email&lt;/dt&gt;<br />
&nbsp;&nbsp;&lt;dd&gt;adarowski@gmail.com&lt;/dd&gt;<br />
&lt;/dl&gt;</code></p>
<p>So, for not HTML geeks, dl=definition list, dt=definition term, and dd=defintion&#8230; um&#8230; definition. So, makes much more sense than saying &#8220;This is a paragraph.&#8221; Using generic tags like paragraph (<code>&lt;p&gt;</code>) to describe specific data when more specific tags are available is kind of like walking around pointing at things and referring to them all as &#8220;that thing&#8221;. It&#8217;s not just a thing—it&#8217;s a bird, it&#8217;s a car, it&#8217;s a river. This isn&#8217;t a paragraph. it&#8217;s a definition list.</p>
<p>So, back to my issue. To get this series of definition lists to look right, we had to do a lot of CSS floating. But dammit, I couldn&#8217;t nail the design. Things were still overlapping, padding wasn&#8217;t rendering, etc. I finally figured out why. When we didn&#8217;t have any data, we were returning nothing. So, it would be:</p>
<p><code>&lt;dl&gt;<br />
&nbsp;&nbsp;&lt;dt&gt;Email&lt;/dt&gt;<br />
&nbsp;&nbsp;&lt;dd&gt;&lt;/dd&gt;<br />
&lt;/dl&gt;</code></p>
<p>But, when I floated the <code>&lt;dd&gt;</code>, the styling wouldn&#8217;t render correctly because it was empty. So, here&#8217;s the fix: When a field has no data, return a non-breaking space (<code>&amp;nbsp;</code>) instead of just nothing.</p>
<p>I&#8217;ll tell you what, though. Even that feels a bit dirty. I mean, my email address is not &#8220;(space)&#8221;. But the other two options involved either changing the design (seemed drastic) or ditching the semantically superior definition lists (definitely drastic). I&#8217;m happy with our little solution.</p>
<p>Ah, the burdens of giving a crap about semantics.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2007/09/16/the-burdens-of-being-semantically-sound/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Few Things I Learned About the vCard Spec Tonight</title>
		<link>http://www.darowski.com/tracesofinspiration/2007/07/18/a-few-things-i-learned-about-the-vcard-spec-tonight/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2007/07/18/a-few-things-i-learned-about-the-vcard-spec-tonight/#comments</comments>
		<pubDate>Thu, 19 Jul 2007 03:12:57 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Microformats]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2007/07/18/a-few-things-i-learned-about-the-vcard-spec-tonight/</guid>
		<description><![CDATA[Today I spent some time coding my most complicated hCard (yeah, I know—it&#8217;s not supposed to be hard). Well, I wanted to create an hCard that had EVERYTHING in it—this hCard needed multiple locations, which I haven&#8217;t done. So, enter the &#8220;type&#8221; parameters of the hCard.
Actually, it goes back a bit further. hCard is essentially [...]]]></description>
			<content:encoded><![CDATA[<p>Today I spent some time coding my most complicated hCard (yeah, I know—it&#8217;s not supposed to be hard). Well, I wanted to create an hCard that had EVERYTHING in it—this hCard needed multiple locations, which I haven&#8217;t done. So, enter the &#8220;type&#8221; parameters of the hCard.</p>
<p>Actually, it goes back a bit further. hCard is essentially just an XHTML markup version of the vCard format, so I spent some time reading <a href="http://www.faqs.org/rfcs/rfc2426.html" title="vCard Spec">the vCard spec</a> so I could understand it better.</p>
<p>So, I&#8217;m trying to code this hCard so I can run it through <a href="http://www.kaply.com/weblog/2007/06/04/operator-08a-is-available/" title="Operator 0.8">Operator</a> or the <a href="http://technorati.com/contacts" title="hCard Parser on Technorati">hCard parser on Technorati</a> and then pull that vCard into <a href="http://www.apple.com/macosx/features/addressbook/" title="Address Book for Mac OS X">Address Book</a>. So, I code it, but I notice that I&#8217;m having issues with the mobile phone number, websites, and email addresses. Mobile was importing as &#8220;Other&#8221;, websites were all importing simply as &#8220;home page&#8221; (not part of the spec), and all email addresses were importing as &#8220;work&#8221;. This was frustrating because I could then edit them in Address Book to be home, work, mobile, whatever. But I wanted it to happen automatically when converted.</p>
<p>So, after digging deeper, I am happy (or maybe not) to report these tidbits I found out about the vCard format:</p>
<ol>
<li><strong>It&#8217;s not &#8220;mobile&#8221;, it&#8217;s &#8220;cell&#8221;.</strong> This was the easiest fix. Just change &#8220;mobile&#8221; to &#8220;cell&#8221;. Blizam. Fixed.</li>
<li><strong>There is no &#8220;type&#8221; for web pages.</strong> You can&#8217;t denote in a vCard that at web page is someone&#8217;s personal site or their work site. Kind of a bummer. Would be nice to be able to list batchblue.com as my work web site and then a few as personal ones, like this one, my Flickr, the TWML maybe. I don&#8217;t want those mixed up with work accounts. However, no way to do it—with keeping with the standard. I guess in development, we&#8217;ll allow them to set those types in the application, but when the data is exported it will have to revert to the type-less general web page.</li>
<li><strong>There is a type for email, but it&#8217;s useless.</strong> So, email does have a type. But they are INTERNET, x400, pref, and &#8220;other IANA registered address types&#8221;. Wowee, internet. That helps. So, there&#8217;s no work or home, so it&#8217;s no good to me. The &#8220;pref&#8221; means &#8220;preferred&#8221;, so that could be of some use. But I&#8217;m planning to have a primary contact set on the work/home level, not for each individual contact means.</li>
</ol>
<p>So there you have it. A few things I ran into that you may at some point.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2007/07/18/a-few-things-i-learned-about-the-vcard-spec-tonight/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Naked As We Came</title>
		<link>http://www.darowski.com/tracesofinspiration/2007/04/04/naked-as-we-came/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2007/04/04/naked-as-we-came/#comments</comments>
		<pubDate>Thu, 05 Apr 2007 03:44:36 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2007/04/04/naked-as-we-came/</guid>
		<description><![CDATA[Whoa, why does this site look so bland (if you happen to be looking at it when this post went live)? That&#8217;s because April 5 is the Annual CSS Naked Day!
As Dustin says:
The idea behind this event is to promote Web Standards. Plain and simple. This includes proper use of (x)html, semantic markup, a good [...]]]></description>
			<content:encoded><![CDATA[<p>Whoa, why does this site look so bland (if you happen to be looking at it when this post went live)? That&#8217;s because April 5 is the Annual <a title="CSS Naked Day" href="http://naked.dustindiaz.com/">CSS Naked Day</a>!</p>
<p>As Dustin says:</p>
<blockquote><p>The idea behind this event is to promote Web Standards. Plain and simple. This includes proper use of (x)html, semantic markup, a good hierarchy structure, and of course, a good &#8216;ol play on words. It&#8217;s time to show off your &lt;body&gt;.</p></blockquote>
<p>This is my first time taking part. I have to say, a year ago I would not have felt comfortable &#8220;stripping down&#8221; like this. But, I guess you could say&#8230; I&#8217;ve been working out (on the code front, at least). I&#8217;m very proud to get naked this time around.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2007/04/04/naked-as-we-came/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CogBlog Live!</title>
		<link>http://www.darowski.com/tracesofinspiration/2007/03/01/cogblog-live/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2007/03/01/cogblog-live/#comments</comments>
		<pubDate>Thu, 01 Mar 2007 21:00:17 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Aptima]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[CogBlog]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2007/03/01/cogblog-live/</guid>
		<description><![CDATA[
Today, at a company-wide Brown Bag lunch presentation, I officially launched the CogBlog: The Cognitive Science Weblog. Ever since returning from Webvisions 2006, I pushed for my company to establish a blog. And now it has happened.
One nice thing is that it isn&#8217;t just a corporate blog for Aptima. Aptima is simply hosting a cognitive [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/darowskidotcom/407116053/" title="Photo Sharing"><img src="http://farm1.static.flickr.com/156/407116053_29edcbadcf.jpg" alt="Final CogBlog screen shot" height="358" width="500" /></a></p>
<p>Today, at a company-wide Brown Bag lunch presentation, I officially launched the <a href="http://cogblog.aptima.com/" title="CogBlog"><strong>CogBlog: The Cognitive Science Weblog</strong></a>. Ever since returning from Webvisions 2006, I pushed for my company to establish a blog. And now it has happened.</p>
<p>One nice thing is that it isn&#8217;t just a corporate blog for <a href="http://aptima.com/" title="Aptima, Inc.">Aptima</a>. Aptima is simply hosting a cognitive science blog for our company, customers, partners, competitors, and other members of the community of interest.</p>
<p>I&#8217;ve got two posts on the blog as we kick off. First, I provided a <a href="http://cogblog.aptima.com/hello-world/" title="Hello World! @ CogBlog">Hello World!</a> post to kick things off. A sample:</p>
<blockquote><p>I’d like to brag that I fought a gallant battle to convince Aptima to host a weblog in order to better have a pulse on the human-centered engineering community—but I’m proud to say that there was no &#8220;fight&#8221; involved at all. Aptima’s line of work (new and exciting technological solutions to mission-critical problems) is a breeding ground for great ideas that should be shared with our customers, partners, competitors, and other interested members of the field.</p></blockquote>
<p>I also provided a more research-based article titled &#8220;<a href="http://cogblog.aptima.com/distributed-learning-for-the-army-cost-effective-or-just-plain-effective/" title="Distributed Learning for the Army: Cost Effective or Just Plain Effective?">Distributed Learning for the Army: Cost Effective or Just Plain Effective?</a>&#8221; In this post, I talk about how distributed learning might not be simply more cost and logistically effective for the Army, but but also far more effective because it will be using technological means that new recruits will already be familiar with. A snippet:</p>
<blockquote><p>I’d suggest that the benefits are not just about efficiency, flexibility, and frugality. In the not-too-distant future, distance learning could actually be a preferred method of training for new soldiers. Why? Because we’ll be seeing more and more enlistments from the MySpace generation.</p></blockquote>
<p>I would really like to send a big thank you to <a href="http://brianoberkirch.com/" title="Brian Oberkirch">Brian Oberkirch</a> and <a href="http://www.web-strategist.com/blog/" title="Jeremiah Owyang">Jeremiah Owyang</a> for their indirect support during the planning stages. And of course, <a href="http://simplebits.com/" title="Dan Cederholm">Dan Cederholm</a> was very inspiring for the development stage. I recorded the audio of my presentation to the company kicking off the CogBlog, so I&#8217;ll see if I can mash it up with my slides to make a compelling archive.</p>
<p>So, check out the <a href="http://cogblog.aptima.com/" title="CogBlog">CogBlog</a> if you get a shot. It&#8217;s also semantically marked up, designed to be bulletproof, and kinda pretty if you ask me. <img src='http://www.darowski.com/tracesofinspiration/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2007/03/01/cogblog-live/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Coming Soon: CogBlog</title>
		<link>http://www.darowski.com/tracesofinspiration/2006/12/23/coming-soon-cogblog/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2006/12/23/coming-soon-cogblog/#comments</comments>
		<pubDate>Sat, 23 Dec 2006 06:17:12 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Aptima]]></category>
		<category><![CDATA[Blogging]]></category>
		<category><![CDATA[CogBlog]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2006/12/23/coming-soon-cogblog/</guid>
		<description><![CDATA[
A while back I mentioned that I was kickstarting the initiative to start a corporate blog for my company, Aptima. There are a few reasons why I haven&#8217;t posted here in a while, but one of them is that every spare moment over the last couple of weeks I have spent designing and implementing the [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/darowskidotcom/330615254/" title="Photo Sharing"><img src="http://farm1.static.flickr.com/154/330615254_eff6e70c99_m.jpg" alt="CogBlog" height="214" width="240" /></a></p>
<p>A while back <a href="http://www.darowski.com/tracesofinspiration/2006/09/26/first-step-towards-a-corporate-blog/">I mentioned that I was kickstarting the initiative to start a corporate blog</a> for my company, <a href="http://www.aptima.com/">Aptima</a>. There are a few reasons why I haven&#8217;t posted here in a while, but one of them is that every spare moment over the last couple of weeks I have spent designing and implementing the blog for my company.</p>
<p>Well, today I launched the blog internally on our secure server. It was a very fast development process for a few reasons—the biggest being that I didn&#8217;t have a budget for it, so I did it on my own time. I consider it my Christmas gift to the company. <img src='http://www.darowski.com/tracesofinspiration/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>We even had a bit of a contest to name the blog. Luckily, I was still allowed to take part. My lone submission ended up winning: <strong>CogBlog</strong>. We have a large number of Cognitive Scientists at Aptima, so it seemed to be a good fit.</p>
<p>So, what are some notes on the development so far?:</p>
<ul>
<li><strong>Multiple Authors:</strong> We will have quite a few folks contributing to the blog, and I wanted each blogger to have an identity. One design decision I made right away that seemed to help this was adding a thumbnail photo for each blogger. Also, each author will have an archive page that will also contain a short bio.</li>
<li><strong>Excerpt vs. Full Content:</strong> On the home page I&#8217;m showing just an excerpt of each article. Why? Since we have many bloggers, there is bound to be many different topics on the front page (more so than if it was just one blogger). So, for that reason not every reader will be interested in every topic. Just posting the excerpt will allow readers to see more posts than just the most recent.</li>
<li><strong>Popular Posts:</strong> I found and installed <a href="http://alexking.org/projects/wordpress/">Alex King&#8217;s excellent Popularity Contest plugin</a>. It uses an algorithm to calculate the most popular posts based on views, comments, trackbacks, etc. Should be interesting to see how this plays out over time.</li>
</ul>
<p>Also, (of course) the blog is done with 100% standards. I&#8217;ll be looking out for places to add Microformats, but I&#8217;m not seeing any obvious choices yet.</p>
<p>More to come as we inch closer to launch. We&#8217;re anticipating sending the blog live sometime in January. So, stay tuned. I&#8217;ll post more info here.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2006/12/23/coming-soon-cogblog/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>NEATTA.org: High Tech for the Low Tech</title>
		<link>http://www.darowski.com/tracesofinspiration/2006/11/27/neattaorg-high-tech-for-the-low-tech/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2006/11/27/neattaorg-high-tech-for-the-low-tech/#comments</comments>
		<pubDate>Mon, 27 Nov 2006 16:23:26 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[NEATTA]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2006/11/27/neattaorg-high-tech-for-the-low-tech/</guid>
		<description><![CDATA[Today I launched the latest collaboration with my brother: The New England Antique Tractor and Truck Association web site.

Some background.
My father&#8217;s latest obsession has been acquiring and restoring antique tractors. I was raised in pretty rural Rehoboth, MA (where he still lives) and he and many of his contacts have formed NEATTA, the new England [...]]]></description>
			<content:encoded><![CDATA[<p>Today I launched the latest collaboration with my <a href="http://www.mikedarowski.com/" title="Mike Darowski">brother</a>: <a href="http://www.neatta.org/">The New England Antique Tractor and Truck Association</a> web site.</p>
<p><a href="http://www.flickr.com/photos/darowskidotcom/307779925/" title="Photo Sharing"><img src="http://static.flickr.com/116/307779925_f991e3b81c_m.jpg" alt="NEATTA.org" height="176" width="240" /></a></p>
<p>Some background.</p>
<p>My father&#8217;s latest obsession has been acquiring and restoring antique tractors. I was raised in pretty rural Rehoboth, MA (where he still lives) and he and many of his contacts have formed NEATTA, the new England Antique Tractor and Truck Association. At a meeting, my brother and I were &#8220;nominated&#8221; to design the web site (&#8220;Hey Ed, your sons do that ca-raaazy web stuff, right?&#8221;).</p>
<p>While my time has been pretty thin lately, I took it as a challenge. My portion of the site (design, XHTML, and CSS) took about a grand total of ten hours—very important since I was paid the going rate of zero dollars per hour. (Hey, it&#8217;s a dot org.)</p>
<p>But in that amount of time, I was able to use the site as a sandbox for some cool technologies. You might say a little too cool for the target audience. I mean, how many blind tractor operators are there? If there are some, though, they will be greeted at NEATTA.org with open arms.</p>
<p><a href="http://www.flickr.com/photos/darowskidotcom/307779928/" title="Photo Sharing"><img src="http://static.flickr.com/118/307779928_bd7bd0a74c_m.jpg" alt="NEATTA.org with Microformats" height="176" width="240" /></a></p>
<p>Some highlights:</p>
<ul>
<li><strong>Microformats: </strong>Yes, an antique tractor site has Microformats. I microformatted the upcoming event in the sidebar as well as the contact information on the Contacts/Links page. I don&#8217;t have much contact information yet, though, so all you get are titles and phone numbers.</li>
<li><strong>Web Standards:</strong> It is a 100% CSS-based design.</li>
<li><strong>Semantic Markup:</strong> All the underlying code is very easy to understand. We use H&#8217;s 1-4, a bunch of definition lists (loving these lately), and of course the unordered list for navigation.</li>
<li><strong>Accessible and Usable:</strong> Links have semantic title attributes (and warn you when a new window will open), images have their alts, none of that &#8220;click here&#8221; junk, you are warned with a file format and size when opening a PDF, abbreviation tags are complete, etc.</li>
<li><strong>Bulletproof:</strong> This was the biggest for me. It&#8217;s bulletproof in a few different areas:
<ul>
<li>Content areas: It will expand just fine as the text expands.</li>
<li>The DigDug test: Blowing up the text will expose more of the banner. None of the layout breaks.</li>
<li>Images off: Alt tags are shown with images off. The banner disappears and is not replaced by text (though you will see an h1 and h2 in the unstyled version). Is this an issue? I think not because the first sentence of text tells you exactly where you are in the event that the banner is not visible.</li>
</ul>
</li>
<li><strong>Pretty:</strong> Simple, but pretty (at least I think so). I don&#8217;t ever use red, so that was another nice challenge.</li>
</ul>
<p>There will be more features added over time, such as:</p>
<ul>
<li><strong>A Style Switcher:</strong> Right now, the look mimics the old school red Farmall tractors. I&#8217;d like to throw in a style switcher that will change the look to green and yellow for the John Deere fans.</li>
<li><strong>Classifieds:</strong> We&#8217;re going to implement some lo-fi classifieds soon (no backend). If it is popular enough, we will automate it.</li>
<li><strong>Message Board:</strong> If they think they want one, I&#8217;ll put one in.</li>
<li><strong>Blog?: </strong>Heck, I think we&#8217;re pushing it with the user base already. Give &#8216;em time to digest!</li>
</ul>
<p>I&#8217;m very pleased with how it turned out. I&#8217;m looking forward to seeing member feedback. Their <a href="http://www.francisfarm.net/newenglandantiqa.html" title="NEATTA on Francis Farm's Site">old site</a> was just a sliced up image, so this should improve things big time.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2006/11/27/neattaorg-high-tech-for-the-low-tech/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Amazon Using Semantic URLs? Or&#8230; Not.</title>
		<link>http://www.darowski.com/tracesofinspiration/2006/11/13/amazon-using-semantic-urls-or-not/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2006/11/13/amazon-using-semantic-urls-or-not/#comments</comments>
		<pubDate>Mon, 13 Nov 2006 15:43:21 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Rant]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2006/11/13/amazon-using-semantic-urls-or-not/</guid>
		<description><![CDATA[So, I was on Amazon this weekend. I was looking at an item and noticed the URL had more than a whole bunch of meaningless letters and numbers. A URL actually was looking like this! (line breaks are mine)
http://www.amazon.com/Bulletproof-Ajax-Voices-That-Matter/
dp/0321472667/sr=8-1/qid=1163432376/ref=sr_1_1/
002-5462670-3965612?ie=UTF8&#38;s=books
I was like&#8230; wow! The title&#8217;s actually in there! The rest of the URL is probably some [...]]]></description>
			<content:encoded><![CDATA[<p>So, I was on Amazon this weekend. I was looking at an item and noticed the URL had more than a whole bunch of meaningless letters and numbers. A URL actually was looking like this! <em>(line breaks are mine)</em></p>
<blockquote><p>http://www.amazon.com/Bulletproof-Ajax-Voices-That-Matter/<br />
dp/0321472667/sr=8-1/qid=1163432376/ref=sr_1_1/<br />
002-5462670-3965612?ie=UTF8&amp;s=books</p></blockquote>
<p>I was like&#8230; wow! The title&#8217;s actually in there! The rest of the URL is probably some sort of session-related junk. I bet you can type the below URL in and go right to the page, right?</p>
<blockquote><p>http://www.amazon.com/Bulletproof-Ajax-Voices-That-Matter/</p></blockquote>
<p>AAAAAANNNNTTTT! Wrong. Man, they *almost* had it&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2006/11/13/amazon-using-semantic-urls-or-not/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSSEdit: A Thing of Beauty</title>
		<link>http://www.darowski.com/tracesofinspiration/2006/11/07/css-edit-a-thing-of-beauty/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2006/11/07/css-edit-a-thing-of-beauty/#comments</comments>
		<pubDate>Tue, 07 Nov 2006 16:23:10 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2006/11/07/70/</guid>
		<description><![CDATA[
So weird&#8230; I don&#8217;t generally see an app get released that I&#8217;m so psyched about that I blog about it. Okay, I&#8217;ve never done that. But CSSEdit looks absolutely sweet. Now, will I use it? I&#8217;m not sure. My company has bought me Dreamweaver. Dreamweaver is great, but for CSS stuff there&#8217;s a bit of [...]]]></description>
			<content:encoded><![CDATA[<p><a title="Photo Sharing" href="http://www.flickr.com/photos/darowskidotcom/291570215/"><img width="240" height="206" alt="MacRabbit CSSEdit" src="http://static.flickr.com/118/291570215_a2926164b9_m.jpg" /></a></p>
<p>So weird&#8230; I don&#8217;t generally see an app get released that I&#8217;m so psyched about that I blog about it. Okay, I&#8217;ve never done that. But <a href="http://www.macrabbit.com/cssedit/">CSSEdit</a> looks absolutely sweet. Now, will I use it? I&#8217;m not sure. My company has bought me Dreamweaver. Dreamweaver is great, but for CSS stuff there&#8217;s a bit of overkill there. CSSEdit seems to have everything Dreamweaver offers that is CSS-related (except maybe FTP, don&#8217;t think it has that).</p>
<p>But apps like this have to be the #1 reason I love the Mac. You just can&#8217;t get anything this pretty on Windows. And I&#8217;m sorry, but if I&#8217;m going to be using something for eight&#8230; er, ten&#8230; er&#8230; I dunno, fourteen hours a day, I don&#8217;t want it to make me throw up. It&#8217;s not about rounded edges and drop shadows. It&#8217;s not about gradients. It&#8217;s about gorgeous design—visual design and interaction design. It looks like this guy nailed it.</p>
<p>Congrats to <a href="http://www.macrabbit.com/">MacRabbit</a>.</p>
<p><a title="Photo Sharing" href="http://www.flickr.com/photos/darowskidotcom/291673562/"><img width="198" height="240" alt="CSSEdit Disk Image" src="http://static.flickr.com/100/291673562_aa21862ee3_m.jpg" /></a></p>
<p><strong>Update:</strong> Even the disk image is beautiful. Can&#8217;t wait to play with this.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2006/11/07/css-edit-a-thing-of-beauty/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bulletproof Notes (A Day with Dan Cederholm)</title>
		<link>http://www.darowski.com/tracesofinspiration/2006/11/02/bulletproof-notes-a-day-with-dan-cederholm/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2006/11/02/bulletproof-notes-a-day-with-dan-cederholm/#comments</comments>
		<pubDate>Fri, 03 Nov 2006 02:59:53 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Cork'd]]></category>
		<category><![CDATA[Dan Cederholm]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2006/11/02/bulletproof-notes-a-day-with-dan-cederholm/</guid>
		<description><![CDATA[
Today, I spent the day at a small 40-person class with Dan Cederholm, titled &#8220;Bulletproof Design with XHTML and CSS&#8221;. My notes:
Reception:
It was raining in Boston today, so I headed into the Museum of Science and wiped my glasses clean. As I looked up, there was Dan Cederholm getting coffee. So, I went over to [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/darowskidotcom/287354816/" title="Photo Sharing"><img src="http://static.flickr.com/101/287354816_b910a791b5_m.jpg" alt="SimpleGoods" height="240" width="180" /></a></p>
<p>Today, I spent the day at a small 40-person class with Dan Cederholm, titled <a href="http://www.carsonworkshops.com/design-dev/cederholm/02NOV2006.html">&#8220;Bulletproof Design with XHTML and CSS&#8221;</a>. My notes:</p>
<p><span style="font-weight: bold">Reception:</span></p>
<p>It was raining in Boston today, so I headed into the Museum of Science and wiped my glasses clean. As I looked up, there was Dan Cederholm getting coffee. So, I went over to say hello, and to my surprise, he said &#8220;Hey Adam.&#8221; Now, I met Dan once, in late July. Apparently remember names is a skill much needed in this business. So, it&#8217;s always nice when your &#8220;web design superhero&#8221; knows you by name. I guess if I was a kid and walked up to Nolan Ryan and he said &#8220;Hey Adam&#8221;, it would be a similar type of thing. Okay, maybe not quite&#8230; but still&#8230;</p>
<p>For those wondering, Dan&#8217;s son Jack was a monkey for Halloween. <img src='http://www.darowski.com/tracesofinspiration/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>With Dan was Ryan Carson of <a href="http://www.carsonsystems.com/">Carson Systems</a> (they&#8217;re puttin&#8217; on the show). So, I was able to meet him as well. I got to thank him for making the <a href="http://www.carsonworkshops.com/summit/">Future of Web Apps podcasts</a> available for us that were not able to go. I rode the elevator with the two of them until we got to the conference room, and then I realized I was the first one there. Not bad&#8230; got to lay claim to a spot on one of the few power adapters. Also got to meet Gillian Carson, Ryan&#8217;s wife and partner in Carson Systems. Carson Systems also runs the wonderful web design resource, <a href="http://www.thinkvitamin.com/">Vitamin</a>.</p>
<p>I also had coffee and muffins (or for me, tea and a gooey cinnamon bun thingie) with Scott and Justin of <a href="http://www.dealer.com/">Dealer.com</a>. They&#8217;re from Burlington, VT and are applying CSS designs to the automotive industry. Kind of a similar situation to me, I suppose—implementing modern web technologies in an industry that generally isn&#8217;t associated with them.</p>
<p><strong>Part 1: Introducing the Bulletproof Concept</strong></p>
<p>Timeline: W3C, Web Standards Project, Box Model Hack, Zeldman&#8217;s Designing with Web Standards, Wired News redesign (with all CSS), CSS Zen Garden, Blogs/Corporate Sites/etc. using standards.</p>
<p>Bul•let•proof (adj.)</p>
<ul>
<li>Worse-case scenarios</li>
<li>Embracing flexibility</li>
<li>Design that is difficult to &#8220;break&#8221;</li>
<li>Future-proofing</li>
<li>Making it easier to hand off templates to teams and clients</li>
<li>Accessibility from semantic markup</li>
<li>&#8220;Working yourself out of a job&#8221;
<ul>
<li>You can hand it off and not have as much follow-up work</li>
</ul>
</li>
</ul>
<p>Bulletproof vest is not 100% protection.</p>
<p><strong>Guideline #1: Turn off images.</strong> Turn off images to ensure the page is still readable in the absence of graphics.</p>
<p>Bulletproof Paths:</p>
<ul>
<li>Content
<ul>
<li>Text size</li>
<li>Content amount</li>
</ul>
</li>
<li>Editing
<ul>
<li>Content changes</li>
<li>Maintenence</li>
</ul>
</li>
<li>Environment
<ul>
<li>Device/browser</li>
<li>Scenarios</li>
</ul>
</li>
</ul>
<p><strong>Guideline #2: Let go of pixel precision.</strong> Take a deep breath. Realize you&#8217;re not in complete control. This is OK.</p>
<p>Using pixels for font sizes: IE6 and below, users cannot resize.</p>
<ul>
<li>font-size keywords
<ul>
<li>body {font-size: small}</li>
<li>h1 {font-size: 130%}</li>
</ul>
</li>
<li>setting a base in ems
<ul>
<li>body {font-size: 62.5%}</li>
<li>sets a base of 10px</li>
</ul>
</li>
</ul>
<p><strong>Guideline #3: Provide a flexible base for text.</strong> Try using keywords or ems for sizing text. Allow users to adjust as needed.</p>
<p>IE7 allows pixel resizing. So, pixels should be fine for sites that don&#8217;t rely on IE6 and older very much. However, keywords do add a semantic quality to it (&#8220;small&#8221; on whatever device). Ems just seems like a hack for px.</p>
<p><strong>Guideline #4: Use the &#8216;DigDug Text Test&#8217;:</strong> Resize text a few notches to see what happens. <em>(get actual text from Dan&#8217;s slides)</em><a href="http://www.thinkvitamin.com/"></a></p>
<p><a href="http://www.thinkvitamin.com/"> </a><a href="http://www.thinkvitamin.com/"> </a><a href="http://www.thinkvitamin.com/">Vitamin</a> uses em based layout. The entire site adjusts when you increase text size. Everything in the entire site is scalable.</p>
<p>Dan then went through many specific examples: The bulletproof arrow, the tabs from Cork&#8217;d, the NetFlix expanding box. They are examples I&#8217;ve seen before, but always good to see again.</p>
<p><strong>Guideline #5: Accept the box.</strong> Look for simplistic ways <em>(get rest of text)</em></p>
<p>More examples: ClearLeft, Hicksdesign, Odeo, Cameron Moll&#8230;</p>
<p><strong>Guideline #6: Reuse/recycle.</strong> Plan for multiple instances and uses for a particular style.</p>
<p><a href="http://corkd.com/">Cork&#8217;d</a> ornamentation, <a href="http://tundro.com/">Tundro</a>&#8230;</p>
<p>Microformats.org: &lt;li&gt; hover (doesn&#8217;t work in IE6 and below)</p>
<p><strong>Break #1:</strong> Sat with the guys from <a href="http://dealer.com/">Dealer.com</a> again. They&#8217;re looking to hire HTML/CSS designers, BUT in the Burlington, Vermont area. So, if you know anyone&#8230;</p>
<p>Dan started the second session with an indepth look at redesigning the navigation of Lance Armstrong&#8217;s site navigation with an unordered list and CSS instead of images. {display: block} is something I hadn&#8217;t used. That makes the entire tab clickable instead of just the link. I&#8217;ll have to look into this some more because I didn&#8217;t use it on my last site but the whole box seems to still be a link.</p>
<p>Internationalization: using more code and less images makes translation much easier.</p>
<p>Great design does not always equal great web design.</p>
<p><strong>Part 2: A Design Uncork&#8217;d (Markup)<br />
</strong></p>
<p>Styleframing (Wireframing with CSS):</p>
<ul>
<li>Saves time if IA and designer are the same person</li>
<li>Clickable, usable</li>
<li>A head-start on template code</li>
<li>Realistic Environment</li>
<li>Don&#8217;t need to worry about cross-browser CSS issues</li>
<li>Worry more about markup structure than optimal CSS</li>
</ul>
<p>Iterative Prototyping:</p>
<ul>
<li>Sculpting an Interface</li>
<li>Combination of CSS and image editing</li>
</ul>
<p>Semantic markup:</p>
<ul>
<li>Choose HTML elements based on <em>meaning</em></li>
<li>Separating presentation and content</li>
<li>Search engines love it
<ul>
<li>greater importance to headings, etc.</li>
</ul>
</li>
<li>Understood by a wider variety of browsers and devices</li>
<li>Markup once, redesign more</li>
<li>Describe what something <em>is</em>, rather than what it should look like</li>
<li>&#8220;left&#8221; or &#8220;right&#8221; are not semantic for class names</li>
<li>Leverage inheritance</li>
<li>Use link title attributes to further explain</li>
<li>divs and spans = empty calories</li>
</ul>
<p>Now it&#8217;s time for a closer look at the markup of Cork&#8217;d. We just combed through the site, also discussing things like <a href="http://powazek.com/">Derek Powazek&#8217;s site</a>. Some nice semantic discussion ensued.</p>
<p><strong>Break #2 (Lunch):</strong> Had a very good lunch just now, setting with folks from a bunch of different companies. The bunch included Carson Systems&#8217; own Gillian Carson, who educated us all on the UK and gave us some dirt on Ryan (of course).</p>
<p>&#8220;Post lunch&#8230; it&#8217;s always &#8216;that time&#8217;, you know&#8230;&#8221; Dan says&#8230;</p>
<p><strong>Microformats for Designers</strong></p>
<p>Dan&#8217;s definition of Microformats:</p>
<blockquote><p>Person 1: &#8220;I&#8217;m going to mark up a contact like this.<br />
Person 2: &#8220;Cool. I&#8217;ll do it that way too.&#8221;</p></blockquote>
<p>Man, some of Dan&#8217;s logos for Microformats that weren&#8217;t used are simply gorgeous. I do like what the final logo conveys, though. The three parts are XML, XHTML, and Microformats (gradually from larger to smaller).</p>
<p>Dan then show the different tools for identifying and using Microformats (using <a href="http://www.technorati.com/contacts/">Technorati&#8217;s converter</a>, <a href="http://www.hicksdesign.co.uk/journal/highlight-microformats-with-css">John Hicks&#8217; user style sheet</a>, and <a href="http://leftlogic.com/info/articles/microformats_bookmarklet">LeftLogic&#8217;s bookmarklet</a>).</p>
<p>I then asked a question I&#8217;ve had about Microformats for quite some time&#8230; Dan seemed to think it was a valid concern. However, I think that&#8217;s a blog post for another time.</p>
<p><strong>Part 3: A Design Uncork&#8217;d: (Style)</strong></p>
<p>Style property order: I haven&#8217;t worried about this much. Maybe I should&#8230;</p>
<p><strong>Guideline #7: Build for moder browsers first.</strong> Future-proof your designs by developing and testing in modern browsers. Later, adjust with patches for others.</p>
<p>Multiple style sheets:</p>
<ul>
<li>Markup calls screen.css</li>
<li>screen.css calls master.css and ie.css (for all the damn hacks)</li>
<li><a href="http://www.informit.com/articles/article.asp?p=170511&amp;rl=1">Article by Molly about management of hacks</a></li>
<li><a href="http://64.207.161.96/log/2004/07/06/filtering-css.html">Filtering CSS by Doug Bowman</a></li>
</ul>
<p><strong>Guideline #8: Master floats. </strong>They can be tricky—but critical for creating independent modules.</p>
<p><a href="http://www.complexspiral.com/publications/containing-floats/">Containing Floats</a> by Eric Meyer</p>
<p>Self-clearing floats:</p>
<ul>
<li>Using div.box:after, can self-clear the float</li>
<li><a href="http://positioniseverything.net/easyclearing.html">Position is Everything bug fix</a> for IE6 and older</li>
<li>IE7 requires &#8220;*:first-child+html div.box&#8221;&#8230; ugh.</li>
</ul>
<p>Think modular</p>
<p><strong>CSS Typography</strong></p>
<p>Core fonts:</p>
<ul>
<li>Verdana, Arial, Georgia, Times, etc.</li>
<li>Lucida Sans, Trebuchet, Helvetica</li>
</ul>
<p>Good for headlines:</p>
<ul>
<li>Georgia</li>
<li>Trebuchet</li>
<li>Helvetica</li>
<li>Arial</li>
</ul>
<p>Next, we went step-by-step through styling the Cork&#8217;d layout.</p>
<p>For the h1:</p>
<ul>
<li>Dan put an image in the header that would look good if the site was unstyled.</li>
<li>In CSS, he positioned that 9999 px off the screen.</li>
<li>He then served up a background image (that blended with the background color of the header) within the &lt;a&gt; tag.</li>
</ul>
<p>For the wine table on the home page:</p>
<ul>
<li>For the wine&#8217;s region, Dan used an &lt;em&gt; with the class &#8220;region&#8221; that he could then style and display as block (forcing it to a new line).</li>
<li>Also, he used &lt;tr class=&#8221;alt_row&#8221;&gt; to alternate the row color.</li>
<li>He uses &lt;tr class=&#8221;alt_row last&#8221;&gt; to remove the final border to the last item in the table. (this part added in the Rails portion by the developer)</li>
</ul>
<p><strong>Part 4: Beyond Template Design </strong></p>
<p>Fixed vs. Fluid</p>
<ul>
<li>When executed well, fluid layouts can be <em>better</em>proof</li>
<li>Can have drastic effects on page design.</li>
<li>Each has their place</li>
</ul>
<p>Framing by percentage can give you a manageable line width (along with max-width)</p>
<p>Sliding Faux Columns:</p>
<ul>
<li>70% column, 30% column</li>
<li>anchor at 70% from left, 0 from top</li>
<li>can&#8217;t have one pixel frames (will slide off screen)</li>
<li>might want to set max width for over 2000px.</li>
</ul>
<p>What about 3 columns?</p>
<ul>
<li>Uses two background images with Sliding Faux columns technique</li>
<li>Attach background images to two divs (#wrap, #wrap-inner)</li>
<li>wrap image is orange (right column) and white</li>
<li>wrap-inner image is green (left column) and transparent (so they don&#8217;t cross over each other)</li>
</ul>
<p>Variable fixed-width layouts:</p>
<ul>
<li>Wider layout for wider browser windows.</li>
<li>Javascript swaps class or serves alternate stylesheet when window is narrowed.</li>
<li>Predictability for designers, increased flexibility for readers.</li>
<li><a href="http://www.collylogic.com">an example from collylogic.com</a></li>
</ul>
<p>Em-based layout (elastic):</p>
<ul>
<li>Based on text size (not window size)</li>
</ul>
<p><strong>Guideline #9: The 10-second usability test.</strong> Routinely check your pages with CSS turned off, quickly gaugeing its semantic structure.</p>
<p><strong>Guideline #10: Validate.</strong> Validate markup and stylesheets as you&#8217;re building to avoid baffling display issues.</p>
<p>Bulletproof dashboard:</p>
<ul>
<li>Disable styles</li>
<li>Turn off images</li>
<li>Validate your markup and stylesheets</li>
<li>DigDug Text Test</li>
</ul>
<p><strong>In Conclusion:</strong> Fantastic. The full-day session and interactivity provided a level of detail you can&#8217;t get elsewhere. Dan is a great presenter&#8230; modest, quietly humorous, and extremely knowledgeable. I&#8217;m glad I built on his WebVisions session with this full day crash course.</p>
<p>Meeting Ryan and Gillian was also damn cool. Ryan was very excited to talk about what&#8217;s in store for Carson Systems—and rightly so. I agree that it is very exciting. I hope to meet up with him at an event in the future.</p>
<p>And of course, the other attendees were really cool. I talked quite a bit with Scott and Justin of dealer.com—very cool guys. They picked the right place to look for help on the XHTML/CSS front. I hope they find their designer.</p>
<p>So, in a word&#8230; awesome. I am now bulletproof. <img src='http://www.darowski.com/tracesofinspiration/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Here are some photos taken from the balcony&#8230;</p>
<p><a href="http://www.flickr.com/photos/darowskidotcom/287354810/" title="Photo Sharing"><img src="http://static.flickr.com/108/287354810_036fa41e40_m.jpg" alt="Boston Skyline from d'Arbeloff Suite at Boston Museum of Science" height="180" width="240" /></a></p>
<p><a href="http://www.flickr.com/photos/darowskidotcom/287354813/" title="Photo Sharing"><img src="http://static.flickr.com/104/287354813_9a55ae608e_m.jpg" alt="Boston Skyline from d'Arbeloff Suite at Boston Museum of Science" height="180" width="240" /></a></p>
<p><a href="http://www.flickr.com/photos/darowskidotcom/287354814/" title="Photo Sharing"><img src="http://static.flickr.com/103/287354814_0bafb73317_m.jpg" alt="Boston Skyline from d'Arbeloff Suite at Boston Museum of Science" height="240" width="180" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2006/11/02/bulletproof-notes-a-day-with-dan-cederholm/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Thursday I Shall Be Bulletproof</title>
		<link>http://www.darowski.com/tracesofinspiration/2006/10/31/thursday-i-shall-be-bulletproof/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2006/10/31/thursday-i-shall-be-bulletproof/#comments</comments>
		<pubDate>Tue, 31 Oct 2006 13:13:09 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Dan Cederholm]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2006/10/31/thursday-i-shall-be-bulletproof/</guid>
		<description><![CDATA[
Photo by Friedcell
Thursday, I&#8217;ll be spending the day learning how to be bulletproof from the bulletproof master himself, Dan Cederholm. I met Dan and attended a short session with him at WebVisions in July, but this is an ALL DAY session put on by Carson Systems.  For those that don&#8217;t know what the heck [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/friedcell/180150163/" title="Photo Sharing"><img src="http://static.flickr.com/61/180150163_c2ce54b93c_m.jpg" alt="Dan and his son" height="180" width="240" /></a><br />
Photo by <a href="http://www.flickr.com/photos/friedcell/">Friedcell</a></p>
<p>Thursday, I&#8217;ll be spending the day learning how to be bulletproof from the bulletproof master himself, <a href="http://simplebits.com/">Dan Cederholm</a>. I met Dan and attended a short session with him at WebVisions in July, but this is <a href="http://www.carsonworkshops.com/design-dev/cederholm/02NOV2006.html">an ALL DAY session put on by Carson Systems</a>.  For those that don&#8217;t know what the heck I&#8217;m talking about, <a href="http://simplebits.com/publications/bulletproof/">Bulletproof Web Design</a> is the title of one of Dan&#8217;s books. Bulletproof web design is the philosophy of creating flexible designs that survive in worst case scenarios. It essentially covers three areas in which you can be bulletproof:</p>
<ul>
<li><strong>Content:</strong> Flexible at different text sizes and with different amounts of content.</li>
<li><strong>Editing:</strong> Content changes and maintenance must be simple.</li>
<li><strong>Environment:</strong> The design must survive different devices (any browser, handheld device, cell phone) and scenarios (images off, printing instead of viewing on screen, no javascript/CSS, etc.)</li>
</ul>
<p>There are best practice and then there&#8217;s bulletproof. It takes things to a whole new level.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2006/10/31/thursday-i-shall-be-bulletproof/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Microformats vs. The Semantic Web (Big S, Big W)</title>
		<link>http://www.darowski.com/tracesofinspiration/2006/10/25/microformats-vs-the-semantic-web-big-s-big-w/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2006/10/25/microformats-vs-the-semantic-web-big-s-big-w/#comments</comments>
		<pubDate>Wed, 25 Oct 2006 12:15:30 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Microformats]]></category>
		<category><![CDATA[The Semantic Web]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2006/10/25/microformats-vs-the-semantic-web-big-s-big-w/</guid>
		<description><![CDATA[Dan Cederholm recently linked to an article called Can Your Website be Your API? by Drew McLellan. In that article, Drew linked to his presentation of the same name that he gave at the Web Standards Group London Meetup (podcast feed linked on that page) on October 19. Naturally, I downloaded all of the podcasts [...]]]></description>
			<content:encoded><![CDATA[<p>Dan Cederholm recently linked to an article called <a href="http://allinthehead.com/retro/301/can-your-website-be-your-api">Can Your Website be Your API?</a> by <a href="http://allinthehead.com/">Drew McLellan</a>. In that article, Drew linked to his presentation of the same name that he gave at the <a href="http://muffinresearch.co.uk/wsg/">Web Standards Group London Meetup</a> (podcast feed linked on that page) on October 19. Naturally, I downloaded all of the podcasts and listened to just about all of them on my way home last night and way in this morning.</p>
<p>Drew&#8217;s talk was one of three related to Microformats. The first was by Mark Norman Francis (of Yahoo) and the second was by Jeremy Keith. Drew&#8217;s came third. The theme of the three was a past, present, and future of Microformats and the applications of Microformats.</p>
<p>Drew talked about how simply adding Microformats (the formal name for adding semantic, standardized class names to your HTML, essentially) could open your site up to many of the benefits an API gives. Your plain HTML content then becomes machine readable and agents can use your data with very little difficulty.</p>
<p>I have explained Microformats to colleagues as somewhat of a &#8220;band aid&#8221; between &#8220;semantic markup&#8221; and <a href="http://en.wikipedia.org/wiki/Semantic_web">&#8220;The Semantic Web&#8221;</a> (the latter being Tim Berners-Lee&#8217;s vision of a machine-readable and -usable web). But Microformats seems to be encroaching on some of the ground established by the Semantic Web. The first speaker, Mark Norman Francis, <a href="http://cackhanded.net/presentations/microformats-at-wsg-london">gave a compelling and provocative case</a> for adopting Microformats as a replacement for much of what the Semantic Web is trying to accomplish.</p>
<p>First, Mark quoted the Semantic Web&#8217;s entry on Wikipedia:</p>
<blockquote><p>For example, with HTML and a tool to render it (perhaps Web browser software, perhaps another user agent), one can create and present a page that lists items for sale. The HTML of this catalog page can make simple, document-level assertions such as &#8220;this document&#8217;s title is &#8216;Widget Superstore&#8217;&#8221;. But there is no capability within the HTML itself to unambiguously assert that, say, item number X586172 is an Acme Gizmo with a retail price of ‚Ç¨199, or that it is a consumer product. Rather, HTML can only say that the span of text &#8220;X586172&#8243; is something that should be positioned near &#8220;Acme Gizmo&#8221; and &#8220;‚Ç¨199&#8243;, etc. There is no way to say &#8220;this is a catalog&#8221; or even to establish that &#8220;Acme Gizmo&#8221; is a kind of title or that &#8220;‚Ç¨199&#8243; is a price. There is also no way to express that these pieces of information are bound together in describing a discrete item, distinct from other items perhaps listed on the page.</p></blockquote>
<p>Mark immediately follows with:</p>
<blockquote><p>Those people have never heard of the <a href="http://microformats.org/wiki/hlisting">hListing</a> microformat, which does pretty much exactly that.</p>
<p>This is the problem we have—visible metadata. All of the information on the web should be visible to you as a human. The moment you take this information, whether it is already on the web page or about the web page and put it somewhere else, it becomes invisible to you. You then have to go and use other software to extract it. This is bad, from my point of view anyway.</p></blockquote>
<p>Mark then continues to go on to slap around the Semantic Web some more, as well as things like XML namespaces. He certainly makes a case. I&#8217;m not going to pretend I know enough about the Semantic Web to say all of the associated technologies can be replaced by Microformats, but it seems that some aspects of both the Semantic Web and APIs are simplified by Microformats.</p>
<p>I highly recommend listening to the podcasts. Mark&#8217;s is quick—just 21 minutes. Here are the links:</p>
<ul>
<li>Mark Norman Francis | <a href="http://muffinresearch.co.uk/wsg/audio/06/10/19/norm.mp3">audio</a> | <a href="http://cackhanded.net/presentations/microformats-wsg.pdf">slides</a></li>
<li>Jeremy Keith | <a href="http://muffinresearch.co.uk/wsg/audio/06/10/19/jeremy.mp3">audio</a> | <a href="http://adactio.com/extras/implementing_microformats.pdf">slides</a></li>
<li>Drew McLellan | <a href="http://muffinresearch.co.uk/wsg/audio/06/10/19/drew.mp3">audio</a> | <a href="http://allinthehead.com/presentations/2006/mf-website-api.pdf">slides</a></li>
</ul>
<p>More Microformats resources:</p>
<ul>
<li><a href="http://microformats.org/">Official Microformats site and wiki</a>
<ul>
<li><a href="http://microformats.org/blog/2006/10/23/wsg-hosts-mf-evening/">Their post on the WSG meetup</a></li>
</ul>
</li>
<li><a href="http://microformatique.com/">Microformatique</a>, a blog about Microformats started by <a href="http://westciv.typepad.com/dog_or_higher/">John Allsop</a></li>
<li><a href="http://www.digital-web.com/articles/microformats_primer/">Microformats Primer</a> by <a href="http://www.garrettdimon.com/">Garrett Dimon</a> on <a href="http://www.digital-web.com/">Digital Web</a></li>
<li><a href="http://kitchen.technorati.com/search/">Microformats Search Engine @ Technorati</a></li>
<li><a href="http://en.wikipedia.org/wiki/Microformats">Microformats @ Wikipedia</a></li>
<li><a href="http://www.simplebits.com/notebook/2006/06/10/wineformats.html">Dan Cederholm&#8217;s use of microformats</a> on <a href="http://www.corkd.com/">Cork&#8217;d</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2006/10/25/microformats-vs-the-semantic-web-big-s-big-w/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
<enclosure url="http://muffinresearch.co.uk/wsg/audio/06/10/19/norm.mp3" length="20499565" type="audio/mpeg" />
<enclosure url="http://muffinresearch.co.uk/wsg/audio/06/10/19/drew.mp3" length="24739696" type="audio/mpeg" />
<enclosure url="http://muffinresearch.co.uk/wsg/audio/06/10/19/jeremy.mp3" length="39228642" type="audio/mpeg" />
		</item>
		<item>
		<title>WHOIS?: Brian Oberkirch</title>
		<link>http://www.darowski.com/tracesofinspiration/2006/10/18/whois-brian-oberkirch/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2006/10/18/whois-brian-oberkirch/#comments</comments>
		<pubDate>Wed, 18 Oct 2006 18:56:28 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Brian Oberkirch]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[Podcasting]]></category>
		<category><![CDATA[WHOIS?]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2006/10/18/whois-brian-oberkirch/</guid>
		<description><![CDATA[It says a lot when Brian Oberkirch interviews a successful entrepreneur like Ted Rheingold of Dogster and Catster and Ted seems just excited about hearing what Brian has to say. Brian is that good.
So, who is Brian Oberkirch?
The About portion of Brian&#8217;s website describes him as &#8220;Social media consultant. Writer. Marketer. Dreamer &#38; tinkerer.&#8221; Basically, [...]]]></description>
			<content:encoded><![CDATA[<p>It says a lot when Brian Oberkirch interviews a successful entrepreneur like Ted Rheingold of Dogster and Catster and Ted seems just excited about hearing what Brian has to say. Brian is that good.</p>
<p>So, who is Brian Oberkirch?</p>
<p>The About portion of Brian&#8217;s website describes him as &#8220;Social media consultant. Writer. Marketer. Dreamer &amp; tinkerer.&#8221; Basically, to me, he is an idea factory. Forget about just social media and marketing, he has great ideas on tech subjects such as microformats and mashups, too. Brian does a series of interviews under the name &#8220;Edgework&#8221; and he recently rattled off three good ones in a row.</p>
<p>In the most recent episode, as I mentioned, <a href="http://www.brianoberkirch.com/?p=716">he interviewed Ted Rheingold of Dogster and Catster</a>. Dogster and Catster allow people to make web pages for their beloved pets. So, quite the community has grown around these pages. They talk about how the sites fill niche, passion-centric markets. General social networking sites don&#8217;t tend to do so well. It helps to have a common interest that the users rally around. Flickr revolves around photo sharing, for example.</p>
<p>MySpace started off as a site where users discussed unsigned bands that they were fans of. Now MySpace is far more general, but it is sustaining itself—probably because it is so damn ubiquitous. Facebook is now trying to do the same. They were a community that were bonded together by academia. You needed a .edu email address to be admitted. So, there was a sense of community because everyone had something in common. Now Facebook is letting more users in, and some existing users don&#8217;t like it. It will be interesting to see what happens there.</p>
<p>Before Dogster, <a href="http://www.brianoberkirch.com/?p=715">Brian covered Kiva</a>, a nonprofit founded by Matt Flannery. What is Kiva? Let me just let the site explain it:</p>
<blockquote><p>Kiva lets you connect with and loan money to unique small businesses in the developing world. By choosing a business on Kiva.org, you can &#8220;sponsor a business&#8221; and help the world&#8217;s working poor make great strides towards economic independence. Throughout the course of the loan (usually 6-12 months), you can receive email journal updates from the business you&#8217;ve sponsored. As loans are repaid, you get your loan money back.</p></blockquote>
<p>There just aren&#8217;t many sites out there like Kiva&#8230; it&#8217;s a great idea. Not only community marketing, but community financing—for a cause. Kudos to Matt.</p>
<p>Finally, before those two episodes <a href="http://www.brianoberkirch.com/?p=714">Brian talked to Chad Dickerson of the Yahoo Developer Network</a>. The main topic was Yahoo&#8217;s Open Hack Day. Yahoo used to hold internal contests to see what types of cool hacks and mashups their developers could come up with. Recently, they opened it up to the outside world. <a href="http://developer.yahoo.net/blog/archives/2006/10/open_hack_day_w.html">Check out the winners here.</a></p>
<p>Brian provides a lot of great ideas about the mashup culture, which is nothing short of fascinating. To see more examples of mashups, check out <a href="http://www.programmableweb.com/">ProgrammableWeb</a>.</p>
<p>To find out more about Brian, <a href="http://redcouch.typepad.com/weblog/2006/09/brian.html">check out an interview by Shel Israel on Naked Conversations</a>. I recommend checking it out. One quote from that interview that stuck out to me was when he was talking about how old school marketers will need to be cognizant of the new school &#8220;unmarketing&#8221; techniques, though it will be a gradual process:</p>
<blockquote><p>I know we talk a lot about dinosaurs and how everything is changing, etc., but I think it will be gradual. If you don&#8217;t eat well, keep smoking, never exercise, eventually that will catch up to you. Same thing will apply. You&#8217;ll be able to get away with it for a while, but there will be a tremendous opportunity cost.</p></blockquote>
<p>I thought this exact quote could relate very well to what will happen if old school table-based web designers don&#8217;t pay attention to web standards.</p>
<p>Not to be bandwagonesque, but <a href="http://www.web-strategist.com/blog/2006/10/14/brian-oberkirch-on-social-media/">Jeremiah Owyang also recently had a post about Brian</a>.</p>
<p>So, lastly&#8230; I need to ask a question. Brian&#8230; when are you going to write a book on all of this? Personally, I can&#8217;t wait.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2006/10/18/whois-brian-oberkirch/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Boag on Web Standards</title>
		<link>http://www.darowski.com/tracesofinspiration/2006/10/18/boag-on-web-standards/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2006/10/18/boag-on-web-standards/#comments</comments>
		<pubDate>Wed, 18 Oct 2006 12:14:06 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Paul Boag]]></category>
		<category><![CDATA[Podcasting]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2006/10/18/boag-on-web-standards/</guid>
		<description><![CDATA[Web Standards are funny. In some circles, it seems that everyone knows about them. In others, it seems like a foreign language. In some environments, it&#8217;s starting to make inroads. I&#8217;ve actually taken part in conversation with all three groups. In the blogosphere, standards are a way of life. At work, people are starting to [...]]]></description>
			<content:encoded><![CDATA[<p>Web Standards are funny. In some circles, it seems that everyone knows about them. In others, it seems like a foreign language. In some environments, it&#8217;s starting to make inroads. I&#8217;ve actually taken part in conversation with all three groups. In the blogosphere, standards are a way of life. At work, people are starting to wrap their heads around it more completely (myself included&#8230; I certainly haven&#8217;t been working this way for too long). Among friends and family outside of my direct professional life, standards are a bit of scary wizardry.</p>
<p>But they&#8217;re not. They&#8217;re simpler. They&#8217;re easier. And they&#8217;re better. There&#8217;s just no way around it anymore.</p>
<p>Paul Boag does a great podcast called <a href="http://www.boagworld.com/">Boagworld</a> that I&#8217;ve talked about a couple times. He&#8217;s very passionate about standards and decided to do an entire podcast episode (with a slide presentation) devoted just to web standards and how they help business. It&#8217;s called <a href="http://standards.boagworld.com/">The Business Benefits of Web Standards</a>.</p>
<p>What&#8217;s different about what Paul does is that he tries not to be too tech-heavy. In fact, this presentation was painfully NON-techie for me. But what it does do is really explain the history and benefits of web standards in ways that directly make sense for business.</p>
<p>You need not need to code any HTML or anything to understand this podcast. It&#8217;s really for everyone involved in any type of management aspect for a website. Enjoy.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2006/10/18/boag-on-web-standards/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Day with Dan Cederholm&#8230; And How to Pimp Yourself out to Your Company</title>
		<link>http://www.darowski.com/tracesofinspiration/2006/09/29/a-day-with-dan-cederholm-and-how-to-pimp-yourself-out-to-your-company/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2006/09/29/a-day-with-dan-cederholm-and-how-to-pimp-yourself-out-to-your-company/#comments</comments>
		<pubDate>Fri, 29 Sep 2006 20:36:26 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Dan Cederholm]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2006/09/29/a-day-with-dan-cederholm-and-how-to-pimp-yourself-out-to-your-company/</guid>
		<description><![CDATA[Ah, to remember the excitement when I was alerted via my feedreader that Dan Cederholm was giving a daylong session in Boston&#8230;
Okay, everyone knows that Dan is my &#8220;web design superhero&#8221;, but I&#8217;ve been dying to get to a Carson Workshop for like&#8230; ever. They have a ton of them overseas and in San Francisco, [...]]]></description>
			<content:encoded><![CDATA[<p>Ah, to remember the excitement when I was alerted via my feedreader that <a href="http://www.simplebits.com/notebook/2006/09/26/speaking.html">Dan Cederholm was giving a daylong session in Boston</a>&#8230;</p>
<p>Okay, everyone knows that Dan is my &#8220;web design superhero&#8221;, but I&#8217;ve been dying to get to a <a href="http://carsonworkshops.com/index.html">Carson Workshop</a> for like&#8230; ever. They have a ton of them overseas and in San Francisco, but the combination of a <a href="http://carsonworkshops.com/design-dev/cederholm/02NOV2006.html">Carson Workshop&#8230; In Boston&#8230; featuring Dan Cederholm</a> was too much to pass up.</p>
<p>So, I immediately wrote an email to my entire company telling them about the session and what the benefits would be of me going. And then I asked for money. See, I need to find projects to fund me to go to such things (like WebVisions). Luckily, the funding came through, because I had gone ahead and booked it anyway (hey, there&#8217;s only 40 seats at this thing). I offered project managers whatever they needed in return—a report, code samples, and even eight hours of clapping erasers.</p>
<p>This brings me to another topic that is related. I have started sending out emails with &#8220;Adam the Aptima Scout&#8221; in the subject line. My company likes to see everyone go to a conference or a seminar every year for professional development. But with everything that&#8217;s going on in the web community, one is just not enough. So, I&#8217;ve been aggressively persuing funding to go to more. Call it personal marketing. I&#8217;ve already identified at least three conferences I want to go to next year (<a href="http://2007.sxsw.com/">SXSW</a>, <a href="http://www.vivabit.com/atmedia2007/">@media</a>, and <a href="http://webvisionsevent.com/">WebVisions</a>).</p>
<p>A month or so ago, I sent out my first scouting offer, for <a href="http://refresh06.com/">Refresh &#8216;06</a>. I was interested in that one because Paul Boag, Andy Budd, Cameron Moll, Jeremy Keith, and many others I&#8217;d love to see are going to be there. There was a bit of interest in sending me to that one, but whereas it is pretty much all Web Standards, it was a pretty small group of project candidates.</p>
<p>Luckily, Cederholm&#8217;s session is just one day (no hotel stays needed), in Boston (can take the T, no planes), and is relatively inexpensive ($495). So, this has been my first success in my &#8220;Adam the Aptima Scout&#8221; approach. I&#8217;ll try it again next with SXSW. That&#8217;s a bigger conference with much more diverse panels, so hopefully that will help me get multiple projects interested in order to cover costs like flight and hotel.</p>
<p>Anyway, you can expect me to blog all about the session with Dan. It&#8217;s November 2&#8230; and I can&#8217;t wait!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2006/09/29/a-day-with-dan-cederholm-and-how-to-pimp-yourself-out-to-your-company/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WebVisions 2006 Recap: My Presentation</title>
		<link>http://www.darowski.com/tracesofinspiration/2006/08/24/webvisions-2006-recap-my-presentation/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2006/08/24/webvisions-2006-recap-my-presentation/#comments</comments>
		<pubDate>Thu, 24 Aug 2006 18:12:07 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[Web Standards]]></category>
		<category><![CDATA[WebVisions]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2006/08/24/webvisions-2006-recap-my-presentation/</guid>
		<description><![CDATA[
Two days ago, I gave my brown bag presentation titled WebVisions 2006 Recap. It was an internal Aptima presentation shared over video conference (Woburn, MA and Washington, DC). The talk lasted about 38 minutes and included topics such as web standards, semantic markup, microformats, community marketing, corporate blogging, decentralized living, bulletproof web design, and social [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://darowski.com/webvisions"><img width="240" height="180" alt="WebVisions 2006 Recap" src="http://static.flickr.com/90/223838245_35174321d4_m.jpg" /></a></p>
<p>Two days ago, I gave my brown bag presentation titled <strong>WebVisions 2006 Recap</strong>. It was an internal Aptima presentation shared over video conference (Woburn, MA and Washington, DC). The talk lasted about 38 minutes and included topics such as web standards, semantic markup, microformats, community marketing, corporate blogging, decentralized living, bulletproof web design, and social information architecture (all related back to the sessions I attended).</p>
<p>The feedback from the presentation has been quite good—it was my first presentation while flying solo (did one as a duo before&#8230; another as a quartet). To give you an idea of the audience, most of these technologies were absolutely brand new to folks within Aptima. So, some of it may be a little high level. But I find all of it very interesting and it was a pleasure to make the presentation.</p>
<ul>
<li><a href="http://darowski.com/webvisions">View the Presentation</a> (audio with slides&#8230; 18.7 MB Flash file)</li>
<li><a href="http://darowski.com/webvisions/Adam_Darowski-WebVisions_2006_Recap.mp3">Listen to the Presentation</a> (audio only&#8230; 17.4 MB mp3 file)</li>
</ul>
<p>I wanted to throw some thanks to Brian Oberkirch, Erin Julian, Nick Finck, and Will Pate for the use of their photos in the presentation. Also, big thanks to <a href="http://www.aptima.com">Aptima</a> for sending me to the conference!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2006/08/24/webvisions-2006-recap-my-presentation/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Lunchtime Consultation: How Do I Get Started With CSS?</title>
		<link>http://www.darowski.com/tracesofinspiration/2006/08/21/lunchtime-consultation-how-do-i-get-started-with-css/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2006/08/21/lunchtime-consultation-how-do-i-get-started-with-css/#comments</comments>
		<pubDate>Mon, 21 Aug 2006 16:42:07 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2006/08/21/lunchtime-consultation-how-do-i-get-started-with-css/</guid>
		<description><![CDATA[A friend of mine just IMed me asking how to get started with CSS. Now there&#8217;s a loaded question if there ever was one.
Sometimes when you become so immersed with something, you just have no idea how to begin to explain it to someone. Luckily, my friend (we&#8217;ll call him John, because his name is [...]]]></description>
			<content:encoded><![CDATA[<p>A friend of mine just IMed me asking how to get started with CSS. Now there&#8217;s a loaded question if there ever was one.</p>
<p>Sometimes when you become so immersed with something, you just have no idea how to begin to explain it to someone. Luckily, my friend (we&#8217;ll call him John, because his name is John) did have a specific example to start with. He wanted to get all the fonts on his site to be 12pt. He&#8217;s using the default font sizes, but on modern browsers (to John, a modern browser is anything beyond 1.0) the text was looking too big (like, 16pt).</p>
<p>After a &#8220;but 16pt font sizes are soooo Web 2.0&#8243; joke, I figured his example would be a good place to start. I told him the quickest way to get his fonts at 12px would be to put this in his document&#8217;s <code>&lt;head&gt;</code>:</p>
<pre><code>&lt;style type="text/css"&gt;
&lt;!--
p {
  font-size: 12px;
}
--&gt;
&lt;/style&gt;</code></pre>
<p>What that would do is take everything on the page that&#8217;s in a <code>&lt;p&gt;</code> tag and make it 12 pixels tall. Mission accomplished, no? Well, John has <code>&lt;font&gt;</code> tags everywhere. And nothing is in a paragraph tag. And this needs to span across multiple files.</p>
<p>Okay, that&#8217;s a few things. So, first things first: let&#8217;s get this style in an external style sheet.</p>
<p>Within the <code>&lt;head&gt;</code> of each page, John will need to place:</p>
<p><code>&lt;link href="css.css" rel="stylesheet" type="text/css" /&gt;</code></p>
<p>What that does is link to an external style sheet that all pages can share called css.css. </p>
<p>Unfortunately for John, I&#8217;m gonna make him change his <code>&lt;font&gt;</code> tags to header tags (remember them? <code>&lt;h1&gt;</code> to <code>&lt;h6&gt;</code>?)</p>
<p>John&#8217;s web site title is currently an image. We&#8217;ll work on changing that in the future, but let&#8217;s reserve the <code>&lt;h1&gt;</code> for that. He has a nice green header that is a perfect <code>&lt;h2&gt;</code>. I see some bold text that is just saying <code>&lt;h3&gt;</code> to me. Beyond that, we have paragraphs. Oh, and a sidebar. We&#8217;ll get to that in a bit, though. </p>
<p>So, for John&#8217;s external stylesheet, I&#8217;m seeing this:</p>
<pre><code>h2 {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 14px;
  font-weight: bold;
  color: #338866;
}
h3 {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: bold;
  color: #000000;
}
p {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: normal;
  color: #000000;
}</code></pre>
<p>The paragraphs are 12pt Verdana with the <code>&lt;h3&gt;</code> being just a bold version of the paragraph. The <code>&lt;h2&gt;</code> is a bit bigger and&#8230; greener.</p>
<p>Now, this will also make his code much cleaner and easier to understand. I understand some consolidation can be done with the styles here. But this is just for example&#8217;s sake. This isn&#8217;t bad for a lunchbreak consultation.</p>
<p>John has a sidebar with some smaller gray text. He can handle this a couple of different ways. He could set these as paragraphs that have a &#8220;class&#8221; style associated with them. So, this would override our default 12px black Verdana paragraphs. </p>
<p>Or, we could make it a bit more semantic by adding a <code>&lt;div&gt;</code> tag for the sidebar and then putting the text in another <code>&lt;h3&gt;</code> (for the bold header) and <code>&lt;p&gt;</code> for the remainder of the text. I like this because it will allow us to visually differentiate the sidebar content (you&#8217;ll see) but it makes the markup structure consistent.</p>
<p>So, around the sidebar content, let&#8217;s put:</p>
<pre><code>&lt;div id="sidebar"&gt;
  (sidebar content goes here)
&lt;/div&gt;</code></pre>
<p>Now, if we set the code in <code>&lt;h3&gt;</code> and <code>&lt;p&gt;</code> tags, we&#8217;ll be all set. Well, actually what will happen is we&#8217;ll inherit the styles that we already set for those tags. What we can do is set new styles for <code>&lt;h3&gt;</code> and <code>&lt;p&gt;</code> that only appear in the &#8220;sidebar&#8221; div. This is how:</p>
<pre><code>#sidebar h3 {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: bold;
  color: #666666;
}
#sidebar p {
  font-family: Verdana, Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-weight: normal;
  color: #666666;
}</code></pre>
<p>And there it is.</p>
<p>So, John&#8217;s site still needs updating in other areas to make it more standards compliant. First of all, the table layout has to go in place of floats. That, and the image-based navigation can be easily recreated with an unordered list and some styling. But this is a good first step. </p>
<p>Everybody should be using CSS for text formatting. CSS layout is a little trickier (especially if you are a table whiz), so I&#8217;ll cut him some slack there.</p>
<p>For now.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2006/08/21/lunchtime-consultation-how-do-i-get-started-with-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS: Now 10 Years Old</title>
		<link>http://www.darowski.com/tracesofinspiration/2006/07/31/css-now-10-years-old/</link>
		<comments>http://www.darowski.com/tracesofinspiration/2006/07/31/css-now-10-years-old/#comments</comments>
		<pubDate>Mon, 31 Jul 2006 12:39:58 +0000</pubDate>
		<dc:creator>Adam Darowski</dc:creator>
				<category><![CDATA[Eric Meyer]]></category>
		<category><![CDATA[Podcasting]]></category>
		<category><![CDATA[Web Standards]]></category>

		<guid isPermaLink="false">http://www.darowski.com/tracesofinspiration/2006/07/31/css-now-10-years-old/</guid>
		<description><![CDATA[As we are now in 2006, the Cascading Style Sheet is now ten years old. Eric Meyer, widely considered to be the #1 guru in CSS design, recently gave a keynote at the @media 2006 conference in London titled &#8220;A Decade of Style&#8221; to commemorate the history of CSS. The folks at @media have been [...]]]></description>
			<content:encoded><![CDATA[<p>As we are now in 2006, the Cascading Style Sheet is now ten years old. <a href="http://meyerweb.com/">Eric Meyer</a>, widely considered to be the #1 guru in CSS design, recently gave a keynote at the <a href="http://www.vivabit.com/atmedia2006/">@media 2006 conference</a> in London titled &#8220;A Decade of Style&#8221; to commemorate the history of CSS. The folks at @media have been kind enough to start releasing the seminars as podcasts this month.</p>
<p>It&#8217;s a good listen if you want to go beyond the standard tutorials and how-tos and really get a look at the history of the technology.</p>
<p><a href="http://www.vivabit.com/atmedia2006/blog/index.php/eric-meyer-a-decade-of-style-podcast/">Podcast available here.</a></p>
<p>I&#8217;m still waiting for the WebVisions podcasts to go up. You&#8217;ll be alerted here when they are available.</p>
<p><strong>Update:</strong> Again, as soon as I post something, something cool hits my RSS reader. Vitamin just send out <a href="http://www.thinkvitamin.com/news/view.php?ID=115">this list</a> of conference podcast feeds. I love this trend of releasing conference sessions for those who could not attend (or those that want to save a reference).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.darowski.com/tracesofinspiration/2006/07/31/css-now-10-years-old/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

