<?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>Michael Barrett</title>
	<atom:link href="http://abouthalf.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://abouthalf.com</link>
	<description>@ Abouthalf.com</description>
	<lastBuildDate>Wed, 01 Feb 2012 16:15:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Private enterprise &#8211; The Daily</title>
		<link>http://abouthalf.com/2012/02/01/private-enterprise-the-daily/</link>
		<comments>http://abouthalf.com/2012/02/01/private-enterprise-the-daily/#comments</comments>
		<pubDate>Wed, 01 Feb 2012 16:15:57 +0000</pubDate>
		<dc:creator>MB</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://abouthalf.com/?p=1323</guid>
		<description><![CDATA[This is a nice little article discusses my new favorite search engine, DuckDuckGo. DuckDuckGo&#8217;s best two features are: It has no features It respects your online privacy Well. It&#8217;s not true that it has no features. DuckDuckGo just focuses entirely on web search. It doesn&#8217;t litter the page with garbage-ey social features and doesn&#8217;t filter your [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.thedaily.com/page/2012/01/30/013012-tech-features-duckduckgo-1-2/">This is a nice little article</a> discusses my new favorite search engine, <a href="http://duckduckgo.com/">DuckDuckGo</a>.</p>
<p>DuckDuckGo&#8217;s best two features are:</p>
<ol>
<li>It has no features</li>
<li>It respects your online privacy</li>
</ol>
<p>Well. It&#8217;s not true that it has <em>no</em> features. DuckDuckGo just focuses entirely on web search. It doesn&#8217;t litter the page with garbage-ey social features and doesn&#8217;t filter your search results based upon your past search history.</p>
<p>And sure they have lots of little <a href="http://duckduckgo.com/goodies.html">goodies and widgets</a> but mostly it&#8217;s just a nice clean search engine with no BS.</p>
 <img src="http://abouthalf.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1323" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://abouthalf.com/2012/02/01/private-enterprise-the-daily/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Fixie: A cocktail for Portland</title>
		<link>http://abouthalf.com/2012/01/28/the-fixie-a-cocktail-for-portland/</link>
		<comments>http://abouthalf.com/2012/01/28/the-fixie-a-cocktail-for-portland/#comments</comments>
		<pubDate>Sun, 29 Jan 2012 01:00:51 +0000</pubDate>
		<dc:creator>MB</dc:creator>
				<category><![CDATA[Food and drink]]></category>
		<category><![CDATA[cocktails]]></category>

		<guid isPermaLink="false">http://abouthalf.com/?p=1319</guid>
		<description><![CDATA[At my most recent cocktail party, a guest brought a gift of Ransom Old Tom Gin. Old Tom is a lovely old style gin with lots of infused flavor, very different from what you might expect. Malty, spicy, complex. It&#8217;s very good over ice with with a big lemon peel, though we failed to make a good [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_1320" class="wp-caption aligncenter  " style="width: 360px"><img class="size-large wp-image-1320" title="fixie" src="/wp-content/uploads/2012/01/fixie-360x480.jpg" alt="The Fixie cocktail" width="360" height="480" /><p class="wp-caption-text">The Fixie cocktail</p></div>
<p>At my most recent cocktail party, a guest brought a gift of <a href="http://www.ransomspirits.com/spirits.php">Ransom Old Tom Gin</a>. Old Tom is a lovely old style gin with lots of infused flavor, very different from what you might expect. Malty, spicy, complex. It&#8217;s very good over ice with with a big lemon peel, though we failed to make a good cocktail with it that night.</p>
<p>After a little careful thought and meditation, I came up with this:</p>
<h2>The Fixie</h2>
<ul>
<li>3 parts Ransom Old Tom Gin</li>
<li>1 part sweet vermouth</li>
<li>1/2 part <a href="http://en.wikipedia.org/wiki/Lillet">Lillet Blanc</a></li>
<li>Wide lemon peel for garnish</li>
</ul>
<p>Stir the ingredients over ice for 30 seconds, then strain into a chilled cocktail glass. Garnish with the lemon peel.</p>
<p>The vermouth balances out the gin (like any good martini) and the Lillet and lemon brighten the drink a touch so it&#8217;s not too sweet.</p>
<p>Smooth, slightly astringent, slightly sweet. Very sip-able.</p>
<p>I bequeath this cocktail to you, Portland, because I love you.</p>
<p>&nbsp;</p>
 <img src="http://abouthalf.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1319" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://abouthalf.com/2012/01/28/the-fixie-a-cocktail-for-portland/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML5 Cut the rope</title>
		<link>http://abouthalf.com/2012/01/10/html5-cut-the-rope/</link>
		<comments>http://abouthalf.com/2012/01/10/html5-cut-the-rope/#comments</comments>
		<pubDate>Tue, 10 Jan 2012 17:11:39 +0000</pubDate>
		<dc:creator>MB</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://abouthalf.com/?p=1314</guid>
		<description><![CDATA[Microsoft is promoting an HTML port of the popular iPhone game &#8220;Cut the rope&#8221; as a part of their marketing and promotion of Internet Explorer 10. It works well in Safari (and probably Chrome too). They include a &#8216;behind the scenes&#8217; page where they discuss some of the technologies used. It&#8217;s fairly interesting but includes some [...]]]></description>
			<content:encoded><![CDATA[<p>Microsoft is <a href="http://www.cuttherope.ie/">promoting</a> an HTML port of the popular iPhone game &#8220;Cut the rope&#8221; as a part of their marketing and promotion of Internet Explorer 10. It works well in Safari (and probably Chrome too).</p>
<p style="text-align: center;"><a href="http://www.cuttherope.ie/"><img class="aligncenter size-large wp-image-1315" title="Cut the rope screen capture" src="/wp-content/uploads/2012/01/Screen-Shot-2012-01-10-at-9.05.57-AM-480x309.png" alt="Cut the rope screen capture" width="480" height="309" /></a></p>
<p>They include a &#8216;behind the scenes&#8217; page where they discuss some of the technologies used. It&#8217;s fairly interesting but includes some dumb marketing language:</p>
<blockquote><p>It was a daunting task: get this code into a browser while maintaining the unique personality and incredible quality that gamers are accustomed to. To accomplish this, we bet on JavaScript.</p></blockquote>
<p>Safe bet. When I have to choose between JavaScript or JavaScript I also bet on JavaScript.</p>
<p>&nbsp;</p>
 <img src="http://abouthalf.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1314" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://abouthalf.com/2012/01/10/html5-cut-the-rope/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Bad blogger. Lazy! No biscuit.</title>
		<link>http://abouthalf.com/2011/12/20/bad-blogger-lazy-no-biscuit/</link>
		<comments>http://abouthalf.com/2011/12/20/bad-blogger-lazy-no-biscuit/#comments</comments>
		<pubDate>Tue, 20 Dec 2011 14:58:02 +0000</pubDate>
		<dc:creator>MB</dc:creator>
				<category><![CDATA[Play]]></category>

		<guid isPermaLink="false">http://abouthalf.com/?p=1300</guid>
		<description><![CDATA[I haven&#8217;t been updating as much as I should. To make up for that, here&#8217;s some pretty pictures. &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160;]]></description>
			<content:encoded><![CDATA[<p>I haven&#8217;t been updating as much as I should. To make up for that, here&#8217;s some pretty pictures.</p>
<div id="attachment_1301" class="wp-caption aligncenter  " style="width: 319px"><a href="/wp-content/uploads/2011/12/alley.jpg"><img class="size-large wp-image-1301" title="alley" src="/wp-content/uploads/2011/12/alley-319x480.jpg" alt="" width="319" height="480" /></a><p class="wp-caption-text">Alley</p></div>
<p>&nbsp;</p>
<div id="attachment_1302" class="wp-caption aligncenter  " style="width: 319px"><a href="/wp-content/uploads/2011/12/looking-east.jpg"><img class="size-large wp-image-1302" title="looking east" src="/wp-content/uploads/2011/12/looking-east-319x480.jpg" alt="" width="319" height="480" /></a><p class="wp-caption-text">Looking east</p></div>
<p>&nbsp;</p>
<div id="attachment_1303" class="wp-caption aligncenter  " style="width: 480px"><a href="/wp-content/uploads/2011/12/Vista-bridge-detail.jpg"><img class="size-large wp-image-1303" title="Vista bridge detail" src="/wp-content/uploads/2011/12/Vista-bridge-detail-480x319.jpg" alt="Detail of the vista bridge" width="480" height="319" /></a><p class="wp-caption-text">Detail of the vista bridge</p></div>
<p>&nbsp;</p>
<div id="attachment_1304" class="wp-caption aligncenter  " style="width: 480px"><a href="/wp-content/uploads/2011/12/Vista-bridge.jpg"><img class="size-large wp-image-1304" title="Vista bridge" src="/wp-content/uploads/2011/12/Vista-bridge-480x319.jpg" alt="Vista bridge" width="480" height="319" /></a><p class="wp-caption-text">Walking over the Vista bridget</p></div>
<p>&nbsp;</p>
<div id="attachment_1305" class="wp-caption aligncenter  " style="width: 480px"><a href="/wp-content/uploads/2011/12/vista-bridge-detail-2.jpg"><img class="size-large wp-image-1305" title="vista bridge detail 2" src="/wp-content/uploads/2011/12/vista-bridge-detail-2-480x319.jpg" alt="vista bridge detail 2" width="480" height="319" /></a><p class="wp-caption-text">Broken points</p></div>
<p>&nbsp;</p>
<div id="attachment_1307" class="wp-caption aligncenter  " style="width: 480px"><a href="/wp-content/uploads/2011/12/the-51.jpg"><img class="size-large wp-image-1307" title="the 51" src="/wp-content/uploads/2011/12/the-51-480x319.jpg" alt="the 51" width="480" height="319" /></a><p class="wp-caption-text">Catch the 51</p></div>
<p>&nbsp;</p>
<div id="attachment_1306" class="wp-caption aligncenter  " style="width: 319px"><a href="/wp-content/uploads/2011/12/yellow-leaves-grey-stone.jpg"><img class="size-large wp-image-1306" title="yellow leaves grey stone" src="/wp-content/uploads/2011/12/yellow-leaves-grey-stone-319x480.jpg" alt="yellow leaves grey stone" width="319" height="480" /></a><p class="wp-caption-text">Yellow leaves, grey stone</p></div>
<p>&nbsp;</p>
<div id="attachment_1309" class="wp-caption aligncenter  " style="width: 319px"><a href="/wp-content/uploads/2011/12/there-is-hope.jpg"><img class="size-large wp-image-1309" title="there is hope" src="/wp-content/uploads/2011/12/there-is-hope-319x480.jpg" alt="there is hope" width="319" height="480" /></a><p class="wp-caption-text">There is hope</p></div>
<p>&nbsp;</p>
<div id="attachment_1310" class="wp-caption aligncenter  " style="width: 480px"><a href="/wp-content/uploads/2011/12/buddy.jpg"><img class="size-large wp-image-1310" title="buddy" src="/wp-content/uploads/2011/12/buddy-480x319.jpg" alt="buddy" width="480" height="319" /></a><p class="wp-caption-text">Buddy</p></div>
<p>&nbsp;</p>
 <img src="http://abouthalf.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1300" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://abouthalf.com/2011/12/20/bad-blogger-lazy-no-biscuit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Follow up to the update to the update</title>
		<link>http://abouthalf.com/2011/12/19/follow-up-to-the-update-to-the-update/</link>
		<comments>http://abouthalf.com/2011/12/19/follow-up-to-the-update-to-the-update/#comments</comments>
		<pubDate>Tue, 20 Dec 2011 01:42:21 +0000</pubDate>
		<dc:creator>MB</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[ie9]]></category>

		<guid isPermaLink="false">http://abouthalf.com/?p=1294</guid>
		<description><![CDATA[I recently updated my update on working around Internet Explorer 9’s deficiencies with gradients and rounded corners. Based upon feedback from a friendly reader, I tweaked the HTC script to work when gradients are applied on hover or mouseover states &#8211; the sort of styling you might want to use on a big, friendly, rounded [...]]]></description>
			<content:encoded><![CDATA[<p>I recently <a title="Updated IE9 gradients with rounded corners" href="http://abouthalf.com/2011/10/04/updated-ie9-gradients-with-rounded-corners/">updated my update</a> on working around Internet Explorer 9’s deficiencies with gradients and rounded corners. Based upon feedback from a friendly reader, I tweaked the HTC script to work when gradients are applied on hover or mouseover states &#8211; the sort of styling you might want to use on a big, friendly, rounded form button. Very close to the time I created this HTC workaround, the fantastic <a href="http://www.colorzilla.com/gradient-editor/">Colorzilla</a> gradient editor was updated to support IE 9 in much the same way my script does.</p>
<p>The Colorzilla gradient editor is a visual gradient editor like you might find in <span title="Old busted">Photoshop</span> or <span title="New hotness">Pixelmator</span>. Once you’ve specified your gradient, you see an HTML preview plus CSS style rules to create that gradient in modern browsers, and a reasonable approximation using IE’s filter syntax.</p>
<div id="attachment_1295" class="wp-caption aligncenter  " style="width: 389px"><a href="/wp-content/uploads/2011/12/Screen-Shot-2011-12-19-at-8.33.27-AM.png"><img class="size-large wp-image-1295" title="Colorzilla interface" src="/wp-content/uploads/2011/12/Screen-Shot-2011-12-19-at-8.33.27-AM-389x480.png" alt="Colorzilla interface" width="389" height="480" /></a><p class="wp-caption-text">Click and draggy</p></div>
<p>A new checkbox toggles IE 9 support. Selecting this option includes a base64 encoded SVG background image along with the rest of the browser gradient definitions. In order for this to work properly it is necessary to include an IE9 specific style rule (in a conditional stylesheet) which disables the filter definition for legacy versions of IE. An example of this style rule is included in the application.</p>
<div id="attachment_1296" class="wp-caption aligncenter  " style="width: 458px"><a href="/wp-content/uploads/2011/12/Screen-Shot-2011-12-19-at-8.33.00-AM.png"><img class="size-full wp-image-1296" title="IE 9 feature" src="/wp-content/uploads/2011/12/Screen-Shot-2011-12-19-at-8.33.00-AM.png" alt="IE 9 SVG feature" width="458" height="398" /></a><p class="wp-caption-text">Click the box for IE 9 support</p></div>
<p>I have to confess that I’ve been using this tool in lieu of my own script. There are a few reasons.</p>
<h2 id="pros">Pros</h2>
<p>Having the SVG definition pre-built and available right in-line removes dependencies on JavaScript and means there’s no extra HTC file to keep up with. Additionally, since there’s no scripting involved, there’s no possibility of collisions with your any scripting in your application.</p>
<p>If one wanted, one could just use the SVG definition and remove all the other gradient definitions (except of course the filter rule). Any browser which supports CSS3 gradients will support an SVG background image. This would let you clean out redundant, browser specific style rules in all your gradient styles.</p>
<p>This technique is reasonably future proof, as it uses standard HTML and a standard SVG. If IE 10 fails to support gradients, this technique will still work.</p>
<p>I have no idea if my HTC script will work on the new mobile IE on Windows Phone 7and (hypothetically) Windows 8. (If someone wants to give me a free Windows Phone, I’ll be happy to test.)</p>
<h2 id="cons">Cons</h2>
<p>If you’re using CSS3 gradient definitions, it’s technically possible to tweak or edit them “by hand” without using a special tool. To make any changes to an encoded SVG image you’ll either have to decode, edit, and re-encode or you’ll have to create a new image from scratch. If you’re using a tool like the Colorzilla gradient editor, this isn’t a huge problem &#8211; but it’s still an extra step.</p>
<p>Since the SVG gradient is encoded inline in the main stylesheet, all browsers must download this image whether they use it or not. So in a way you’re punishing all users for IE 9’s sins. My dynamic solution targets IE 9 specifically.</p>
<p>It is possible that one day this tool will simply disappear. If that happens, then designers and developers might be scrambling for a replacement.</p>
<h2 id="irecommend">I recommend</h2>
<p>I recommend using Colorzilla’s tool over my script for supporting IE 9 gradients. In practice, I find it’s simply far easier for me to just define a gradient and copy/paste the generated CSS into mine, and follow up with a little clean up once the design is settled.</p>
<p>I’m happy with my script, and there may be cases where it’s preferred (smaller download sizes, targeting only modern desktop browsers, etc) but I think the Pros of using Colorzilla’s tool outweigh the Cons.</p>
 <img src="http://abouthalf.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1294" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://abouthalf.com/2011/12/19/follow-up-to-the-update-to-the-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Poe Sans</title>
		<link>http://abouthalf.com/2011/10/29/poe-sans/</link>
		<comments>http://abouthalf.com/2011/10/29/poe-sans/#comments</comments>
		<pubDate>Sat, 29 Oct 2011 18:00:27 +0000</pubDate>
		<dc:creator>MB</dc:creator>
				<category><![CDATA[Design]]></category>

		<guid isPermaLink="false">http://abouthalf.com/?p=1284</guid>
		<description><![CDATA[Poe&#8217;s law states: Without a winking smiley or other blatant display of humor, it is impossible to create a parody of fundamentalism that someone won&#8217;t mistake for the real thing. This article &#8220;Typekit: Remaking the Matrix&#8221; was linked around yesterday by people I respect. A lot of dumb things are published on the internet, and [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://en.wikipedia.org/wiki/Poe's_law">Poe&#8217;s law states</a>:</p>
<blockquote>
<p>Without a winking smiley or other blatant display of humor, it is impossible to create a parody of fundamentalism that someone won&#8217;t mistake for the real thing.</p>
</blockquote>
<p>This article &#8220;<a href="http://opinionatedtype.wordpress.com/2011/10/27/typekit-remaking-the-matrix/">Typekit: Remaking the Matrix</a>&#8221; was linked around yesterday by <a href="http://shawnblanc.net/2011/10/farmer-typekit/">people</a> I respect.</p>
<p>A lot of dumb things are published on the internet, and generally, I like to let stupid dogs lie. But this was so blisteringly dumb and so arrogantly offensive I could not leave it be. </p>
<p>I am unsure if the piece is serious. It could very well be a masterful satire, but I really can&#8217;t tell. The rest of the blog doesn&#8217;t look like satire, the blog which links to the piece doesn&#8217;t treat it as satire, the comment section of the piece seems to be serious, but none of that means it isn&#8217;t a satire. I hope it&#8217;s a satire.</p>
<p>After a long digression and some fawning over Typekit and Apple, the author gets to his point.</p>
<blockquote>
<p>But what if giving is only half of what Typekit could do to remake the web? What if they did something never attempted in the font world?</p>
<p><em>I’m talking about taking away ugliness.</em></p>
</blockquote>
<p>And a paragraph later…</p>
<blockquote>
<p>In the same way, I am proposing that Typekit buy a typeface for the purpose of taking it off the market.</p>
</blockquote>
<p>He is suggesting that <a href="https://typekit.com/">Typekit</a> buy the typeface Comic Sans only to destroy it. This will, apparently, make the world a better place.</p>
<p>He outlines a specific plan for eliminating Comic Sans from the earth by beginning with the following.</p>
<blockquote>
<p>Buy the exclusive rights to mediocre fonts of bygone times (Comic Sans, in this example, but also think Arial, Papyrus, Curlz, Jokerman &#8230; anything that would send small churches scrambling for replacements for their weekly announcements) and take them out of commission for good. This would effectively ban computer companies from including them in their operating systems going forward, thus ridding culture of some of its typographic mediocrity.</p>
</blockquote>
<p>The days of small churches oppressing us all with their poorly designed newsletters will finally be over.</p>
<h3 id="aquickdefenseofcomicsans">A quick defense of Comic Sans</h3>
<p>Comic Sans was designed to be used in software for children, and it&#8217;s entirely appropriate for that purpose. If you have a cartoon character teaching you about the alphabet, you don&#8217;t have the cartoon character speak in Helvetica. </p>
<p>Besides, there is no font more laden with irony.</p>
<div id="attachment_1286" class="wp-caption aligncenter  " style="width: 462px"><a href="/wp-content/uploads/2011/10/helvetica.png"><img src="/wp-content/uploads/2011/10/helvetica.png" alt="You mad bro?" title="helvetica" width="462" height="90" class="size-full wp-image-1286" /></a><p class="wp-caption-text">You mad bro?</p></div>
<p>Comic Sans is a light-hearted, jokey typeface intended for small blocks of text in casual contexts. For children. The problem comes in when people use Comic Sans in inappropriate settings or in inappropriate ways. The coworker who writes all email in Comic Sans all the time, or the administrative assistant who pens a company-wide memo in Comic Sans are common examples of Comic Sans done wrong. In the first case, you just roll your eyes quietly at your desk and delete the email. In the second case, a learning opportunity has presented itself.</p>
<p>The problem of misuse is not unique to Comic Sans. I worked with an architect years ago who preached a &#8220;Helvetica&#8221; mentality. All Helvetica. All the time. For everything. Kids fresh out of design school, especially after seeing the great <a href="http://www.imdb.com/title/tt0847817/">Helvetica</a> documentary, have the same problem. Corporations are lazy and conservative and use Helvetica for everything as well. People love Helvetica. To death.</p>
<h3 id="theproblemwithburningbooksisyoucanteverbesureyouveburnedthemall.">The problem with burning books, is you can&#8217;t ever be sure you&#8217;ve burned them all.</h3>
<p>If you overlook the morally abhorrent idea of buying a piece of culturally significant design work and destroying it so no others can use it again &#8211; there&#8217;s a bit of a practical problem with the author&#8217;s scheme.</p>
<p>Destroying one &#8220;bad&#8221; typeface in no way ensures that people won&#8217;t just use another bad typeface. The author himself links to <a href="http://www.imdb.com/title/tt0847817/">alternatives</a> for Comic Sans that are &#8220;better&#8221;. Whether or not these are actually better is irrelevant. If Comic Sans is removed and replaced with another casual typeface, what will prevent the church ladies from overusing and abusing that typeface? Will removing Comic Sans prevent interns from sending memos in <a href="http://www.fonts101.com/fonts/view/Brandname/13792/MarkerFelt.aspx">Marker Felt</a>?</p>
<p>Clearly destroying Comic Sans is not enough. All casual fonts must either be destroyed or placed under close scrutiny, to be used only by design professionals who have passed through several stages of review and approval. </p>
<h3 id="itsnotforsale">It&#8217;s not for sale</h3>
<p><a href="http://en.wikipedia.org/wiki/Comic_Sans">Comic Sans</a> is owned by Microsoft. The author&#8217;s scheme has Typekit purchasing &#8220;exclusive rights&#8221; to Comic Sans for somewhere between one and ten million dollars. From the &#8220;Counterarguments&#8221; (read: straw men) section of the article:</p>
<blockquote>
<p>Yes, it will cost maybe between one and ten million to make it worth a company’s while to take just one typeface off the market.</p>
</blockquote>
<p>Comic Sans is in use on a huge number of computers, both Macs and Windows PCs and probably a fair number of mobile devices as well.</p>
<p>Some googling tells me that there are approximately 1 billion Windows PCs in the world today. If the license fee collected for Comic Sans was 1¢ for each copy of Windows, that would be the author&#8217;s max $10,000,000 asking price. This doesn&#8217;t include Macs, Windows Mobile Devices, or other licensees. I&#8217;m pretty sure Microsoft plans to continue selling Windows. Why would they give this money fountain away, especially to someone who intends to destroy it?</p>
<p>I imagine the founder of Typekit strolling into the Redmond campus of Microsoft, handing a giant cartoon sack of money to Steve Balmer who concedes &#8220;well, we don&#8217;t really want to sell the rights to our intellectual property, but you do have a giant sack of money so I guess we have to&#8221;.</p>
<div id="attachment_1287" class="wp-caption aligncenter  " style="width: 409px"><a href="/wp-content/uploads/2011/10/MrBurns.jpg"><img src="/wp-content/uploads/2011/10/MrBurns-409x480.jpg" alt="Excellent" title="MrBurns" width="409" height="480" class="size-large wp-image-1287" /></a><p class="wp-caption-text">Portrait of the author</p></div>
<h3 id="whatkindofcompanyistypekitanyway">What kind of company is Typekit anyway?</h3>
<p>The author appears to be very fond of Typekit. I am too. They do great work and they deserve heaps of praise and some of your web-design budget. </p>
<p>At the end of the article the author writes:</p>
<blockquote>
<p>Getting rid of Comic Sans would be big. This act of removal would distinguish Typekit as a company willing to put themselves on the line for excellence and beauty. In a very real way, they would be remaking the world.</p>
</blockquote>
<p>In a very real way, Typekit would be putting themselves out of business. This silliness betrays the author&#8217;s fundamental misunderstanding of what Typekit does.</p>
<p>In the past few years all major web browsers have enabled support for embeddable typefaces. So, much like the way a web page can include a picture, a web page can now specify the exact typeface(s) to be used. This means you can have a professionally typeset web page. Like pictures, typefaces are linked to web page and downloaded for use in displaying the page. It works really well.</p>
<p>The problem with this is digital typefaces are tiny software programs which are licensed by publishers (often called foundries in a throwback to the old days when type was made of cast lead). When you view a web page on your computer, your computer downloads a copy of everything (more or less) used to build that web page. If a licensed typeface is attached to the web page, you now have an unlicensed copy of that typeface. Congratulations, you&#8217;re a pirate!</p>
<p>Typeface publishers make money by licensing their typefaces &#8211; so they were understandably not to thrilled with the idea of people slapping an $800 typeface up on the web to be downloaded by anyone. Typekit came along and invented a reasonably secure way to deliver typefaces to web pages so that they can&#8217;t be easily pirated. Typeface publishers license typefaces to Typekit, who then licenses typefaces to web designers or companies or whomever. </p>
<p>Typekit is a service provider and a middle man. They provide technical expertise and a means for typeface publishers to satisfy customer demand without sacrificing control of their intellectual property. </p>
<p>For clarity: Typekit provides a mechanism to secure intellectual property, not destroy it. </p>
<p>So. Now imagine that Typekit, which has earned all this good will in the industry, has the faith of major type publishers, and the praise of wed developers everywhere, now chooses to seek out and destroy a typeface. What does a typeface publisher think in this situation? Do they think &#8220;well, I hate Comic Sans too&#8221; or do they think &#8220;these guys can&#8217;t be trusted&#8221;?</p>
<p>Hint: It&#8217;s the second one.</p>
<p>The author includes this false equivalency in the comments beneath the article.</p>
<blockquote>
<p>Typekit has even gone so far as to make display faces unavailable for paragraphs in the Customize section of WordPress — they won’t let you use an inappropriate face for your needs. Really now, how different is that from what I have suggested here?</p>
</blockquote>
<p>Really. How is quality control of software and service any different from permanently destroying a bit of culture so that no one else may use it appropriately, well, or otherwise.</p>
<p>This kind of thinking is how gated communities are born.</p>
<h3 id="accentuatethepositive.">Accentuate the positive.</h3>
<p>Instead of assuming the author aspires to be an amoral design autocrat, I choose to assume that the article is a work of satirical genius. That the author is a modern day Swift for the design community. To seriously suggest a business destroy itself by buying up a typeface, only to destroy it, for the purpose of protecting the world from its misuses — hilarious.</p>
<p>I say bravo.</p>
<p><a href="/wp-content/uploads/2011/10/d177f3a95c132744.gif.gif"><img src="/wp-content/uploads/2011/10/d177f3a95c132744.gif.gif" alt="bravo" title="d177f3a95c132744.gif" width="480" height="360" class="aligncenter size-full wp-image-1288" /></a></p>
 <img src="http://abouthalf.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1284" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://abouthalf.com/2011/10/29/poe-sans/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mr. Stephen Fry helps around the office</title>
		<link>http://abouthalf.com/2011/10/28/mr-stephen-fry-helps-around-the-office/</link>
		<comments>http://abouthalf.com/2011/10/28/mr-stephen-fry-helps-around-the-office/#comments</comments>
		<pubDate>Fri, 28 Oct 2011 15:43:10 +0000</pubDate>
		<dc:creator>MB</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://abouthalf.com/?p=1279</guid>
		<description><![CDATA[Mr. Stephen Fry helps out around the office by announcing to my colleagues which development environment is about to be updated.]]></description>
			<content:encoded><![CDATA[<div id="attachment_1280" class="wp-caption aligncenter  " style="width: 432px"><a href="/wp-content/uploads/2011/10/MrFrySays.png"><img class="size-large wp-image-1280" title="MrFrySays" src="/wp-content/uploads/2011/10/MrFrySays-432x480.png" alt="" width="432" height="480" /></a><p class="wp-caption-text">Attention!</p></div>
<p>Mr. Stephen Fry helps out around the office by announcing to my colleagues which development environment is about to be updated.</p>
 <img src="http://abouthalf.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1279" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://abouthalf.com/2011/10/28/mr-stephen-fry-helps-around-the-office/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Snug</title>
		<link>http://abouthalf.com/2011/10/07/snug/</link>
		<comments>http://abouthalf.com/2011/10/07/snug/#comments</comments>
		<pubDate>Fri, 07 Oct 2011 21:05:03 +0000</pubDate>
		<dc:creator>MB</dc:creator>
				<category><![CDATA[Things]]></category>

		<guid isPermaLink="false">http://abouthalf.com/?p=1275</guid>
		<description><![CDATA[My work ordered a keyboard for me. It arrived in a box. Nice.]]></description>
			<content:encoded><![CDATA[<p>My work ordered a keyboard for me. It arrived in a box.</p>
<div id="attachment_1276" class="wp-caption aligncenter  " style="width: 480px"><a href="/wp-content/uploads/2011/10/image.jpeg"><img class="size-large wp-image-1276" title="box" src="/wp-content/uploads/2011/10/image-480x360.jpg" alt="" width="480" height="360" /></a><p class="wp-caption-text">Are you sure this doesn&#39;t need any packing peanuts?</p></div>
<p>Nice.</p>
 <img src="http://abouthalf.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1275" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://abouthalf.com/2011/10/07/snug/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Updated IE9 gradients with rounded corners</title>
		<link>http://abouthalf.com/2011/10/04/updated-ie9-gradients-with-rounded-corners/</link>
		<comments>http://abouthalf.com/2011/10/04/updated-ie9-gradients-with-rounded-corners/#comments</comments>
		<pubDate>Tue, 04 Oct 2011 15:53:14 +0000</pubDate>
		<dc:creator>MB</dc:creator>
				<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://abouthalf.com/?p=1265</guid>
		<description><![CDATA[Update to the update: I&#8217;ve made a slight modification to the HTC script to handle mouse-over / hover events better. By &#8220;better&#8221; I mean &#8220;it handles them now.&#8221; Thanks to the reader who suggested it. Some time ago I wrote up a hacky way to work around an annoying IE9 bug. The full write-up has [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Update to the update:</strong> I&#8217;ve made a slight modification to the HTC script to handle mouse-over / hover events better. By &#8220;better&#8221; I mean &#8220;it handles them now.&#8221; Thanks to the reader who suggested it.</p>
<hr />
<p><a title="Internet Explorer 9 gradients with rounded corners" href="http://abouthalf.com/2010/10/25/internet-explorer-9-gradients-with-rounded-corners/">Some time ago I wrote up a hacky way to work around an annoying IE9 bug</a>.</p>
<p>The full write-up has the details, but in short, Internet Explorer 9 doesn’t play well with CSS3 border radius rules (for rounded corners on boxes) and IE’s proprietary gradient filter. The gradient pokes out from underneath the rounded corners. <em>Unsightly</em>.</p>
<p>Since IE9 has full support for SVGs, you can substitute an SVG for a gradient background on any arbitrarily sized HTML element.</p>
<p>Supporting both CSS3 gradients plus MS gradient filters <em>and</em> an extra SVG image plus supporting CSS is clunky at best. CSS hacks are best when they’re invisible.</p>
<p>With a little experimentation I learned one could extract the gradient details from MS’ gradient filter and build an SVG with those details. IE9 has robust support for data URIs in CSS, which means I could base64 encode the constructed SVG and use it as a background image.</p>
<p><a href="http://abouthalf.com/examples/ie9roundedbackgrounds/htc-sample.html">Blammo</a>.</p>
<p>What you have here is an HTC (HTML Component) which, on “contentready”, extracts gradient filter data, builds an SVG, base64 encodes that SVG, creates a stylesheet and style rule to hold that encoded data, and then applies the new background style to the element in question, and caches all this info so the next element with the same gradient definition just inherits the new style rule.</p>
<div id="attachment_1266" class="wp-caption aligncenter  " style="width: 480px"><a href="/wp-content/uploads/2011/10/Screen-Shot-2011-10-02-at-9.26.34-PM.png"><img class="size-large wp-image-1266" title="Screen capture of gradient bug and fix" src="/wp-content/uploads/2011/10/Screen-Shot-2011-10-02-at-9.26.34-PM-480x409.png" alt="" width="480" height="409" /></a><p class="wp-caption-text">Screen capture of gradient bug and fix</p></div>
<p>Because each gradient is defined in a style rule, and then reused as needed, it’s pretty <a href="http://abouthalf.com/examples/ie9roundedbackgrounds/htc-performance.html">fast</a>.</p>
<p><a href="http://abouthalf.com/examples/ie9roundedbackgrounds/htc-multiple.html">An example with many gradients</a>.</p>
<p><a href="http://abouthalf.com/examples/ie9roundedbackgrounds/htc.zip">Download the zipped HTC file and .htaccess file</a>.</p>
<p>You can enable the filter in your IE9-targeted CSS in an HTML document like so:</p>
<pre><code>&lt;!--[if ie 9]&gt;
	&lt;style type="text/css" media="screen"&gt;
		.filter
		{
			behavior: url(ie9-gradient-fix.htc);
		}
	&lt;/style&gt;
&lt;![endif]--&gt;</code></pre>
<p>This HTC doesn’t sniff out the version of IE, so it should be included in a conditional stylesheet.</p>
<p>IE9 is more strict with HTCs than previous versions. You’ll need to make sure your web server is sending HTC files with the correct mime type, otherwise IE9 will ignore it. If you’re hosting on Apache, add the following to your .htaccess file or host configuration:</p>
<pre><code>AddType text/x-component .htc</code></pre>
<p>I’m pretty sure that Windows servers will take care of this automatically, but I don’t care.</p>
<h2 id="details">Details</h2>
<p>HTC files are basically a way to attach JavaScript event handlers to HTML elements via CSS selectors. In the following example, event handlers defined in behavior.htc are attached to all paragraph elements that are contained within a DIV element having the CSS class name “foo”.</p>
<pre><code>div.foo p {behavior: url(behavior.htc);}</code></pre>
<p>It’s like a primitive jQuery. Event handlers are defined and attached to elements at the beginning of the HTC document:</p>
<pre><code>&lt;PUBLIC:ATTACH EVENT="oncontentready" ONEVENT="myOnContentReadyHandler()" /&gt;</code></pre>
<p>Later in the document a javascript function is defined with the same signature: <code>myOnContentReadyHandler()</code>. Within that function the JS keyword “this” refers to the element the event handler is attached to. So my example function could make all the <code>&lt;p&gt;</code> tags in a <code>&lt;div&gt;</code> with a class of “foo” disappear like so:</p>
<pre><code>function myOnContentReadyHandler()
{
	this.style.display = "none";
}</code></pre>
<h3 id="thegradientfixtheoryofoperation">The gradient fix theory of operation</h3>
<p>Here’s how the IE9 gradient fix works:</p>
<ol>
<li>Determine if the current element has both at least one rounded corner via CSS border-radius and a gradient filter applied. If so, continue.</li>
<li>Determine if the current filter gradient has already been processed and cached. If not, continue building the background SVG</li>
<li>Extract the starting color, ending color, and direction (horizontal or vertical) for the gradient from the filter css rule using the element’s <code>currentStyle</code> property</li>
<li>If the colors are using #AARRGGBB format (a proprietary form of RGBA color) &#8211; extract the alpha value and convert to a decimal value from 0 to 1 for use in the SVG.</li>
<li>Using the extracted colors, opacity, and gradient direction. Build an SVG graphic with a single gradient definition and a single rectangle filled with that gradient.</li>
<li>Base64 encode the SVG</li>
<li>Create a style rule with a unique classname selector defining a background image using the encoded SVG image in a data uri and removing the filter definition (e.g. removing the original gradient background).</li>
<li>Append the style rule to a dynamically created stylesheet.</li>
<li>Cache the class name of the new style rule in a globally accessible object using the filter rule definition as a key (this should be reasonably unique)</li>
<li>Apply the class name to the element.</li>
</ol>
<p>In step #2, if the filter definition exists in the cache, we skip to step #10 and apply the cached class name to the element. This way gradients are only created once per page request and reused throughout the page.</p>
<p>Below are some gotchas or other considerations.</p>
<h3 id="assumptionsconditions">Assumptions/Conditions</h3>
<ol>
<li>HTC files only work when javascript is enabled.</li>
<li>Elements with filter gradients have no other MS filters.</li>
</ol>
<h3 id="creatingastylesheetwithinanhtc">Creating a stylesheet within an HTC</h3>
<p>HTC files, once loaded by IE, have their own document namespace. If you want to build a stylesheet dynamically from within an HTC, you’ll need to reference the ‘window.document’ namespace.</p>
<pre><code>window.document.createStyleSheet();</code></pre>
<h3 id="cssistricky">CSS is tricky</h3>
<p>The SVG background is applied via a CSS classname &#8211; the CSS rule corresponding to that class name is added to a new stylesheet, which should appear last in the list of stylesheets for the document. The declaration which unsets the original filter background uses an <code>!important</code> rule. So the new background image styles should override any previously defined background styles. However, your CSS may not play nicely with this dynamically created style rule. If the gradient pokes through your nicely rounded corners, consult IE9’s dev tools and make sure that you don’t have a CSS rule that’s overriding the dynamic rule.</p>
<h3 id="base64">Base64</h3>
<p>I didn’t write my own base64 encoding function. I’m no dummy. I used the JavaScript class provided by <a title="Base64" href="http://www.webtoolkit.info/javascript-base64.html">WebTookKit.info</a>.</p>
 <img src="http://abouthalf.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1265" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://abouthalf.com/2011/10/04/updated-ie9-gradients-with-rounded-corners/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Quick peel garlic</title>
		<link>http://abouthalf.com/2011/09/29/quick-peel-garlic/</link>
		<comments>http://abouthalf.com/2011/09/29/quick-peel-garlic/#comments</comments>
		<pubDate>Thu, 29 Sep 2011 14:56:15 +0000</pubDate>
		<dc:creator>MB</dc:creator>
				<category><![CDATA[Food and drink]]></category>

		<guid isPermaLink="false">http://abouthalf.com/?p=1261</guid>
		<description><![CDATA[I found this wackiness on the metafilter: How to Peel a Head of Garlic in Less Than 10 Seconds from SAVEUR.com on Vimeo. It totally, mostly, works. (I had a few cloves left unpeeled. They were the strongest. The deserve to live.)]]></description>
			<content:encoded><![CDATA[<p>I found this wackiness on the metafilter:</p>
<p><iframe src="http://player.vimeo.com/video/29605182?title=0&amp;byline=0&amp;portrait=0" width="400" height="225" frameborder="0" webkitAllowFullScreen allowFullScreen></iframe>
<p><a href="http://vimeo.com/29605182">How to Peel a Head of Garlic in Less Than 10 Seconds</a> from <a href="http://vimeo.com/saveurmag">SAVEUR.com</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
<p>It totally, mostly, works. (I had a few cloves left unpeeled. They were the strongest. The deserve to live.)</p>
 <img src="http://abouthalf.com/wp-content/plugins/wordpress-feed-statistics/feed-statistics.php?view=1&post_id=1261" width="1" height="1" style="display: none;" />]]></content:encoded>
			<wfw:commentRss>http://abouthalf.com/2011/09/29/quick-peel-garlic/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic page generated in 0.673 seconds. -->
<!-- Cached page generated by WP-Super-Cache on 2012-02-04 23:15:55 -->

