<?xml version="1.0"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">

<channel>
	<title>Dev @ MacBlogs.org</title>
	<link>http://Dev.MacBlogs.org/</link>
	<language>en</language>
	<description>Dev @ MacBlogs.org - http://Dev.MacBlogs.org/</description>

<item>
	<title>Michael Tsai: RealNetworks&#8217;s DVD Copying Settlement</title>
	<guid>http://mjtsai.com/blog/?p=2278</guid>
	<link>http://mjtsai.com/blog/2010/03/09/realnetworkss-dvd-copying-settlement/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.boingboing.net/2010/03/09/when-realnetworks-se.html&quot;&gt;Glenn Fleishman&lt;/a&gt; (via &lt;a href=&quot;http://daringfireball.net/linked/2010/03/09/fleishman&quot;&gt;John Gruber&lt;/a&gt;):&lt;/p&gt;
&lt;blockquote cite=&quot;http://www.boingboing.net/2010/03/09/when-realnetworks-se.html&quot;&gt;&lt;p&gt;The post-RealDVD world means that unless there&amp;rsquo;s a major change to the law surrounding copy protection, there will never be a legal way to perform legal acts of copying or shifting protected movies, music, and games.&lt;/p&gt;&lt;/blockquote&gt;</description>
	<pubDate>Tue, 09 Mar 2010 22:41:14 +0000</pubDate>
	<dc:creator>Michael Tsai</dc:creator>
</item>
<item>
	<title>Michael Tsai: Software Patents</title>
	<guid>http://mjtsai.com/blog/?p=2274</guid>
	<link>http://mjtsai.com/blog/2010/03/09/software-patents/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://ignorethecode.net/blog/2010/03/09/patents/&quot;&gt;Lukas Mathis&lt;/a&gt; makes some good points:&lt;/p&gt;
&lt;blockquote cite=&quot;http://ignorethecode.net/blog/2010/03/09/patents/&quot;&gt;&lt;p&gt;This trade-off does not apply to many software patents. I only need to spend five minutes on Amazon&amp;rsquo;s site to figure out how one-click shopping works. There is nothing useful I can learn from reading the patent. Likewise, I only need to turn on an iPhone once to figure out how to unlock it. This means that Amazon or Apple don&amp;rsquo;t give up anything when they patent these ideas.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;http://jonathanischwartz.wordpress.com/2010/03/09/good-artists-copy-great-artists-steal/&quot;&gt;Jonathan Schwartz&lt;/a&gt; (via &lt;a href=&quot;http://daringfireball.net/linked/2010/03/09/schwartz&quot;&gt;John Gruber&lt;/a&gt;):&lt;/p&gt;
&lt;blockquote cite=&quot;http://jonathanischwartz.wordpress.com/2010/03/09/good-artists-copy-great-artists-steal/&quot;&gt;&lt;p&gt;My response was simple. &amp;ldquo;Steve, I was just watching your last presentation, and Keynote looks identical to Concurrence &amp;#8211; do you own that IP?&amp;rdquo; Concurrence was a presentation product built by Lighthouse Design, a company I&amp;rsquo;d help to found and which Sun acquired in 1996. Lighthouse built applications for NeXTSTEP, the Unix based operating system whose core would become the foundation for all Mac products after Apple acquired NeXT in 1996.&lt;/p&gt;&lt;/blockquote&gt;</description>
	<pubDate>Tue, 09 Mar 2010 22:32:03 +0000</pubDate>
	<dc:creator>Michael Tsai</dc:creator>
</item>
<item>
	<title>Michael Tsai: iPhone Developer Program License Agreement</title>
	<guid>http://mjtsai.com/blog/?p=2272</guid>
	<link>http://mjtsai.com/blog/2010/03/09/iphone-developer-program-license-agreement/</link>
	<description>&lt;p&gt;The Elecronic Frontier Foundation has &lt;a href=&quot;http://www.eff.org/deeplinks/2010/03/iphone-developer-program-license-agreement-all&quot;&gt;obtained&lt;/a&gt; and &lt;a href=&quot;http://www.eff.org/files/20100302_iphone_dev_agr.pdf&quot;&gt;published&lt;/a&gt; the iPhone Developer Program License Agreement. &lt;a href=&quot;http://rentzsch.tumblr.com/post/437273247/no-other-distribution-authorized-under-this-agreement&quot;&gt;Jonathan Rentzsch&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote cite=&quot;http://rentzsch.tumblr.com/post/437273247/no-other-distribution-authorized-under-this-agreement&quot;&gt;&lt;p&gt;Diabolical. Apple&amp;rsquo;s developer &lt;em&gt;tools&lt;/em&gt; license mandates use of their &lt;em&gt;distribution&lt;/em&gt; channel.&lt;/p&gt;&lt;/blockquote&gt;</description>
	<pubDate>Tue, 09 Mar 2010 22:26:41 +0000</pubDate>
	<dc:creator>Michael Tsai</dc:creator>
</item>
<item>
	<title>Michael Tsai: Appropriate iTunes Window Sizes</title>
	<guid>http://mjtsai.com/blog/?p=2270</guid>
	<link>http://mjtsai.com/blog/2010/03/09/appropriate-itunes-window-sizes/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.useit.com/alertbox/action-object-closeness.html&quot;&gt;Jakob Nielsen&lt;/a&gt; (via &lt;a href=&quot;http://db.tidbits.com/article/11070&quot;&gt;Adam Engst&lt;/a&gt;):&lt;/p&gt;
&lt;blockquote cite=&quot;http://www.useit.com/alertbox/action-object-closeness.html&quot;&gt;&lt;p&gt;As an aside, why is the iTunes window so large in my screenshot, when it contains only a few icons? Because the same application manages both the phone&amp;rsquo;s apps and its music collection. When you work with several hundred sound tracks, you need a &lt;em&gt;big&lt;/em&gt; space. It&amp;rsquo;s not always good to try to support highly distinct tasks within a single GUI.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Nielsen&amp;rsquo;s main point is about button proximity and is well taken. However, I found his example about updating iPhone applications confusing because my understanding is that the &amp;ldquo;Check for Updates&amp;rdquo; button &lt;em&gt;always&lt;/em&gt; applies to all applications, and that nothing much happens when you select individual applications in iTunes.&lt;/p&gt;</description>
	<pubDate>Tue, 09 Mar 2010 22:23:05 +0000</pubDate>
	<dc:creator>Michael Tsai</dc:creator>
</item>
<item>
	<title>Scripting News: PS: If you have comments or question, I'll cross-post this email at http://unberkeley.com/ -- and there's a place to comment there. Better to post there where others can see it. :-)</title>
	<guid>2fdde8532cc4027848bb0bab47674dd9</guid>
	<link>http://unberkeley.wordpress.com/2010/03/08/notes-for-thursday-march-11-meetup-at-nyu-3/</link>
	<description>PS: If you have comments or question, I'll cross-post this email at http://unberkeley.com/ -- and there's a place to comment there. Better to post there where others can see it. :-)</description>
	<pubDate>Tue, 09 Mar 2010 11:39:54 +0000</pubDate>
</item>
<item>
	<title>NSLog: Sick of Spaces/Keyboard Bug</title>
	<guid>http://nslog.com/?p=6816</guid>
	<link>http://nslog.com/2010/03/04/sick_of_spaceskeyboard_bug</link>
	<description>&lt;p&gt;Yesterday and today, for some reason, have been &lt;em&gt;horrible&lt;/em&gt; days for my computer regarding the &lt;a href=&quot;http://nslog.com/2009/10/15/snow_leopards_usb_forgetfulness_and_appleevents&quot; title=&quot;Snow Leopard’s USB Forgetfulness and AppleEvents? | NSLog();&quot;&gt;Spaces/keyboard-go-bye-bye bug&lt;/a&gt;. Virtually &lt;em&gt;every time&lt;/em&gt; I switch spaces I have to quit my Dock.&lt;/p&gt;
&lt;p&gt;I've quit TypeIt4Me, too - it's not that. I can reproduce the bug when TypeIt4Me is not running. Plus, version 5 is an application instead of a preference pane with a daemon (for the menu), so it's a bit &quot;less involved&quot; with the system as it is.&lt;/p&gt;
&lt;p&gt;So annoying.&lt;/p&gt;
&lt;p&gt;If 10.6.3 did nothing but fix this bug &lt;em&gt;and&lt;/em&gt; slow down my computer 25%, I doubt I'd last three more dock re-launches before I was upgrading my OS.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;small&gt;&amp;copy; iacas for &lt;a href=&quot;http://nslog.com&quot;&gt;NSLog();&lt;/a&gt;, 2010. | &lt;a href=&quot;http://nslog.com/2010/03/04/sick_of_spaceskeyboard_bug&quot;&gt;Permalink&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;</description>
	<pubDate>Fri, 05 Mar 2010 03:11:09 +0000</pubDate>
	<dc:creator>Erik J. Barzeski</dc:creator>
</item>
<item>
	<title>Michael Tsai: What Your iPhone Apps Know About You</title>
	<guid>http://mjtsai.com/blog/?p=2266</guid>
	<link>http://mjtsai.com/blog/2010/03/03/what-your-iphone-apps-know-about-you/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.forbes.com/2010/03/03/blackberry-iphone-android-technology-security10-privacy.html&quot;&gt;Andy Greenberg&lt;/a&gt; (via &lt;a href=&quot;http://twitter.com/nst021/status/9948020008&quot;&gt;Nicolas Seriot&lt;/a&gt;):&lt;/p&gt;
&lt;blockquote cite=&quot;http://www.forbes.com/2010/03/03/blackberry-iphone-android-technology-security10-privacy.html&quot;&gt;&lt;p&gt;There&amp;rsquo;s no doubt, Shields says, that phones are still much safer from spying software than PCs, which allow software to be installed from any source, often invisibly, as in the case of &amp;ldquo;drive-by downloads&amp;rdquo; by infected Web pages or booby-trapped e-mail attachments. But the wide privileges given to phone apps still create exploitable vulnerabilities in devices, says Shields.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;I&amp;rsquo;m &lt;em&gt;more&lt;/em&gt; worried about software from the App Store. I don&amp;rsquo;t believe Apple&amp;rsquo;s screening process can offer significant protection, and the phone is so locked down that users can&amp;rsquo;t easily audit what the apps are doing.&lt;/p&gt;</description>
	<pubDate>Thu, 04 Mar 2010 02:42:43 +0000</pubDate>
	<dc:creator>Michael Tsai</dc:creator>
</item>
<item>
	<title>NSLog: Digital Card Readers</title>
	<guid>http://nslog.com/?p=6827</guid>
	<link>http://nslog.com/2010/03/03/digital_card_readers</link>
	<description>&lt;div&gt;	&lt;div class=&quot;democracy&quot;&gt;		&lt;strong class=&quot;poll-question&quot;&gt;Do you own and use a digital card reader?&lt;/strong&gt;		&lt;div class=&quot;dem-results&quot;&gt;		&lt;form action=&quot;http://nslog.com/wp-content/plugins/democracy/democracy.php&quot;&gt;		&lt;ul&gt;			&lt;li&gt;					&lt;input type=&quot;radio&quot; id=&quot;dem-choice-239&quot; value=&quot;239&quot; name=&quot;dem_poll_69&quot;&gt;					&lt;label for=&quot;dem-choice-239&quot;&gt;Yes&lt;/label&gt;			&lt;/li&gt;			&lt;li&gt;					&lt;input type=&quot;radio&quot; id=&quot;dem-choice-240&quot; value=&quot;240&quot; name=&quot;dem_poll_69&quot;&gt;					&lt;label for=&quot;dem-choice-240&quot;&gt;No&lt;/label&gt;			&lt;/li&gt;		&lt;/ul&gt;			&lt;input type=&quot;hidden&quot; name=&quot;dem_poll_id&quot; value=&quot;69&quot;&gt;			&lt;input type=&quot;hidden&quot; name=&quot;dem_action&quot; value=&quot;vote&quot;&gt;			&lt;input type=&quot;submit&quot; class=&quot;dem-vote-button&quot; value=&quot;Vote&quot;&gt;			&lt;a href=&quot;http://nslog.com/feed?dem_action=view&amp;dem_poll_id=69&quot;&gt;View Results&lt;/a&gt;		&lt;/form&gt;		&lt;/div&gt;	&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;I can't fathom being without one. I have a Firewire 800 one for my CompactFlash cards (5D, 5D Mark II) and a USB 2.0 one for my SD cards.&lt;/p&gt;
&lt;p&gt;Why anyone would plug their cameras directly in to their computer is beyond me. Maybe on occasion for a portable I could see it, but for a desktop? Buy a card reader, plug it in, and leave it there.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;small&gt;&amp;copy; iacas for &lt;a href=&quot;http://nslog.com&quot;&gt;NSLog();&lt;/a&gt;, 2010. | &lt;a href=&quot;http://nslog.com/2010/03/03/digital_card_readers&quot;&gt;Permalink&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;</description>
	<pubDate>Wed, 03 Mar 2010 23:08:48 +0000</pubDate>
	<dc:creator>Erik J. Barzeski</dc:creator>
</item>
<item>
	<title>Michael Tsai: Apple Suing HTC</title>
	<guid>http://mjtsai.com/blog/?p=2264</guid>
	<link>http://mjtsai.com/blog/2010/03/03/apple-suing-htc/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://i.engadget.com/2010/03/02/apple-vs-htc-a-patent-breakdown/&quot;&gt;Nilay Patel&lt;/a&gt; (via &lt;a href=&quot;http://daringfireball.net/linked/2010/03/03/patent-breakdown&quot;&gt;John Gruber&lt;/a&gt;) has a breakdown of the patents in question. &lt;a href=&quot;http://wilshipley.com/blog/2010/03/open-letter-to-steve-jobs-concerning.html&quot;&gt;Wil Shipley&lt;/a&gt; to Steve Jobs:&lt;/p&gt;
&lt;blockquote cite=&quot;http://wilshipley.com/blog/2010/03/open-letter-to-steve-jobs-concerning.html&quot;&gt;&lt;p&gt;But when you sue someone for doing something you do yourself, you become one of the bad guys. Can you name a company &lt;em&gt;you&lt;/em&gt; admire that spends its time enforcing patents, instead of innovating?&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Update: &lt;a href=&quot;http://daringfireball.net/2010/03/this_apple_htc_patent_thing&quot;&gt;Great post&lt;/a&gt; from John Gruber.&lt;/p&gt;</description>
	<pubDate>Wed, 03 Mar 2010 14:47:36 +0000</pubDate>
	<dc:creator>Michael Tsai</dc:creator>
