<?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>Wizard Mode &#187; Tech</title>
	<atom:link href="http://wizardmode.com/category/tech/feed/" rel="self" type="application/rss+xml" />
	<link>http://wizardmode.com</link>
	<description>Justin de Vesine on life, food, technology, and whimsy</description>
	<lastBuildDate>Mon, 16 Jan 2012 16:53:16 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.4-alpha-19827</generator>
		<item>
		<title>Git Flow: it&#8217;s child&#8217;s play</title>
		<link>http://wizardmode.com/2012/01/git-flow-its-childs-play/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=git-flow-its-childs-play</link>
		<comments>http://wizardmode.com/2012/01/git-flow-its-childs-play/#comments</comments>
		<pubDate>Mon, 16 Jan 2012 16:53:16 +0000</pubDate>
		<dc:creator>Justin</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[toys]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://wizardmode.com/?p=203</guid>
		<description><![CDATA[At work, we&#8217;re moving over to use Git Flow. (A moment of background: Git is a &#8220;version control system&#8221;, a way of keeping a history of all the changes you&#8217;ve made to a file or files, in much the same &#8230; <a href="http://wizardmode.com/2012/01/git-flow-its-childs-play/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>At work, we&#8217;re moving over to use <a href="http://nvie.com/posts/a-successful-git-branching-model/">Git Flow</a>. (A moment of background: Git is a &#8220;version control system&#8221;, a way of keeping a history of all the changes you&#8217;ve made to a file or files, in much the same way as one might have &#8220;important_spreadsheet_20120103.xls&#8221;, &#8220;important_spreadsheet_20120104.xls&#8221;, &#8220;important_spreadsheet_original.xls&#8221;, and so forth &#8211; but with much less clutter.)</p>
<p>It&#8217;s sometimes hard to visualize what&#8217;s going on with Git when you&#8217;re unfamiliar with it, and not everybody is familiar with the concept of a <a href="http://eagain.net/articles/git-for-computer-scientists/">Directed Acyclic Graph</a>, so to help get everyone up to speed, we ordered a Tinkertoy set.</p>
<p><a href="http://wizardmode.com/wp-content/uploads/2012/01/git-tinkertoy.jpg"><img src="http://wizardmode.com/wp-content/uploads/2012/01/git-tinkertoy-225x300.jpg" alt="" title="Tinkertoy Git" width="225" height="300" class="alignnone size-medium wp-image-204" /></a></p>
<p>There are probably better ways to spend Monday morning at work than putting together a Tinkertoy model of a Git repository, but I can&#8217;t think what they might be.</p>
]]></content:encoded>
			<wfw:commentRss>http://wizardmode.com/2012/01/git-flow-its-childs-play/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iMania</title>
		<link>http://wizardmode.com/2010/01/imania/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=imania</link>
		<comments>http://wizardmode.com/2010/01/imania/#comments</comments>
		<pubDate>Sat, 30 Jan 2010 05:39:34 +0000</pubDate>
		<dc:creator>Justin</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[Writing]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[ipod]]></category>
		<category><![CDATA[processing]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://wizardmode.com/?p=33</guid>
		<description><![CDATA[The Apple iPad, like many apple products before it, has polarized people. Some people love it, some people hate it. Some people will use it everywhere, some people honestly can’t imagine a single use. As with many products before, I &#8230; <a href="http://wizardmode.com/2010/01/imania/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>The Apple iPad, like many apple products before it, has polarized people. Some people love it, some people hate it. Some people will use it everywhere, some people honestly can’t imagine a single use.</p>
<p>As with many products before, I fall somewhere in the middle.</p>
<p>On the plus side: It looks like a beautiful piece of hardware; every report I have read says that using it is a dream come true to any fan of the various iTouches. Fast, integrated, smooth, and with beautiful user interface decisions; top of the line hardware and (more polish on) groundbreaking software combine to make an unbelievable platform, and one which the vast majority of people will find satisfies their needs and exceeds all their expectations.</p>
<p>On the minus side: Apple has made, and will continue to make, an intentionally crippled and limited device in the name of a better overall user experience. While I wholeheartedly agree with their goals – make it accessible to the common man! – it is simply not what I, as a power user who is otherwise well in the target market, need in many respects.</p>
<p>Any number of minor concessions would solve this problem for me – and these are the same issues I have with any “trusted computing” sort of platform. It is not my best interests that Apple is trying to protect here, either as a developer or as an individual user. It is theirs, and it is not in their best interests to allow me to, for instance, decide whose software I actually trust.</p>
<p>No, I’m not trying to run Linux on the thing. It runs a perfectly acceptable *NIX operating system already, and in fact has a fantastic GUI (for <em>almost</em> every purpose) and software installation procedure (for <em>almost</em> every case) already. I just want to run my instant messenger <em>and</em> Pages. Even just the ability to background one application (with – yes, I realize this – the appropriate time and attention put in to making the experience smooth and complete) would make a huge difference in the overall usability.</p>
<p>I’d <em>really</em> like to run <a href="http://processing.org/" target="_blank">Processing</a> on it. It’s just such a perfect platform for art-programming, and there’s nothing else quite like Processing for that.</p>
<p>But that’s all. I don’t want a pony.</p>
]]></content:encoded>
			<wfw:commentRss>http://wizardmode.com/2010/01/imania/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Subject Alternative Enlightenment</title>
		<link>http://wizardmode.com/2010/01/subject-alternative-enlightenment/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=subject-alternative-enlightenment</link>
		<comments>http://wizardmode.com/2010/01/subject-alternative-enlightenment/#comments</comments>
		<pubDate>Mon, 25 Jan 2010 05:50:53 +0000</pubDate>
		<dc:creator>Justin</dc:creator>
				<category><![CDATA[Tech]]></category>
		<category><![CDATA[geekery]]></category>
		<category><![CDATA[ssl]]></category>

		<guid isPermaLink="false">http://wizardmode.com/?p=41</guid>
		<description><![CDATA[So there&#8217;s this thing called an SSL certificate. Everyone (or at least the vast majority of anyone who is ever likely to read this) knows about SSL, or HTTPS, or at the very least the browser lock symbol. Another time &#8230; <a href="http://wizardmode.com/2010/01/subject-alternative-enlightenment/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>So there&#8217;s this thing called an SSL certificate.  Everyone (or at least the vast majority of anyone who is ever likely to read this) knows about SSL, or HTTPS, or at the very least the browser lock symbol.</p>
<p>Another time I&#8217;ll talk about a bunch of nonsense regarding the details of SSL and some of the strange things that have come out of it, but for the moment, one specific thing stands out.</p>
<p>Part of an X509 certificate is an optional piece of metadata called a <a href="http://www.openssl.org/docs/apps/x509v3_config.html#Subject_Alternative_Name_" >Subject Alternative Name</a>, or SAN.  If you take <abbr title="openssl x509 -in server.crt -text">a peek</abbr> at an SSL certificate that provides one, you&#8217;ll see something like this:</p>
<pre>
Certificate:
    Data:
        [...]
        Subject: C=US, ST=CA, L=Cupertino, O=Apple, Inc., CN=*.example.com
        [...]
        X509v3 extensions:
            [...]
            X509v3 Subject Alternative Name:
                DNS:specific.example.com, DNS:example.com, DNS:*.example.com
</pre>
<p>Normally a client connecting to https://example.com/ will get a domain mismatch certificate error, because the CN *.example.com does not either exactly or via wildcard match example.com.  However, a large number of clients also examine the list of SAN DNS names to validate the domain; since example.com shows up in that list, no error will be displayed.</p>
<p>Every major browser &#8211; IE, Firefox, Opera, Safari, and even the venerable Netscape Navigator have supported SANs since at least 2003.  Surprisingly, Internet Explorer has supported them since Win98 (yes, that means they work in IE6, for those keeping count).  Many mobile devices also recognize them &#8211; certainly the newest crop of WebKit-based and Android mobile browsers, but also things like Symbian 9.2+ and Windows Mobile 5 and 6.</p>
<p>Furthermore, SANs can be used to cause certain mail clients to stop complaining about connecting to a mail server that services multiple domains under one IP.  Since these same mail clients are often configured to recognize an internal CA, rolling up all the possible names into the SAN list on a single certificate can save a pile of headache.</p>
<p>Why hasn&#8217;t this been more widely advertised and well-known?  Because many certificate authorities are more in the habit of selling <i>encryption</i> than <i>verification</i>, and so would very much like to charge you for every single line in the certificate and every single reissue of the same certificate with slightly different metadata (say, a different set of SAN entries, in this case) rather than charging you for their performing trusted due diligence to ensure that you are who you claim to be and that you have the rights you claim to have over the subjects (in this case, domain names) in question.  </p>
<p>Thanks a lot, &#8220;trusted&#8221; authorities.  Way to instill confidence in your services.</p>
<p>There are a few respectable exceptions, of course, and a few web-of-trust CAs which perform the services for free or for reasonable, nominal charges.  The web-of-trust CAs tend to have less or no native browser support, which makes them less suitable for general purpose commerce, but for those in the know (or a known browser demographic) they can be a fantastic alternative.</p>
<p>I&#8217;m currently a fan of <a href="http://www.digicert.com/" >DigiCert</a> for business use, and <a href="http://cert.startcom.org/" >StartCom</a> for personal use.  As a side note, many domain registrars (such as <a href="http://www.gandi.net/" >Gandi</a>) also provide a free basic 1-year SSL certificate with purchase of a domain name.</p>
]]></content:encoded>
			<wfw:commentRss>http://wizardmode.com/2010/01/subject-alternative-enlightenment/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

