<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>SteveX Compiled</title>
	
	<link>http://blog.stevex.net</link>
	<description>Software development and other notes.</description>
	<lastBuildDate>Tue, 07 Feb 2012 19:52:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/stevex-blog" /><feedburner:info uri="stevex-blog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Is Apple setting up a subsidised TV model?</title>
		<link>http://feedproxy.google.com/~r/stevex-blog/~3/gjO5aGZAyaY/</link>
		<comments>http://blog.stevex.net/2012/02/is-apple-setting-up-a-subsidized-tv-model/#comments</comments>
		<pubDate>Tue, 07 Feb 2012 19:44:43 +0000</pubDate>
		<dc:creator>stevex</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.stevex.net/?p=1975</guid>
		<description><![CDATA[There have been rumours that Rogers and Bell, the two big telecom providers in Canada, have Apple iTV television sets in their labs for testing. That&#8217;s an interesting rumour for a couple of reasons. Why would Rogers or Bell care about a new television? Why would Apple involve them? If the rumour is true, then [...]]]></description>
			<content:encoded><![CDATA[<p>There have been <a href="http://ca.reuters.com/article/technologyNews/idCATRE8161AV20120207">rumours</a> that Rogers and Bell, the two big telecom providers in Canada, have Apple iTV television sets in their labs for testing.  That&#8217;s an interesting rumour for a couple of reasons.</p>
<p>Why would Rogers or Bell care about a new television?  Why would Apple involve them?  If the rumour is true, then there&#8217;s more to this device than just being a television set.</p>
<p>When a customer subscribes to television from one of these companies, they need to get a hardware box that acts as a decoder and often as a PVR.  This is an expensive box &#8211; several hundred dollars typically &#8211; and is usually tied to a contract.  </p>
<p>So today, you buy whatever TV you like, and you hook it up to a box that you rented from your service provider.</p>
<p>What if.. Apple&#8217;s new TV integrates the provider&#8217;s box into the TV.</p>
<p>This would mean you&#8217;d be buying a TV that&#8217;s locked to Bell, or a TV locked to Rogers, the same as happens for cell phones.  This would let the service provider subsidise the TV.</p>
<p>The cost of a TV these days isn&#8217;t that much different from the cost of an iPhone.  An unlocked iPhone 4S costs $649 in Canada.  You can get a 50&#8243; TV set for that kind of money.  </p>
<p>If the TV can be locked to the provider and tied to a contract, then they can subsidise it.  Walk into a Bell or Rogers store, sign up for a 3 year contract, and pick up a new 50&#8243; TV for $199.</p>
<p>What&#8217;s the upside for Apple?  It&#8217;s hard to say at this point.  Perhaps Apple uses the iTunes store model a revenue share with the provider &#8211; so you rent a movie for $4.99 and the provider gets 70% of that and Apple keeps 30%.  This arrangement would also let the TV provider, which is also typically the ISP, exclude their own streaming media from bandwidth caps, something that&#8217;s hindering Netflix today.</p>
<p>The 3 year contract model for the TV would also answer one of the questions people have about why Apple would get into the TV business:  How to get users to upgrade more frequently, since people typically buy a TV and keep it for many years.  If you could get a new TV every 3 years for $199, wouldn&#8217;t you?</p>
<img src="http://feeds.feedburner.com/~r/stevex-blog/~4/gjO5aGZAyaY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.stevex.net/2012/02/is-apple-setting-up-a-subsidized-tv-model/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.stevex.net/2012/02/is-apple-setting-up-a-subsidized-tv-model/</feedburner:origLink></item>
		<item>
		<title>Thoughts on the Mute Switch</title>
		<link>http://feedproxy.google.com/~r/stevex-blog/~3/KreREu1UeXM/</link>
		<comments>http://blog.stevex.net/2012/01/thoughts-on-the-mute-switch/#comments</comments>
		<pubDate>Tue, 24 Jan 2012 00:34:26 +0000</pubDate>
		<dc:creator>stevex</dc:creator>
				<category><![CDATA[Apple]]></category>

		<guid isPermaLink="false">http://blog.stevex.net/?p=1971</guid>
		<description><![CDATA[So there&#8217;s been some blog chatter this week about the mute switch on the iPhone. Of course it&#8217;s not really called a mute switch, and it doesn&#8217;t really &#8220;mute&#8221; the phone. It&#8217;s really just a signal to the OS that the user would like less sounds. I fall firmly on the &#8220;the mute switch should [...]]]></description>
			<content:encoded><![CDATA[<p>So there&#8217;s been some blog chatter this week about the mute switch on the iPhone.  Of course it&#8217;s not really called a mute switch, and it doesn&#8217;t really &#8220;mute&#8221; the phone.  It&#8217;s really just a signal to the OS that the user would like less sounds.</p>
<p>I fall firmly on the &#8220;the mute switch should really mute the phone&#8221; side of the fence, at least optionally.</p>
<p>If I&#8217;m in a location where I&#8217;m expecting my phone to be silent out of respect for something (like, in a movie, at a live performance, or at a funeral) then even if I have an alarm configured for that time, I don&#8217;t want it to go off.  It&#8217;s going to embarrass me if it goes off.  And yes, I even include the &#8220;Find My iPhone&#8221; sound in the list of sounds I don&#8217;t want my phone playing in these situations.  There are some times when I want to know that my muted phone really isn&#8217;t going to make a sound.</p>
<p>But the difference is I don&#8217;t expect the phone to stay that way.  </p>
<p><a href="http://daringfireball.net">John Gruber</a> <a href="http://5by5.tv/talkshow/75">mentioned</a> that when he mutes his phone while in a movie, he almost never remembers to unmute it.  That&#8217;s a common problem, but it&#8217;s not a hard one to solve.  </p>
<p>There was a feature on an old phone I had, that would let you mute the phone for a period of time.  &#8220;Mute for 2 hours&#8221;, for example.  When you think about it, mute is almost always situational.  You want your phone muted for a while, and usually you know how long.  This would do away with the problem of &#8220;I muted my phone for a movie but then I missed my alarm clock the next morning because my phone was still muted&#8221;.</p>
<p>Better yet, make the phone muting part of a meeting setting.  When I put the appointment in my calendar to go to a movie for 2 hours on Thursday, I&#8217;d like to set the phone to mute right there.  That way there&#8217;s no chance I&#8217;ll forget to mute it, and no chance I&#8217;ll forget to unmute it.</p>
<p>This seems like an obvious feature but I&#8217;ve never seen any phone support it.</p>
<img src="http://feeds.feedburner.com/~r/stevex-blog/~4/KreREu1UeXM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.stevex.net/2012/01/thoughts-on-the-mute-switch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.stevex.net/2012/01/thoughts-on-the-mute-switch/</feedburner:origLink></item>
		<item>
		<title>Can’t Connect to Lion SMB Share?</title>
		<link>http://feedproxy.google.com/~r/stevex-blog/~3/DACFZxk3pBw/</link>
		<comments>http://blog.stevex.net/2012/01/cant-connect-to-lion-smb-share/#comments</comments>
		<pubDate>Sun, 15 Jan 2012 13:49:11 +0000</pubDate>
		<dc:creator>stevex</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.stevex.net/?p=1968</guid>
		<description><![CDATA[I&#8217;d been having this problem for a while and decided to dig into it today. I have shares from a Lion box, but when I&#8217;d attempt to connect from Windows 7, it would just refuse my credentials. Here&#8217;s the solution that worked for me. Edit this file in a text editor: /Library/Preferences/SystemConfiguration/com.apple.smb.server.plist You&#8217;ll need permissions [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;d been having this problem for a while and decided to dig into it today.  I have shares from a Lion box, but when I&#8217;d attempt to connect from Windows 7, it would just refuse my credentials.</p>
<p>Here&#8217;s the solution that worked for me.</p>
<p>Edit this file in a text editor:</p>
<pre>/Library/Preferences/SystemConfiguration/com.apple.smb.server.plist</pre>
<p>You&#8217;ll need permissions to edit it.  Run your editor using sudo, for example.</p>
<p>Add the following keys:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:600px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&lt;key&gt;AllowKerberosAuth&lt;/key&gt;<br />
&lt;true/&gt;<br />
&lt;key&gt;AllowNTLM2Auth&lt;/key&gt;<br />
&lt;true/&gt;<br />
&lt;key&gt;KerberosRealm&lt;/key&gt;<br />
&lt;string&gt;***COPY-THE-LocalKerberosRealm-VALUE***&lt;/string&gt;</div></td></tr></tbody></table></div>
<p>Don&#8217;t forget to edit this to copy the LocalKerberosRealm value into the KerberosRealm value.</p>
<p>Once you&#8217;ve done this, save the file, turn SMB sharing off and back on, and you should be able to log in.  I&#8217;m not convinced this is &#8220;the fix&#8221; for everybody, but it worked for me.</p>
<img src="http://feeds.feedburner.com/~r/stevex-blog/~4/DACFZxk3pBw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.stevex.net/2012/01/cant-connect-to-lion-smb-share/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.stevex.net/2012/01/cant-connect-to-lion-smb-share/</feedburner:origLink></item>
		<item>
		<title>What do people eat?</title>
		<link>http://feedproxy.google.com/~r/stevex-blog/~3/73XnZd_4i3g/</link>
		<comments>http://blog.stevex.net/2012/01/what-do-people-eat/#comments</comments>
		<pubDate>Fri, 13 Jan 2012 13:30:56 +0000</pubDate>
		<dc:creator>stevex</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.stevex.net/?p=1965</guid>
		<description><![CDATA[Here&#8217;s an interesting way of looking at what people eat: Looking at what people do calorie queries for on Google. The winners are: apple banana almonds avocado beer banana broccoli blueberries chicken breast chicken coffee carrots dates domino's pizza dried apricot dried cranberries egg egg whites edamame eggplant fruit fish flour grapes grapefruit gin green [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s an interesting way of looking at what people eat:  Looking at what people do calorie queries for on Google.</p>
<p><img src="http://blog.stevex.net/files/2012/01/201201130836.jpg" height="100" width="513" border="1" hspace="4" vspace="4" alt="201201130836" /></p>
<p>The winners are:</p>
<table border="1">
<tr>
<td>
<pre>apple
banana
almonds
avocado
beer
banana
broccoli
blueberries
chicken breast
chicken
coffee
carrots
dates
domino's pizza
dried apricot
dried cranberries
egg
egg whites
edamame
eggplant
fruit
fish
flour
grapes
grapefruit</pre>
</td>
<td>
<pre>gin
green beans
honey
hummus
hard boiled egg
ham
ice cream
indian food
iceberg lettuce
italian sausage
jello
jelly beans
jack daniels
jujubes
kiwi
kale
kfc
kraft dinner
lettuce
lasagna
lean ground beef
lentils
milk
mcdonalds
mushrooms</pre>
</td>
<td>
<pre>mashed potatoes
nuts
naan
nanaimo bar
nachos
orange
oatmeal
one egg
onion
pizza
popcorn
pumpkin seeds
pomegranate
quinoa
quiznos
quiche
red wine
rice
raspberries
rum
sushi
sweet potato
salmon
sugar
tim hortons</pre>
</td>
<td valign="top">
<pre>turkey
tomato
tea
udon
unsweetened applesauce
vodka
vegetables
wine
white wine
watermelon
walnuts
xylitol
xanthan gum
xenergy
yogurt
yam
yellow pepper
zucchini</pre>
</td>
</tr>
</table>
<p>There you have it; a list of foods that&#8217;s not really much use for anything.  But still interesting.</p>
<img src="http://feeds.feedburner.com/~r/stevex-blog/~4/73XnZd_4i3g" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.stevex.net/2012/01/what-do-people-eat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.stevex.net/2012/01/what-do-people-eat/</feedburner:origLink></item>
		<item>
		<title>Apple Analysts</title>
		<link>http://feedproxy.google.com/~r/stevex-blog/~3/OiEpViMhslE/</link>
		<comments>http://blog.stevex.net/2012/01/apple-analysts/#comments</comments>
		<pubDate>Thu, 12 Jan 2012 13:23:49 +0000</pubDate>
		<dc:creator>stevex</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.stevex.net/?p=1961</guid>
		<description><![CDATA[It&#8217;s amazing the discongruity between the &#8220;professional&#8221; analysts of Apple&#8217;s financials, and the &#8220;amateurs&#8221; like Horace Dediu of Asymco. I put &#8220;professional&#8221; and &#8220;amateur&#8221; in quotes because it seems like in this case, the results you get from these two groups are opposite from what you&#8217;d expect. The financial market, and professional analysts, have been [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s amazing the discongruity between the &#8220;professional&#8221; analysts of Apple&#8217;s financials, and the &#8220;amateurs&#8221; like  Horace Dediu of <a href="http://www.asymco.com/">Asymco</a>.</p>
<p>I put &#8220;professional&#8221; and &#8220;amateur&#8221; in quotes because it seems like in this case, the results you get from these two groups are opposite from what you&#8217;d expect.  The financial market, and professional analysts, have been underestimating Apple for years now.  </p>
<p>This story at Market Watch, &#8220;<a href="http://www.marketwatch.com/story/time-to-sell-apple-2012-01-12?dist=beforebell">Time to Sell Apple</a>&#8220;, is a perfect example.  Here&#8217;s a few points from this article.</p>
<blockquote><p>If a business fails to take care of its customers, its customers will go elsewhere … In the case of Apple, this is happening in front of our eyes, and the risks are therefore very high. Apple has stopped serving their customers well, and unless they start to serve their customers better the company will begin to lose more market share and revenue and earnings projections will come down aggressively.</p></blockquote>
<p>But this whole statement is based on this assertion:</p>
<blockquote><p>Most people think Apple&#8217;s customers are the end user, but … the real customers are third-party resellers, and Apple is not treating them right.</p></blockquote>
<p>This is just flat out wrong.  Apple has never pandered to the carriers and resellers.  They&#8217;re the only phone manufacturer that doesn&#8217;t, and it&#8217;s one of the reason their real customers, the folks using the phones, prefer their products.</p>
<p>iPhone users are people who want an iPhone.  Android users are, mostly, people who want a phone, and went with the one the carrier suggested.</p>
<blockquote><p>The company&#8217;s high-growth phase is behind it</p></blockquote>
<p>This is where the analysts methods fail.  They can only analyze the data they have available, and they have no data about future products.  But it&#8217;s these future products, the ones we don&#8217;t know about yet, that is where Apple&#8217;s growth comes from.   </p>
<p>I don&#8217;t think the market has any model that can account for this, so they look at each new, incredibly successful, incredibly profitable thing that Apple does as if it&#8217;s the last one.  Because how could they do otherwise?</p>
<img src="http://feeds.feedburner.com/~r/stevex-blog/~4/OiEpViMhslE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.stevex.net/2012/01/apple-analysts/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.stevex.net/2012/01/apple-analysts/</feedburner:origLink></item>
		<item>
		<title>An Apple TV</title>
		<link>http://feedproxy.google.com/~r/stevex-blog/~3/diGvA9Kg0nE/</link>
		<comments>http://blog.stevex.net/2012/01/an-apple-tv/#comments</comments>
		<pubDate>Tue, 03 Jan 2012 21:47:24 +0000</pubDate>
		<dc:creator>stevex</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.stevex.net/?p=1955</guid>
		<description><![CDATA[I don&#8217;t really understand why Apple would get into the TV business. Apple creates new markets. Moving into an established market like the TV business, with all the content complexity and interconnection requirements, just doesn&#8217;t seem like something they&#8217;d do. It&#8217;s a highly competitive space with low margins; not Apple&#8217;s kind of business. And the [...]]]></description>
			<content:encoded><![CDATA[<p>I don&#8217;t really understand why Apple would get into the TV business.</p>
<p>Apple creates new markets.  Moving into an established market like the TV business, with all the content complexity and interconnection requirements, just doesn&#8217;t seem like something they&#8217;d do.  It&#8217;s a highly competitive space with low margins; not Apple&#8217;s kind of business.</p>
<p>And the idea that the world needs an Apple TV because TVs are too hard to connect seems off the mark.  Hooking up a TV isn&#8217;t difficult; it&#8217;s hooking up all the other devices &#8211; the cable box, the PS3, the Xbox 360 with the Kinect, the Wii and its sensor bar, that make it difficult.  Unless Apple is planning to take over the jobs that all the other devices people do with things hooked up to their TVs, they&#8217;re not going to be making things that much simpler.</p>
<p>An &#8220;Apple TV&#8221; without some pretty amazing content deals would still require a cable box, and if they could pull off those deals, why tie it to a new TV?  Why not just making it available through the Apple TV for everyone?</p>
<img src="http://feeds.feedburner.com/~r/stevex-blog/~4/diGvA9Kg0nE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.stevex.net/2012/01/an-apple-tv/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.stevex.net/2012/01/an-apple-tv/</feedburner:origLink></item>
		<item>
		<title>My iTunes Match Experience</title>
		<link>http://feedproxy.google.com/~r/stevex-blog/~3/cqyfr48_Hhc/</link>
		<comments>http://blog.stevex.net/2011/12/my-itunes-match-experience/#comments</comments>
		<pubDate>Fri, 16 Dec 2011 22:16:49 +0000</pubDate>
		<dc:creator>stevex</dc:creator>
				<category><![CDATA[Apple]]></category>

		<guid isPermaLink="false">http://blog.stevex.net/?p=1949</guid>
		<description><![CDATA[I&#8217;m in the middle of setting up with iTunes Match. So far, it&#8217;s been anything but smooth. First off, I signed up during the brief window when iTunes Match was available for sale but not actually working in Canada, so I had a completely broken service for a day or so. But once it was [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m in the middle of setting up with iTunes Match.  So far, it&#8217;s been anything but smooth.</p>
<p>First off, I signed up during the brief window when iTunes Match was available for sale but not actually working in Canada, so I had a completely broken service for a day or so. </p>
<p>But once it was officially switched on, it started working.  There are 3 steps to iTunes Match:</p>
<p><img src="http://blog.stevex.net/files/2011/12/201112161716.jpg" height="99" width="534" border="1" hspace="4" vspace="4" alt="201112161716" /></p>
<p>Step 1 was painless.  It whipped through my ~23k songs in an hour or so, and then went on to step 2.  I left it at step 2 overnight, and when I woke up in the morning, it was stuck.  It was about 80% done, but not moving. </p>
<p>I stopped iTunes Match and restarted it, and this time paid attention to where it stopped.  This time it made it to song #22548, and then hung.  Stopped, restarted, and it made it to 22549.  Progress, but the 10 minutes or so it took for every attempt to make it to that song number was painful.  I was watching with fs_usage to see if it was getting hung up on a certain album or something, but every time it stopped it was on something completely different.</p>
<p>But after 2 more restarts, it made it all the way through my music library.  Now it&#8217;s on Step 3, uploading, and and with 4103 items to go, this one&#8217;s going to take a while.</p>
<p>The message I wanted to convey in this post is:  If iTunes Match is hanging during Step 2, just stop it and restart it.  Eventually it will complete.</p>
<p><em>Update</em> three days later:  It&#8217;s just over half done.  About 1950 songs to go.  I&#8217;m on DSL, so my upstream bandwidth is about 1 megabit.</p>
<img src="http://feeds.feedburner.com/~r/stevex-blog/~4/cqyfr48_Hhc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.stevex.net/2011/12/my-itunes-match-experience/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.stevex.net/2011/12/my-itunes-match-experience/</feedburner:origLink></item>
		<item>
		<title>iTunes Match Canada Rollout</title>
		<link>http://feedproxy.google.com/~r/stevex-blog/~3/Csd2aX038f8/</link>
		<comments>http://blog.stevex.net/2011/12/itunes-match-canada-rollout/#comments</comments>
		<pubDate>Thu, 15 Dec 2011 11:32:56 +0000</pubDate>
		<dc:creator>stevex</dc:creator>
				<category><![CDATA[Apple]]></category>

		<guid isPermaLink="false">http://blog.stevex.net/?p=1943</guid>
		<description><![CDATA[Or not-rollout as the case may be. Last night I read that iTunes Match had been switched on in Canada, so I fired up iTunes and went to my account page, and there was an option to Learn More about iTunes Match. I clicked on that and it let me sign up. But after that [...]]]></description>
			<content:encoded><![CDATA[<p>Or not-rollout as the case may be.  Last night I read that iTunes Match had been switched on in Canada, so I fired up iTunes and went to my account page, and there was an option to Learn More about iTunes Match.  I clicked on that and it let me sign up.</p>
<p>But after that .. nothing.  No new UI to let me sync my songs to the cloud.  </p>
<p>Either this is was a mistaken rollout and they&#8217;ve switched it off (in which case they&#8217;ve got a lot of refunding to do) or they are having problems with all the extra subscribers and the problem will sort itself out shortly.</p>
<p>I&#8217;m thinking it was a mistaken rollout.  Why?  Because check this out:</p>
<p><img src="http://blog.stevex.net/files/2011/12/201112150633.jpg"/></p>
<p>It would be so out of character for Apple to ship UI with a typo.  I&#8217;m guessing this was supposed to be some sort of test release that accidentally got pushed live.</p>
<p><b>Update</b>: It&#8217;s really live now, and working for me.  Typo and all.</p>
<img src="http://feeds.feedburner.com/~r/stevex-blog/~4/Csd2aX038f8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.stevex.net/2011/12/itunes-match-canada-rollout/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.stevex.net/2011/12/itunes-match-canada-rollout/</feedburner:origLink></item>
		<item>
		<title>UITableView selection not sticking when reloading cells</title>
		<link>http://feedproxy.google.com/~r/stevex-blog/~3/ck9fRFX2JCA/</link>
		<comments>http://blog.stevex.net/2011/12/uitableview-selection-not-sticking-when-reloading-cells/#comments</comments>
		<pubDate>Tue, 13 Dec 2011 03:31:13 +0000</pubDate>
		<dc:creator>stevex</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://blog.stevex.net/2011/12/uitableview-selection-not-sticking-when-reloading-cells/</guid>
		<description><![CDATA[I have some UITableView code that was setting a selection, and then later making some other changes to the cell using reloadRowsAtIndexPaths:withRowAnimation: and I was having trouble figuring out why my selection wasn&#8217;t sticking. I&#8217;d select an object, but it wouldn&#8217;t show as selected. Turns out reloadRowsAtIndexPaths:withRowAnimation: will deselect whatever rows you reload. Check this [...]]]></description>
			<content:encoded><![CDATA[<p>I have some UITableView code that was setting a selection, and then later making some other changes to the cell using <a href="http://developer.apple.com/library/ios/documentation/uikit/reference/UITableView_Class/Reference/Reference.html#//apple_ref/occ/instm/UITableView/reloadRowsAtIndexPaths:withRowAnimation:">reloadRowsAtIndexPaths:withRowAnimation:</a> and I was having trouble figuring out why my selection wasn&#8217;t sticking.  I&#8217;d select an object, but it wouldn&#8217;t show as selected.</p>
<p>Turns out reloadRowsAtIndexPaths:withRowAnimation: will deselect whatever rows you reload.  Check this out:</p>
<div class="codecolorer-container objc dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:600px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br /></div></td><td><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #11740a; font-style: italic;">// Create an NSIndexPath that indicates the 3rd row</span><br />
<a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSIndexPath_Class/"><span style="color: #400080;">NSIndexPath</span></a> <span style="color: #002200;">*</span>path <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSIndexPath_Class/"><span style="color: #400080;">NSIndexPath</span></a> indexPathForRow<span style="color: #002200;">:</span><span style="color: #2400d9;">3</span> inSection<span style="color: #002200;">:</span><span style="color: #2400d9;">0</span><span style="color: #002200;">&#93;</span>;<br />
<br />
<span style="color: #11740a; font-style: italic;">// Select it</span><br />
<span style="color: #002200;">&#91;</span>self.tableView selectRowAtIndexPath<span style="color: #002200;">:</span>path<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; animated<span style="color: #002200;">:</span><span style="color: #a61390;">NO</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; scrollPosition<span style="color: #002200;">:</span>UITableViewScrollPositionNone<span style="color: #002200;">&#93;</span>;<br />
<br />
<span style="color: #11740a; font-style: italic;">// Is it still selected? &nbsp; &nbsp;</span><br />
path <span style="color: #002200;">=</span> self.tableView.indexPathForSelectedRow;<br />
<br />
<span style="color: #11740a; font-style: italic;">// Yes, this will print the values you'd expect for that row being selected</span><br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Path: %@&quot;</span>, path<span style="color: #002200;">&#41;</span>;<br />
<br />
<span style="color: #11740a; font-style: italic;">// Reload that row</span><br />
<span style="color: #002200;">&#91;</span>self.tableView reloadRowsAtIndexPaths<span style="color: #002200;">:</span><span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSArray_Class/"><span style="color: #400080;">NSArray</span></a> arrayWithObject<span style="color: #002200;">:</span>path<span style="color: #002200;">&#93;</span> withRowAnimation<span style="color: #002200;">:</span>UITableViewRowAnimationNone<span style="color: #002200;">&#93;</span>;<br />
&nbsp; &nbsp; <br />
<span style="color: #11740a; font-style: italic;">// Now is it still selected?</span><br />
path <span style="color: #002200;">=</span> self.tableView.indexPathForSelectedRow;<br />
<br />
<span style="color: #11740a; font-style: italic;">// Negatory, path is null.</span><br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Path: %@&quot;</span>, path<span style="color: #002200;">&#41;</span>;</div></td></tr></tbody></table></div>
<p>It&#8217;s not obvious from the documentation that this operation affects the selection, and it took me a while to figure out why my selection was being dropped.  The fix is simple enough:  Preserve the selection yourself around the reload call.</p>
<div class="codecolorer-container objc dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:600px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br /></div></td><td><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #11740a; font-style: italic;">// Save the current selection</span><br />
<a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSIndexPath_Class/"><span style="color: #400080;">NSIndexPath</span></a> <span style="color: #002200;">*</span>savedSelection <span style="color: #002200;">=</span> self.tableView.indexPathForSelectedRow;<br />
<br />
<span style="color: #11740a; font-style: italic;">// Reload</span><br />
<span style="color: #002200;">&#91;</span>self.tableView reloadRowsAtIndexPaths<span style="color: #002200;">:</span><span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSArray_Class/"><span style="color: #400080;">NSArray</span></a> arrayWithObject<span style="color: #002200;">:</span>path<span style="color: #002200;">&#93;</span> withRowAnimation<span style="color: #002200;">:</span>UITableViewRowAnimationNone<span style="color: #002200;">&#93;</span>;<br />
<br />
<span style="color: #11740a; font-style: italic;">// And restore the selection</span><br />
<span style="color: #002200;">&#91;</span>self.tableView selectRowAtIndexPath<span style="color: #002200;">:</span>savedSelection<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; animated<span style="color: #002200;">:</span><span style="color: #a61390;">NO</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; scrollPosition<span style="color: #002200;">:</span>UITableViewScrollPositionNone<span style="color: #002200;">&#93;</span>;</div></td></tr></tbody></table></div>
<img src="http://feeds.feedburner.com/~r/stevex-blog/~4/ck9fRFX2JCA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.stevex.net/2011/12/uitableview-selection-not-sticking-when-reloading-cells/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.stevex.net/2011/12/uitableview-selection-not-sticking-when-reloading-cells/</feedburner:origLink></item>
		<item>
		<title>Reinstalling Xcode</title>
		<link>http://feedproxy.google.com/~r/stevex-blog/~3/6fxPss6QHEM/</link>
		<comments>http://blog.stevex.net/2011/12/reinstalling-xcode/#comments</comments>
		<pubDate>Mon, 12 Dec 2011 16:38:18 +0000</pubDate>
		<dc:creator>stevex</dc:creator>
				<category><![CDATA[Apple]]></category>

		<guid isPermaLink="false">http://blog.stevex.net/2011/12/reinstalling-xcode/</guid>
		<description><![CDATA[I ran into a problem with my Xcode install. I had actually just dragged it over from another volume, and this seemed to work, but I was having some trouble running Instruments, so I decided I&#8217;d just reinstall it. I uninstalled Xcode, went to redownload it, but the Mac App Store still said it was [...]]]></description>
			<content:encoded><![CDATA[<p>I ran into a problem with my Xcode install.  I had actually just dragged it over from another volume, and this seemed to work, but I was having some trouble running Instruments, so I decided I&#8217;d just reinstall it.  I <a href="http://macdevelopertips.com/xcode/how-to-uninstall-xcode.html">uninstalled Xcode</a>, went to redownload it, but the Mac App Store still said it was installed.</p>
<p>Hmm.  Now what?  There is no direct download link for Xcode; the only way to get it is through the store.</p>
<p>When you get Xcode through the Mac App Store, what you actually get is an app called &#8220;Install Xcode&#8221;.</p>
<p><img src="http://blog.stevex.net/files/2011/12/201112121135.jpg"></img></p>
<p>You run this app and it installs Xcode.  It leaves itself in your /Applications folder, and it&#8217;s this app that has the Mac App Store receipt file identifying it as an app that&#8217;s installed, so normally all you need to do is get rid of this &#8220;Install Xcode&#8221; application for the store to stop seeing Xcode as installed.</p>
<p>But this didn&#8217;t work for me.  I removed the installer, went back to the store, and it still wouldn&#8217;t let me download.</p>
<p><img src="http://blog.stevex.net/files/2011/12/201112121136.jpg"></img></p>
<p>To figure out how the App Store was finding Xcode installed, I used the fs_usage tool:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:600px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">sudo fs_usage &gt;~/out.txt</div></td></tr></tbody></table></div>
<p>Run this in Terminal before starting the App Store.  This command will log all file system activity to a file named &#8216;out.txt&#8217; in your home folder.  With it running, launch the App Store.  Then, back in the console, hit Ctrl-C to stop fs_usage, and open the out.txt file in an editor. Search for the string &#8220;Xcode&#8221;, and you should see some lines like this:</p>
<div class="codecolorer-container text dawn" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:600px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">10:04:36 &nbsp;lstat64 &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; /Volumes/Steve's Laptop Backup/Applications/Install Xcode.app &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0.000033 &nbsp; App Store &nbsp; <br />
10:04:36 &nbsp;getattrlist &nbsp; &nbsp; &nbsp; /Volumes/Steve's Laptop Backup/Applications/Install Xcode.app &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0.000006 &nbsp; App Store &nbsp; <br />
10:04:36 &nbsp;getattrlist &nbsp; &nbsp; &nbsp; /Volumes/Steve's Laptop Backup/Applications/Install Xcode.app &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0.000009 &nbsp; App Store</div></td></tr></tbody></table></div>
<p>Aha!  I had a drive mounted that had an old Applications folder, where the installer was already downloaded.  I have no idea how I would have found this otherwise.</p>
<p>(I had tried searching for the Xcode installer using Spotlight but I had told Spotlight not to index that backup drive, so it didn&#8217;t find it).</p>
<img src="http://feeds.feedburner.com/~r/stevex-blog/~4/6fxPss6QHEM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blog.stevex.net/2011/12/reinstalling-xcode/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blog.stevex.net/2011/12/reinstalling-xcode/</feedburner:origLink></item>
	</channel>
</rss>