</item>
<item>
	<title>Michael Tsai: Visio 2010 and Transmit</title>
	<guid>http://mjtsai.com/blog/?p=2262</guid>
	<link>http://mjtsai.com/blog/2010/03/03/visio-2010-and-transmit/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://mrgan.tumblr.com/post/422719557/i-mean-where-to-start-1-the-new-version-of&quot;&gt;Neven Mrgan&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote cite=&quot;http://mrgan.tumblr.com/post/422719557/i-mean-where-to-start-1-the-new-version-of&quot;&gt;&lt;p&gt;The new version of Microsoft Visio&amp;mdash;which, in case you&amp;rsquo;re not cursed with a sucky office job, is a very popular diagramming application&amp;mdash;includes a rip-off of Panic&amp;rsquo;s Transmit truck.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;A high-profile addition to the &lt;a href=&quot;http://www.panic.com/extras/ripoff/&quot;&gt;Rip-Off Express&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Wed, 03 Mar 2010 14:39:44 +0000</pubDate>
	<dc:creator>Michael Tsai</dc:creator>
</item>
<item>
	<title>NSLog: Teaching in the Open</title>
	<guid>http://nslog.com/?p=6825</guid>
	<link>http://nslog.com/2010/03/02/teaching_in_the_open</link>
	<description>&lt;p&gt;This relates to a conversation I've had with Dave Wedzik a few times now, and we both agree and always reach the same conclusion.&lt;/p&gt;
&lt;p&gt;In the winter, Dave's been forced to teach at the Golf Dome here in Erie, PA. I've watched a few of his lessons, and I've seen a few lessons given by some of the other local area instructors.&lt;/p&gt;
&lt;p&gt;Virtually all of the other instructors go to the far end of the range to the right, where they have &quot;teaching stations&quot; set up. There are only two differences between a teaching station and the other hitting stations: they're a bit wider (ostensibly so the instructor can stand near the student and watch them make swings) and they have a curtain you can pull to prevent nearby golfers from listening in or watching the lesson.&lt;/p&gt;
&lt;p&gt;Dave likes to teach in the open, and if I were teaching anyone something like the golf swing, I would too. If you believe in yourself, why &lt;em&gt;wouldn't&lt;/em&gt; you want to teach in the open? It's the cheapest (free) form of advertising possible! It's &quot;hey, look at me, I'm an instructor, and not only am I good enough that this guy here has hired me, I'm confident enough to do it right out in the open!&quot;&lt;span id=&quot;more-6825&quot;&gt;&lt;/span&gt;Contrast this to &quot;the man behind the curtain.&quot; What's he saying to his students? Sure, maybe he's worried that someone will overhear something he says and he'll improve, but that's stupid - nobody's going to overhear a tip for someone else and become a PGA Tour level golfer. If the tip even works for them - people don't have the same flaws, after all - it'll just be a crumb that whets their appetite. They'll want to come to you for more of the cake.&lt;/p&gt;
&lt;p&gt;When possible, teach in the open.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;small&gt;&amp;copy; iacas for &lt;a href=&quot;http://nslog.com&quot;&gt;NSLog();&lt;/a&gt;, 2010. | &lt;a href=&quot;http://nslog.com/2010/03/02/teaching_in_the_open&quot;&gt;Permalink&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 02 Mar 2010 21:22:34 +0000</pubDate>
	<dc:creator>Erik J. Barzeski</dc:creator>
</item>
<item>
	<title>Michael Tsai: ATPM 16.03</title>
	<guid>http://mjtsai.com/blog/?p=2260</guid>
	<link>http://mjtsai.com/blog/2010/03/02/atpm-16-03/</link>
	<description>&lt;p&gt;The &lt;a href=&quot;http://www.atpm.com/16.03/&quot;&gt;March issue of ATPM&lt;/a&gt; is out:&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/index.shtml&quot;&gt;&lt;b&gt;Cover&lt;/b&gt;&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/sponsors.shtml&quot;&gt;&lt;b&gt;Sponsors&lt;/b&gt;&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/welcome.shtml&quot;&gt;&lt;b&gt;Welcome&lt;/b&gt;&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/e-mail.shtml&quot;&gt;&lt;b&gt;E-Mail&lt;/b&gt;&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/bloggable.shtml&quot;&gt;&lt;b&gt;Bloggable:&lt;/b&gt; Burn Down the Mission&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/macmuser-ipad-mini.shtml&quot;&gt;&lt;b&gt;MacMuser:&lt;/b&gt; iPad mini&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/macmuser-usurper.shtml&quot;&gt;&lt;b&gt;MacMuser:&lt;/b&gt; He, the Usurper, Must Choose&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/smart-folders.shtml&quot;&gt;&lt;b&gt;How To:&lt;/b&gt; Making Your Mac as Smart as Its Owner&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/desktop-pictures.shtml&quot;&gt;&lt;b&gt;Desktop Pictures:&lt;/b&gt; New England&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/out-at-five.shtml&quot;&gt;&lt;b&gt;Out at Five&lt;/b&gt;&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/busycal.shtml&quot;&gt;&lt;b&gt;Software Review:&lt;/b&gt; BusyCal 1.2&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/flickit-pro.shtml&quot;&gt;&lt;b&gt;Software Review:&lt;/b&gt; Flickit Pro 2.0&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/p-flip.shtml&quot;&gt;&lt;b&gt;Accessory Review:&lt;/b&gt; P-Flip&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/u-pouch.shtml&quot;&gt;&lt;b&gt;Accessory Review:&lt;/b&gt; U-Pouch&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.atpm.com/16.03/faq.shtml&quot;&gt;&lt;b&gt;FAQ: Frequently Asked Questions&lt;/b&gt;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;</description>
	<pubDate>Tue, 02 Mar 2010 16:18:56 +0000</pubDate>
	<dc:creator>Michael Tsai</dc:creator>
</item>
<item>
	<title>Michael Tsai: What I Miss From Java</title>
	<guid>http://mjtsai.com/blog/?p=2258</guid>
	<link>http://mjtsai.com/blog/2010/03/02/what-i-miss-from-java/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.dribin.org/dave/blog/archives/2010/03/02/what_i_miss_from_java/&quot;&gt;Dave Dribin&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote cite=&quot;http://www.dribin.org/dave/blog/archives/2010/03/02/what_i_miss_from_java/&quot;&gt;&lt;p&gt;Before settling in on Objective-C, I was a Java guy for about six years or so.  Overall, I much, &lt;em&gt;much&lt;/em&gt; prefer coding in Objective-C to Java, and have no intentions of going back to Java.  But that doesn&amp;#8217;t mean there&amp;#8217;s some things I miss.  Here&amp;#8217;s a quick list&amp;#8230;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;A good list, although I&amp;rsquo;ve come to like &lt;a href=&quot;http://developer.apple.com/mac/library/documentation/Cocoa/Reference/Foundation/Classes/NSError_Class/Reference/Reference.html&quot;&gt;NSError&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Tue, 02 Mar 2010 16:00:55 +0000</pubDate>
	<dc:creator>Michael Tsai</dc:creator>
</item>
<item>
	<title>Michael Tsai: Windows Phone 7</title>
	<guid>http://mjtsai.com/blog/?p=2256</guid>
	<link>http://mjtsai.com/blog/2010/03/01/windows-phone-7/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://daringfireball.net/2010/03/thoughts_regarding_windows_phone_7&quot;&gt;John Gruber&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote cite=&quot;http://daringfireball.net/2010/03/thoughts_regarding_windows_phone_7&quot;&gt;&lt;p&gt;A new non-Windows name would have let Microsoft use a 1.0 version number. I think the &amp;ldquo;7&amp;rdquo; in &amp;ldquo;Windows Phone 7 Series&amp;rdquo; is a detriment to their message that this is a clean break from Windows Mobile 6 and earlier. The 7 implies &amp;ldquo;new version of the old thing&amp;rdquo;, which isn&amp;rsquo;t what they want at all because the old thing is unloved and unpopular. A new 1.0 thing would have also dampened uncomfortable questions about why phones available today won&amp;rsquo;t be upgradeable to the new system when it ships.&lt;/p&gt;&lt;/blockquote&gt;</description>
	<pubDate>Tue, 02 Mar 2010 01:39:07 +0000</pubDate>
	<dc:creator>Michael Tsai</dc:creator>
</item>
<item>
	<title>NSLog: Flummox the Plane</title>
	<guid>http://nslog.com/?p=6824</guid>
	<link>http://nslog.com/2010/03/01/flummox_the_plane</link>
	<description>&lt;p&gt;Toby Ziegler: &quot;We're flying in a Lockheed Eagle Series L-1011. Came off the line twenty months ago. Carries a Sim-5 transponder tracking system, and you're telling me I can still flummox this thing with something I bought at Radio Shack?&quot;&lt;/p&gt;
