<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Jeff dePascale</title>
	<atom:link href="http://www.jeffdepascale.com/index.php/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jeffdepascale.com</link>
	<description>Blogging on and developing web and mobile technologies</description>
	<lastBuildDate>Mon, 18 Mar 2013 13:05:26 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Varying the viewport meta tag between phones and tablets</title>
		<link>http://www.jeffdepascale.com/index.php/mobile/varying-the-viewport-meta-tag-between-phones-and-tablets/</link>
		<comments>http://www.jeffdepascale.com/index.php/mobile/varying-the-viewport-meta-tag-between-phones-and-tablets/#comments</comments>
		<pubDate>Mon, 18 Mar 2013 13:02:07 +0000</pubDate>
		<dc:creator>Jeff dePascale</dc:creator>
				<category><![CDATA[javascript]]></category>
		<category><![CDATA[Mobile]]></category>

		<guid isPermaLink="false">http://www.jeffdepascale.com/?p=617</guid>
		<description><![CDATA[Here&#8217;s a quick tip on viewport meta tags when dealing with differing preferences for phones and tablets &#8211; use javascript. First, create your meta element, be sure to add an id. &#60;meta id="viewport" name="viewport" content="" /&#62; Now, add some simple JS to modify the value to whatever your conditional needs may be: if (screen.width &#60; ...<a class="post-readmore" href="http://www.jeffdepascale.com/index.php/mobile/varying-the-viewport-meta-tag-between-phones-and-tablets/">read more</a>]]></description>
				<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter size-full wp-image-629" alt="viewport" src="http://www.jeffdepascale.com/news/wp-content/uploads/2013/03/viewport.jpg" width="640" height="194" />Here&#8217;s a quick tip on viewport meta tags when dealing with differing preferences for phones and tablets &#8211; use javascript.</p>
<p>First, create your meta element, be sure to add an id.</p>
<pre>&lt;meta id="viewport" name="viewport" content="" /&gt;</pre>
<p>Now, add some simple JS to modify the value to whatever your conditional needs may be:</p>
<pre> 
if (screen.width &lt; 768){
     var vp = document.getElementById('viewport');
     vp.setAttribute('content', 'width=device-width,
     initial-scale=1,minimum-scale=1,maximum-scale=1');
}</pre>
<p>(NOTE: line break added to attribute value for readability).</p>
<p>Ideally this should be setup with the javascript requirement on the phone side, as you are are much more likely to see javascript enabled on phones. However the other way around would still work.</p>
<p>This can also be achieved by using server side checks using something like wurfl to validate your target device, but since live modification of the meta tag is supported so effectively in the browsers we are targeting here, this is a much simpler solution.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffdepascale.com/index.php/mobile/varying-the-viewport-meta-tag-between-phones-and-tablets/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reporting Dashboards for SaaS Platforms: Buy or Build?</title>
		<link>http://www.jeffdepascale.com/index.php/saas/reporting-dashboards-for-saas-platform-buy-or-build/</link>
		<comments>http://www.jeffdepascale.com/index.php/saas/reporting-dashboards-for-saas-platform-buy-or-build/#comments</comments>
		<pubDate>Sat, 16 Mar 2013 15:31:30 +0000</pubDate>
		<dc:creator>Jeff dePascale</dc:creator>
				<category><![CDATA[SaaS]]></category>

		<guid isPermaLink="false">http://www.jeffdepascale.com/?p=603</guid>
		<description><![CDATA[Providing reporting dashboard solutions to end users is a common deliverable of a fully developed SaaS platform. The business decision to buy or roll your own can be complicated, and largely depends on your actual needs and what your staff and long term goals look like. Many products exist at varying levels of complexity for ...<a class="post-readmore" href="http://www.jeffdepascale.com/index.php/saas/reporting-dashboards-for-saas-platform-buy-or-build/">read more</a>]]></description>
				<content:encoded><![CDATA[<p><img class="alignright  wp-image-615" alt="charts" src="http://www.jeffdepascale.com/news/wp-content/uploads/2013/03/charts.jpg" width="300" height="220" />Providing reporting dashboard solutions to end users is a common deliverable of a fully developed SaaS platform. The business decision to buy or roll your own can be complicated, and largely depends on your actual needs and what your staff and long term goals look like.</p>
<p>Many products exist at varying levels of complexity for delivering a pre baked,  configurable dashboard for your business. The costs on these can go from moderate to exorbitant depending on what the end product delivers. However, for most platforms, in particular where BI is only a portion of what the platform is expected to deliver, the lower end of the spectrum of dashboard providers is where most businesses will end up considering. If you are in this realm, the reality of a roll your own product is potentially an option, and one that should be considered.</p>
<p>The first task to deal with has nothing to do with your dashboard deliverable. Before you can build chart one, you need a data warehouse, and even if the vendors you are considering offer the service of configuring your data warehouse for you, the best option for this critical piece of the puzzle is to build it yourself, with an on site contractor if you don&#8217;t have the skill set in your staff already. The reality is no one understands your data needs better than you, and handing off this portion of the work to a vendor doesn&#8217;t usually make sense unless they are entrenched with you for three to six months. And let&#8217;s face it, they won&#8217;t be unless your willing to pay, at which point a contractor makes more sense anyway. So before you even start down the reporting path, isolate your data in a properly designed warehouse, configure your refresh processes, and then you&#8217;re ready to move on to the dashboard itself.</p>
<p>There are many obvious reasons to go with an off the shelf solution, and a cursory glance at vendors&#8217; websites will state clearly what you have to gain &#8211; mobile optimized reports, engaging charts, easily exportable data. And with a prepared internal team, ready to hand off that body of work to your vendor of choice, you can be up and running in a few months. But what happens next? who handles maintenance? If the vendor does, at what cost? If your team does, what about training? And what are platform upgrades going to cost you in the long run? Perhaps most importantly, what features does the platform lack, or goals does the vendor lack, that will hinder your business in the longrun?</p>
<p>For all of the reasons above, building your own dashboard is an option worth considering for lightweight solutions, and are inherently more agile. If you&#8217;re building SaaS products, you probably already have solid front and backend developers, so the dev skillset is at the ready. So, invest in some components and purchase a charting tool. There are many cutting edge HTML5 based tools out there to leverage. If your goals and team are the right fit, 2-3 dedicated developers can deliver a dashboard, custom to your needs, and expandable for your needs, within the same delivery window as an outside vendor. It&#8217;s more a matter of defining specs and solid project management.</p>
<p>It&#8217;s worth noting the risks associated with a custom build. If you find the need for an OLAP cube for example, the development gets much more complicated. Most important overall, as with any build, is a well educated team leader and project manager, and a clearly defined deliverable.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffdepascale.com/index.php/saas/reporting-dashboards-for-saas-platform-buy-or-build/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Why iOS6&#8242;s ajax POST requests get cached and how to fix it</title>
		<link>http://www.jeffdepascale.com/index.php/general/why-ios6s-ajax-post-requests-get-cached-and-how-to-fix-it/</link>
		<comments>http://www.jeffdepascale.com/index.php/general/why-ios6s-ajax-post-requests-get-cached-and-how-to-fix-it/#comments</comments>
		<pubDate>Wed, 30 Jan 2013 19:18:57 +0000</pubDate>
		<dc:creator>Jeff dePascale</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.jeffdepascale.com/?p=584</guid>
		<description><![CDATA[iOS6 features something that will feel like a bug to most web developers out there, but in reality is Apple trying to enforce a definition in the HTTP spec that has never been utilized before. See this on Stack Overflow: http://stackoverflow.com/questions/12506897/is-safari-on-ios-6-caching-ajax-results In regards to POST data, the HTTP spec defines this little gem: &#8220;Responses to ...<a class="post-readmore" href="http://www.jeffdepascale.com/index.php/general/why-ios6s-ajax-post-requests-get-cached-and-how-to-fix-it/">read more</a>]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.jeffdepascale.com/news/wp-content/uploads/2013/01/tumblr_m539mip4yS1qadqixo1_1280.jpg"><img class="alignright size-medium wp-image-595" alt="" src="http://www.jeffdepascale.com/news/wp-content/uploads/2013/01/tumblr_m539mip4yS1qadqixo1_1280-300x199.jpg" width="300" height="199" /></a></p>
<p>iOS6 features something that will feel like a bug to most web developers out there, but in reality is Apple trying to enforce a definition in the HTTP spec that has never been utilized before. See this on Stack Overflow:</p>
<p><a href="http://stackoverflow.com/questions/12506897/is-safari-on-ios-6-caching-ajax-results">http://stackoverflow.com/questions/12506897/is-safari-on-ios-6-caching-ajax-results</a></p>
<p>In regards to POST data, the HTTP spec defines this little gem:</p>
<p style="padding-left: 30px;">&#8220;Responses to this method are not cacheable, unless the response includes appropriate Cache-Control or Expires header fields. However, the 303 (See Other) response can be used to direct the user agent to retrieve a cacheable resource.&#8221;</p>
<p>Translation: your coded requests may never leave the browser, instead the browser will return whatever it got the first time it hit your server and never reach out again. Which completely defeats the purpose of whi ajax is used in most cases. Just when you thought resource caching was your worst browser nuisance, enter iOS6, where suddenly this is the default functionality. And without a hint of notice from Apple that I&#8217;ve seen to provide heads up that this change was coming, or more importantly why now.</p>
<p>Luckily, we can easily squash this wholesale. I just updated <a href="http://a5js.com" target="_blank">A5</a> to do this at its core, so none of your requests allow caching unless you specify so in the parameters of the request. All you need to do is one of two things:</p>
<p>1. Change your server side code to respond with a response header of cache-control : no-cache</p>
<p>or,</p>
<p>2. For a nice all encompassing fix of something you likely never planned for, wrap all your ajax requests in a handler that adds cache-control : no-cache to the <em>request</em> header. Problem solved.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffdepascale.com/index.php/general/why-ios6s-ajax-post-requests-get-cached-and-how-to-fix-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iOS6 XHR bug &#8211; multiple 200 responses in Safari</title>
		<link>http://www.jeffdepascale.com/index.php/general/ios6-xhr-bug-multiple-200-responses-in-safari/</link>
		<comments>http://www.jeffdepascale.com/index.php/general/ios6-xhr-bug-multiple-200-responses-in-safari/#comments</comments>
		<pubDate>Wed, 26 Sep 2012 14:27:28 +0000</pubDate>
		<dc:creator>Jeff dePascale</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[ios6]]></category>

		<guid isPermaLink="false">http://www.jeffdepascale.com/?p=580</guid>
		<description><![CDATA[Apparently iOS6 has a flaw in its handling of XHR requests in Safari. I can&#8217;t confirm if there is a particular condition for the repro, but working with A5 (a5js.com) the bug was present and has now been fixed. Using the safari remote debugger I was able to confirm that a single request went out ...<a class="post-readmore" href="http://www.jeffdepascale.com/index.php/general/ios6-xhr-bug-multiple-200-responses-in-safari/">read more</a>]]></description>
				<content:encoded><![CDATA[<p>Apparently iOS6 has a flaw in its handling of XHR requests in Safari. I can&#8217;t confirm if there is a particular condition for the repro, but working with A5 (<a href="http://a5js.com">a5js.com</a>) the bug was present and has now been fixed. Using the safari remote debugger I was able to confirm that a single request went out but two 200 events were received in readyState 4. Anyone have any insight? Either way, something has changed in their implementation of the XHR spec in iOS6 as this code has been working without issue for over a year on IE7+, Firefox, Chrome, Safari (including up to iOS5), and Android.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffdepascale.com/index.php/general/ios6-xhr-bug-multiple-200-responses-in-safari/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dealing With Rogue IP Requests in Web Apps</title>
		<link>http://www.jeffdepascale.com/index.php/general/dealing-with-rogue-ip-requests-in-web-apps/</link>
		<comments>http://www.jeffdepascale.com/index.php/general/dealing-with-rogue-ip-requests-in-web-apps/#comments</comments>
		<pubDate>Fri, 17 Aug 2012 20:04:27 +0000</pubDate>
		<dc:creator>Jeff dePascale</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.jeffdepascale.com/?p=576</guid>
		<description><![CDATA[When building web applications, we develop, we test, we release. And when we test, we&#8217;re generally designing and verifying test cases that we are expecting our end users to come across, either intentionally or accidentally. We may, if we are diligent, go a step further and attempt to identify holes in the application as well ...<a class="post-readmore" href="http://www.jeffdepascale.com/index.php/general/dealing-with-rogue-ip-requests-in-web-apps/">read more</a>]]></description>
				<content:encoded><![CDATA[<p>When building web applications, we develop, we test, we release. And when we test, we&#8217;re generally designing and verifying test cases that we are expecting our end users to come across, either intentionally or accidentally. We may, if we are diligent, go a step further and attempt to identify holes in the application as well (and that&#8217;s definitely a recommended practice). But we don&#8217;t all do it, and every once in a while, those error logs start showing things you just can&#8217;t explain. And then the sleuthing begins.</p>
<p>One of the most frustrating use cases is from rogue IP requests &#8211; a server pings your web app, often in a way it is never meant to be accessed, such as an url that requires a logged in session for example, and subsequently it triggers an error in your app. So what are these requests, and where do they come from?</p>
<p>Crawlers are a common use case, and these are easily resolved with robots.txt rules and/or robots noindex metatags as described <a href="http://support.google.com/webmasters/bin/answer.py?hl=en&amp;answer=93710">here</a>. Another easily identifiable major source is virus scan firms. Trend Micro, for example, is well known (t0 those who deal with these issues) to log requests from some software products and cache them on servers that then track trust levels. To do this, those cached urls are then requested <em>directly </em> from their servers in japan. IF you&#8217;ve seen IP&#8217;s hit your server from Trend Micro, this is why. They&#8217;ll indiscriminately hit your urls directly and trigger errors if the urls require user sessions. There are of course, many other potential sources of rogue requests. So what do we do about them?</p>
<p>One way to resolve the issue is to just block the offending IP&#8217;s. But this is potentially troublesome as it may both block real traffic accidentally and/or may affect how, in Trend&#8217;s case, your trust score is rated, and could also potentially block real traffic. One way to address the issue is to build some trust into your own app logic: validate IP&#8217;s. If a session is logged into by a user, the odds are pretty good that request isn&#8217;t a bot. So track the IP and flag it is a known IP of human users. Then, instead of blocking requests, simply filter the errors to only show from IP&#8217;s that have come up as trusted for urls that require user sessions.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffdepascale.com/index.php/general/dealing-with-rogue-ip-requests-in-web-apps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HTML5 manifest mime type in grails</title>
		<link>http://www.jeffdepascale.com/index.php/general/html5-manifest-mime-type-in-grails/</link>
		<comments>http://www.jeffdepascale.com/index.php/general/html5-manifest-mime-type-in-grails/#comments</comments>
		<pubDate>Sat, 25 Jun 2011 14:23:57 +0000</pubDate>
		<dc:creator>Jeff dePascale</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.jeffdepascale.com/?p=569</guid>
		<description><![CDATA[I ran into an issue serving the proper mime type for a cache manifest from grails today, adding a &#8216;manifest&#8217; key to grails.mime.types failed to register for some reason (if you know why, do tell!). Running on a server this can be addressed by setting the mime type directly in tomcat, but i needed to ...<a class="post-readmore" href="http://www.jeffdepascale.com/index.php/general/html5-manifest-mime-type-in-grails/">read more</a>]]></description>
				<content:encoded><![CDATA[<p><img class="alignright" title="Grails" src="http://grails.org/static/cXmUZIAv28XIiNgkRiz4RRl21TsGZ5HoGpZw1UITNyV.png" alt="" width="163" height="43" />I ran into an issue serving the proper mime type for a cache manifest from grails today, adding a &#8216;manifest&#8217; key to grails.mime.types failed to register for some reason (if you know why, do tell!). Running on a server this can be addressed by setting the mime type directly in tomcat, but i needed to test locally using the built in Tomcat server. Hopefully this inability to serve a manifest mime type will be addressed soon, but in the meantime the workaround was to make the manifest a generated gsp and add the content-type declaration directly to the manifest:</p>
<p><code><br />
&lt;%@ page contentType="text/cache-manifest" %&gt;CACHE MANIFEST<br />
# rev 0<br />
file.html<br />
</code></p>
<p>It&#8217;s important to keep CACHE MANIFEST on the same line as the contentType property &#8211; manifests are discarded if they don&#8217;t start from the first character with that declaration.</p>
<p>One last thing &#8211; this works better cross browser (where some browsers dont respect a manifest not ending in .manifest) by setting grails.mime.file.extensions to false, which will allow your mapping to be directly to cache.manifest, returning the rendered gsp.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffdepascale.com/index.php/general/html5-manifest-mime-type-in-grails/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Internet Explorer 10 preview &#8211; no sign of Web Workers, among others</title>
		<link>http://www.jeffdepascale.com/index.php/general/internet-explorer-10-preview-no-sign-of-web-workers-among-others/</link>
		<comments>http://www.jeffdepascale.com/index.php/general/internet-explorer-10-preview-no-sign-of-web-workers-among-others/#comments</comments>
		<pubDate>Tue, 12 Apr 2011 22:25:25 +0000</pubDate>
		<dc:creator>Jeff dePascale</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.jeffdepascale.com/?p=534</guid>
		<description><![CDATA[Microsoft today released a preview of Internet Explorer 10, and as of this first release there are no signs of Web Workers or other wish list JS items in IE9. I&#8217;ll give the benefit of the doubt as this preview is exceedingly early and it seems to be focusing on CSS3 improvements, but so far, ...<a class="post-readmore" href="http://www.jeffdepascale.com/index.php/general/internet-explorer-10-preview-no-sign-of-web-workers-among-others/">read more</a>]]></description>
				<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-535" title="" src="http://www.jeffdepascale.com/news/wp-content/uploads/2011/04/nology-software-download-internet-explorer-9.jpg" alt="" width="300" height="300" />Microsoft today <a title="released a preview" href="http://blogs.msdn.com/b/ie/archive/2011/04/12/native-html5-first-ie10-platform-preview-available-for-download.aspx" target="_blank">released a preview</a> of Internet Explorer 10, and as of this first release there are no signs of Web Workers or other wish list JS items in IE9. I&#8217;ll give the benefit of the doubt as this preview is exceedingly early and it seems to be focusing on CSS3 improvements, but so far, no dice. Having said that, it&#8217;s good to see the new IE team focusing on a more fluid and transparent release schedule, with previews promised frequently and a full major release cycle potentially being within an 18 month window if the timing of this first preview is any indication.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffdepascale.com/index.php/general/internet-explorer-10-preview-no-sign-of-web-workers-among-others/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RIM, please buy Palm.</title>
		<link>http://www.jeffdepascale.com/index.php/mobile/rim-please-buy-palm/</link>
		<comments>http://www.jeffdepascale.com/index.php/mobile/rim-please-buy-palm/#comments</comments>
		<pubDate>Mon, 12 Apr 2010 16:04:24 +0000</pubDate>
		<dc:creator>Jeff dePascale</dc:creator>
				<category><![CDATA[Editorial]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Palm WebOS]]></category>
		<category><![CDATA[Touch Devices]]></category>
		<category><![CDATA[Blackberry]]></category>
		<category><![CDATA[Palm]]></category>
		<category><![CDATA[RIM]]></category>
		<category><![CDATA[WebOS]]></category>

		<guid isPermaLink="false">http://www.jeffdepascale.com/?p=516</guid>
		<description><![CDATA[[dtse][/dtse]Dear RIM: You&#8217;ve had a great run, but it&#8217;s time for a change. It seems even you are starting to realize your failings with your recently announced webkit browser, and a large portion of your once loyal user base is now dying to jump ship. Palm on the other hand has a whole slew of ...<a class="post-readmore" href="http://www.jeffdepascale.com/index.php/mobile/rim-please-buy-palm/">read more</a>]]></description>
				<content:encoded><![CDATA[<p>[dtse]<img class="alignright size-medium wp-image-517" title="palmRimMashup" src="http://www.jeffdepascale.com/news/wp-content/uploads/2010/04/palmRimMashup-300x290.jpg" alt="" width="300" height="290" />[/dtse]Dear RIM: You&#8217;ve had a great run, but it&#8217;s time for a change. It seems even you are starting to realize your failings with your recently announced <a href="http://gizmodo.com/5395158/rim-is-definitely-developing-a-webkit-read-decent-browser" target="_blank">webkit browser</a>, and a large portion of your once loyal user base is <a href="http://arstechnica.com/apple/news/2010/03/40-of-blackberry-users-willing-to-trade-in-for-an-iphone.ars" target="_blank">now dying to jump ship</a>. Palm on the other hand has a whole slew of patents and a slick little starting point for your &#8216;new you&#8217; called WebOS (especially noteworthy when compared to your latest OS offerings), and lucky for you, just went and threw a <a href="http://www.bloomberg.com/apps/news?pid=20601087&amp;sid=arvXvuu.DqW4" target="_blank">for sale sign in the front lawn</a>. Think of what the two of you could do together, and how many current enterprise customers (and potentially direct consumers) would take you both seriously all over again. Apple and Google have locked down first and second place, together you two have a good chance to fight off <a href="http://www.microsoft.com/presspass/press/2010/feb10/02-15MWC10PR.mspx" target="_blank">Microsoft later this year</a> for third. Otherwise, I don&#8217;t know what will happen to either of you.</p>
<p>Think about it RIM, for the greater good.</p>
<p>Thank you for your time.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffdepascale.com/index.php/mobile/rim-please-buy-palm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Multitask apps can be killed in OS 4.0</title>
		<link>http://www.jeffdepascale.com/index.php/general/multitask-apps-can-be-killed-in-os-4-0/</link>
		<comments>http://www.jeffdepascale.com/index.php/general/multitask-apps-can-be-killed-in-os-4-0/#comments</comments>
		<pubDate>Thu, 08 Apr 2010 21:17:06 +0000</pubDate>
		<dc:creator>Jeff dePascale</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[iPhone OS]]></category>
		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Touch Devices]]></category>
		<category><![CDATA[4.0]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[multitasking]]></category>
		<category><![CDATA[OS]]></category>

		<guid isPermaLink="false">http://www.jeffdepascale.com/?p=510</guid>
		<description><![CDATA[[dtse][/dtse]Scott Forstall, SVP of iPhone Software for Apple, appeared to dodge the question of how to kill an app running in the new multitasking interface for iPhone OS 4.0. When asked during the Q &#38; A session post announcement, he stated that it wasn&#8217;t necessary to kill the apps in the first place. Note he never ...<a class="post-readmore" href="http://www.jeffdepascale.com/index.php/general/multitask-apps-can-be-killed-in-os-4-0/">read more</a>]]></description>
				<content:encoded><![CDATA[<p>[dtse]<a href="http://www.jeffdepascale.com/news/wp-content/uploads/2010/04/Screen-shot-2010-04-08-at-5.05.00-PM.png"><img class="alignright size-medium wp-image-511" title="Screen shot 2010-04-08 at 5.05.00 PM" src="http://www.jeffdepascale.com/news/wp-content/uploads/2010/04/Screen-shot-2010-04-08-at-5.05.00-PM-165x300.png" alt="" width="165" height="300" /></a>[/dtse]Scott Forstall, SVP of iPhone Software for Apple, appeared to dodge the question of how to kill an app running in the new multitasking interface for iPhone OS 4.0. When asked during the Q &amp; A session post announcement, he stated that it wasn&#8217;t necessary to kill the apps in the first place. Note he never actually said you can&#8217;t kill an app, and the iPhone Simulator for OS 4.0 confirms directly that yes, rest assured, you can kill a running app quickly and easily, and it&#8217;s just as you would expect &#8211; tap and hold, and a red dash icon appears over the app. Touch again and the process is killed. Simple, expected, works. See the image to the right for a screen shot.</p>
<p>Really, killing apps is the only reason to have the multitask bar anyway &#8211; since multiple instances of running apps isnt possible in iPhone OS, you could simply return to the running app by re-tapping the app icon on the home screen. The multitask bar exists solely for a shortcut to running apps and to kill them from running.</p>
<p>No more stressing in the blogs about apps being killed only by the OS! You do have control if you want it. Likely what Scott was implying is that you just don&#8217;t have to monitor it if you don&#8217;t choose to.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffdepascale.com/index.php/general/multitask-apps-can-be-killed-in-os-4-0/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>iPhone OS 4.0 beta does not include iPad device firmware</title>
		<link>http://www.jeffdepascale.com/index.php/mobile/iphone-os/iphone-os-4-0-beta-does-not-include-ipad-device-firmware/</link>
		<comments>http://www.jeffdepascale.com/index.php/mobile/iphone-os/iphone-os-4-0-beta-does-not-include-ipad-device-firmware/#comments</comments>
		<pubDate>Thu, 08 Apr 2010 18:45:19 +0000</pubDate>
		<dc:creator>Jeff dePascale</dc:creator>
				<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone OS]]></category>
		<category><![CDATA[4.0]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[OS]]></category>
		<category><![CDATA[sdk]]></category>

		<guid isPermaLink="false">http://www.jeffdepascale.com/?p=505</guid>
		<description><![CDATA[Officially official &#8211; Apple already stated the iPad wouldn&#8217;t get an end user 4.0 release until the fall, and in line with that developers do not have access to an on-device 4.0 beta in the just released SDK either.]]></description>
				<content:encoded><![CDATA[<p>Officially official &#8211; Apple already stated the<a href="http://www.engadget.com/2010/04/08/iphone-os-4-not-coming-to-the-ipad-until-the-fall/" target="_blank"> iPad wouldn&#8217;t get an end user 4.0 release until the fall</a>, and in line with that developers do not have access to an on-device 4.0 beta in the just released SDK either.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffdepascale.com/index.php/mobile/iphone-os/iphone-os-4-0-beta-does-not-include-ipad-device-firmware/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
