<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: The iPhone Has Blinders On</title>
	<atom:link href="http://jens.mooseyard.com/2008/03/the-iphone-has-blinders-on/feed/" rel="self" type="application/rss+xml" />
	<link>http://jens.mooseyard.com/2008/03/the-iphone-has-blinders-on/</link>
	<description>Little boxes made of words, by Jens Alfke</description>
	<lastBuildDate>Sun, 14 Mar 2010 11:32:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: l8rs</title>
		<link>http://jens.mooseyard.com/2008/03/the-iphone-has-blinders-on/comment-page-2/#comment-2486</link>
		<dc:creator>l8rs</dc:creator>
		<pubDate>Fri, 23 May 2008 09:26:55 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/03/the-iphone-has-blinders-on/#comment-2486</guid>
		<description>I&#039;ve been thinking about this too since the launch of the SDK, and your post inspired me to share:

&lt;a href=&quot;http://l8rs.blogspot.com/2008/05/iphone-20-sdk-limitations.html&quot; rel=&quot;nofollow&quot;&gt;http://l8rs.blogspot.com/2008/05/iphone-20-sdk-limitations.html&lt;/a&gt;

Apple will need to address this or be surpassed by Android which surely will.

Regarding your power question, yes an open TCP/IP socket simply listening over EDGE drains about 10x power over the regular check in for SMS or voice call.  This may change in future physical layers, but with standard GSM chipsets that is what we see on our scopes.</description>
		<content:encoded><![CDATA[<p>I&#8217;ve been thinking about this too since the launch of the SDK, and your post inspired me to share:</p>
<p><a href="http://l8rs.blogspot.com/2008/05/iphone-20-sdk-limitations.html" rel="nofollow">http://l8rs.blogspot.com/2008/05/iphone-20-sdk-limitations.html</a></p>
<p>Apple will need to address this or be surpassed by Android which surely will.</p>
<p>Regarding your power question, yes an open TCP/IP socket simply listening over EDGE drains about 10x power over the regular check in for SMS or voice call.  This may change in future physical layers, but with standard GSM chipsets that is what we see on our scopes.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paul Robichaux</title>
		<link>http://jens.mooseyard.com/2008/03/the-iphone-has-blinders-on/comment-page-2/#comment-2485</link>
		<dc:creator>Paul Robichaux</dc:creator>
		<pubDate>Tue, 25 Mar 2008 20:56:50 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/03/the-iphone-has-blinders-on/#comment-2485</guid>
		<description>@Paul Handly: nope, you&#039;re thinking of the old version of Exchange ActiveSync. The current version uses, essentially, an open GET, as does the UC AJAX SDK that could be used to implement an OCS 2007 client on the iPhone.

More broadly. as I &lt;a href=&quot;http://www.robichaux.net/blog/2008/03/maybe-its-brain-surgery-after-all.php&quot; rel=&quot;nofollow&quot;&gt;argued&lt;/a&gt; a couple of days after Craig&#039;s original post, both of the problems he cites are not only solvable, but largely solved in the current incarnation of mobile apps for Windows Mobile.</description>
		<content:encoded><![CDATA[<p>@Paul Handly: nope, you&#8217;re thinking of the old version of Exchange ActiveSync. The current version uses, essentially, an open GET, as does the UC AJAX SDK that could be used to implement an OCS 2007 client on the iPhone.</p>
<p>More broadly. as I <a href="http://www.robichaux.net/blog/2008/03/maybe-its-brain-surgery-after-all.php" rel="nofollow">argued</a> a couple of days after Craig&#8217;s original post, both of the problems he cites are not only solvable, but largely solved in the current incarnation of mobile apps for Windows Mobile.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: http://loren.online.myopenid.com/</title>
		<link>http://jens.mooseyard.com/2008/03/the-iphone-has-blinders-on/comment-page-2/#comment-2484</link>
		<dc:creator>http://loren.online.myopenid.com/</dc:creator>
		<pubDate>Mon, 24 Mar 2008 03:55:26 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/03/the-iphone-has-blinders-on/#comment-2484</guid>
		<description>Does anyone know how Google Android is going to handle this issues? It could be interesting to see how they are handling polling and multitasking.</description>
		<content:encoded><![CDATA[<p>Does anyone know how Google Android is going to handle this issues? It could be interesting to see how they are handling polling and multitasking.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Corby</title>
		<link>http://jens.mooseyard.com/2008/03/the-iphone-has-blinders-on/comment-page-2/#comment-2483</link>
		<dc:creator>Corby</dc:creator>
		<pubDate>Mon, 24 Mar 2008 03:16:57 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/03/the-iphone-has-blinders-on/#comment-2483</guid>
		<description>For those of you who don&#039;t have mobile hardware experience.
Poling can actually be lower battery suck than direct connect TCP sockets.

The way the GSM and CDMA radio works is that it tries to keep the best possible connection open between the phone and the nearest cell.  In a heavy populated are like a city this is usually not a problem since you have five bars every where.
But this also means that there is ALLOT of hardware layer (OSI 1-3) data passing going on to establish the best connection between the numerous cells in view, continuously monitor the signal strengths (typically 4 or more), and worry about handover to the next tower if you are moving.
That&#039;s allot of juice.
Additionally, keeping a TCP connection open but sending nothing guarantees the conncetion will be terminated by the carrier.  Carriers are motivated to keep the scarce GPRS resources open, so they typically implement a 3-10 minute &#039;kill&#039; window.  No data passes in that time and it kills the connection.  SO_KEEPALIVEs are ignored as are ICMP packets. (and you thought Comcast traffic shaping sucked).  So if you use an always-on connection you have to build in your own &#039;keep-alive&#039; packets at the application layer (OSI 6-7) instead of relying on TCP frames, OOB frames, or ICMP ethernet frames to do the work for you.

The final &#039;screw you&#039; from the phone battery is that if have even 1 bar missing (80%) signal strength, the battery is dumping all it&#039;s power into the radio to try to boost the signal strength.  The power valve between the battery and the radio is variable and can set to low (sitting next to a cell gettin&#039; sterilized) or supper high (left on in the overhead on the plane).

The debate between polling and always-connected on cell phones (any cell phone) is somewhat moot.  because of the pretty even trade offs in power management, it turns out that a well designed application and protocol makes MUCH more of a difference than the hardware and TCP/IP stack implementations, regardless of the network connection models.
It is a rare think these days when the application developers hold all the cards when it comes to usabillity and performance.  It also means you get blamed for everything :)

-C</description>
		<content:encoded><![CDATA[<p>For those of you who don&#8217;t have mobile hardware experience.<br />
Poling can actually be lower battery suck than direct connect TCP sockets.</p>
<p>The way the GSM and CDMA radio works is that it tries to keep the best possible connection open between the phone and the nearest cell.  In a heavy populated are like a city this is usually not a problem since you have five bars every where.<br />
But this also means that there is ALLOT of hardware layer (OSI 1-3) data passing going on to establish the best connection between the numerous cells in view, continuously monitor the signal strengths (typically 4 or more), and worry about handover to the next tower if you are moving.<br />
That&#8217;s allot of juice.<br />
Additionally, keeping a TCP connection open but sending nothing guarantees the conncetion will be terminated by the carrier.  Carriers are motivated to keep the scarce GPRS resources open, so they typically implement a 3-10 minute &#8216;kill&#8217; window.  No data passes in that time and it kills the connection.  SO_KEEPALIVEs are ignored as are ICMP packets. (and you thought Comcast traffic shaping sucked).  So if you use an always-on connection you have to build in your own &#8216;keep-alive&#8217; packets at the application layer (OSI 6-7) instead of relying on TCP frames, OOB frames, or ICMP ethernet frames to do the work for you.</p>
<p>The final &#8216;screw you&#8217; from the phone battery is that if have even 1 bar missing (80%) signal strength, the battery is dumping all it&#8217;s power into the radio to try to boost the signal strength.  The power valve between the battery and the radio is variable and can set to low (sitting next to a cell gettin&#8217; sterilized) or supper high (left on in the overhead on the plane).</p>
<p>The debate between polling and always-connected on cell phones (any cell phone) is somewhat moot.  because of the pretty even trade offs in power management, it turns out that a well designed application and protocol makes MUCH more of a difference than the hardware and TCP/IP stack implementations, regardless of the network connection models.<br />
It is a rare think these days when the application developers hold all the cards when it comes to usabillity and performance.  It also means you get blamed for everything :)</p>
<p>-C</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Derek</title>
		<link>http://jens.mooseyard.com/2008/03/the-iphone-has-blinders-on/comment-page-2/#comment-2482</link>
		<dc:creator>Derek</dc:creator>
		<pubDate>Mon, 24 Mar 2008 02:04:10 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/03/the-iphone-has-blinders-on/#comment-2482</guid>
		<description>Exactly!  I replaced Twitterific with Twhirl as my desktop twitter app because Twitterific was so frickin annoying and gives you no chance to scale down the incoming tweets.  With Twhirl, it only displays a couple at my designated interval.  Facebook Apps have shown that widget (mini-program) authors cannot be trusted with the power of alerting the user to whatever activity  whenever they wish.</description>
		<content:encoded><![CDATA[<p>Exactly!  I replaced Twitterific with Twhirl as my desktop twitter app because Twitterific was so frickin annoying and gives you no chance to scale down the incoming tweets.  With Twhirl, it only displays a couple at my designated interval.  Facebook Apps have shown that widget (mini-program) authors cannot be trusted with the power of alerting the user to whatever activity  whenever they wish.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: eoin</title>
		<link>http://jens.mooseyard.com/2008/03/the-iphone-has-blinders-on/comment-page-2/#comment-2481</link>
		<dc:creator>eoin</dc:creator>
		<pubDate>Mon, 24 Mar 2008 00:01:46 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/03/the-iphone-has-blinders-on/#comment-2481</guid>
		<description>&quot;SMS -&gt; URL -&gt; App would be a good way to do push?&quot;

Possibly a Apple owned background process could handle the url handler ( sent as an  SMS?) and launch the app via the url handler. Given the LaunchMe sample code might well be a possibility :-) Not sure how this helps mobilrscrobbler but it could help those of us who want our own &quot;push&quot; technology.</description>
		<content:encoded><![CDATA[<p>&#8220;SMS -&#38;gt; URL -&#38;gt; App would be a good way to do push?&#8221;</p>
<p>Possibly a Apple owned background process could handle the url handler ( sent as an  SMS?) and launch the app via the url handler. Given the LaunchMe sample code might well be a possibility :-) Not sure how this helps mobilrscrobbler but it could help those of us who want our own &#8220;push&#8221; technology.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: c99koder (LJ)</title>
		<link>http://jens.mooseyard.com/2008/03/the-iphone-has-blinders-on/comment-page-2/#comment-2480</link>
		<dc:creator>c99koder (LJ)</dc:creator>
		<pubDate>Sat, 22 Mar 2008 21:47:23 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/03/the-iphone-has-blinders-on/#comment-2480</guid>
		<description>Darren:

Thank you for the constructive feedback about MobileScrobbler.  The next update will include a preference toggle to queue your tracks instead of transmitting them while the device is asleep.  Feel free to suggest future improvements through the bug tracker on the MobileScrobbler website.

Thanks!</description>
		<content:encoded><![CDATA[<p>Darren:</p>
<p>Thank you for the constructive feedback about MobileScrobbler.  The next update will include a preference toggle to queue your tracks instead of transmitting them while the device is asleep.  Feel free to suggest future improvements through the bug tracker on the MobileScrobbler website.</p>
<p>Thanks!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jonathan Eddy</title>
		<link>http://jens.mooseyard.com/2008/03/the-iphone-has-blinders-on/comment-page-2/#comment-2479</link>
		<dc:creator>Jonathan Eddy</dc:creator>
		<pubDate>Sat, 22 Mar 2008 16:15:38 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/03/the-iphone-has-blinders-on/#comment-2479</guid>
		<description>The reasons he states for the lack of background apps are silly. My Nokia E51 has WiFi/3.5G connectivity and the same 128 MB of RAM the iPhone does, yet manages to run multiple background apps (music player, web browser, combo IM/VoIP client, and games) for days at a time without charging the battery, all on a 396 Mhz ARM11 processor. If it can be done right on Symbian, surely Apple can do it on the iPhone, if not better! What happened to &#039;Think Different&#039;?</description>
		<content:encoded><![CDATA[<p>The reasons he states for the lack of background apps are silly. My Nokia E51 has WiFi/3.5G connectivity and the same 128 MB of RAM the iPhone does, yet manages to run multiple background apps (music player, web browser, combo IM/VoIP client, and games) for days at a time without charging the battery, all on a 396 Mhz ARM11 processor. If it can be done right on Symbian, surely Apple can do it on the iPhone, if not better! What happened to &#8216;Think Different&#8217;?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Richard Clark</title>
		<link>http://jens.mooseyard.com/2008/03/the-iphone-has-blinders-on/comment-page-2/#comment-2478</link>
		<dc:creator>Richard Clark</dc:creator>
		<pubDate>Sat, 22 Mar 2008 06:29:28 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/03/the-iphone-has-blinders-on/#comment-2478</guid>
		<description>Having taught mobile development for several years, I have mixed reactions to &quot;background processing&quot;. On one hand, power consumption scales linearly with the CPU clock speed, so revving up the processor to do any computations is going to cost you battery life. (Now add frequent sound and/or the vibrating phone notifications and there goes your battery!) On the other hand, if apps could register for async notifications (perhaps via a managed polling service), it would make sense to let them register a stub.

I hope this limitation is one of those &quot;we can fix it in rev 1.1&quot; kind of issues.</description>
		<content:encoded><![CDATA[<p>Having taught mobile development for several years, I have mixed reactions to &#8220;background processing&#8221;. On one hand, power consumption scales linearly with the CPU clock speed, so revving up the processor to do any computations is going to cost you battery life. (Now add frequent sound and/or the vibrating phone notifications and there goes your battery!) On the other hand, if apps could register for async notifications (perhaps via a managed polling service), it would make sense to let them register a stub.</p>
<p>I hope this limitation is one of those &#8220;we can fix it in rev 1.1&#8221; kind of issues.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dete</title>
		<link>http://jens.mooseyard.com/2008/03/the-iphone-has-blinders-on/comment-page-2/#comment-2477</link>
		<dc:creator>dete</dc:creator>
		<pubDate>Sat, 22 Mar 2008 05:27:41 +0000</pubDate>
		<guid isPermaLink="false">http://mooseyard.com/Jens/2008/03/the-iphone-has-blinders-on/#comment-2477</guid>
		<description>I&#039;m kind of surprised that no-one assumes that the lack of background processing is of the same reasoning that the original Mac didn&#039;t have a text mode (or at least the reason I imagine the original Mac didn&#039;t have a text mode!): Most programs that would use it don&#039;t actually need it, and the overall user experience is improved if that majority of programs are &quot;forced&quot; to do the right thing (even if it&#039;s harder for the developers at the outset).

Personally, I think that folks are way too uptight about this: Apple surely has a plan.  I believe the no-background-applications line about as readily as I believed the ajax-as-sdk line from last year.

My best guess (hope?) is that they&#039;ll allow background processes which don&#039;t have any UI (and potentially severe limits on memory lest they be shut down).  I assume that the standard IPC tricks work in the iPhone OS?</description>
		<content:encoded><![CDATA[<p>I&#8217;m kind of surprised that no-one assumes that the lack of background processing is of the same reasoning that the original Mac didn&#8217;t have a text mode (or at least the reason I imagine the original Mac didn&#8217;t have a text mode!): Most programs that would use it don&#8217;t actually need it, and the overall user experience is improved if that majority of programs are &#8220;forced&#8221; to do the right thing (even if it&#8217;s harder for the developers at the outset).</p>
<p>Personally, I think that folks are way too uptight about this: Apple surely has a plan.  I believe the no-background-applications line about as readily as I believed the ajax-as-sdk line from last year.</p>
<p>My best guess (hope?) is that they&#8217;ll allow background processes which don&#8217;t have any UI (and potentially severe limits on memory lest they be shut down).  I assume that the standard IPC tricks work in the iPhone OS?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->