&lt;p&gt;Everyone knows that &quot;rule&quot; is just to prevent people from yapping on their cell phones the entire time they're in the air, right? And the &quot;no electronic devices&quot; is so you'll pay at least a little attention to the stewardesses (or whatever they're called these days). Right?&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;small&gt;&amp;copy; iacas for &lt;a href=&quot;http://nslog.com&quot;&gt;NSLog();&lt;/a&gt;, 2010. | &lt;a href=&quot;http://nslog.com/2010/03/01/flummox_the_plane&quot;&gt;Permalink&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;</description>
	<pubDate>Mon, 01 Mar 2010 15:58:19 +0000</pubDate>
	<dc:creator>Erik J. Barzeski</dc:creator>
</item>
<item>
	<title>NSLog: Crosby 2, Ovechkin 0 and Olympic Hockey</title>
	<guid>http://nslog.com/?p=6802</guid>
	<link>http://nslog.com/2010/02/28/crosby_2_ovechkin_0_and_olympic_hockey</link>
	<description>&lt;p&gt;The score is now &lt;a href=&quot;http://www.thestevenetwork.ca/2010/03/02/ovechkin-vs-crosby-debate-now-over/&quot; title=&quot;Crosby/Ovechkin Debate Over&quot;&gt;Crosby 2, Ovechkin 0&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;And I'm sorry, but hockey involves more than just scoring goals and racking up points.&lt;/p&gt;
&lt;p&gt;But I digress. Despite the title, I wanted to talk about the USA vs. Canada game. I think that, if the U.S. was to lose, this is the only acceptable way (for me, as a Pens fan) to lose: by having Sidney Crosby effectively do the last athletic thing in the Olympics, period. The guy's had the weight of the world (well, of Canada anyway) on his shoulders for a decade now, and he keeps delivering.&lt;/p&gt;
&lt;p&gt;No doubt the NHL will find a way to screw it up. They've &lt;em&gt;got&lt;/em&gt; to have more interest in hockey now than ever - even non-hockey fans I know were watching and the game was GREAT - but part of that starts with getting Versus back on DirecTV so millions of people don't miss the goddamn playoffs.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;small&gt;&amp;copy; iacas for &lt;a href=&quot;http://nslog.com&quot;&gt;NSLog();&lt;/a&gt;, 2010. | &lt;a href=&quot;http://nslog.com/2010/02/28/crosby_2_ovechkin_0_and_olympic_hockey&quot;&gt;Permalink&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;</description>
	<pubDate>Sun, 28 Feb 2010 20:59:19 +0000</pubDate>
	<dc:creator>Erik J. Barzeski</dc:creator>
</item>
<item>
	<title>NSLog: Redeyes and Zzzzzzzzzz</title>
	<guid>http://nslog.com/?p=6820</guid>
	<link>http://nslog.com/2010/02/27/redeyes_and_zzzzzzzzzz</link>
	<description>&lt;p&gt;Dave's voice is gone. He can barely whisper. His sinuses have been dripping into his throat for days now and it's not good. At least he's not actually sick.&lt;/p&gt;
&lt;p&gt;Our 1:30am flight left on time. So did the other flights. I managed to grab about 2&amp;frac12; hours of sleep on the first leg of the flight, but stayed awake for the rest. Yippee. Fortunately, 2/3 of the flights (the two legs with three seats per side) weren't very full, so Dave and I were able to sit with an empty seat between us. That does wonders for your ability to get comfortable.&lt;/p&gt;
&lt;p&gt;I returned home to a driveway we couldn't drive into due to all of the snow. Two feet of nicely packed snow took half a gallon of gas and 90 minutes of snowblowing (with a 12 HP snowblower that usually cleans up in 10 minutes). Just what I wanted to come home to after spending three glorious days in the sun! &lt;img src=&quot;http://nslog.com/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:-)&quot; class=&quot;wp-smiley&quot;&gt; &lt;/p&gt;
&lt;p&gt;I'm going to crash now. What a relaxing - and yet invigorating - couple of days.&lt;/p&gt;
&lt;p&gt;P.S. I could go for about 50 of those P.F. Chang's pork rolls right about now.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;small&gt;&amp;copy; iacas for &lt;a href=&quot;http://nslog.com&quot;&gt;NSLog();&lt;/a&gt;, 2010. | &lt;a href=&quot;http://nslog.com/2010/02/27/redeyes_and_zzzzzzzzzz&quot;&gt;Permalink&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;</description>
	<pubDate>Sun, 28 Feb 2010 03:43:04 +0000</pubDate>
	<dc:creator>Erik J. Barzeski</dc:creator>
</item>
<item>
	<title>NSLog: Friday in Scottsdale</title>
	<guid>http://nslog.com/?p=6818</guid>
	<link>http://nslog.com/2010/02/26/friday_in_scottsdale</link>
	<description>&lt;p&gt;We're taking the redeye later tonight (1:30am) so we're staying up late. I'm writing this from a Barnes &amp;amp; Noble near Kierland in Scottsdale. I picked up a copy of &lt;em&gt;The Three Pillars of Zen: Teaching, Practice, and Enlightenment&lt;/em&gt; thanks to a comment on &lt;a href=&quot;http://nslog.com/2010/02/19/dummys_guide_to_buddhism&quot; title=&quot;Dummy's Guide to Buddhism&quot;&gt;this post&lt;/a&gt;. Thanks Brad (or Brad's friend).&lt;/p&gt;
&lt;p&gt;Today was a bit of a fluky day. I wanted to play golf, but since I'm not in control of the rental car's keys, what I wanted was irrelevant. &lt;img src=&quot;http://nslog.com/wp-includes/images/smilies/icon_wink.gif&quot; alt=&quot;;-)&quot; class=&quot;wp-smiley&quot;&gt; &lt;/p&gt;
&lt;p&gt;At any rate, since we figured we had all day and just wanted to practice, we lollygagged around a bit in the morning. We drove around, we ate breakfast, we settled a bill at Grayhawk, we had lunch, and we finally showed up at Troon North at 1:30 to hit balls. Problem: they closed the range at 2:15 to pick it. D'oh.&lt;span id=&quot;more-6818&quot;&gt;&lt;/span&gt;So we drove to another course. A demo day had shut down the range for the day. So we had a chipping contest&amp;hellip; but the fact remains that we had all day to hit balls, and we were only able to get 45 minutes in.&lt;/p&gt;
&lt;p&gt;After chipping, Charlie, Dave, and I spent three hours at a Morton's steakhouse. Yum. Scottsdale gets chilly in the evenings, but the steak, a toasted almond, and the outdoor heaters they had did wonders to keep us warm. We had good conversation as Dave and I killed time waiting for the drive to the airport.&lt;/p&gt;
&lt;p&gt;Barnes &amp;amp; Noble, a little perusal of the golf magazines (Brady Riggs is a friggin' moron), and we were off.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;small&gt;&amp;copy; iacas for &lt;a href=&quot;http://nslog.com&quot;&gt;NSLog();&lt;/a&gt;, 2010. | &lt;a href=&quot;http://nslog.com/2010/02/26/friday_in_scottsdale&quot;&gt;Permalink&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;</description>
	<pubDate>Sat, 27 Feb 2010 03:38:36 +0000</pubDate>
	<dc:creator>Erik J. Barzeski</dc:creator>
</item>
<item>
	<title>Inessential: Core Data post follow-up notes</title>
	<guid>http://inessential.com/2010/02/26/core_data_post_follow-up_notes</guid>
	<link>http://inessential.com/2010/02/26/core_data_post_follow-up_notes</link>
	<description>&lt;p&gt;(This is a follow-up to the &lt;a href=&quot;http://inessential.com/2010/02/26/on_switching_away_from_core_data&quot;&gt;previous post&lt;/a&gt;.)&lt;/p&gt;

&lt;p&gt;I like &lt;a href=&quot;http://rentzsch.tumblr.com/post/414252963/brent-switching-away-from-core-data&quot;&gt;Wolf’s NSManagedObjectOperation idea&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I’m checking out Aaron Hillegass’s &lt;a href=&quot;http://github.com/hillegass/BNRPersistence&quot;&gt;BNRPersistence&lt;/a&gt;. I ran across &lt;a href=&quot;http://1978th.net/tokyocabinet/&quot;&gt;Tokyo Cabinet&lt;/a&gt; a couple months ago when building mutt, and it sounded pretty cool, though I didn’t try it any projects.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://twitter.com/justin/status/9705599799&quot;&gt;Justin asked me&lt;/a&gt; if it was worth doing this optimization for the extreme case — 10,000 unread items on a first-generation iPod Touch. It’s not always worth optimizing for extreme cases, not at the expense of other things. But there are several reasons why it was right this time:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;High unread-items-count isn’t the only cause of performance degradation.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Lots of people still have original iPhones and iPods Touch.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The performance difference is significant even in a more typical case, say 1,000 unread on an iPhone 3GS.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The performance difference allows me to do other things that people are asking for.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;&lt;i&gt;Update 5:45 pm&lt;/i&gt;: I just looked, and the Tokyo Cabinet license is LGPL. Even with the leading L that means I can’t use it, because I don’t want to be a legal test case. (If it came pre-installed on Macs and iPhones, I would feel okay about using it.)&lt;/p&gt;</description>
	<pubDate>Sat, 27 Feb 2010 01:30:38 +0000</pubDate>
</item>
<item>
	<title>Inessential: On switching away from Core Data</title>
	<guid>http://inessential.com/2010/02/26/on_switching_away_from_core_data</guid>
	<link>http://inessential.com/2010/02/26/on_switching_away_from_core_data</link>
	<description>&lt;p&gt;A lot of the work I’ve been doing the last several months is optimizing performance for NetNewsWire for iPhone. The changes haven’t shipped yet, because I’m not quite finished. But one part of this might be interesting to other developers, so I figured I’d write it up.&lt;/p&gt;

&lt;p&gt;I optimized as much as I could, spent tons of time in Shark, went all multi-threaded with Core Data, switched away from my own queuing system to NSOperationQueue, optimized the XML parsing, etc. But performance and memory use on my first-generation iPod Touch (my development test device) was still not nearly good enough with a big unread count (of around 10,000 items).&lt;/p&gt;

&lt;p&gt;At that point, having done everything else, the remaining issue was clearly Core Data. So I tried more things, re-read everything I could about Core Data performance (for the nth time), ran experiments, spent tons more time in Shark. Trying to get it good. No go.&lt;/p&gt;

&lt;p&gt;Finally I realized I had to switch away from Core Data and use SQLite more directly. Not completely directly — I use &lt;a href=&quot;http://code.google.com/p/flycode/source/browse/trunk/fmdb&quot;&gt;FMDB&lt;/a&gt;, a lightweight Objective-C interface that works on Macs and iPhones. &lt;a href=&quot;http://shapeof.com/&quot;&gt;Gus&lt;/a&gt; wrote it. It’s good.&lt;/p&gt;

&lt;p&gt;That meant a bunch more work — it’s not like Core Data and FMDB are similar or meant to be similar. So it was no drop-in replacement. Not intended to be.&lt;/p&gt;

&lt;h3&gt;But why?&lt;/h3&gt;

&lt;p&gt;I bet Core Data is the right way to go 95% of the time. Or more. It’s easy to work with. It’s fast (in most cases). It has schema upgrade tools.&lt;/p&gt;

&lt;p&gt;The important thing to know, though, is that it’s not a database. It’s an object graph and persistence manager. (Check out the &lt;a href=&quot;http://cocoawithlove.com/2010/02/differences-between-core-data-and.html&quot;&gt;post on Cocoa with Love that goes into detail&lt;/a&gt;.)&lt;/p&gt;

&lt;h3&gt;But surely you’re using objects&lt;/h3&gt;

&lt;p&gt;The difference between Core Data and a database was never that clear to me — until I found concrete examples.&lt;/p&gt;

&lt;p&gt;After all, under the hood, in the code, every news item in a feed is an object. Why &lt;em&gt;wouldn’t&lt;/em&gt; I use an object persistence framework for that? They’re &lt;em&gt;objects&lt;/em&gt;, and I want to &lt;em&gt;persist&lt;/em&gt; them. Duh. Seems like I should use Core Data.&lt;/p&gt;

&lt;p&gt;So here are some concrete examples where direct database access made more sense than using Core Data.&lt;/p&gt;

&lt;h4&gt;1. Marking lots of news items as read or unread&lt;/h4&gt;

&lt;p&gt;The app gets from the Google Reader API a big list of item IDs that have been marked read or unread.&lt;/p&gt;

&lt;p&gt;In Core Data, I had to loop through the list, change the status for each individual item. The list could be up to 10,000 items long. Not a good idea.&lt;/p&gt;

&lt;p&gt;This is a very database-y operation. With one query the app can set the status for a whole bunch of items at once, without having to instantiate them as objects: &lt;code&gt;update newsItems set read = 1 where&lt;/code&gt;...&lt;/p&gt;

&lt;h4&gt;2. Deleting lots of items&lt;/h4&gt;

&lt;p&gt;Similar to #1 above — from time to time the app deletes old, read, non-starred items from storage. We can’t just let storage grow forever, especially not on an iPhone or iPod Touch.&lt;/p&gt;

&lt;p&gt;With Core Data, I ran a query to figure out what items to delete. Then ran a loop that deleted them. Expensive.&lt;/p&gt;

&lt;p&gt;With SQLite access, I just did a sinqle query: &lt;code&gt;delete from newsItems where&lt;/code&gt;...&lt;/p&gt;

&lt;h4&gt;3. Dealing with unique IDs from outside system&lt;/h4&gt;

&lt;p&gt;Core Data does &lt;em&gt;uniquing&lt;/em&gt;, but that’s not what this is. The news items have an assigned unique ID that comes from another database.&lt;/p&gt;

&lt;p&gt;When refreshing feeds, it’s common to see news items that the app has seen before. They might have been downloaded previously or they might have changed. (We try to avoid the former, of course.)&lt;/p&gt;

&lt;p&gt;This means that for each item in a feed, before it’s saved, the app first has to get the existing news item. This is slow. (I tried various techniques: pre-fetching, fetching as needed, fetching only IDs of existing items for a feed, storing existing IDs in a set or dictionary, etc. Nothing helped much. Usually the solution was worse than the original problem.)&lt;/p&gt;

&lt;p&gt;Because many thousands of items may come in during a refresh session, and every item has to be checked to see if it exists already, this was a &lt;em&gt;huge&lt;/em&gt; performance hit. Better not to do the fetch, right?&lt;/p&gt;

&lt;p&gt;With more-direct access, I could just do a &lt;code&gt;insert or replace into newsItems&lt;/code&gt;... and it would add the item or replace the existing item. Fast.&lt;/p&gt;

&lt;h4&gt;4. Testing for the existence of an item&lt;/h4&gt;

&lt;p&gt;Sometimes the app just needs to know if something exists in the database. With Core Data, it’s a fetch.&lt;/p&gt;

&lt;p&gt;With SQLite, here’s one of my favorite tricks: &lt;code&gt;select 1 from someTable where uniqueID = whatever&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;In theory it should hit the index only, since it doesn’t actually retrieve anything from the table itself. It’s fast, at any rate.&lt;/p&gt;

&lt;h3&gt;My favorite magic&lt;/h3&gt;

&lt;p&gt;Once I had the above (and everything else) working, there was still more optimization to do.&lt;/p&gt;

&lt;p&gt;I had created a set of indexes that I thought would do the trick — but there’s nothing like actually seeing what will happen when a query runs. With direct access, with control over the indexes, I could test and iterate until I got the right set of indexes.&lt;/p&gt;

&lt;p&gt;The magic is SQLite’s &lt;a href=&quot;http://www.sqlite.org/lang_explain.html&quot;&gt;explain query plan&lt;/a&gt; command. It tells you what indexes will be used.&lt;/p&gt;

&lt;h3&gt;In the end&lt;/h3&gt;

&lt;p&gt;I didn’t entirely switch away from Core Data. Feeds and folders are still Core Data objects. Since there was no performance gain to be had by switching those over, I left them as-is.&lt;/p&gt;

&lt;p&gt;It’s just news items that got switched — but that’s almost all the data.&lt;/p&gt;

&lt;p&gt;Making the switch did mean I had to do some things manually that Core Data would have done for me: keeping any in-memory items synced with the database storage, mostly.&lt;/p&gt;

&lt;p&gt;But, still, in the end, the new version of the system was less code than the Core Data version. That will not be the case for most apps. I took it as further indication that this was the right move for this particular app.&lt;/p&gt;

&lt;h3&gt;Warning&lt;/h3&gt;

&lt;p&gt;This isn’t about being a hardcore low-level developer or some crap like that. I like Core Data a ton. (I recommend &lt;a href=&quot;http://pragprog.com/titles/mzcd/core-data&quot;&gt;Marcus Zarra’s book&lt;/a&gt;, by the way, which I read twice.) If I could have stuck with Core Data for everything, I would have. (Rule: always work at the highest level possible.)&lt;/p&gt;

&lt;p&gt;But how do you know when you might be better off with FMDB or other more-direct SQLite access? I think it goes like this, at least based on my experience:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Is performance good? Then stick with Core Data. (That should cover 95% or more of data-driven apps right there.)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Is Core Data really the cause of your performance problems? Can you optimize other things? Can you optimize your use of Core Data? Will going multi-threaded do the trick? Try. If you can get performance good, then stick with Core Data.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Are your remaining performance problems really database-y things? In other words, are you doing things like setting one or a few properties across a big range of items; deleting lots of items based on a condition; or having to handle unique IDs from another database, and so you’re constantly doing fetches? In other words, can you benefit by &lt;em&gt;not&lt;/em&gt; treating your data as objects sometimes? If switching to direct database access won’t help, then stick with Core Data.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;My warning: &lt;em&gt;you probably don’t need to switch away from Core Data&lt;/em&gt;. It’s the right answer almost every time.&lt;/p&gt;

&lt;p&gt;(By the way, were this a Mac app only, Core Data would probably have been fine. But it runs on iPhones too, and that’s where performance optimization becomes so much more critical.)&lt;/p&gt;

&lt;p&gt;Anyway: Core Data is the right answer, except when it’s not, and hopefully I’ve made it a little easier to figure out when it’s not the right answer.&lt;/p&gt;</description>
	<pubDate>Fri, 26 Feb 2010 23:41:20 +0000</pubDate>
</item>
<item>
	<title>NSLog: Thursday in Scottsdale</title>
	<guid>http://nslog.com/?p=6814</guid>
	<link>http://nslog.com/2010/02/25/thursday_in_scottsdale</link>
	<description>&lt;p&gt;Wake up 6:30. Shower. Eat some Wheaties &quot;Fuel&quot; (it's pretty good - and very dense). Pack up in the car and head off to Grayhawk where, despite arriving at 8:00am for a 9:00am clinic start, some students are already there. Hey, I can't blame 'em - I'd be there early too.&lt;/p&gt;
&lt;p&gt;The clinic is a golf school, specifically one organized by Dave Wedzik, with Andy Plummer and Mike Bennett. Thirteen students were signed up, with one observer. Another instructor or two was there, and I was there to take photos (and, when not doing that, to listen, observe, and to help by recording some swings).&lt;/p&gt;
&lt;p&gt;First, notwithstanding how great it is to be in the presence of someone (two people) who have done a lot to revolutionize the golf swing swing, several things stood out about the day.&lt;span id=&quot;more-6814&quot;&gt;&lt;/span&gt;
&lt;ol&gt;
&lt;li&gt;One of the golfers was missing both of his legs from the knees down and his right arm from the elbow down. Dave walked up to him, stared down at his legs, and deadpanned. &quot;I can't teach you&amp;hellip; you're a lefty.&quot; The guy was amazing, inspiring, and humbling in equal doses. Particularly when you realize he can beat 3/4 of golfers in the U.S.&lt;/li&gt;
&lt;li&gt;One of the student, a kid named Andy, is basically a scratch golfer with a &quot;horrible short game and terrible putting&quot; (in his words). He's been golfing for two years, but seriously for only just over six months. Dave and I talked about how quickly he's able to assimilate things into his swing because it's very easy for him to &quot;clear the machine.&quot; Incredible.&lt;/li&gt;
&lt;li&gt;Every golfer improved. Every golfer probably shaved two strokes off his scores, at least, from the swing with which he came to the school. Wow.&lt;/li&gt;
&lt;li&gt;The weather couldn't have been better. Well, from a golf perspective, anyway. Obviously as a photographer I'd have taken an overcast day, but I don't think they get many of those in Scottsdale.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Aperture 3's brushes are incredible. I spent about a minute retouching this photo primarily to brighten the golfer (the same Andy as above) and to enhance the sky and ground colors a bit (targeted color adjustments brushed into the proper areas):&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;http://nslog.com/imgs/photos/andy_patnou_aperture_3_cleanup.jpg&quot; height=&quot;375&quot; width=&quot;500&quot; class=&quot;bordleft&quot; alt=&quot;Andy Patnou&quot;&gt;&lt;/p&gt;
&lt;p&gt;Adjustment brushes rock in Aperture 3. Nice job, Apple.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;small&gt;&amp;copy; iacas for &lt;a href=&quot;http://nslog.com&quot;&gt;NSLog();&lt;/a&gt;, 2010. | &lt;a href=&quot;http://nslog.com/2010/02/25/thursday_in_scottsdale&quot;&gt;Permalink&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;</description>
	<pubDate>Fri, 26 Feb 2010 04:02:34 +0000</pubDate>
	<dc:creator>Erik J. Barzeski</dc:creator>
</item>
<item>
	<title>NSLog: Wednesday in Scottsdale</title>
	<guid>http://nslog.com/?p=6810</guid>
	<link>http://nslog.com/2010/02/24/wednesday_in_scottsdale</link>
	<description>&lt;p&gt;Today's a bit of a &quot;free day&quot; in Scottsdale. We don't have anything to do until tomorrow. Well, nothing terribly serious, anyway.&lt;/p&gt;
&lt;p&gt;The four of us wake up and shower at about 6:30. Four being me, Dave, Steve, and Charlie. We head out to a Starbucks where, when I order a bagel, they don't even have a toaster to toast it. Gee, thanks. I drink some sort of protein juice thing that's a bit chalky but quite tasty.&lt;/p&gt;
&lt;p&gt;Then we head to &quot;Crackerjacks&quot; - a fun center with a driving range, mini golf, bounce houses, water balloon fighting areas, a small arcade, batting cages, etc. We're there to meet Kirk, who has been teaching himself the Stack and Tilt swing. His swing is impressive and intriguing - he's one of the few people who seem to have gone too far in doing some of the particular moves, and he's over-drawing the golf ball. He's also a lefty, which I'm happy to notice confused Dave and Steve into saying &quot;right&quot; when they meant &quot;left&quot; and vice versa as often as I said it in my mind.&lt;/p&gt;
&lt;p&gt;After that, we wandered over to Grayhawk Golf Club to meet the guy responsible for helping to set up the clinic/school tomorrow. We had lunch while Peter Kostis sat at the next table. Steve was tempted to say something, but chose not to. The burger wasn't very good at all.&lt;/p&gt;
&lt;p&gt;We asked to hit balls on the range &quot;for an hour or so&quot; and ended up staying for five. Oh well. &lt;img src=&quot;http://nslog.com/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:-)&quot; class=&quot;wp-smiley&quot;&gt;  My own swing has progressed to where my position at P2 is pretty good and so I started cleaning up some things at the top of my backswing. Elbows closer, push away with the left arm, no cupping. PGA Tour player (and major winner) Rich Beem hit about 30 balls next to us.&lt;br&gt;
&lt;span id=&quot;more-6810&quot;&gt;&lt;/span&gt;&lt;br&gt;
We drove back to &quot;The La Hacienda&quot; and chilled out before Dale showed up to take us to dinner. We decided on PF Chang's. I'd never eaten there, but everything was fine - some sort of honey chicken, Mongolian beef, rice, some spicy green beans, and pork rolls. Good stuff.&lt;/p&gt;
&lt;p&gt;We returned to The La Hacienda, hung out with Dale for a bit, and discovered that Cheeseburger Doritos are grosser than gross. Yuck. Blech.&lt;/p&gt;
&lt;p&gt;Tomorrow, the clinic!&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;small&gt;&amp;copy; iacas for &lt;a href=&quot;http://nslog.com&quot;&gt;NSLog();&lt;/a&gt;, 2010. | &lt;a href=&quot;http://nslog.com/2010/02/24/wednesday_in_scottsdale&quot;&gt;Permalink&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;</description>
	<pubDate>Thu, 25 Feb 2010 04:33:28 +0000</pubDate>
	<dc:creator>Erik J. Barzeski</dc:creator>
</item>
<item>
	<title>NSLog: Flying to Scottsdale, AZ</title>
	<guid>http://nslog.com/?p=6808</guid>
	<link>http://nslog.com/2010/02/23/flying_to_scottsdale_az</link>
	<description>&lt;p&gt;I'm typing this on a plane 1:30-ish flight out of Erie (it was only about $10 more than a flight out of Buffalo) to Detroit. When I land, I'll have an hour or so to catch a flight to Scottsdale, AZ.&lt;/p&gt;
&lt;p&gt;I'm heading to Scottsdale with Dave Wedzik to photograph and observe a Stack and Tilt golf clinic (on Thursday). I've got media passes for the WM Phoenix Open taking place there, but I don't know that I'm going to use them. I'll play that by ear.&lt;/p&gt;
&lt;p&gt;$25 per bag to check the luggage, and I've brought the clubs because we'll have time on Wednesday and Friday to play golf. Or practice. Knowing Dave and another guy, Steve, it's gonna be spent hitting balls and not actually playing golf. &lt;img src=&quot;http://nslog.com/wp-includes/images/smilies/icon_razz.gif&quot; alt=&quot;:-P&quot; class=&quot;wp-smiley&quot;&gt; &lt;/p&gt;
&lt;p&gt;Dave and I are going to use the longer leg of the trip to talk about what we're dubbing &quot;G1&quot; publicly - the video analysis software we're planning to build and sell.&lt;span id=&quot;more-6808&quot;&gt;&lt;/span&gt;&lt;strong&gt;Update:&lt;/strong&gt; We've landed. Rental car taxes are 58% - let me say that again: &lt;strong&gt;fifty eight percent&lt;/strong&gt; - in Arizona. And apparently there are cameras all over the place to catch people who average 11 MPH over the speed limit between intersections.&lt;/p&gt;
&lt;p&gt;We picked up Steve and went to an In-n-Out burger joint. Our &quot;pre-meal meal&quot; as Dave called it. Dave didn't even know there was a secret menu&amp;hellip;&lt;/p&gt;
&lt;p&gt;But, on the bright side, we stopped at a restaurant called &quot;Los Olivos&quot; (the one on second street, not the other &quot;bad&quot; one&quot; - and had some &lt;em&gt;really good&lt;/em&gt; Mexican food. Now it's off to the hotel.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Update Numero Dos:&lt;/strong&gt; They overbooked the hotel. So for $40/night - a rate we got on Priceline - we're now staying at a 1700-square foot house called &quot;the La Hacienda&quot;. We have our own pool, three beds (Steve's going to sleep on the couch, apparently), and two teeny showers. We have a kitchen, etc.&lt;/p&gt;
&lt;p&gt;But no Internet. Bah. And we won't be using the pool anyway. We're golfers, not party boys. &lt;img src=&quot;http://nslog.com/wp-includes/images/smilies/icon_razz.gif&quot; alt=&quot;:-P&quot; class=&quot;wp-smiley&quot;&gt; &lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;small&gt;&amp;copy; iacas for &lt;a href=&quot;http://nslog.com&quot;&gt;NSLog();&lt;/a&gt;, 2010. | &lt;a href=&quot;http://nslog.com/2010/02/23/flying_to_scottsdale_az&quot;&gt;Permalink&lt;/a&gt;&lt;/small&gt;&lt;/p&gt;</description>
	<pubDate>Tue, 23 Feb 2010 19:18:09 +0000</pubDate>
	<dc:creator>Erik J. Barzeski</dc:creator>
</item>
<item>
	<title>Ranchero: Two upcoming iPhone dev conferences</title>
	<guid>http://ranchero.com/2010/02/22/two_upcoming_conferences</guid>
	<link>http://ranchero.com/2010/02/22/two_upcoming_conferences</link>
	<description>&lt;p&gt;In April I’ll be going to two iPhone/iPad developers conferences: &lt;a href=&quot;http://inessential.com/2010/02/21/360_idev_iphone_ipad_conference_san_jo&quot;&gt;iDev 360 in San Jose&lt;/a&gt; and &lt;a href=&quot;http://inessential.com/2010/02/22/voices_that_matter_iphone_conference_s&quot;&gt;Voices that Matter in Seattle&lt;/a&gt;. (I’ll be speaking at 360 iDev. For the Seattle conference I’ll be playing the part of a local, since, well, I live in Seattle.)&lt;/p&gt;</description>
	<pubDate>Mon, 22 Feb 2010 09:08:19 +0000</pubDate>
</item>
<item>
	<title>Inessential: Voices that Matter iPhone conference - Seattle, late April</title>
	<guid>http://inessential.com/2010/02/22/voices_that_matter_iphone_conference_s</guid>
	<link>http://inessential.com/2010/02/22/voices_that_matter_iphone_conference_s</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.voicesthatmatter.com/iphone2010/&quot;&gt;&lt;img src=&quot;http://inessential.com/images/150x150JoinMeiPhoneVTM.jpg&quot; height=&quot;150&quot; width=&quot;150&quot; alt=&quot;Join me at Voices that Matter iPhone Developers Conference&quot;&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I missed the Voices that Matter iPhone developers conference last year in Boston — but I heard great things about it, and I ended up being sad I missed it.&lt;/p&gt;

&lt;p&gt;Then just recently I heard the &lt;a href=&quot;http://www.voicesthatmatter.com/iphone2010/&quot;&gt;next one is in &lt;em&gt;Seattle&lt;/em&gt;&lt;/a&gt;, which is where I live. Not going to miss it this time, no way. :)&lt;/p&gt;

&lt;p&gt;Let me get the money thing out of the way: use the discount code PHBLOGS when registering to save $100. &lt;a href=&quot;http://www.voicesthatmatter.com/iphone2010/register.aspx&quot;&gt;Register before March 12&lt;/a&gt; for early-bird pricing to save another $200. That’s &lt;strong&gt;$300&lt;/strong&gt; total, ’kay?&lt;/p&gt;

&lt;h4&gt;About the conference&lt;/h4&gt;

&lt;p&gt;It’s put on by our friends at Addison-Wesley — the idea is that the speakers are the folks who literally wrote the books on iPhone development. Folks like &lt;a href=&quot;http://twitter.com/AaronHillegass&quot;&gt;Aaron Hillegass&lt;/a&gt;, &lt;a href=&quot;http://twitter.com/rentzsch&quot;&gt;Jonathan &lt;strong&gt;Wolf&lt;/strong&gt; Rentzsch&lt;/a&gt;, &lt;a href=&quot;http://twitter.com/Eddienull&quot;&gt;Kevin Avila&lt;/a&gt;, and &lt;a href=&quot;http://iphone2010.crowdvine.com/calendar&quot;&gt;more&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Aaron Hillegass, by the way, taught a ton of people Cocoa programming &lt;a href=&quot;http://www.bignerdranch.com/&quot;&gt;in person&lt;/a&gt; — and the ones he didn’t teach in person he &lt;a href=&quot;http://www.bignerdranch.com/book/cocoa®_programming_for_mac®_os_x_3rd_edition&quot;&gt;taught by way of his Cocoa book&lt;/a&gt;. Me included. Aaron is responsible for just about everything and everybody.&lt;/p&gt;

&lt;p&gt;I’ve seen him talk — and he’s &lt;em&gt;so&lt;/em&gt; damn good.&lt;/p&gt;

&lt;h4&gt;About Seattle&lt;/h4&gt;

&lt;p&gt;Have you been to Seattle? It’s beautiful. Green. Lush. Alive. Waters fresh and salty plus two nearby mountain ranges plus a view of the &lt;a href=&quot;http://www.nps.gov/mora/&quot;&gt;tallest mountain&lt;/a&gt; in the lower 48 states.&lt;/p&gt;

&lt;p&gt;The conference is on the waterfront at the Bell Harbor conference center. I’ve been to two Gnomedex conferences twice at that same location — it’s very nice, with a view of downtown, the waterfront, &lt;a href=&quot;http://en.wikipedia.org/wiki/Elliott_Bay&quot;&gt;Elliot Bay&lt;/a&gt;, and the &lt;a href=&quot;http://images.google.com/images?hl=en&amp;amp;source=hp&amp;amp;q=olympic+mountains&amp;amp;gbv=2&amp;amp;aq=0&amp;amp;oq=olympic+mount&amp;amp;aqi=g3g-sx1g1g-m1&quot;&gt;Olympic mountains&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The conference hotel is the Edgewater. The Beatles stayed there in like 1964 or something. In those days they used to give you fishing poles so you could fish from your hotel room.&lt;/p&gt;

&lt;h4&gt;About the Seattle Cocoa community&lt;/h4&gt;

&lt;p&gt;I don’t know who all of the locals are going. (I hope they all are.)&lt;/p&gt;

&lt;p&gt;You might even wonder if there &lt;em&gt;are&lt;/em&gt; any locals. Seattle’s gotta be a Microsoft town, right?&lt;/p&gt;

&lt;p&gt;But here in the shadow of Mordor we’ve got a pretty hot bunch of developers. By way of proof I could just mention the magic kingdom of &lt;a href=&quot;http://www.omnigroup.com/&quot;&gt;Omni&lt;/a&gt; and be done.&lt;/p&gt;

&lt;p&gt;But there’s also the cool cats at &lt;a href=&quot;http://www.roguesheep.com/&quot;&gt;Rogue Sheep&lt;/a&gt;, the amazing &lt;a href=&quot;http://flyingmeat.com/&quot;&gt;Flying Meat&lt;/a&gt; (Gus Mueller), &lt;a href=&quot;http://www.rhonabwy.com/wp/&quot;&gt;Joe Heck&lt;/a&gt; (ringleader), some &lt;a href=&quot;http://www.google.com/profiles/gregrobbins&quot;&gt;Cocoa-y Google&lt;/a&gt; folks, the madmen at &lt;a href=&quot;http://blackpixel.com/&quot;&gt;Black Pixel Luminance&lt;/a&gt;, the unclassifiably hip &lt;a href=&quot;http://corporationunknown.com/blog/&quot;&gt;Corporation Unknown&lt;/a&gt;, Professor &lt;a href=&quot;http://halmueller.wordpress.com/&quot;&gt;Hal Mueller&lt;/a&gt;, the artisans at &lt;a href=&quot;http://zumobi.com/&quot;&gt;Zumobi&lt;/a&gt;, and plenty more.&lt;/p&gt;

&lt;h4&gt;After hours&lt;/h4&gt;

&lt;p&gt;I’m thinking &lt;a href=&quot;http://www.shortydog.com/tour.html&quot;&gt;pinball at Shorty’s&lt;/a&gt;. (Not like it’s the only place in town. But don’t us geeks love pinball? And it’s walking distance — just up the hill from the Edgewater.)&lt;/p&gt;

&lt;p&gt;Anyway, that’s the scoop. Come to &lt;em&gt;my&lt;/em&gt; neck of the woods for a change, wouldja?&lt;/p&gt;</description>
	<pubDate>Mon, 22 Feb 2010 08:30:21 +0000</pubDate>
</item>
<item>
	<title>Inessential: 360 iDev iPhone/iPad Conference - San Jose, April</title>
	<guid>http://inessential.com/2010/02/21/360_idev_iphone_ipad_conference_san_jo</guid>
	<link>http://inessential.com/2010/02/21/360_idev_iphone_ipad_conference_san_jo</link>
	<description>&lt;p&gt;Going to the &lt;a href=&quot;http://www.360idev.com/&quot;&gt;360 iDev iPhone conference&lt;/a&gt;?&lt;/p&gt;

&lt;p&gt;I am. I’m speaking, even, on the topic of content-based apps. (On feeds, XML parsing, performance, networking, the beauty of NSOperationQueue, image caching and scaling, SQLite and Core Data, etc.)&lt;/p&gt;

&lt;p&gt;I went last year to the San Jose conference and then to 360 iDev in Denver. Had a great time both times and totally look forward to this conference.&lt;/p&gt;

&lt;p&gt;The iPad should actually be out by then, which is cool — I don’t know exactly what iPad content is lined up, but I have to figure lots of speakers will incorporate iPad into their presentations. And I bet lots of folks will bring iPads with them. I want to go just to see a whole bunch of people’s iPad apps and ideas.&lt;/p&gt;

&lt;p&gt;I think it’s the first iPad conference with actual iPads. That’s &lt;strong&gt;kind of like Woodstock&lt;/strong&gt;, right? I don’t want you to say you were there when you weren’t really there — you should actually &lt;em&gt;be&lt;/em&gt; there.&lt;/p&gt;

&lt;p&gt;Not enough? Here are some other randomly-jotted notes, then...&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;It’s near Cupertino. One night we all go over to Steve Jobs’s house for barbeque and Cuban cigars. It’s totally chill. (Wait. Okay. Maybe not. But it &lt;em&gt;is&lt;/em&gt; near Cupertino, though.)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Last year I almost got in a fight at &lt;a href=&quot;http://www.yelp.com/biz/lindas-light-rail-lounge-san-jose&quot;&gt;Linda’s Light Rail Lounge&lt;/a&gt;. Lesson learned: &lt;em&gt;don’t ever joke about NASCAR with somebody who cares&lt;/em&gt;. He said he liked so-and-so as a great driver, I said something about Jeff Gordon (the only driver’s name I know) — and apparently the guy thought Jeff Gordon was a sissy or something. I had to talk fast. It’s possible that I bought him a drink, or maybe &lt;a href=&quot;http://twitter.com/metafy&quot;&gt;Joe&lt;/a&gt; or &lt;a href=&quot;http://twitter.com/burcaw&quot;&gt;Dan&lt;/a&gt; handled it and saved me.&lt;/p&gt;

&lt;p&gt;What I mean is this: you and me, we should hang out.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;My friends &lt;a href=&quot;http://twitter.com/bradellis&quot;&gt;Brad Ellis&lt;/a&gt; and &lt;a href=&quot;http://twitter.com/dwiskus&quot;&gt;Dave Wiskus&lt;/a&gt; — great designers — are doing a co-presentation on something designer-y-ish.&lt;/p&gt;

&lt;p&gt;Don’t know who they are?&lt;/p&gt;

&lt;p&gt;Check out some apps Brad’s worked on: Apple Design Award winner &lt;a href=&quot;http://itunes.apple.com/us/app/postage-postcards/id312231322?mt=8&quot;&gt;Postage&lt;/a&gt;, &lt;a href=&quot;http://itunes.apple.com/us/app/id335201876?mt=8&quot;&gt;Word Spin&lt;/a&gt;, and &lt;a href=&quot;http://itunes.apple.com/us/app/snoglobe/id344579002?mt=8&quot;&gt;SnoGlobe&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;And check out apps Dave’s worked on: &lt;a href=&quot;http://itunes.apple.com/us/app/coathangr/id324900406?mt=8&quot;&gt;Coathangr&lt;/a&gt; and the wickedly addicting &lt;a href=&quot;http://itunes.apple.com/us/app/typewar/id350633756?mt=8&quot;&gt;Typewar&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Oh, whatever, shut up, at least it’s &lt;a href=&quot;http://siliconvalley.citysearch.com/profile/1099212/san_jose_ca/denny_s.html&quot;&gt;always open&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://twitter.com/mzarra&quot;&gt;Marcus Zarra&lt;/a&gt; will be there. And speaking. Don’t miss your chance to hear from the double-fisted wizard of Cores both Data and Animation.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://collindonnell.com/&quot;&gt;Colin Donnell&lt;/a&gt; will be speaking. He has great hair and brains to match.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;I sometimes judge a conference by who I met and keep in touch with. Last year I met &lt;a href=&quot;http://twitter.com/ryannielsen&quot;&gt;Ryan Nielsen&lt;/a&gt; and the previously-mentioned Dan Burcaw.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;In fact, the conference has such great mojo that last year Dave Wiskus was in town — for other reasons, only coincidentally in San Jose — but he hung out with us at night. And a year later he’s a successful indie iPhone developer and a speaker at 360 iDev. Imagine if he had actually &lt;em&gt;attended&lt;/em&gt; the conference. He’d probably be an App Store billionaire by now. (Which is just $150 million in regular money, but still nothing to sneeze at.)&lt;/p&gt;

&lt;p&gt;(That App Store money thing didn’t make any sense. Sorry.)&lt;/p&gt;

&lt;p&gt;What I’m saying is: this conference has the power to launch entire careers!&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Check out the &lt;a href=&quot;http://www.360idev.com/speakers&quot;&gt;entire list of speakers&lt;/a&gt;. Julio will be there! Joe-with-the-hat! More! It’s a great line-up.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;http://www.taplynx.com/&quot;&gt;TapLynx&lt;/a&gt; is a sponsor. That means, yes, we’re paying for some of your fun and awesome learnings. :)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It’ll be months before WWDC. Hard to wait, right? Especially with all this cool iPad grooviness.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Anyway... &lt;a href=&quot;http://www.360idev.com/&quot;&gt;you should go to the website&lt;/a&gt; and check it out. Here’s the &lt;a href=&quot;http://360idev.eventbrite.com/?ref=ebtn&quot;&gt;registration page&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Also, they might set up Rock Band again. You haven’t lived till you’ve seen Joe Pezzillo do No Sleep Till Brooklyn. You can hope.&lt;/p&gt;</description>
	<pubDate>Mon, 22 Feb 2010 04:33:33 +0000</pubDate>
</item>
<item>
	<title>Inessential: Kevin</title>
	<guid>http://inessential.com/2010/02/16/kevin</guid>
	<link>http://inessential.com/2010/02/16/kevin</link>
	<description>&lt;p&gt;I got email asking me if I was doing some kind of public shunning of &lt;a href=&quot;http://twitter.com/eridius&quot;&gt;Kevin Ballard&lt;/a&gt;. By no means! He’s a totally great guy — smart, friendly, funny, way more interesting than I was at his age — and I’m sorry I didn’t see him at Macworld. It’s just that 1) he’s fun to tease and 2) he’s a super-good sport.&lt;/p&gt;

&lt;p&gt;My kind of fella.&lt;/p&gt;

&lt;p&gt;Now pretend you didn’t read all of the above. :)&lt;/p&gt;</description>
	<pubDate>Tue, 16 Feb 2010 08:28:09 +0000</pubDate>
</item>
<item>
	<title>Inessential: Email sent to a developer on supporting 10.6 and up</title>
	<guid>http://inessential.com/2010/02/14/email_sent_to_a_developer_on_support_10_</guid>
	<link>http://inessential.com/2010/02/14/email_sent_to_a_developer_on_support_10_</link>
	<description>&lt;p&gt;The below is an email I sent to a fellow Mac developer on reasons to support 10.6 and up on his next major release. (It’s barely edited: I just changed a couple sentences that would have made identification easy.)&lt;/p&gt;

&lt;p&gt;Here are the reasons to go with 10.6 and up:&lt;/p&gt;

&lt;p&gt;1. Millions of people are using 10.6. Every new Mac since last September or whatever is running 10.6. Apple is selling lots of Macs. Lots of people have upgraded to 10.6.&lt;/p&gt;

&lt;p&gt;2. People who don’t upgrade their OS are, in general, the kind of people who just don’t buy software anyway. (Particularly in the case of 10.6, given how inexpensive the upgrade price was.)&lt;/p&gt;

&lt;p&gt;3. Every second you spend dealing with 10.5 (in terms of testing, code, whatever) is a disservice to your customers and your software. It’s very nearly irresponsible.&lt;/p&gt;

&lt;p&gt;4. &lt;em&gt;Quality&lt;/em&gt; is the most important aspect of your software. Quality drives sales. Dropping 10.5 support means you can spend more time on polish; it means you can use 10.6-only features that make your app better and easier to maintain. Continuing with 10.5 support means that your software is not as good as it could be.&lt;/p&gt;

&lt;p&gt;5. Rule of thumb: don’t ever code for a shrinking OS version.&lt;/p&gt;

&lt;p&gt;Wayne Gretzky: &quot;I skate to where the puck is going to be, not where it has been.&quot;&lt;/p&gt;

&lt;p&gt;There will be n 10.5 users on the day the next version of your app is released. The next day there will be n minus some number. A month later it will be n minus some big number — but you’ll still be supporting 10.5, you’ll still be writing software for people who don’t buy software anyway.&lt;/p&gt;

&lt;p&gt;There are x 10.6 users today. Tomorrow there will be x plus some number. A month from now it will be x plus some big number.&lt;/p&gt;

&lt;p&gt;6. Current users of your app still on 10.5 have a perfectly awesome piece of software to use.&lt;/p&gt;

&lt;p&gt;7. If you don’t drop 10.5 now, when do you drop it? On a major release is when it’s easiest, and you don’t want to wait for the major release after this next one.&lt;/p&gt;</description>
	<pubDate>Sun, 14 Feb 2010 19:33:51 +0000</pubDate>
</item>
<item>
	<title>Inessential: Advice to new developers on networking</title>
	<guid>http://inessential.com/2010/02/10/advice_to_new_developers_on_networking</guid>
	<link>http://inessential.com/2010/02/10/advice_to_new_developers_on_networking</link>
	<description>&lt;p&gt;This is for folks new to the Mac, iPhone, and iPad development community who are going to their first conference...&lt;/p&gt;

&lt;p&gt;You might wonder if this “networking” thing you’ve heard about is really a thing. “I’ve got Xcode,” you think. “Do I really have to, you know, &lt;em&gt;meet&lt;/em&gt; people and stuff? Isn’t networking something my Dad did? What about the meritocracy?”&lt;/p&gt;

&lt;p&gt;While you’re busy asking yourself questions, other people are having a good time.&lt;/p&gt;

&lt;p&gt;Here’s the deal: you don’t actually need to know anybody else to be successful. You totally don’t. It’s fine.&lt;/p&gt;

&lt;p&gt;But it &lt;em&gt;helps&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;It’s not really networking, anyway. Or, at least, I’ve never gone into a bar or a party thinking I’ll advance my career or my software. That would be weird and yucky.&lt;/p&gt;

&lt;p&gt;Rather, there’s a great community of developers and journalists and bloggers, and they’re roughly in your age range, and you have some interests in common, and almost everybody is nice, and — hey, it sounds like kindergarten, I know — but &lt;em&gt;you can make friends&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;That’s all there is to it. It’s not networking: get that dumb word out of your head.&lt;/p&gt;

&lt;p&gt;Okay, here’s some practical advice.&lt;/p&gt;

&lt;h4&gt;Two types of geeks&lt;/h4&gt;

&lt;p&gt;The first type is exactly what you’d expect: they’re the technologists, the guys who would invent computers if they didn’t already exist. On their nth beer they can discuss the fine points of objc_msgSend_stret().&lt;/p&gt;

&lt;p&gt;While they’re talking to you they’re also, in their heads, optimizing the queueing algorithm at the bar, writing their first quantum computing application, and stepping through the code they wrote just an hour ago.&lt;/p&gt;

&lt;p&gt;The second type is tech-inflected liberal arts types. (I sometimes wonder if this surprises new computer science graduates.) Journalists and bloggers are often of this type — but a perhaps-surprising number of developers are too. They’d rather discuss Gogol and Gaga, Kafka and Kubrick, Borges and Black Eyed Peas.&lt;/p&gt;

&lt;p&gt;What both types have in common, though, is Apple products. “Hey, how ’bout that iPad, huh?”&lt;/p&gt;

&lt;p&gt;Both types also love well-designed software.&lt;/p&gt;

&lt;h4&gt;Some things not to do&lt;/h4&gt;

&lt;p&gt;Remember that everyone sits at their desk most of the time working on hard things. But not at the moment you’re talking to them. At that moment it’s time to have fun, take a little break from the hard things.&lt;/p&gt;

&lt;p&gt;I think many of the technologists can deal with bug reports and feature requests in person. For others it’s too much like being back at the desk. (For me it is, anyway.)&lt;/p&gt;

&lt;p&gt;I don’t know anybody who likes being cornered or monopolized, or who can stop what they’re doing to spend 30 minutes looking at a demo.&lt;/p&gt;

&lt;h4&gt;What you &lt;em&gt;should&lt;/em&gt; do&lt;/h4&gt;

&lt;p&gt;Remember that all geeks are shy, just like you. Even the boisterous ones. Or especially. The word “shy” is so universally applicable among geeks that it means nothing: it’s no excuse for you or anybody else. (What do you think &lt;em&gt;beer&lt;/em&gt; is &lt;em&gt;for&lt;/em&gt;? It’s not just a FIFO stack.)&lt;/p&gt;

&lt;p&gt;But if someone ever seems stand-off-ish or awkward — take it as shyness. That’s all it is. (Countless times I’ve heard people say “so-and-so doesn’t like me, I think” — when it’s always just that geek social skills are a little rough-edged. Mine included. In some cases these people have become best friends.)&lt;/p&gt;

&lt;p&gt;So, yes, remember that they’re all people, just folks, not different from you in some fundamental way.&lt;/p&gt;

&lt;p&gt;Though I will caution you not to stare directly into my third eye, or make fun of the extra head on the side of &lt;a href=&quot;http://twitter.com/gruber&quot;&gt;John Gruber&lt;/a&gt;’s regular head, or try to grab &lt;a href=&quot;http://twitter.com/rentzsch&quot;&gt;Wolf&lt;/a&gt;’s tail.&lt;/p&gt;

&lt;p&gt;And if you think you actually just saw Thor himself, well, yes, but we call him &lt;a href=&quot;http://twitter.com/bbum&quot;&gt;bbum&lt;/a&gt; (the Norse god of Tequila).&lt;/p&gt;

&lt;p&gt;(And, one more time, though it should go without saying by now — if you find yourself anywhere near &lt;a href=&quot;http://twitter.com/Eridius&quot;&gt;Kevin Ballard&lt;/a&gt;, just slowly back away and move to the other side of the bar. Don’t move too fast — his eyes are freakishly sensitive to motion. You’ll be okay. Eventually. I know it burns.)&lt;/p&gt;</description>
	<pubDate>Wed, 10 Feb 2010 20:14:26 +0000</pubDate>
</item>
<item>
	<title>Inessential: Last</title>
	<guid>http://inessential.com/2010/02/10/last</guid>
	<link>http://inessential.com/2010/02/10/last</link>
	<description>&lt;p&gt;This is the last Macworld Expo where you won’t see iPads. I’m nostalgic already.&lt;/p&gt;</description>
	<pubDate>Wed, 10 Feb 2010 18:15:06 +0000</pubDate>
</item>
<item>
	<title>Ranchero: The Listening Engine</title>
	<guid>http://ranchero.com/2010/02/10/the_listening_engine</guid>
	<link>http://www.tbray.org/ongoing/When/201x/2010/02/09/Information-Aristocracy</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.tbray.org/ongoing/When/201x/2010/02/09/Information-Aristocracy&quot;&gt;Tim Bray&lt;/a&gt; on being well-informed or not: “This might signal a new kind of stratification in society.”&lt;/p&gt;</description>
	<pubDate>Wed, 10 Feb 2010 16:58:55 +0000</pubDate>
</item>
<item>
	<title>Ranchero: Moltzworld</title>
	<guid>http://ranchero.com/2010/02/10/moltzworld</guid>
	<link>http://www.crazyapplerumors.com/?p=1173</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.crazyapplerumors.com/?p=1173&quot;&gt;Crazy Apple Rumors Site&lt;/a&gt;: “It’s a Cinderella story.”&lt;/p&gt;</description>
	<pubDate>Wed, 10 Feb 2010 16:56:23 +0000</pubDate>
</item>
<item>
	<title>Inessential: Super-quick guide to Macworld Expo</title>
	<guid>http://inessential.com/2010/02/10/super-quick_guide_to_macworld_expo</guid>
	<link>http://inessential.com/2010/02/10/super-quick_guide_to_macworld_expo</link>
	<description>&lt;p&gt;The Expo and trade show is during the day. Walk the floor. Pay special attention to the smaller companies — that’s where you’ll usually find the most interesting things. I tend to avoid any exhibit with a big video screen, and that’s served me well.&lt;/p&gt;

&lt;p&gt;In the evening is when you get more of a chance to meet people and talk. It’s easy to find out where to be:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Consult the &lt;a href=&quot;http://www.ilenesmachine.com/partylist.shtml&quot;&gt;Hess Memorial party list&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If you’re an indie developer, be at the Chaat Café 6 pm Thursday.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Follow Mac developers and journalists on Twitter — they usually make themselves pretty easy to find. (And you’ll often find that a bunch of them are at the same place.) (They’re very needy people. It’s sad, really. At that hour what they usually need is a beer.)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Trust your iPhone Map program. Search works.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;Also, as always, drink plenty of water, remember to eat and sleep, and see some of San Francisco if you’re new to the city. And, for the sake of all that’s good and right in the world, do not engage &lt;a href=&quot;http://twitter.com/Eridius&quot;&gt;Kevin Ballard&lt;/a&gt; in conversation.&lt;/p&gt;</description>
	<pubDate>Wed, 10 Feb 2010 16:24:13 +0000</pubDate>
</item>
<item>
	<title>Inessential: On the benefits of thin-server RSS syncing</title>
	<guid>http://inessential.com/2010/02/09/on_the_benefits_of_thin-server_rss_synci</guid>
	<link>http://inessential.com/2010/02/09/on_the_benefits_of_thin-server_rss_synci</link>
	<description>&lt;p&gt;I’ve had a bunch of people ask me about the &lt;a href=&quot;http://inessential.com/2010/02/08/idea_for_alternative_rss_syncing_system&quot;&gt;thin-server RSS syncing system&lt;/a&gt; I talked about yesterday.&lt;/p&gt;

&lt;p&gt;The main question: what are the benefits?&lt;/p&gt;

&lt;p&gt;First let’s define things a little. A thick-server RSS syncing system is something like Google Reader, NewsGator, Bloglines — where the server actually downloads the feeds, and client apps talk to the server rather than to the original sources.&lt;/p&gt;

&lt;p&gt;There are lots of benefits to this kind of system. There’s every reason for this to be widely used — it’s the right choice for lots of people, probably for most.&lt;/p&gt;

&lt;p&gt;A thin-server syncing system doesn’t read the feeds: it only knows about users, subscriptions lists, and the status of news items. No actual feed content. Loosely coupled to the actual RSS readers.&lt;/p&gt;

&lt;p&gt;Here are some of the benefits of a hypothetical thin-server system (in no particular order):&lt;/p&gt;

&lt;h4&gt;No latency&lt;/h4&gt;

&lt;p&gt;The thick-server systems have to read millions of feeds. So they don’t usually get updates the moment they happen — they check a feed once an hour or whatever. (Maybe it’s every 15 minutes or whatever for popular feeds.)&lt;/p&gt;

&lt;p&gt;This means that news gets to the client apps a little less quickly than it would otherwise.&lt;/p&gt;

&lt;p&gt;With the thin-server, the clients read the feeds directly, so they get exactly what’s available at that time.&lt;/p&gt;

&lt;h4&gt;Security&lt;/h4&gt;

&lt;p&gt;Say you read a password-protected feed. A thick-server system would have to support that, &lt;em&gt;and&lt;/em&gt; you’d have to send your credentials to that system. That system would have to store the content: it would treat it like any other feed it reads.&lt;/p&gt;

&lt;p&gt;It’s not economical for thick-server systems to handle password-protected feeds, since each one can’t be re-used. It’s one copy per username/password pair.&lt;/p&gt;

&lt;p&gt;With a thin-server system, you never transmit your username and password. It never sees the feed data, just the URL of the feed and IDs of news items. No problem syncing password-protected feeds.&lt;/p&gt;

&lt;h4&gt;Reachability&lt;/h4&gt;

&lt;p&gt;Say you read feeds from a local intranet that a thick-server can’t reach. You can’t sync these, since the thick server can’t read the feeds.&lt;/p&gt;

&lt;p&gt;But, again, a thin server doesn’t care. All it sees are feed URLs and IDs of news items. No problem syncing intranet-only feeds.&lt;/p&gt;

&lt;p&gt;(This also applies to things like script subscriptions. A thick server isn’t going to run an AppleScript, for example, but multiple clients might run the same script. The news items status would still be syncable.) (But not the script! No way would I want to sync executable code.)&lt;/p&gt;

&lt;h4&gt;Server downtime doesn’t prevent you from getting your feeds&lt;/h4&gt;

&lt;p&gt;If a thick-server system goes down, you can’t get your feeds. (Unless you turn off syncing.)&lt;/p&gt;

&lt;p&gt;With a thin-server system, you still get your feeds. The clients wait to sync up.&lt;/p&gt;

&lt;h4&gt;Decentralized&lt;/h4&gt;

&lt;p&gt;So far, all the thick-server systems are on one big (conceptual) server. This means one point of failure for everyone who uses that system. Downtime is a big issue.&lt;/p&gt;

&lt;p&gt;It’s conceivable that you could write a thick-server system that can run anywhere. Something open source, something easy to install. But it would use so much resources and bandwidth (reading the feeds every hour, returning entire feeds to client apps) that it would be prohibitive for many people. You couldn’t just install it on your account at your web provider and hope to get away with it. (Well, depending on lots of factors, of course. If it was just for you, and you didn’t have too many feeds, it’s probably okay.)&lt;/p&gt;

&lt;p&gt;A thin-server system, on the other hand, would be easy to run. Minimal bandwidth, no content system where it downloads and stores feeds. It should be easier to set up and run than WordPress.&lt;/p&gt;

&lt;h4&gt;Easier to move from synced to non-synced and back&lt;/h4&gt;

&lt;p&gt;The thick-server systems rewrite the feeds, and usually substitute their own unique ID for whatever was in the feed. (Though, in the case of Google Reader, it also provides the original unique ID, if there was one.)&lt;/p&gt;

&lt;p&gt;Because the feeds are rewritten, it can be very difficult to match up a non-synced item with its synced equivalent. This can make turning on or off syncing very rough, as you end up with duplicates.&lt;/p&gt;

&lt;h4&gt;Longer limits on news item status&lt;/h4&gt;

&lt;p&gt;This isn’t inherent, but it’s practical. Thick-server systems tend to serve a ton of people, so they have to have limits on the length of time news items status data will be stored.&lt;/p&gt;

&lt;p&gt;For instance, NewsGator’s was two weeks or 200 items, whichever was first. (If I recall correctly.) Google Reader’s is, I believe, roughly twice that (but with some special cases, like when you do a mark-all-read in Google Reader and when you first subscribe to a feed).&lt;/p&gt;

&lt;p&gt;But a thin system can afford to keep news item status data longer. Make it six months or a year.&lt;/p&gt;

&lt;h4&gt;No data loss&lt;/h4&gt;

&lt;p&gt;Because thick-server systems rewrite the feeds, they’ll often toss out parts of the original feed that they don’t care about.&lt;/p&gt;

&lt;p&gt;Again, this doesn’t have to be inherent, but for practical reasons it’s often done this way.&lt;/p&gt;

&lt;p&gt;With the thin server, you read the feeds directly, so you miss nothing.&lt;/p&gt;

&lt;h4&gt;Twitter and other feed-like things&lt;/h4&gt;

&lt;p&gt;This system would work for anything feed-like: it just needs a URL and individual item IDs.&lt;/p&gt;

&lt;p&gt;Imagine pointing not just your RSS readers but also your Twitter clients at the server — your Twitter clients could know which items you’ve already read. Want that? I do. :)&lt;/p&gt;

&lt;h4&gt;Your data in your control&lt;/h4&gt;

&lt;p&gt;You could use someone else’s server, if they allowed it. Maybe there’d be inexpensive for-pay services.&lt;/p&gt;

&lt;p&gt;But, at least conceptually, you could run it yourself, and control all your data yourself. The opportunity would be there, at any rate.&lt;/p&gt;

&lt;h4&gt;Anyway&lt;/h4&gt;

&lt;p&gt;That’s all I have in my head at the moment. There are more benefits, surely, but I think the above is plenty.&lt;/p&gt;</description>
	<pubDate>Tue, 09 Feb 2010 23:01:19 +0000</pubDate>
</item>
<item>
	<title>Inessential: Jens on RSS syncing</title>
	<guid>http://inessential.com/2010/02/09/jens_on_rss_syncing</guid>
	<link>http://inessential.com/2010/02/09/jens_on_rss_syncing</link>
	<description>&lt;p&gt;Here’s &lt;a href=&quot;http://jens.mooseyard.com/2010/02/re-idea-for-alternative-rss-syncing-system/&quot;&gt;Jens Alfke on RSS syncing&lt;/a&gt; with a couple interesting suggestions. (Jens has a lot of experience in this area.)&lt;/p&gt;</description>
	<pubDate>Tue, 09 Feb 2010 18:52:51 +0000</pubDate>
</item>
<item>
	<title>Inessential: Idea for alternative RSS syncing system</title>
	<guid>http://inessential.com/2010/02/08/idea_for_alternative_rss_syncing_system</guid>
	<link>http://inessential.com/2010/02/08/idea_for_alternative_rss_syncing_system</link>
	<description>&lt;p&gt;Google Reader is an RSS reader that can be used for RSS syncing. Bloglines used to have a very basic syncing API (maybe it still does). NewsGator had a syncing API. FeedSync is a way to use feeds to sync other stuff (as far as I can tell). Sync Services (MobileMe syncing API) is a generalized syncing system that might be able to do RSS, but works just between Macs.&lt;/p&gt;

&lt;p&gt;WebDAV is cool. DropBox is super-amazingly-cool. But these are storage systems, not syncing systems for things like RSS.&lt;/p&gt;

&lt;p&gt;Not one of the above is a really great system for &lt;em&gt;just syncing&lt;/em&gt; RSS between apps.&lt;/p&gt;

&lt;p&gt;(For people who remember NewsGator’s system with fondness: it had drawbacks too, including that it was limited to the past two weeks or 200 items for each feed.)&lt;/p&gt;

&lt;p&gt;Now, that said, I think Google Reader is cool (both as app and API), and I’m very glad we can use it, and I totally appreciate the help we’ve had from Google. But I do also hear from NetNewsWire users who’d like an alternative.&lt;/p&gt;

&lt;p&gt;With everything else I have to do, I don’t have time to create an alternative. But I could make NetNewsWire work with an alternative, if one existed and was worthwhile.&lt;/p&gt;

&lt;h4&gt;What is a worthwhile alternative?&lt;/h4&gt;

&lt;p&gt;There are a few criteria to meet, in no particular order:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;It would have to be more like email servers — that is, not just one big server or cluster of servers somewhere, but the kind of thing people can run on any server. My web service provider might run one for me, the same way it runs an email server. (Or I might run one on my LAN. Or I might install it myself on my own website.)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It would have to be free and open source, so that it could be everywhere, so that it would be developed by people who just want to make RSS syncing work. (I’m a capitalist, totally, but there are times when free and open source makes sense.)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It would have to work over http and https. REST API.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It would have to &lt;em&gt;not&lt;/em&gt; require that clients download the feeds themselves from the server. (This is the way Google Reader, NewsGator, Bloglines and others worked. Status info was added to the rewritten feeds. I’m saying this system should &lt;em&gt;not&lt;/em&gt; work that way: clients would download feeds directly from their sources, just as they do when not syncing.)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The API should be as simple as possible and still get the job done. The job would be defined as syncing subscriptions lists and status of individual news items in RSS and Atom feeds. (And nothing else!)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It would have to be easy to configure an RSS reader to use a given server. No more than URL of server, username, and password should be required. (Less, if possible.)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It should not be limited to the last 14 or 30 days (like some systems) — it should have a much larger limit, like a year.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;The server itself wouldn’t ever read any RSS feeds. It wouldn’t have to — it’s entirely just about syncing data between apps. It would only ever talk to client apps.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It should use as little bandwidth as possible, and be as fast as possible.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Authentication would use standard HTTP authentication. (Not cookies or anything else.)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;There should probably a PHP + MySQL version, just so it can be deployed as widely as possible. (Though I know you’re thinking Rails.)&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Despite its being open source, if someone did want to offer it as a for-pay service, they should be allowed to.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;h4&gt;Notes about the API&lt;/h4&gt;

&lt;p&gt;There are some obvious things. Get subscriptions list as OPML-with-folders. (Feeds could live in multiple folders, which means folders are just like tags, so call them tags if you want to.)&lt;/p&gt;

&lt;p&gt;API calls would support conditional GET, so getting a subscription list would usually result in a 304.&lt;/p&gt;

&lt;p&gt;You’d probably add, delete, edit subscriptions by addressing into the tree. (That way you could delete one instance of a feed that appears multiple times. You could add/remove folders that way too.)&lt;/p&gt;

&lt;p&gt;The other half is the status of news items. Most have a unique ID (always in the case of Atom) or a guid (usually, in the case of RSS). For items that don’t, an agreed-upon way of constructing a unique ID would have to be developed. (Pick things that don’t usually change but are enough to identify an item: pubDate in a specific format + link + feed URL, as a UTF-8 string, then MD5-hashed. Maybe. Something like that, something that would be largely reliable.)&lt;/p&gt;

&lt;p&gt;You’d sync status incrementally: get all the status changes since a certain date (the last time you made the call). Status would probably be read, unread, deleted, starred, and saved. To set status, it would be great to address each item in individual calls, very RESTfully — but that would be a giant bandwidth waste. Better a single call that takes a structure of some kind (XML, JSON, whatever) with item IDs and status/value pairs, where you can update a bunch of items all at once.&lt;/p&gt;

&lt;p&gt;As you can see, the server doesn’t have to do that much. It stores some small bits of data with timestamps. I don’t think it needs any cron jobs (at least not conceptually) — it just responds to requests. It doesn’t even have any idea what this data is about.&lt;/p&gt;

&lt;p&gt;You probably have the database schema mapped out in your head already plus more specific ideas about the API.&lt;/p&gt;

&lt;p&gt;(I don’t recall if I’ve said before, but a couple years ago we found that the average NetNewsWire user had 26 subscriptions. That should give you an idea of the storage requirements this would need. Obviously some people have hundreds or thousands, of course, but not most.)&lt;/p&gt;

&lt;p&gt;Most of the time clients are just getting the subs list (usually getting a 304 back), and getting/setting news item status changes.&lt;/p&gt;

&lt;p&gt;In other words, none of this sounds that hard. And it doesn’t sound like a taxing job for a server.&lt;/p&gt;

&lt;h4&gt;Invitation&lt;/h4&gt;

&lt;p&gt;If I had time, I would have written this years ago, offered it for free, made it open source, had NetNewsWire support it, and I’d have tried to get other RSS readers to support it too.&lt;/p&gt;

&lt;p&gt;But I didn’t and don’t have time to write it.&lt;/p&gt;

&lt;p&gt;However, if there are people who are interested in writing this, I can help. I have client apps, and I’ve been thinking about this for years, and I’ve written to several sync APIs.&lt;/p&gt;

&lt;p&gt;If you’re seriously interested in writing some software that could end up deployed far and wide, and that would solve a real problem for real people, get in touch with me.&lt;/p&gt;

&lt;h4&gt;P.S. Here’s the business case&lt;/h4&gt;

&lt;p&gt;So you might want to make some money. That’s cool. Two business ideas:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Charge people money to use the service.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Collect information about popular feeds and popular news items. You could provide a real-time view into what people (in the aggregate) are reading. This might be interesting to sell, or it might be interesting as a website itself (where you could display ads). Given all the metadata in feeds, plus your user’s folders/tags, you might even be able to figure out categorization. You might even be able to provide trends, too. Certain topics are gaining/losing ground. Certain feeds are getting more or less popular. Etc. Don’t forget the pretty graphs! All of that stuff would be an add-on, of course, something you’d be able to build because you have the sync system underneath.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;Compelling? I don’t know. Just what I thought of off the top of my head.&lt;/p&gt;</description>
	<pubDate>Tue, 09 Feb 2010 06:18:32 +0000</pubDate>
</item>
<item>
	<title>Ranchero: Cocoa and Cocoa Touch Intro</title>
	<guid>http://ranchero.com/2010/02/03/cocoa_and_cocoa_touch_intro</guid>
	<link>http://boredzo.org/cocoa-and-cocoa-touch-intro/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://boredzo.org/cocoa-and-cocoa-touch-intro/&quot;&gt;Peter Hosey&lt;/a&gt;: “Welcome, new Cocoa or Cocoa Touch programmer. Here are some things you will need to know.”&lt;/p&gt;</description>
	<pubDate>Wed, 03 Feb 2010 16:34:46 +0000</pubDate>
</item>
<item>
	<title>Ranchero: On Removing Features</title>
	<guid>http://ranchero.com/2010/02/02/on_removing_features</guid>
	<link>http://ignorethecode.net/blog/2010/02/02/removing-features/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://ignorethecode.net/blog/2010/02/02/removing-features/&quot;&gt;Lukas Mathis&lt;/a&gt;: “Eventually, you will find yourself in a position where your application contains features it should not. Even if you’ve been vigilant, this will happen.”&lt;/p&gt;</description>
	<pubDate>Wed, 03 Feb 2010 01:48:27 +0000</pubDate>
</item>
<item>
	<title>Ranchero: iPhone / iPad icon PSD template</title>
	<guid>http://ranchero.com/2010/02/01/iphone_ipad_icon_psd_template</guid>
	<link>http://blog.cocoia.com/2010/iphone-ipad-icon-psd-template/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://blog.cocoia.com/2010/iphone-ipad-icon-psd-template/&quot;&gt;Cocoia&lt;/a&gt; posts the good stuff, as always.&lt;/p&gt;</description>
	<pubDate>Tue, 02 Feb 2010 00:03:09 +0000</pubDate>
</item>
<item>
	<title>Ranchero: iPad as revolution</title>
	<guid>http://ranchero.com/2010/02/01/ipad_as_revolution</guid>
	<link>http://www.macworld.com/article/146040/2010/02/ipad.html?lsrc=rss_main</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.macworld.com/article/146040/2010/02/ipad.html?lsrc=rss_main&quot;&gt;Macworld&lt;/a&gt;: “For Apple, it’s not about killing off tinkerers, but ensuring that not everybody who wants to use a computer &lt;em&gt;has to be&lt;/em&gt; a tinkerer.”&lt;/p&gt;</description>
	<pubDate>Mon, 01 Feb 2010 19:15:58 +0000</pubDate>
</item>
<item>
	<title>Ranchero: Citizen Reporter Plug-in for TapLynx</title>
	<guid>http://ranchero.com/2010/02/01/citizen_reporter_plug-in_for_taplynx</guid>
	<link>http://blog.tyreeapps.com/2010/01/citizen-reporter-plug-in-for-taplynx.html</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://blog.tyreeapps.com/2010/01/citizen-reporter-plug-in-for-taplynx.html&quot;&gt;Tyree Apps&lt;/a&gt;: “I’ve created a little view controller that lets a TapLynx app offer the user a quick way to snap a photo and then email it to someone without ever leaving the TapLynx based application.”&lt;/p&gt;

&lt;p&gt;One of my favorite parts of TapLynx is that it’s extendable: you can create new views with new features. (Note to programmers: &lt;a href=&quot;http://taplynx.com/&quot;&gt;TapLynx&lt;/a&gt; is a static library. You still use Xcode to build apps, though TapLynx makes it so you write code only if you want to.)&lt;/p&gt;</description>
	<pubDate>Mon, 01 Feb 2010 18:52:31 +0000</pubDate>
</item>
<item>
	<title>Ranchero: Omni + iPad</title>
	<guid>http://ranchero.com/2010/01/29/omni_ipad</guid>
	<link>http://blog.omnigroup.com/2010/01/29/ipad-or-bust/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://blog.omnigroup.com/2010/01/29/ipad-or-bust/&quot;&gt;The Omni Mouth&lt;/a&gt;: “We want to bring all five of our productivity apps to iPad: OmniGraffle, OmniOutliner, OmniPlan, OmniFocus, and OmniGraphSketcher.”&lt;/p&gt;

&lt;p&gt;I’m especially a fan of OmniOutliner — and I want an outliner on iPad. This is great news.&lt;/p&gt;</description>
	<pubDate>Sat, 30 Jan 2010 01:40:05 +0000</pubDate>
</item>
<item>
	<title>Ranchero: Method replacement</title>
	<guid>http://ranchero.com/2010/01/29/method_replacement</guid>
	<link>http://www.mikeash.com/?page=pyblog/friday-qa-2010-01-29-method-replacement-for-fun-and-profit.html</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.mikeash.com/?page=pyblog/friday-qa-2010-01-29-method-replacement-for-fun-and-profit.html&quot;&gt;Mike Ash&lt;/a&gt;: “Using a technique called method swizzling, you can replace an existing method from a category without the uncertainty of who ‘wins,’ and while preserving the ability to call through to the old method.”&lt;/p&gt;

&lt;p&gt;This is interesting information that you should read and never use.&lt;/p&gt;</description>
	<pubDate>Fri, 29 Jan 2010 20:23:30 +0000</pubDate>
</item>
<item>
	<title>Ranchero: Future Shock</title>
	<guid>http://ranchero.com/2010/01/29/future shock</guid>
	<link>http://speirs.org/blog/2010/1/29/future-shock.html</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://speirs.org/blog/2010/1/29/future-shock.html&quot;&gt;Fraser Speirs&lt;/a&gt;: “Those of us who patiently, day after day, explain to a child or colleague that the reason there’s no Print item in the File menu is because, although the Pages document is filling the screen, Finder is actually the frontmost application and it doesn’t have any windows open, understand what’s happening here.”&lt;/p&gt;</description>
	<pubDate>Fri, 29 Jan 2010 19:30:16 +0000</pubDate>
</item>
<item>
	<title>Ranchero: On iPad’s A4 chip</title>
	<guid>http://ranchero.com/2010/01/29/on_ipads_a4_chip</guid>
	<link>http://www.macworld.com/article/145998/2010/01/apple_a4.html?lsrc=rss_main</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.macworld.com/article/145998/2010/01/apple_a4.html?lsrc=rss_main&quot;&gt;Macworld&lt;/a&gt;: “At the heart of the iPad lies a tiny sliver of silicon. A game changer within a game changer.”&lt;/p&gt;</description>
	<pubDate>Fri, 29 Jan 2010 19:26:06 +0000</pubDate>
</item>
<item>
	<title>Ranchero: iPad Stencil</title>
	<guid>http://ranchero.com/2010/01/29/ipad_stencil</guid>
	<link>http://www.playingwithshapes.com/post/356860590/ipad-stencil</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.playingwithshapes.com/post/356860590/ipad-stencil&quot;&gt;Playing with Shapes&lt;/a&gt;: “I’m just as anxious as anyone else to start designing for the iPad. I always have to start with paper.”&lt;/p&gt;</description>
	<pubDate>Fri, 29 Jan 2010 19:21:11 +0000</pubDate>
</item>
<item>
	<title>Ranchero: iPad and usability</title>
	<guid>http://ranchero.com/2010/01/29/ipad_and_usability</guid>
	<link>http://www.usabilitypost.com/2010/01/29/on-the-ipad/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.usabilitypost.com/2010/01/29/on-the-ipad/&quot;&gt;UsabilityPost&lt;/a&gt;: “When you scroll, the content scrolls without any interruptions and lag — it’s very, very smooth. Why is this so important? It’s important because this level of responsiveness blends the borders between analog and digital media.”&lt;/p&gt;</description>
	<pubDate>Fri, 29 Jan 2010 19:17:19 +0000</pubDate>
</item>
<item>
	<title>Ranchero: Dave asks if we should trust iPad</title>
	<guid>http://ranchero.com/2010/01/29/dave_asks_if_we_should_trust_ipad</guid>
	<link>http://www.scripting.com/stories/2010/01/29/attnJoeShouldWeTrustIpad.html</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.scripting.com/stories/2010/01/29/attnJoeShouldWeTrustIpad.html&quot;&gt;Scripting News&lt;/a&gt;: “Is it possible to create an iPad-like platform that has none of the drawbacks of Apple’s offerings?”&lt;/p&gt;

&lt;p&gt;Excellent question. I think that in ten years, most computers will be iPad-like.&lt;/p&gt;

&lt;p&gt;I don’t know any developers that like the App Store review system. I don’t. But I’ve never seen even the barest hint that freedom of speech is otherwise limited. And I’m hyper-sensitive to that, completely allergic to anything that I think would hurt that freedom.&lt;/p&gt;</description>
	<pubDate>Fri, 29 Jan 2010 19:14:24 +0000</pubDate>
</item>
<item>
	<title>Ranchero: Facebook iPhone app developer on iPad</title>
	<guid>http://ranchero.com/2010/01/29/facebook_iphone_app_developer_on_ipad</guid>
	<link>http://joehewitt.com/post/ipad/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://joehewitt.com/post/ipad/&quot;&gt;Joe Hewitt&lt;/a&gt;: “iPad is an incredible opportunity for developers to re-imagine every single category of desktop and web software there is. Seriously, if you’re a developer and you're not thinking about how your app could work better on the iPad and its descendants, you deserve to get left behind.”&lt;/p&gt;</description>
	<pubDate>Fri, 29 Jan 2010 19:03:21 +0000</pubDate>
</item>
<item>
	<title>Ranchero: iPad liberation</title>
	<guid>http://ranchero.com/2010/01/29/ipad_liberation</guid>
	<link>http://furbo.org/2010/01/29/ipad-liberation/</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://furbo.org/2010/01/29/ipad-liberation/&quot;&gt;chockenberry&lt;/a&gt;: “There’s an inherent benefit to only doing one thing at a time: the load of worrying about other tasks is lifted. Knowing that there isn’t anything else competing for your attention is quite liberating.”&lt;/p&gt;

&lt;p&gt;Totally right on. It’s one of the reasons I could see myself using an iPad more than my laptop. (I use a desktop Mac for development.)&lt;/p&gt;</description>
	<pubDate>Fri, 29 Jan 2010 18:49:51 +0000</pubDate>
</item>
<item>
	<title>Ranchero: Who iPad is for</title>
	<guid>http://ranchero.com/2010/01/29/who_ipad_is_for</guid>
	<link>http://flyosity.com/ipad/the-ipad-is-for-everyone-but-us.php</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://flyosity.com/ipad/the-ipad-is-for-everyone-but-us.php&quot;&gt;Mike Rundle&lt;/a&gt;: “Most people are not power users, they mainly consume content using their computer rather than produce it. When they produce content it’s more casual: posting to Twitter, updating Facebook, writing personal blog entries and notes, uploading photos.”&lt;/p&gt;</description>
	<pubDate>Fri, 29 Jan 2010 18:41:51 +0000</pubDate>
</item>
<item>
	<title>Ranchero: New World and Old World computing</title>
	<guid>http://ranchero.com/2010/01/29/new_world_and_old_world_computing</guid>
	<link>http://stevenf.tumblr.com/post/359224392/i-need-to-talk-to-you-about-computers-ive-been</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://stevenf.tumblr.com/post/359224392/i-need-to-talk-to-you-about-computers-ive-been&quot;&gt;Steven Frank’s blog post will be on the syllabus&lt;/a&gt;. Critical reading, if you want to understand what happens next.&lt;/p&gt;</description>
	<pubDate>Fri, 29 Jan 2010 09:30:14 +0000</pubDate>
</item>
<item>
	<title>Ranchero: Developer opinion roundup thing on iPad</title>
	<guid>http://ranchero.com/2010/01/28/developer_opinion_roundup_thing_on_ipad</guid>
	<link>http://www.cultofmac.com/i-have-been-hit-by-a-love-taser-devs-speak-out-on-ipad/28435</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://www.cultofmac.com/i-have-been-hit-by-a-love-taser-devs-speak-out-on-ipad/28435&quot;&gt;Cult of Mac&lt;/a&gt;: “I thought it would be interesting to find out what some Mac and iPhone developers make of the iPad.”&lt;/p&gt;</description>
	<pubDate>Thu, 28 Jan 2010 23:18:55 +0000</pubDate>
</item>
<item>
	<title>Inessential: Pretend you’re Apple</title>
	<guid>http://inessential.com/2010/01/28/pretend_youre_apple</guid>
	<link>http://inessential.com/2010/01/28/pretend_youre_apple</link>
	<description>&lt;p&gt;Say you’re Apple. It’s a few years ago. You make and sell computers.&lt;/p&gt;

&lt;p&gt;You see the rise of web apps, and you notice people talking about how desktop apps are &lt;em&gt;done&lt;/em&gt;. Desktop apps are done because, with web apps, people can login from anywhere, any machine, and get to their stuff. That’s cool, and you know it’s cool.&lt;/p&gt;

&lt;p&gt;You make computers and operating systems, and you think to yourself: “How can I sell computers that are pretty much just web browsers? How is a Mac better than a Dell or a Sony in that case?”&lt;/p&gt;

&lt;p&gt;I think the first thing you do is make sure you have a great browser. Faster and better than the competition. And keep at it, don’t let up.&lt;/p&gt;

&lt;p&gt;Then you think to yourself: “What if people didn’t have to just use any machine they find? What if they have their computer with them all the time?”&lt;/p&gt;

&lt;p&gt;I think you then work on making great laptops, so people actually &lt;em&gt;can&lt;/em&gt; have their computer with them most of the time. You make the hardware and OS and software so great that people &lt;em&gt;want&lt;/em&gt; these laptops.&lt;/p&gt;

&lt;p&gt;Then you think to yourself, “People aren’t carrying their laptops to the grocery store! They don’t &lt;em&gt;always&lt;/em&gt; have their computer with them.”&lt;/p&gt;

&lt;p&gt;You decide to expand your definition of computer: you make iPhones. And then iPads. You make beautiful hardware and software — you create an experience so new and compelling that people &lt;em&gt;lust&lt;/em&gt; for these things.&lt;/p&gt;

&lt;p&gt;You open these up to developers, too, and hope a hundred thousand flowers bloom, since that makes these devices all the more valuable.&lt;/p&gt;

&lt;p&gt;And it works!&lt;/p&gt;

&lt;p&gt;You’ve avoided the bleak future where computers are nothing but web browsers, where user experience is struggling to hit 1995 levels of quality, where all you’re making is a dumb terminal that can show pictures and play video, where you’re back to being the “beleaguered” Apple, whose product is a commodity easily matched, or close enough, by other companies that charge less.&lt;/p&gt;

&lt;p&gt;Instead you’re &lt;a href=&quot;http://www.macworld.com/article/145890/2010/01/firstquarterearnings_2010.html&quot;&gt;this Apple&lt;/a&gt;, the one that reports record sales and profits.&lt;/p&gt;

&lt;p&gt;Good job, you!&lt;/p&gt;</description>
	<pubDate>Thu, 28 Jan 2010 19:17:33 +0000</pubDate>
</item>
<item>
	<title>Inessential: J.D. Salinger</title>
	<guid>http://inessential.com/2010/01/28/j_d_salinger</guid>
	<link>http://inessential.com/2010/01/28/j_d_salinger</link>
	<description>&lt;p&gt;I’m broken up with the news that &lt;a href=&quot;http://www.npr.org/templates/story/story.php?storyId=123072588&quot;&gt;Salinger has died&lt;/a&gt;.&lt;/p&gt;</description>
	<pubDate>Thu, 28 Jan 2010 18:31:18 +0000</pubDate>
</item>
<item>
	<title>Inessential: Mom talks iPad</title>
	<guid>http://inessential.com/2010/01/28/mom_talks_ipad</guid>
	<link>http://inessential.com/2010/01/28/mom_talks_ipad</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://adventuresinnewfield.blogspot.com/2010/01/aside-about-apples-new-ipad-it-is-about.html&quot;&gt;Adventures in Newfield&lt;/a&gt; (my Mom): “Most of the media reports don’t seem to get the new iPad — it’s not about how fast it is, or its lack of a camera or the flash to display video — it’s about using it just about anywhere and not needing a mouse!”&lt;/p&gt;

&lt;p&gt;Mom wants one. Me too. :)&lt;/p&gt;</description>
	<pubDate>Thu, 28 Jan 2010 16:36:59 +0000</pubDate>
</item>
<item>
	<title>Inessential: Bad Gravity</title>
	<guid>http://inessential.com/2010/01/27/bad_gravity</guid>
	<link>http://inessential.com/2010/01/27/bad_gravity</link>
	<description>&lt;p&gt;iPhone apps, and now iPad apps, have always reminded me of what I want Mac apps to be: focused, carefully-designed, with every feature carefully considered and usually thrown out instead of included.&lt;/p&gt;

&lt;p&gt;Even more than the iPhone, the iPad will function as a laptop replacement. (Or, you may still have a laptop, but you’ll do more and more work on an iPad.)&lt;/p&gt;

&lt;p&gt;I like what I’ve seen so far about iPad app design. It has the virtues of iPhone app design with just enough more space and new features to make doing real work possible. I think this is fantastic.&lt;/p&gt;

&lt;p&gt;My concern, though, is that people may think that Mac apps should include every possible feature and preference. The reasoning would be like this: “It’s not an iPad or iPhone. It’s a computer. Therefore it’s for power users. Therefore it should be totally customizable and have every feature anybody might want.”&lt;/p&gt;

&lt;p&gt;That would be a big mistake.&lt;/p&gt;

&lt;p&gt;My hope, instead, is that Mac users and developers (all developers are users too, by the way) learn even better the virtues of focused, opinionated software that pays attention to experience more than to long feature lists and heavy preference windows. I hope we see even better Mac software.&lt;/p&gt;

&lt;p&gt;You might think this is ironic — didn’t I just propose a Mac email app for power users and developers?&lt;/p&gt;

&lt;p&gt;I did. But I actually picture an app that is simpler, in many ways, than Mail. No POP or Exchange support, no stationery, no to-dos, no notes. I’d like to see a programmable app, yes, with a design friendly to people who type for a living — but I also want a &lt;em&gt;leaner&lt;/em&gt; app.&lt;/p&gt;

&lt;p&gt;Here’s the thing about the power users and developers I know: they use a lot of apps. They manage a lot of complexity already. They often have a few powerful apps (Xcode, Photoshop, Final Cut, Excel, whatever) that they use to get their work done.&lt;/p&gt;

&lt;p&gt;They’re &lt;em&gt;not&lt;/em&gt; sitting around wishing for &lt;em&gt;more&lt;/em&gt; complexity. Quite the opposite! But they do wish that some apps fit them better. And in many cases they wish for &lt;em&gt;less&lt;/em&gt; complexity.&lt;/p&gt;

&lt;p&gt;Too much complexity is for people who want to waste their own time. Who has time for that? Every day means a new world we have to create. Futzing and configuring and confusion — these things don’t help.&lt;/p&gt;</description>
	<pubDate>Thu, 28 Jan 2010 05:44:02 +0000</pubDate>
</item>
<item>
	<title>Inessential: Things 1.2.9 likes me</title>
	<guid>http://inessential.com/2010/01/21/things_1_2_9_likes_me</guid>
	<link>http://inessential.com/2010/01/21/things_1_2_9_likes_me</link>
	<description>&lt;p&gt;&lt;a href=&quot;http://culturedcode.com/things/wiki/index.php?title=Release_Notes&quot;&gt;Release Notes - Things Wiki&lt;/a&gt;: “Added support for emptying the Trash immediately. Hold down the option key while choosing the ‘Empty Trash...’ menu command.”&lt;/p&gt;

&lt;p&gt;Thank you to my long-lost cousin &lt;a href=&quot;http://twitter.com/macguitar&quot;&gt;Michael Simmons&lt;/a&gt; and the fine folks at &lt;a href=&quot;http://culturedcode.com/&quot;&gt;Cultured Code&lt;/a&gt; for catering to my psychotic computing needs!&lt;/p&gt;

&lt;p&gt;I can’t have stuff in the Trash. If I do, then it’s a thing I have to do. So I empty it right away, since it’s easy. But not easy enough — there was a confirmation sheet. Now I can hold down option and bypass the confirmation sheet.&lt;/p&gt;

&lt;p&gt;“Well, Brent,” you might ask, “how often do you trash stuff in Things?”&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Every time&lt;/em&gt;, is the answer. I never mark stuff as done. No. Must get rid of right away. I did a thing, it’s out of my life, good-bye, don’t want no log, don’t want to look back and remember the glory days of five minutes ago when I did that thing.&lt;/p&gt;

&lt;p&gt;So I empty the trash after every task I accomplish.&lt;/p&gt;

&lt;p&gt;And now it’s friction-free. So happy.&lt;/p&gt;

&lt;p&gt;P.S. After so many years of GUI computing, I have yet to adapt to any Trash can thing anywhere. Not in the Finder either. (Especially not there.) I’ve given up any hope that I can change on this matter.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Maybe&lt;/em&gt;, I like to reassure myself, &lt;em&gt;it’ll be okay. In the long run&lt;/em&gt;.&lt;/p&gt;</description>
	<pubDate>Fri, 22 Jan 2010 04:06:49 +0000</pubDate>
</item>
<item>
	<title>Inessential: Letters president</title>
	<guid>http://inessential.com/2010/01/20/letters_president</guid>
	<link>http://inessential.com/2010/01/20/letters_president</link>
	<description>&lt;p&gt;We had three great candidates for the first president of Letters.app: &lt;a href=&quot;http://twitter.com/jwisser&quot;&gt;Jonas Wisser&lt;/a&gt;, &lt;a href=&quot;http://twitter.com/kch&quot;&gt;Caio Chassot&lt;/a&gt;, and &lt;a href=&quot;http://twitter.com/gruber&quot;&gt;John Gruber&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I thank them all for being willing to lead this thing. It’s no milk run.&lt;/p&gt;

&lt;p&gt;In the end, John Gruber got the most votes. Congratulations, John!&lt;/p&gt;

&lt;p&gt;I like &lt;a href=&quot;http://twitter.com/suprjohan/status/7998135073&quot;&gt;this tweet&lt;/a&gt;: “Shit just got real.”&lt;/p&gt;</description>
	<pubDate>Wed, 20 Jan 2010 20:25:59 +0000</pubDate>
</item>
<item>
	<title>Inessential: Archaelogy</title>
	<guid>http://inessential.com/2010/01/18/archaelogy</guid>
	<link>http://inessential.com/2010/01/18/archaelogy</link>
	<description>&lt;p&gt;The earliest reference I can find on the web to my mythical $500 email client is on &lt;a href=&quot;http://gusmueller.com/blog/archives/2007/07/the_rise_of_the_os.html&quot;&gt;Gus’s blog from July 2007&lt;/a&gt;. It’s been a periodic discussion at the &lt;a href=&quot;http://www.luaupolynesianlounge.com/&quot;&gt;Luau&lt;/a&gt; after &lt;a href=&quot;http://www.seattlexcoders.org/&quot;&gt;Xcoders&lt;/a&gt; for years.&lt;/p&gt;

&lt;p&gt;(Xcoders has a &lt;a href=&quot;http://twitter.com/xcoders&quot;&gt;Twitter account&lt;/a&gt;, naturally. Check out the &lt;a href=&quot;http://twitter.com/account/profile_image/xcoders?hreflang=en&quot;&gt;awesome artwork&lt;/a&gt; that &lt;a href=&quot;http://www.halfapixelshort.com/&quot;&gt;Brad Ellis&lt;/a&gt; did for it. Also note that Brad’s employer RogueSheep won &lt;a href=&quot;http://www.macworld.com/article/145088/2009/12/appgems_2009.html?lsrc=top_1&quot;&gt;another award&lt;/a&gt; for &lt;a href=&quot;http://postage.roguesheep.com/&quot;&gt;Postage&lt;/a&gt;.)&lt;/p&gt;</description>
	<pubDate>Tue, 19 Jan 2010 06:13:39 +0000</pubDate>
</item>

</channel>
</rss>
