<?xml version="1.0" encoding="utf-8"?> 
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"> 
<channel> 
	<title>Monochrome Industries</title> 
	<link>http://monochromeindustries.com/</link> 
	<description>RSS feed for monochromeindustries.com</description> 
	<language>en</language> 
	<atom:link href="http://monochromeindustries.com/" rel="self" type="application/rss+xml" />
	

<item> 
	<title>Litho Graph Is in Beta</title> 
	<description><![CDATA[

<h1>Litho Graph Is in Beta</h1>

<p><a href="/products/litho-graph">Litho Graph</a> is now in beta!</p>

<p>I’m aiming to submit to the App Store sometime mid-January, and after that it’s up to them how long it will take ’til it’s on sale.</p>

<p>Still, exciting times! This is my first product, so I’m looking forward to <a href="mailto:comments%40monochromeindustries.com">hearing your thoughts on it</a>. If you’re not already trying the beta, feel free to ask to and I’ll consider the request!</p>]]></description>  
	<pubDate>Sat, 03 Jan 2009 02:52:51 -0500</pubDate>
	<guid isPermaLink="true">http:news%2Flitho-graph-is-in-beta</guid>
</item>


<item> 
	<title>The New Site Has Landed</title> 
	<description><![CDATA[<h1>The New Site Has Landed</h1>

<p>After far too long a wait, I’ve finally launched the new Monochrome Industries site. This design is roughly a year in the making—I hope you like it as much as I do!</p>]]></description>  
	<pubDate>Sat, 03 Jan 2009 01:26:27 -0500</pubDate>
	<guid isPermaLink="true">http:news%2Fthe-new-site-has-landed</guid>
</item>


<item> 
	<title>On the Road to Release</title> 
	<description><![CDATA[

<h1>On the Road to Release</h1>

<p>Yep, that’s right—I’ve submitted <a href="/products/litho-graph">Litho Graph</a> to Apple for review<a href="#on-the-road-to-release-1" class="footnote">1</a>; the ball is officially in their court. This has been a very exciting process, and an equally draining one. I’ve learned a lot about the iPhone (and about foreign tax policy) and look forward to v1.0 being released as I work on v1.1.</p>

<p class="footnote"><a name="on-the-road-to-release-1">1</a>: If you want to get technical, I’ve actually submitted it <em>twice</em>. The first time it was rejected due to having a representation of an iPhone drawn on the icon artwork, which they took exception to.</p>]]></description>  
	<pubDate>Wed, 14 Jan 2009 18:20:59 -0500</pubDate>
	<guid isPermaLink="true">http:news%2Fon-the-road-to-release</guid>
</item>


<item> 
	<title>Litho Graph 1 0 Has Been Released</title> 
	<description><![CDATA[<h1>Litho Graph 1.0 Has Been Released!</h1>

<p>I am extremely pleased to introduce you to <a href="/products/litho-graph">Litho Graph 1.0</a>, now available on the iPhone app store!</p>

<p><a href="http://itunes.com/app/lithograph"><img src="/images/buy-on-app-store.png" class="center"></a></p>

<p>I’d like to thank my wife, Kelly, my beta testers (Dad, Jason, Joe, Jonathan, Melissa, and Melanie), Andrew, Andy, and Nathan for all their help and encouragement. Couldn’t have done it without you all!</p>]]></description>  
	<pubDate>Fri, 16 Jan 2009 13:27:34 -0500</pubDate>
	<guid isPermaLink="true">http:news%2Flitho-graph-1-0-has-been-released</guid>
</item>


<item> 
	<title>Litho Graph 1 1 Released</title> 
	<description><![CDATA[<h1>Litho Graph 1.1 Has Been Released</h1>

<p><a href="/products/litho-graph">Litho Graph 1.1</a> has been approved and is now available on the iPhone app store. Updates include but are not limited to:</p>

<ul>
	<li>Fewer drawing artifacts.</li>
	<li>More usable screen space.</li>
</ul>

<p>It’s a free update, of course, so get it while it’s hot.</p>

<p><a href="http://itunes.com/app/lithograph"><img src="/images/buy-on-app-store.png" class="center"></a></p>]]></description>  
	<pubDate>Mon, 09 Feb 2009 23:02:31 -0500</pubDate>
	<guid isPermaLink="true">http:news%2Flitho-graph-1-1-released</guid>
</item>


<item> 
	<title>RAID vs. Raptor: Experiments in Disk Performance</title> 
	<description><![CDATA[<h1>RAID vs. Raptor: Experiments in Disk Performance</h1>

<p>The other day I realized that I don’t actually have a good performance metric for the speed of drive operations, for example compiles. Compiles are potentially quite slow since they can hit files all over the platter; random access reads, and especially writes, are brutal: it’s the worst-case performance for hard drives, and it is almost exactly what most normal everyday computing operations are limited by. How normal and everyday? Application launch time, for example, is bottlenecked by random-access read performance.</p>

<p>Lacking such a metric makes it difficult to assess the potential costs or benefits of putting files on one drive or another. For example, my boot volume is a RAID stripe of two 7200rpm drives; another volume is a 40GB 10,000rpm Raptor. Which is the better place to put /Developer and ~/Developer, when looking to optimize compile times?</p>

<p>I downloaded <a href="http://www.xbench.com/">Xbench</a> and ran a few tests of random access reads and writes to each volume, plus to a sparse disk bundle stored on the RAID stripe. And the winner…?</p>

<p>The RAID stripe, every time. Fascinating! For the curious, the difference between the RAID stripe</p>

<p>There are other metrics that are much harder to get but important to daily use of the system, too: How long does it take to spin up the drive? If I put /Developer and ~/Developer on another drive—which I did until I measured this ☻—and that drive spins down, how long will it take to spin up when I need to access something on it? This is annoying to measure, in practical terms, but it turns out that the fundamental answer is really easy: too long. Far, far too long. And it’s even worse if you boot off a single drive and have other stuff on the RAID stripe, since if that spins down, both drives will need to be spun back up, and the OS does it one at a time, not in tandem. (Why would it do that to me?)</p>

<p>There are two morals to this story:</p>

<ol>
	<li>Measure, measure, measure! Without measurements, you’re guessing, and even clever guesses are still <em>guesses</em>. (The above-mentioned <a href="http://www.xbench.com/">Xbench</a> is a great tool for turning hunches into figures, incidentally. Give it a shot.)</li>
	<li>Bring on the SSDs! Random-access speeds are by far the best aspect of SSDs with proper firmware (i.e. not enterprise-oriented ones), and from what I’ve heard from <a href="http://blog.cbowns.com/2009/09/ssds-and-you-my-dual-drive-setup/">colleagues</a> of mine who have saved their pennies and taken the plunge, the result ought to embarrass hard drive vendors: application launch times, for example, are “lightning fast”.</li>
</ol>

<p>Now we just need to get SSD capacities up and prices down, stat!</p>]]></description>  
	<pubDate>Thu, 17 Sep 2009 06:30:05 -0400</pubDate>
	<guid isPermaLink="true">http:news%2Fraid-vs-raptor-performance</guid>
</item>


<item> 
	<title>Prefix Headers Dont Mean You Can Stop Using Import</title> 
	<description><![CDATA[<h1>Prefix Headers Don’t Mean You Can Stop Using #import</h1>

<p>Precompiled (or, prefix) headers (.pch files) are a great way to speed up compilation, and also appear to let you save some lines of code; instead of writing <code>#import &lt;Cocoa/Cocoa.h&gt;</code> for every class header that derives from NSObject, you can just import that in the prefix header and be done with it.</p>

<p>This works, but unfortunately it conflates their purpose slightly. This becomes apparent if you build a framework that uses a prefix header and excludes the <code>#import</code> directives from its headers; clients of that framework will miss out on the headers imported in the prefix header, and may not be able to compile until they figure that out!</p>

<p>Another place this can crop up is in your unit test bundles; if your application uses a prefix header to import files not imported in the individual headers, your test suites may fail to compile until you import those files manually.</p>

<p>The good news is, being clever, this probably already occurred to you; if not, you’re still clever, just busy. ☻</p>]]></description>  
	<pubDate>Thu, 23 Apr 2009 06:08:45 -0400</pubDate>
	<guid isPermaLink="true">http:news%2Fprefix-headers-dont-mean-you-can-stop-using-import</guid>
</item>


<item> 
	<title>Monochrome Industries: Now with Extra Source Code</title> 
	<description><![CDATA[<h1>Monochrome Industries: Now with Extra Source Code</h1>

<p>I’ve been steadily my open-source projects (some trivial, some significantly less so) to <a href="http://github.com/robrix">my github</a> for the past while, and as it approaches critical mass I thought it would be useful to link to them from this site.</p>

<p>Ergo, <a href="/code">there is now a page for my released code</a>, generally BSD licensed, and hopefully useful to you. I’ll likely be adding project-specific pages here with more information in my copious free time™, so it might be worth checking back occasionally. At the least, I’ll update the repos on github to link to new project home pages as I make them.</p>]]></description>  
	<pubDate>Fri, 18 Sep 2009 00:57:02 -0400</pubDate>
	<guid isPermaLink="true">http:news%2Fmonochrome-now-with-extra-source-code</guid>
</item>
</channel> 
</rss>