<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-930007117238863596</id><updated>2024-10-09T09:21:02.900+02:00</updated><category term="apple"/><category term="100% cpu"/><category term="Appshaker genesis development"/><category term="Finder"/><category term="Lion"/><category term="Mac OS X"/><category term="MacBook Pro"/><category term="Mountain Lion"/><category term="apple iphone 3gs upgrade mobile operators"/><category term="apple iphone sdk tiltsnake"/><category term="apple wwdc 2009 iphone mac os x snow leopard steve jobs"/><category term="appshaker random iphone appstore application"/><category term="appstore"/><category term="appstore approval process sandbox sdk iphone"/><category term="bodega"/><category term="cpu hog"/><category term="domain name scam"/><category term="iMac"/><category term="iphone application refusal horror story"/><category term="iphone appstore refusal"/><category term="iphone os 3.0 features open SDK development platform"/><category term="iphone os 3.0 reaction commentary"/><category term="iphone sdk long text UILabel UITextView texture length"/><category term="iphone themes customization look and feel"/><category term="iphone user community"/><category term="mac"/><category term="macupdate"/><category term="nsurldownload asihttprequest asinetworkqueue"/><category term="tiltsnake update iphone app appstore"/><title type='text'>Failure is not an option</title><subtitle type='html'>iPhone Software Developer blog.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blog.tofodo.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default?start-index=26&amp;max-results=25&amp;redirect=false'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>38</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-1609029285082318080</id><published>2012-08-23T11:44:00.001+02:00</published><updated>2012-08-23T11:44:20.941+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="100% cpu"/><category scheme="http://www.blogger.com/atom/ns#" term="apple"/><category scheme="http://www.blogger.com/atom/ns#" term="cpu hog"/><category scheme="http://www.blogger.com/atom/ns#" term="Finder"/><category scheme="http://www.blogger.com/atom/ns#" term="iMac"/><category scheme="http://www.blogger.com/atom/ns#" term="Lion"/><category scheme="http://www.blogger.com/atom/ns#" term="Mac OS X"/><category scheme="http://www.blogger.com/atom/ns#" term="MacBook Pro"/><category scheme="http://www.blogger.com/atom/ns#" term="Mountain Lion"/><title type='text'>Finder eating up 100% CPU</title><content type='html'>For the last few days I was struggling with my iMac recently updated to Mountain Lion. The computer was really slow, and when I look at the Activity Monitor, I noticed that the Finder was eating up a lot of CPU.&lt;br /&gt;
&lt;br /&gt;
I googled a little in order to find a solution, but somehow they didn&#39;t seem to really correspond to my problem. The closest described the fact that some users had activate the &quot;Calculate all sizes&quot; (from the view options in the Finder) on the Desktop folder and that either removing files from the desktop or deactivating this option would solve the problem.&lt;br /&gt;
&lt;br /&gt;
I of course check if the option was active on the Desktop folder but that wasn&#39;t the case. It&#39;s at that point that I noticed the &quot;Use as defaults&quot; button. I made sure that the &quot;Calculate all sizes&quot; option was off and then clicked &quot;Use as defaults&quot;, restarted the Finder (either using the Apple menu &quot;Force quit&quot;, selecting the Finder and clicking Relaunch or logging out and back in) and that did the trick !&lt;br /&gt;
&lt;br /&gt;
I hope this will help you as much as it did me !</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/1609029285082318080/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/1609029285082318080' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/1609029285082318080'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/1609029285082318080'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2012/08/finder-eating-up-100-cpu.html' title='Finder eating up 100% CPU'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-8801865127973221328</id><published>2011-01-07T07:34:00.001+01:00</published><updated>2011-01-07T07:34:29.822+01:00</updated><title type='text'>Unable to read symbols warning with XCode 3.2.5 and iOS 4.2.1</title><content type='html'>&lt;div class=&#39;posterous_autopost&#39;&gt;&lt;p&gt;If you get one of the following messages in the console while starting your program :&amp;nbsp;&lt;/p&gt;  &lt;p&gt;warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols/usr/lib/info/dns.so (file not found).&lt;/p&gt;  &lt;p&gt;or&lt;/p&gt;  &lt;p&gt;  &lt;p&gt;warning: Unable to read symbols for /Developer/Platforms/iPhoneOS.platform/DeviceSupport/4.2.1 (8C148)/Symbols/Developer/usr/lib/libXcodeDebuggerSupport.dylib (file not found).&lt;/p&gt;  &lt;div&gt;These are known problems by Apple, but they shouldn&#39;t prevent debugging. I spent some time on trying to solve these problems before I realised that indeed debugging was still working. Even using the new &quot;Collect&quot; feature in the Organizer for an unknown (minor) iOS version did not solve this problem. I guess it&#39;s just a bug we must live with until the next release of XCode.&lt;/div&gt;  &lt;/p&gt; &lt;p style=&quot;font-size: 10px;&quot;&gt; &lt;a href=&quot;http://posterous.com&quot;&gt;Posted via email&lt;/a&gt;  from &lt;a href=&quot;http://tofodo.posterous.com/unable-to-read-symbols-warning-with-xcode-325&quot;&gt;Tofodo Software&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/8801865127973221328/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/8801865127973221328' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/8801865127973221328'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/8801865127973221328'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2011/01/unable-to-read-symbols-warning-with.html' title='Unable to read symbols warning with XCode 3.2.5 and iOS 4.2.1'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-1637912257530485204</id><published>2011-01-06T15:45:00.001+01:00</published><updated>2011-01-06T15:45:08.824+01:00</updated><title type='text'>What the App Store really lacks</title><content type='html'>&lt;div class=&#39;posterous_autopost&#39;&gt;&lt;div&gt;Now that Apple has released the App Store for Mac it is becoming even more clear that what it really needs to do in the promotional information is to allow for videos. So many software products use video to promote their features, it is really a big lack. At the least it should provide ways to embed video or provide video links.&lt;/div&gt;  &lt;div&gt;Then again, this might put a strain on their content distribution network, and the cost might not be easy to offset with the margin they have for the store.&lt;/div&gt; &lt;p style=&quot;font-size: 10px;&quot;&gt; &lt;a href=&quot;http://posterous.com&quot;&gt;Posted via email&lt;/a&gt;  from &lt;a href=&quot;http://tofodo.posterous.com/what-the-app-store-really-lacks&quot;&gt;Tofodo Software&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/1637912257530485204/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/1637912257530485204' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/1637912257530485204'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/1637912257530485204'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2011/01/what-app-store-really-lacks.html' title='What the App Store really lacks'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-1586952205586021599</id><published>2011-01-06T15:38:00.001+01:00</published><updated>2011-01-06T15:38:07.726+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="apple"/><category scheme="http://www.blogger.com/atom/ns#" term="appstore"/><category scheme="http://www.blogger.com/atom/ns#" term="bodega"/><category scheme="http://www.blogger.com/atom/ns#" term="mac"/><category scheme="http://www.blogger.com/atom/ns#" term="macupdate"/><title type='text'>The Mac App Store, revolutionary or evolutionary ?</title><content type='html'>&lt;div class=&#39;posterous_autopost&#39;&gt;&lt;p&gt;Apple has just released the new &lt;a href=&quot;http://www.apple.com/mac/app-store/&quot; title=&quot;Apple&#39;s Mac App Store&quot; target=&quot;_blank&quot;&gt;Mac App Store&lt;/a&gt;, a centralized way to distribute, purchase, install and update Mac applications, much in the same way you can now do it for the iPhone and iPad.&lt;/p&gt;  &lt;p&gt;From a programmer&#39;s point of view, this is really the next logical step, as they already have the platform in place for the mobile devices, and as all the devices including the desktop computers use the same operating system, it&#39;s mostly a matter of adapting the technology to make it work on different screen sizes and with various restrictions in place.&lt;/p&gt;  &lt;p&gt;Much has been written about the closed nature of the Apple application stores, and while it makes a lot of sense on the mobile devices, it remains to be seen how much of a good thing this can be for desktop applications. I think that a lot of the success of failure of this new store will depend on whether this is acceptable or not for the end users as well as the developers. Think for example of the number of &quot;tweaking&quot; applications available for Mac OS X. If these are not accepted in the store, surely developers will not be happy, and users will also suffer as they will not be able to get as much from the store in terms of choice.&lt;/p&gt;  &lt;p&gt;Despite all these limitations, I think that this new application store is more revolutionary than evolutionary. It will be the first time a serious effort will be done to completely integrate an application store with an operating system, all this coming from the same vendor. Sure, &lt;a href=&quot;http://www.macupdate.com/&quot; title=&quot;MacUpdate Web site&quot; target=&quot;_blank&quot;&gt;MacUpdate&lt;/a&gt; or &lt;a href=&quot;http://appbodega.com&quot; title=&quot;Bodega Web site&quot; target=&quot;_blank&quot;&gt;Bodega&lt;/a&gt; and others have tried to do this for a while, but their efforts never really took off, mostly because not every mac users can find them easily, without knowing about them. In the case of the new Apple built store, it will be installed by default on every Mac, and it will make it really easy for users to find new applications, and even better, get notified of updates, etc.&lt;/p&gt;  &lt;p&gt;This is also great new for Mac users that have always suffered from lack of choice for applications. Before the Mac got to it&#39;s current marketshare, it was very difficult to find equivalent applications to Windows applications, mostly because the marketshare was smaller and developers wouldn&#39;t seriously target the Mac as revenue was not guaranteed. With an integrated application store, this could all change, and with Mac marketshare growing, this could definitely make it very interesting for developers.&lt;/p&gt;  &lt;p&gt;A lot of existing iPhone and iPad developers will also be able to port their apps relatively easily, although they will have to refactor the front-ends, as the frameworks are not exactly the same. Despite this they already know the programming language (Objective C) and most of the UI building can be done in Interface Builder, so it shouldn&#39;t be that much of a port.&lt;/p&gt;  &lt;p&gt;I think also that this new store is revolutionary, because if it does take off like the iPhone and iPad ones did, it will be immediately imitated by other OS vendors. Actually here Ubuntu is already a player in this space, but again, on Linux most of the stuff is free, so maybe there is no interest for developers to make any money there. On Windows however, you can be sure that Microsoft will be looking at Apple&#39;s effort very closely, and if they see that it is picking up, they might start integrating something similar. Of course for them it&#39;s always a bit more tricky, as somehow Microsoft always gets more heat for integrating things than Apple does (why this is is a mystery to me :)).&lt;/p&gt;  &lt;p&gt;Anyway, exciting times on the desktop side for once, it will be definitely interesting to watch !&lt;/p&gt; &lt;p style=&quot;font-size: 10px;&quot;&gt; &lt;a href=&quot;http://posterous.com&quot;&gt;Posted via email&lt;/a&gt;  from &lt;a href=&quot;http://tofodo.posterous.com/the-mac-app-store-revolutionary-or-evolutiona&quot;&gt;Tofodo Software&lt;/a&gt; &lt;/p&gt; &lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/1586952205586021599/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/1586952205586021599' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/1586952205586021599'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/1586952205586021599'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2011/01/mac-app-store-revolutionary-or.html' title='The Mac App Store, revolutionary or evolutionary ?'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-4489994396636016351</id><published>2009-09-23T08:59:00.001+02:00</published><updated>2009-09-23T08:59:00.543+02:00</updated><title type='text'>Be careful when using custom iPhone frameworks</title><content type='html'>
&lt;p&gt;In my previous post (&lt;a href=&quot;http://tofodo.posterous.com/watch-out-for-iphone-deployment-target-defini)&quot;&gt;http://tofodo.posterous.com/watch-out-for-iphone-deployment-target-defini)&lt;/a&gt;, I went into details about the deployment target variables, and it&#39;s importance to be setup right. Despite this, I was still running into a strange issue. I was basically seeing the following compilation directives. &lt;p /&gt; For the simulator : &lt;p /&gt; -D__IPHONE_OS_VERSION_MIN_REQUIRED=20000 &lt;p /&gt; and for the device : &lt;p /&gt; -miphoneos-version-min=2.0 &lt;p /&gt; I spent a *long* time trying to find where these were coming from, searching all over the iPhone SDK, my project files, everywhere, or at least I thought so. I then had the idea of creating an empty project and comparing the project information between the two. That is when I came across the fact that I was linking to an custom iPhone Framework that I use for AppShaker: json-framework. Curious, I went into the framework files and guess what I found in these ? &lt;p /&gt; In ~/Library/SDKs/JSON/iphonesimulator.sdk/SDKSettings.plist :&lt;/p&gt;  &lt;p&gt;&lt;span style=&quot;&quot;&gt; &lt;/span&gt;&amp;lt;key&amp;gt;GCC_PRODUCT_TYPE_PREPROCESSOR_DEFINITIONS&amp;lt;/key&amp;gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=&quot;&quot;&gt; &lt;/span&gt;&amp;lt;string&amp;gt; __IPHONE_OS_VERSION_MIN_REQUIRED=20000&amp;lt;/string&amp;gt;&lt;/p&gt;  &lt;p&gt;and in ~/Library/SDKs/JSON/iphoneos.sdk/SDKSettings.plist :&lt;/p&gt;  &lt;p&gt;&lt;span style=&quot;&quot;&gt; &lt;/span&gt;&amp;lt;key&amp;gt;IPHONEOS_DEPLOYMENT_TARGET&amp;lt;/key&amp;gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=&quot;&quot;&gt; &lt;/span&gt;&amp;lt;string&amp;gt;2.0&amp;lt;/string&amp;gt;&lt;/p&gt;  &lt;p&gt;So there you have it ! What I had been searching for all this time. Seems like it was a very poor idea for this SDK to include such directives, because it means that they will always override your project settings. Looks like, although less clean, it is a better idea for the moment to copy the source files into your project, as I have been doing with ASIHttpRequest, than to link to a framework setup that can be quite obscure.&lt;/p&gt; &lt;p style=&quot;font-size: 10px;&quot;&gt; &lt;a href=&quot;http://posterous.com&quot;&gt;Posted via email&lt;/a&gt;  from &lt;a href=&quot;http://tofodo.posterous.com/be-careful-when-using-custom-iphone-framework&quot;&gt;Tofodo Software&lt;/a&gt; &lt;/p&gt;   </content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/4489994396636016351/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/4489994396636016351' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/4489994396636016351'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/4489994396636016351'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/09/be-careful-when-using-custom-iphone_23.html' title='Be careful when using custom iPhone frameworks'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-3199193143120827386</id><published>2009-09-21T09:33:00.001+02:00</published><updated>2009-09-21T09:33:34.406+02:00</updated><title type='text'>Posterous doesn&amp;#39;t like #endif !</title><content type='html'>
&lt;p&gt;I just spent the last twenty minutes trying to understand why Posterous was systematically truncating my previous blog entry, when I was submitting it by mail. It is a blog entry with code extracts, and it seems that if didn&#39;t like the #endif macros that were included in the text. This is because, according to their &lt;a href=&quot;http://posterous.com/help/email_tips&quot; title=&quot;Posterous&#39; FAQ&quot; target=&quot;_blank&quot;&gt;FAQ&lt;/a&gt;&amp;nbsp;:&lt;/p&gt;  &lt;p&gt;&quot;&lt;span style=&quot;font-size: 14px; color: #666666; line-height: 20px;&quot;&gt;Strip out your signature by ending your post with #end. We won&#39;t post anything after that text.&quot;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;Actually it seems that this is not exactly how it works, because I had multiple #endif statements and it was only truncating after the last entry. Anyway, to post this little problem I had to post via the web interface, as it was impossible to do it by email.&lt;/p&gt;  &lt;p&gt;I think they should offer another type of marker than #end because it is quite common that people will want to post code extracts on Posterous.&lt;/p&gt;   &lt;p style=&quot;font-size: 10px;&quot;&gt; &lt;a href=&quot;http://posterous.com&quot;&gt;Posted via web&lt;/a&gt;  from &lt;a href=&quot;http://tofodo.posterous.com/posterous-doesnt-like-endif&quot;&gt;Tofodo Software&lt;/a&gt; &lt;/p&gt;   </content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/3199193143120827386/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/3199193143120827386' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/3199193143120827386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/3199193143120827386'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/09/posterous-doesn-like-endif.html' title='Posterous doesn&amp;#39;t like #endif !'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-2314323473019382122</id><published>2009-09-21T09:20:00.002+02:00</published><updated>2009-09-21T09:22:24.735+02:00</updated><title type='text'>Watch out for iPhone Deployment Target definition !</title><content type='html'>&lt;div style=&quot;&quot;&gt;Yesterday, as I was working on an AppShaker update, I came across a really tricky problem, that I think quite a few of you might experience so I&#39;m detailing it here.&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;What happened is that I updated to the latest version of ASIHttpRequest, and also to the latest version of XCode 3.2 for iPhone OS 3.1 and again my project stopped compiling. More precisely it was the following code from ASIHttpRequest.m that was generating an error : &lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;color:#000000;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;&quot;&gt; &lt;/span&gt;&lt;/span&gt;// Obtain the list of proxies by running the autoconfiguration script&lt;/div&gt;&lt;div style=&quot;&quot;&gt;#if !TARGET_OS_IPHONE ||  __IPHONE_OS_VERSION_MIN_REQUIRED &amp;gt; __IPHONE_2_2&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color:#5e2a96;&quot;&gt;CFErrorRef&lt;/span&gt; err2 = &lt;span style=&quot;color:#ad168e;&quot;&gt;NULL&lt;/span&gt;;&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;color:#000000;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;&quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color:#5e2a96;&quot;&gt;NSArray&lt;/span&gt;&lt;span style=&quot;color:#000000;&quot;&gt; *proxies = [(&lt;/span&gt;&lt;span style=&quot;color:#5e2a96;&quot;&gt;NSArray&lt;/span&gt;&lt;span style=&quot;color:#000000;&quot;&gt; *)&lt;/span&gt;CFNetworkCopyProxiesForAutoConfigurationScript&lt;span style=&quot;color:#000000;&quot;&gt;((&lt;/span&gt;&lt;span style=&quot;color:#5e2a96;&quot;&gt;CFStringRef&lt;/span&gt;&lt;span style=&quot;color:#000000;&quot;&gt;)script,(&lt;/span&gt;&lt;span style=&quot;color:#5e2a96;&quot;&gt;CFURLRef&lt;/span&gt;&lt;span style=&quot;color:#000000;&quot;&gt;)theURL, &amp;amp;err2) &lt;/span&gt;autorelease&lt;span style=&quot;color:#000000;&quot;&gt;];&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color:#ad168e;&quot;&gt;if&lt;/span&gt; (err2) {&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;color:#000000;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;&quot;&gt;  &lt;/span&gt;&lt;/span&gt;return&lt;span style=&quot;color:#000000;&quot;&gt; &lt;/span&gt;nil&lt;span style=&quot;color:#000000;&quot;&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;&quot;&gt; &lt;/span&gt;}&lt;/div&gt;&lt;div style=&quot;&quot;&gt;#else&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;color:#000000;&quot;&gt;&lt;span class=&quot;Apple-tab-span&quot; style=&quot;&quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;color:#5e2a96;&quot;&gt;NSArray&lt;/span&gt;&lt;span style=&quot;color:#000000;&quot;&gt; *proxies = [(&lt;/span&gt;&lt;span style=&quot;color:#5e2a96;&quot;&gt;NSArray&lt;/span&gt;&lt;span style=&quot;color:#000000;&quot;&gt; *)&lt;/span&gt;CFNetworkCopyProxiesForAutoConfigurationScript&lt;span style=&quot;color:#000000;&quot;&gt;((&lt;/span&gt;&lt;span style=&quot;color:#5e2a96;&quot;&gt;CFStringRef&lt;/span&gt;&lt;span style=&quot;color:#000000;&quot;&gt;)script,(&lt;/span&gt;&lt;span style=&quot;color:#5e2a96;&quot;&gt;CFURLRef&lt;/span&gt;&lt;span style=&quot;color:#000000;&quot;&gt;)theURL) &lt;/span&gt;autorelease&lt;span style=&quot;color:#000000;&quot;&gt;];&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;&quot;&gt;#endif&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;Basically it was always compiling the &quot;else&quot; clause, despite the fact that I was compiling (or at least it seemed so) for OS 3.0, so we should be normally be in the first part of the clause. It was then failing because the version of the method being called was not the proper one. When looking at the error in detail, especially the command line that was being called, this is what was being generated in the case of compiling with the simulator :&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;CompileC &quot;build/AppShaker.build/Debug-iphonesimulator/AppShaker Lite.build/Objects-normal/i386/ASIHTTPRequest.o&quot; Classes/ASIHttpRequest/ASIHTTPRequest.m normal i386 objective-c com.apple.compilers.gcc.4_2&lt;/div&gt;&lt;div style=&quot;&quot;&gt;cd /Users/loom/Documents/work/iphone/AppShaker&lt;/div&gt;&lt;div style=&quot;&quot;&gt;setenv LANG en_US.US-ASCII&lt;/div&gt;&lt;div style=&quot;&quot;&gt;setenv PATH &quot;/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin&quot;&lt;/div&gt;&lt;div style=&quot;&quot;&gt;/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch i386 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -fasm-blocks -O0 -Wreturn-type -Wunused-variable &lt;b&gt;-D__IPHONE_OS_VERSION_MIN_REQUIRED=20000&lt;/b&gt; -isysroot /var/folders/95/95xwCQ0mEeivSCrcsKn1i++++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs/iphonesimulator-iPhoneSimulator3.0-aljhdklevtyfaoefjftiofmwffte -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 -iquote &quot;/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphonesimulator/AppShaker Lite.build/AppShakerLite-generated-files.hmap&quot; &quot;-I/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphonesimulator/AppShaker Lite.build/AppShakerLite-own-target-headers.hmap&quot; &quot;-I/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphonesimulator/AppShaker Lite.build/AppShakerLite-all-target-headers.hmap&quot; -iquote &quot;/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphonesimulator/AppShaker Lite.build/AppShakerLite-project-headers.hmap&quot; -F/Users/loom/Documents/work/iphone/AppShaker/build/Debug-iphonesimulator -I/Users/loom/Documents/work/iphone/AppShaker/build/Debug-iphonesimulator/include -I../fbconnect-iphone/src &quot;-I/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphonesimulator/AppShaker Lite.build/DerivedSources/i386&quot; &quot;-I/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphonesimulator/AppShaker Lite.build/DerivedSources&quot; -DLITE_VERSION -include /var/folders/95/95xwCQ0mEeivSCrcsKn1i++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/AppShaker_Prefix-audfaisngyebyfexxpoauqdgjasw/AppShaker_Prefix.pch -c /Users/loom/Documents/work/iphone/AppShaker/Classes/ASIHttpRequest/ASIHTTPRequest.m -o &quot;/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphonesimulator/AppShaker Lite.build/Objects-normal/i386/ASIHTTPRequest.o&quot;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;and when compiling for the device, I got the following command line :&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;CompileC &quot;build/AppShaker.build/Debug-iphoneos/AppShaker Lite.build/Objects-normal/armv6/ASIHTTPRequest.o&quot; Classes/ASIHttpRequest/ASIHTTPRequest.m normal armv6 objective-c com.apple.compilers.gcc.4_2&lt;/div&gt;&lt;div style=&quot;&quot;&gt;cd /Users/loom/Documents/work/iphone/AppShaker&lt;/div&gt;&lt;div style=&quot;&quot;&gt;setenv LANG en_US.US-ASCII&lt;/div&gt;&lt;div style=&quot;&quot;&gt;setenv PATH &quot;/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin&quot;&lt;/div&gt;&lt;div style=&quot;&quot;&gt;/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x objective-c -arch armv6 -fmessage-length=0 -pipe -std=c99 -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /var/folders/95/95xwCQ0mEeivSCrcsKn1i++++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs/iphoneos-iPhoneOS3.0-gxzvuzxhrjrauieejvpvjxrjejlf -fvisibility=hidden -gdwarf-2 -mthumb &lt;b&gt;-miphoneos-version-min=2.0&lt;/b&gt; -iquote &quot;/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphoneos/AppShaker Lite.build/AppShakerLite-generated-files.hmap&quot; &quot;-I/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphoneos/AppShaker Lite.build/AppShakerLite-own-target-headers.hmap&quot; &quot;-I/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphoneos/AppShaker Lite.build/AppShakerLite-all-target-headers.hmap&quot; -iquote &quot;/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphoneos/AppShaker Lite.build/AppShakerLite-project-headers.hmap&quot; -F/Users/loom/Documents/work/iphone/AppShaker/build/Debug-iphoneos -I/Users/loom/Documents/work/iphone/AppShaker/build/Debug-iphoneos/include -I../fbconnect-iphone/src &quot;-I/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphoneos/AppShaker Lite.build/DerivedSources/armv6&quot; &quot;-I/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphoneos/AppShaker Lite.build/DerivedSources&quot; -DLITE_VERSION -include /var/folders/95/95xwCQ0mEeivSCrcsKn1i++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/AppShaker_Prefix-bgsrygfnnblyztcpvkeymcpfoigy/AppShaker_Prefix.pch -c /Users/loom/Documents/work/iphone/AppShaker/Classes/ASIHttpRequest/ASIHTTPRequest.m -o &quot;/Users/loom/Documents/work/iphone/AppShaker/build/AppShaker.build/Debug-iphoneos/AppShaker Lite.build/Objects-normal/armv6/ASIHTTPRequest.o&quot;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;Then I looked at the system defininition for the __IPHONE_OS_VERSION_MIN_REQUIRED constant :&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;#ifndef __IPHONE_OS_VERSION_MIN_REQUIRED&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;color:#000000;&quot;&gt;    &lt;/span&gt;#ifdef __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;color:#000000;&quot;&gt;        &lt;/span&gt;// compiler sets __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__ when -miphoneos-version-min is used&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;color:#000000;&quot;&gt;        &lt;/span&gt;#define __IPHONE_OS_VERSION_MIN_REQUIRED __ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__&lt;/div&gt;&lt;div style=&quot;&quot;&gt;&lt;span style=&quot;color:#000000;&quot;&gt;    #&lt;/span&gt;endif&lt;/div&gt;&lt;div style=&quot;&quot;&gt;#endif&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;What is really interesting is that some nice engineer documented here in the comment that the environment constants comes from the -miphoneos-version-min command line option. So immediately I looked at the above command lines to figure out what the value was for those. In the case of the device compilation, indeed we can find it, and it&#39;s value is : &lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;-miphoneos-version-min=2.0&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;In the case of the simulator, strangely it isn&#39;t generating the same command line and is instead directly defining the minimal OS version directly, as seen in the extract below :&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;-D__IPHONE_OS_VERSION_MIN_REQUIRED=20000&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;Why the two environment compile differently is still a mystery to me so if any readers can shed some light they are more than welcome. &lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;When I saw the value being at minimal 2.0 I wondered where it could come from. I looked at my project build variables and I saw that I had multiple values for the IPHONEOS_DEPLOYMENT_TARGET variable, so I cleaned it up and removed all different levels. So basically this was what it looked like in the main project Info screen :&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;&lt;img src=&quot;http://posterous.com/getfile/files.posterous.com/tofodo/P5UZQUhLFyK6a2tkCITtrjyU0RHLZHIJ7XNXz62VyoqAmSxh2MPoU0sot6FK/PastedGraphic-1.png&quot; width=&quot;407&quot; height=&quot;20&quot; /&gt; &lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;As it is NOT in bold, it means that the definition is using the default project compiler value, so I thought that was probably ok.&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;So I googled &quot;iphoneos-version-min&quot; and came across the following source code (&lt;a href=&quot;http://www.opensource.apple.com/source/gcc_42/gcc_42-5566/gcc/config/darwin-driver.c?f=text&quot;&gt;&lt;span style=&quot;text-decoration: underline ; color:#1417ee;&quot;&gt;http://www.opensource.apple.com/source/gcc_42/gcc_42-5566/gcc/config/darwin-driver.c?f=text&lt;/span&gt;&lt;/a&gt;), which is basically GCC patches contributed by Apple to the GNU compiler project. The interesting part is the following extract :&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;  /* For iPhone OS, if no version number is specified, we default to&lt;/div&gt;&lt;div style=&quot;&quot;&gt;     2.0.  */&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;As this was the behavior I was seeing, I suspected that probably the default in the project info must not be correct. So I tried the following, which worked (!) : I went back to the project info, selected the &quot;iPhone OS Deployment Target&quot;, the selected &quot;iPhone OS 2.0&quot; (or any different value, it doesn&#39;t matter, and then reselected &quot;iPhone OS 3.0&quot;. This had the effect of making a definition at the project level, which is confirmed by the fact that the setting is now in bold, as illustrated below : &lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;&lt;img src=&quot;http://posterous.com/getfile/files.posterous.com/tofodo/lQ18ElyyWcyfrE6Lwf7euGMdzCRLGe8VonP3CF0XT1341EPYBGdcela51VMn/PastedGraphic-2.png&quot; width=&quot;378&quot; height=&quot;18&quot; /&gt; &lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;I then selected &quot;Build -&amp;gt; Clean All Targets&quot; and rebuilt all targets, and that was it !&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div style=&quot;&quot;&gt;So there it was, another obscure behavior of XCode. If others have this problem, please comment this blog entry, and I might then make a bug report to Apple, because this is really tricky to figure out.&lt;/div&gt; &lt;p style=&quot;font-size: 10px;&quot;&gt; &lt;a href=&quot;http://posterous.com/&quot;&gt;Posted via email&lt;/a&gt;  from &lt;a href=&quot;http://tofodo.posterous.com/watch-out-for-iphone-deployment-target-defini&quot;&gt;Tofodo Software&lt;/a&gt; &lt;/p&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/2314323473019382122/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/2314323473019382122' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/2314323473019382122'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/2314323473019382122'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/09/watch-out-for-iphone-deployment-target_6228.html' title='Watch out for iPhone Deployment Target definition !'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-7494622119858347356</id><published>2009-09-02T19:22:00.001+02:00</published><updated>2009-09-02T19:22:37.990+02:00</updated><title type='text'>Apple now checks keywords in iPhone app submissions</title><content type='html'>
After a little more than 3 weeks of waiting, Apple has finally rejected the new version of TiltSnake Lite. I figure I am becoming quite the expert at getting my apps rejected, because it seems to be basically one of two submissions that gets rejected. &lt;p /&gt;&amp;nbsp;But what is new is the reason : inappropriate keywords ! This is the first time I heard about Apple checking the keywords. I must say that here I understand a little the rejection because I did &quot;cheat&quot; a little, because of lot of other application developers were cheating in their keywords. I guess that Apple is really committed to improving the quality of searches in the App Store and therefore I understand that they start validating keywords. The problem is that there are already quite a few apps out there with invalid keywords, and so on updates it is quite possible that developers will get rejections for this new reason while it was acceptable before. &lt;p /&gt;&amp;nbsp;For the details, here is a extract of the rejection email : &lt;p /&gt;&amp;nbsp;&quot;Thank you for submitting TiltSnake 1.3 to the App Store. We&#39;ve reviewed TiltSnake 1.3 and determined that we cannot post this version of your iPhone application to the App Store at this time because of inappropriate &#39;Keywords&#39; used to identify your application. We cannot post applications that contain irrelevant keywords in their search criteria. Keywords must be applicable to the application content. It would be appropriate to remove the word sexy from your &#39;Keywords&#39;. &quot; &lt;p style=&quot;font-size: 10px;&quot;&gt; &lt;a href=&quot;http://posterous.com&quot;&gt;Posted via email&lt;/a&gt;  from &lt;a href=&quot;http://tofodo.posterous.com/apple-now-checks-keywords-in-iphone-app-submi&quot;&gt;Tofodo Software&lt;/a&gt; &lt;/p&gt;   </content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/7494622119858347356/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/7494622119858347356' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/7494622119858347356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/7494622119858347356'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/09/apple-now-checks-keywords-in-iphone-app.html' title='Apple now checks keywords in iPhone app submissions'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-3187343961700502746</id><published>2009-09-02T14:56:00.001+02:00</published><updated>2009-09-02T14:56:49.494+02:00</updated><title type='text'>Compilation error when upgrading to Snow Leopard</title><content type='html'>
&lt;div&gt;Today I just upgraded my development machine from Leopard to Snow Leopard, and upgraded the XCode environment from 3.0 to 3.2. Here are the steps I needed to perform :&amp;nbsp;&lt;/div&gt;&lt;p /&gt;&lt;div&gt;The SDK 3.0 is the only one supported, so if you had projects that were compiling against earlier SDKs, you will have to update them. Here are the basic steps to upgrading your project to a Snow Leopard environment :&amp;nbsp;&lt;/div&gt;&lt;div&gt;1. Download the Snow Leopard SDK &amp;amp; Install it&lt;/div&gt;&lt;div&gt;2. For each project, In the project info, switch the base SDK to 3.0&lt;/div&gt;&lt;div&gt;3. In each target, check in the info that the SDK is also 3.0&lt;/div&gt;&lt;div&gt;4. For each target, switch the compiler from GCC 4.0 to GCC 4.2 (or you get an obscure compilation error :&amp;nbsp;&lt;span style=&quot;&quot;&gt;UILocalizedIndexedCollation error: syntax error before &#39;AT_NAME&#39; token)&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;&quot;&gt;5. Empty the cache in XCode&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;&quot;&gt;6. Clean all targets&lt;/span&gt;&lt;/div&gt;&lt;p /&gt;&lt;div&gt;&lt;span style=&quot;&quot;&gt;This should be everything. Of course feel free to comment this post if you find any more steps or if I have missed something. &lt;/span&gt;&lt;/div&gt; &lt;p style=&quot;font-size: 10px;&quot;&gt; &lt;a href=&quot;http://posterous.com&quot;&gt;Posted via email&lt;/a&gt;  from &lt;a href=&quot;http://tofodo.posterous.com/compilation-error-when-upgrading-to-snow-leop&quot;&gt;Tofodo Software&lt;/a&gt; &lt;/p&gt;   </content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/3187343961700502746/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/3187343961700502746' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/3187343961700502746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/3187343961700502746'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/09/compilation-error-when-upgrading-to.html' title='Compilation error when upgrading to Snow Leopard'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-4040976698218707</id><published>2009-08-30T17:33:00.001+02:00</published><updated>2009-08-30T17:33:51.806+02:00</updated><title type='text'>Watch your own ads Apple, spend less on marketing, fix the AppStore !</title><content type='html'>
&lt;span style=&quot;font-family: Arial, Helvetica, sans-serif; font-size: 13px;&quot;&gt;&lt;p&gt;&lt;object height=&quot;417&quot; width=&quot;500&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/MimCZikP8cY&amp;hl=en&amp;fs=1&quot; /&gt;&lt;/param&gt;&lt;param name=&quot;wmode&quot; value=&quot;window&quot; /&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot; /&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot; /&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/MimCZikP8cY&amp;hl=en&amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowfullscreen=&quot;true&quot; allowscriptaccess=&quot;always&quot; height=&quot;417&quot; wmode=&quot;window&quot; width=&quot;500&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;&lt;p&gt;In the above ad, Apple makes fun of Microsoft that seems to be spending more on marketing Vista than fixing it&#39;s problems. Well I think the same could be said of the App Store. Isn&#39;t that ironic ?&amp;nbsp;&lt;/p&gt;&lt;p&gt;What if Apple spent as much money fixing the AppStore approval process and improving the developers tools as it spends advertising it ? Possibly the developers would be happy campers, and could avoid jailbreaking their phones to be able to create truly innovative and compelling applications. They are already doing amazing things in the confines of the quite limited sandbox, so imagine what they could do without those confines ?&lt;/p&gt;&lt;p&gt;In his blog post (&lt;a href=&quot;http://joehewitt.com/post/innocent-until-proven-guilty/&quot;&gt;http://joehewitt.com/post/innocent-until-proven-guilty/&lt;/a&gt;), Joe Hewitt (developer of the Facebook app) argues that Apple should get rid of the approval process entirely. As a rebuttal (&lt;a href=&quot;http://mashable.com/2009/08/25/facebook-changes-iphone/&quot;&gt;http://mashable.com/2009/08/25/facebook-changes-iphone/&lt;/a&gt;), Ben Parr argues that Apple should improve it and offers solutions to improve it. I must say that my personal opinion is closer to Joe&#39;s than Ben&#39;s, because I think that any approval process in inherently hindering the pace of innovation and bug fixing. Ben even adds the idea that some developers, like Joe, should be given priority for approval, because they are &quot;trustworthy&quot;. In this last argument, I am completely in disapproval ! One of the strong arguments for the App Store is that a small developer has a chance to get his great application out there and compete with large companies. It&#39;s this type of competition that is healthy in the software industry, and if Apple started giving &quot;priorities&quot; to large companies (and they probably are already in some cases), it would be another blow to small-time developers. And innovation often comes from small-time developers.&lt;/p&gt;&lt;p&gt;If you have read my other blog posts on this subject, you know that I find it quite hard to stay motivated on developing new and improving existing applications when the review process is so slow and impredictable. For example, it has now been, at the time of this writing, over 3 weeks for both the TiltSnake Lite and AppShaker Lite applications since they were submitted, and I have no news from Apple. Did my applications get lost somewhere, should I try to write (nobody answers anyway, so what&#39;s the point ?), or should I simply wait some more ? For the moment I am choosing to wait, but at the same time I don&#39;t really see why I would work on improving the applications further, since it is entirely possible that the existing versions might be rejected for some obscure reason, and I will have to backtrack all changes to re-submit them. We really need tighter feedback loops.&lt;/p&gt;&lt;p&gt;What can you do about this ? Well the best way to get Apple to change something is to voice your disapproval of the current situation. The more we are, the more negative press is out there, the more chances that Apple will respond. And they have started answering, especially with the FCC getting involved, so there is some hope...&lt;/p&gt;&lt;/span&gt; &lt;p style=&quot;font-size: 10px;&quot;&gt; &lt;a href=&quot;http://posterous.com&quot;&gt;Posted via email&lt;/a&gt;  from &lt;a href=&quot;http://tofodo.posterous.com/watch-your-own-ads-apple-spend-less-on-market&quot;&gt;Tofodo Software&lt;/a&gt; &lt;/p&gt;   </content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/4040976698218707/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/4040976698218707' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/4040976698218707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/4040976698218707'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/08/watch-your-own-ads-apple-spend-less-on.html' title='Watch your own ads Apple, spend less on marketing, fix the AppStore !'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-493676693228050610</id><published>2009-08-13T19:41:00.001+02:00</published><updated>2009-08-13T19:41:16.359+02:00</updated><title type='text'>Apple now resort to intimidation tactics to reject applications</title><content type='html'>
In the midst of all the buzz around Apple responding to developer complaints and iPhone boycotts, I thought I would share what happened to me. &lt;p /&gt;&amp;nbsp;In my case, Apple has resorted to intimidation tactics to reject an application. &lt;p /&gt;&amp;nbsp;I have worked on and off, as a side to my day job to develop applications for the iPhone, and while there are plenty of problems I am willing to accept as a developer, the application approval process was always a frustrating one. &lt;p /&gt;&amp;nbsp;I have developed a small &quot;joke&quot; application, called ShakeCharge, that simulates recharging the device by shaking it, much like some real flashlights that actually work that way. I had this idea when Apple started approving all kinds of fart apps, and thought that maybe I could make a few bucks and share a few laughs with some customers. I always made sure that I marketed the application so that the user would understand it was a joke. In the last version of the app, the main screen was a warning screen, that nobody could confuse for the real thing.&lt;p&gt;&lt;img src=&quot;http://posterous.com/getfile/files.posterous.com/tofodo/GtCkni7LAC3EJsmR15434dDapEjgVa7EHgYDaioopu09JRzUhuckzuwKz5M9/ShakeCharge_screenshot-5.jpg&quot; width=&quot;320&quot; height=&quot;480&quot;/&gt; &lt;/p&gt;&lt;p&gt;Fast forward to today. I get a call from a person at Apple (the same Richard that everyone has been mentioning), that said they were reviewing my application &quot;ShakeCharge&quot;, and that I had submitted it multiple times without modifying it. The last time I did indeed do that, but all the previous times I made modifications to the application, to make sure that I would comply to every criteria. &lt;br /&gt;&amp;nbsp;&lt;br /&gt;The person on the phone told me : &quot;Please don&#39;t ever re-submit this application, we will never accept it. Spend your time and energy on other applications.&quot; . I replied that I didn&#39;t understand the rejection as they had approved a very similar app that simulate recharging the battery with the screen acting as a solar panel. His reply was : &quot;I am not authorized to engage in such a discussion&quot;. The call ended basically in us both agreeing that we would not agree. &lt;br /&gt;&amp;nbsp;&lt;br /&gt;For me this is a intimidation tactic. There is nothing in my application that violates the terms of the iPhone Developer Program. They are somehow threatened by this application, and I don&#39;t understand why. What is certain is that this Richard person is relaying scary messages to the developers and that however is in charge of these refusals should seriously reconsider, because as these horror stories accumulate, all the good developers will start looking elsewhere, leaving Apple with just the developers that will do anything to make a quick buck.&lt;/p&gt; &lt;p style=&quot;font-size: 10px;&quot;&gt; &lt;a href=&quot;http://posterous.com&quot;&gt;Posted via email&lt;/a&gt;  from &lt;a href=&quot;http://tofodo.posterous.com/apple-now-resort-to-intimidation-tactics-to-r-0&quot;&gt;Tofodo Software&lt;/a&gt; &lt;/p&gt;   </content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/493676693228050610/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/493676693228050610' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/493676693228050610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/493676693228050610'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/08/apple-now-resort-to-intimidation.html' title='Apple now resort to intimidation tactics to reject applications'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-1923566296240224123</id><published>2009-06-19T08:41:00.005+02:00</published><updated>2009-06-19T08:54:54.354+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="apple iphone 3gs upgrade mobile operators"/><title type='text'>Apple might be missing 3GS sales</title><content type='html'>With all the buzz going on right now about the new iPhone 3GS coming out today, it is hard to believe that Apple might be doing something wrong. But actually they are, and I will illustrate this with an example.&lt;br /&gt;&lt;br /&gt;I am, like many Apple fans, an early adopter of their products. When the first iPhone came out, it wasn&#39;t available in Switzerland, so I bought it in the US and unlocked it so I could use it in my native country. When the 3G came out in Switzerland, I was first in line to get it, and I purchased it the day it came out.&lt;br /&gt;&lt;br /&gt;As an iPhone developer, you have an extra reason to be an early adopter, you need the time to develop for the new features, such as the compass or the video capabilities of the 3GS. Unfortunately, it looks like I won&#39;t be getting a 3GS on launch day, because in Switzerland there is no proper upgrade offer (unlike what AT&amp;amp;T in the US and Rogers in Canada are offering).&lt;br /&gt;&lt;br /&gt;So if I am delaying my purchase of a 3GS when I am usually behaving as an early adopter, I got to thinking that maybe others will react the same way. And this is bad news for Apple, which uses impulse buying a lot to trigger sales. Look at the amount of purchase orders that come in just after announcements ! Apple fans are loyal and faithful customers, and very early adopters. Loosing that sale, especially in the current economic crisis, seems like a big problem.&lt;br /&gt;&lt;br /&gt;I know that possibly part of this reasoning is my personal deception, but I believe that I am probably not the only one customer that will be delaying an order, or maybe once the fad has passed, completely skipping it for the next generation, and that spells trouble for Apple. The mobile operators don&#39;t really mind it, because they sponsorised the previous phone and prefer not to have to invest too much in sponsoring an upgrade. Strangely though AT&amp;amp;T and Rogers still think it&#39;s a good idea to keep customers happy :) Maybe others will follow, and that is my hope, but they will be missing the launch window.&lt;br /&gt;&lt;br /&gt;For Apple it&#39;s another story. It&#39;s possibly a lot of units that will not be purchased on launch day, and while that might help inventory, it will also change the sale decision from an impulse buy to a more reflected buy, which is a tougher sell. Anyway, despite this, I still think the 3GS will be a huge success, because just the US market will move enough sales for Apple to do quite well.&lt;br /&gt;&lt;br /&gt;Do you know what my mobile phone operator said when I inquired about an upgrade offer ? &quot;Well, with the 3.0 OS update you get all the features you need.&quot; Yes, except that I also want compass, video, faster performance and the new platform to develop for. Oh well, and to think that Google offered free Android phones to all attending the Google I/O keynote...</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/1923566296240224123/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/1923566296240224123' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/1923566296240224123'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/1923566296240224123'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/06/apple-might-be-missing-3gs-sales.html' title='Apple might be missing 3GS sales'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-8724515970293489154</id><published>2009-05-13T16:04:00.002+02:00</published><updated>2009-05-13T16:18:21.413+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="apple wwdc 2009 iphone mac os x snow leopard steve jobs"/><title type='text'>No Steve Jobs at WWDC 2009 ?</title><content type='html'>It has &lt;a href=&quot;http://www.apple.com/pr/library/2009/05/13wwdc.html&quot;&gt;just been announced&lt;/a&gt; by Apple that Phil Shiller will lead a team of Apple executives for the WWDC 2009 Keynote, so this seems to indicate that Steve Jobs will not be doing it. While it remains to be seen how the industry will receive this, Wall Street will be definitely interesting to watch. Apple will not only be presenting new products, but also a way to work without (or with less of) the input of Steve Jobs.&lt;br /&gt;&lt;br /&gt;My only hope is that they have something in store for the AppStore approval process, because I would be very dissappointed if they left it the way it is. It is now a huge mess, and a PR nightmare for them. The worst part is that the process doesn&#39;t even really filter out the junk applications and is sometimes &lt;a href=&quot;http://justanotheriphoneblog.com/wordpress/iphone-app-store/latest-dopey-app-store-rejection-twitter-app-turned-down-because-twitter-was-down-when-it-got-reviewed&quot;&gt;completely stupid&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The new AppStore market is a great one, and despite the gold rush being mostly over, it is still an incredibly efficient way of delivering applications to end-users, including updates. I am sure it has set a new standard for delivery, and will probably be copied many times in many different industries.&lt;br /&gt;&lt;br /&gt;WWDC is just a few days away and I am expecting evolutionary steps at this point, and possibly a new iPhone and some Mac refreshes. Mac OS X Snow Leopard will probably be a very nice update, and hopefully will give Apple the edge they need to keep the flux of buyers coming in, and competing with Windows 7. But the real surprise might be in prices, as the economic crunch is being felt pretty hard in the US. Then again that would be another first for Apple, provided it is something they feel is needed for them to grow again.&lt;br /&gt;&lt;br /&gt;Interesting times indeed....</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/8724515970293489154/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/8724515970293489154' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/8724515970293489154'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/8724515970293489154'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/05/no-steve-jobs-at-wwdc-2009.html' title='No Steve Jobs at WWDC 2009 ?'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-7945996355801922223</id><published>2009-05-10T17:42:00.004+02:00</published><updated>2009-05-10T18:00:12.159+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="nsurldownload asihttprequest asinetworkqueue"/><title type='text'>ASINetworkQueue and selectors</title><content type='html'>I have been working today with the ASIHttpRequest library, which I must say is really nice. But the documentation is a bit lacking, and I discovered that if you try to set selector on a request and then insert that request into an ASINetworkQueue, the selectors never get called. Why ?&lt;br /&gt;&lt;br /&gt;Well looking through the code of ASINetworkQueue.addOperation, I found the following code :&lt;br /&gt;&lt;br /&gt;       [request setDelegate:self];&lt;br /&gt;       [request setDidFailSelector:@selector(requestDidFail:)];&lt;br /&gt;       [request setDidFinishSelector:@selector(requestDidFinish:)];&lt;br /&gt;&lt;br /&gt;This basically replaces whatever selectors you initially set, so it will look like your code is not being called, which is indeed the case. I solved this problem by using NSOperationQueue with ASIHttpRequest instead of ASINetworkQueue, as I didn&#39;t need the progress indicators. But it does seem to me like a limitation of this library, because in the case where you want to use both the progress indicators and the selectors, well, you can&#39;t :)&lt;br /&gt;&lt;br /&gt;The ASINetworkQueue class does support delegate on it&#39;s class to indicate a request has completed, but this means that all request must have the same delegates, which is less flexible than being able to have a precise delegate for a selected request (which was also my case).&lt;br /&gt;&lt;br /&gt;Despite this, this ASIHttpRequest is excellent, and I highly recommend it ! It works much better than the stock NSURLDownload objects.</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/7945996355801922223/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/7945996355801922223' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/7945996355801922223'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/7945996355801922223'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/05/asinetworkqueue.html' title='ASINetworkQueue and selectors'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-4588642416949367880</id><published>2009-04-06T08:42:00.005+02:00</published><updated>2009-04-06T09:04:10.014+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iphone user community"/><title type='text'>Thoughts on TiltSnake iPhone users</title><content type='html'>With the inclusion of a way of sending back feedback directly from the TiltSnake iPhone application, simply by sending an email using the device&#39;s Mail application, I have been getting a lot of input from my users.&lt;br /&gt;&lt;br /&gt;Some of it is good, some real good, some strange or simply mistakes (more on this in a future blog post), and some of it has been really bad. I won&#39;t go in detail about the fact that some companies with applications in the store are sending me spam emails when they really don&#39;t need it ! What&#39;s crazy is that they are targeting developers to buy their games ? Since when are iPhone developers a good target market for games ? Seems strange to me but maybe it makes sense ?&lt;br /&gt;&lt;br /&gt;The topic of this blog post is to talk about the really bad feedback. While some of it I can understand, simply users that had high expectations that the game didn&#39;t meet for some reason, I&#39;d like to point out the fact that I get some really rude emails from what I can only guess are young users that somehow think it&#39;s a good idea (or even fun or cool ?) to send the most rude and insulting feedback. At first I&#39;d ignore it, but depending on my mood, I&#39;d reply to some of them.&lt;br /&gt;&lt;br /&gt;Why would I even bother to reply ? Well, maybe simply because I&#39;d like them to understand who they are insulting and that all actions have consequences. I guess a lot of iPhone users somehow imagine that because they shelled out a lot of money for the device, that all the content should be free. What is strange is that I&#39;m getting much better feedback from AppShaker, which is an application that cost a buck, because I&#39;m guessing I&#39;m not adressing the same community.&lt;br /&gt;&lt;br /&gt;TiltSnake is really at this point a labor of love, not really any big opportunity I&#39;m trying to capitalize on. I&#39;m trying to give the game a decent life, as it seems to be one of the only free snake games. All the competition has started asking money for it. All my friends &amp;amp; family call me crazy to keep giving it out for free, as I really should take this opportunity to make a quick buck. I have spent a lot of time on TiltSnake, and while it might not look like it, it was a lot harder to develop than you might have thought. For example, getting the accelerometer controlling to work decently was really tricky. Even the swiping algorithm is much more complex than you&#39;d think, as I had to adjust it to make left &amp;amp; right handed (or single and two-handed) gameplay work well.&lt;br /&gt;&lt;br /&gt;The biggest issue with TiltSnake is that I&#39;m not a graphic designer, and of course in comparison to some other apps out there that shine with this, my apps might look a little more bleak. I will continue to make them look better all the time, and as I&#39;m gaining experience with Core Graphics, Core Animation and even OpenGL this will come more natural. The platform is really powerful, often frustrating because things don&#39;t work like you expect them too, and you can&#39;t go look at the code when you&#39;re in trouble (since it&#39;s not open source), but there is so much you can do that usually you can achieve what you were envisioning (well almost :)).&lt;br /&gt;&lt;br /&gt;So it&#39;s hard sometimes, when you work hard, aside from your day job, on a free game that has been downloaded over 900&#39;000 times to get feedback that basically is just insulting. I feel for the other free application developers out there that are just doing it for the fun and are getting this type of feedback.&lt;br /&gt;&lt;br /&gt;And to all the insecure &amp;amp; immature kids who have sent me those types of feedback : follow my recommendation and store writing your own applications, or please learn to have respect for the people that working hard to give you stuff for free just for the fun of it !&lt;br /&gt;&lt;br /&gt;Finally, I&#39;d really like to thank all the great users that have contributed so much to TiltSnake by giving me moral support, sent great suggestions, and have just been wonderful to me. You guys know who you are, and it&#39;s really because there&#39;s a large majority of you rather than the vocal but minor of users I talked about in this post, that I keep on going. TiltSnake is still in it&#39;s infancy and I have a lot of plans for it, only lacking time to realize them.</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/4588642416949367880/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/4588642416949367880' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/4588642416949367880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/4588642416949367880'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/04/thoughts-on-iphone-users.html' title='Thoughts on TiltSnake iPhone users'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-5322877521740545693</id><published>2009-03-30T12:50:00.003+02:00</published><updated>2009-03-30T13:01:39.541+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iphone sdk long text UILabel UITextView texture length"/><title type='text'>iPhone SDK doesn&#39;t like long texts !</title><content type='html'>While working on the update to AppShaker, I decided to revamp the UI to make it easier to read the description text. I did two things to achieve this : made the description font larger, and made the whole view scrollable, not just the description part.&lt;br /&gt;&lt;br /&gt;In version 1.0, I used a UITextView to display the description, but that view was actually really small, and scrolled to display the full description. No problem there, it seemed to work well.&lt;br /&gt;&lt;br /&gt;When I move to the full-screen view I decided that I didn&#39;t want to have a UIScrollView inside of a UIScrollView (since UITextView is a subclass of UIScrollView), so I changed the type of the description UI component to a UILabel. That is when the real trouble started.&lt;br /&gt;&lt;br /&gt;I was mostly working under the iPhone simulator and everything was working fine. It is only when I moved to testing on the device itself that I started running into serious issues. At times the description would not appear at all. I quickly noticed it seemed to be related to the length of the text, but I couldn&#39;t figure out what was going on exactly.&lt;br /&gt;&lt;br /&gt;So I did what all developers do when they run into a hard problem, they look for others that have run into the same issue. To my surprise, very few ran into this problem, and I found only one relevant post. Basically I understood that as UIViews using CALayer backing-stores, and that these layers actually use textures, they are limited in size, maximum 1024x1024 pixels. Based on this, I started experimenting and realized that indeed that seemed to be the problem !&lt;br /&gt;&lt;br /&gt;So I wondered, what is the appriopriate way of displaying long text on the device ? If UILabel can&#39;t do it for me, maybe something else can ? So I tried with UITextView again, and made sure I sized it using the contentSize properly. This time, instead of not displaying the view at all like UILabel was doing when the text became too long, it would truncate it. So I went back to the documentation, thinking I missed something. Again, nothing. These limitations really should be documented. I&#39;ll have to input this in Apple&#39;s Radar bug tracking system if I have time.&lt;br /&gt;&lt;br /&gt;So there I was, UILabel nor UITextView could handle long text. How do others do it ? I thought about going to CoreGraphics to do the rendering, but I wasn&#39;t sure if that would work well with the parent UIScrollView. I also considered using the UIWebView, but that really seemed like adding too much overhead.&lt;br /&gt;&lt;br /&gt;The final solution, although not the most elegant, was to split the text in smaller fragments, looking for &quot;\n&quot; characters and splitting the paragraphs this way. I would then dynamically layout smaller UILabels one below the other. Although this looked like it wouldn&#39;t work well, it finally was much simpler than expected. I made a UILongLabel class out of it, so if anyone is interested in the code, please write back to me, I&#39;ll share it gladly.</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/5322877521740545693/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/5322877521740545693' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/5322877521740545693'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/5322877521740545693'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/03/iphone-sdk-doesnt-like-long-texts.html' title='iPhone SDK doesn&#39;t like long texts !'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-6863888211415742512</id><published>2009-03-29T17:48:00.002+02:00</published><updated>2009-03-29T17:53:15.557+02:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iphone themes customization look and feel"/><title type='text'>iPhone look and feel customization</title><content type='html'>With all the recent buzz and industry reaction to the iPhone OS 3.0 announcement, you&#39;d think that everyone is happy with what was delivered. Well, I&#39;d say that it&#39;s mostly a step in the right direction, but there are still some important features missing and some missed opportunities.&lt;br /&gt;&lt;br /&gt;Almost every available mobile phone allows the end users to customize the look and feel. Users may either purchase or download themes, ringtones, etc. Apple already has a ringtone store, although it is available only in the US, but there is no such thing for themes. Users currently must jailbreak their phone just to change the look of their iPhone home screen !&lt;br /&gt;&lt;br /&gt;Apple must change this quickly, and hopefully they will &quot;surprise&quot; us with this feature. But in order to be sure they don&#39;t forget it, I suggest that people use Apple&#39;s Bugtracking system (called Radar) and enter this as a suggestion as often as possible.&lt;br /&gt;&lt;br /&gt;Upon purchasing the iPhone, it only took my girlfriend 10 seconds to realize this was not possible. Imagine how many don&#39;t even buy it because of this !</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/6863888211415742512/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/6863888211415742512' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/6863888211415742512'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/6863888211415742512'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/03/iphone-look-and-feel-customization.html' title='iPhone look and feel customization'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-1117226590712953188</id><published>2009-03-18T08:03:00.002+01:00</published><updated>2009-03-18T08:21:49.977+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iphone os 3.0 reaction commentary"/><title type='text'>Another reaction to iPhone OS 3.0 annoucement</title><content type='html'>Well, yesterday was a great day for the iPhone/iPod platform. It looks like Apple and I agree on the need for the platform to be more open, although they didn&#39;t go as far as I was hoping in terms of flexibility. On Monday, I &lt;a href=&quot;http://blog.tofodo.com/2009/03/only-needed-feature-in-iphone-os-30.html&quot;&gt;blogged about the need to remove the need to jailbreak&lt;/a&gt; your phone by offering access to everything on the phone including the telephony API and just the basic need of being able to &quot;skin&quot; the look of your phone.&lt;br /&gt;&lt;br /&gt;For reasons I can understand, such as the need for security, they didn&#39;t go that far, but at least they are headed in the right direction.&lt;br /&gt;&lt;br /&gt;Overall, I think the iPhone OS 3.0 is a step in the right direction, but I don&#39;t believe it&#39;s competitive enough, especially when compared to the Palm Pre.&lt;br /&gt;&lt;br /&gt;I do like the in-app purchase, although there is a strong risk it will be abused. But finally we can have a &quot;shareware-like&quot; experience. I&#39;m already looking at AppShaker thinking I could make it free and simply ask people to pay for the usage of the application, as it is the real cost on my side. But of course you need to make sure you are not frustrating users when doing that, and a fine line needs to be drawn. I think there will be a lot of interest in this new possibility, and it will be interesting to see what is judged acceptable or not. What is certain is that the Amazon Kindle app suddenly will have a lot of competition as any bookseller will be able to sell their content through the AppStore. Hopefully this will reduce the number of new applications that are simply copies of the same app with different content.&lt;br /&gt;&lt;br /&gt;So all in all, I am looking forward to iPhone OS 3.0, although I was hoping it would be more open that what they announced.</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/1117226590712953188/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/1117226590712953188' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/1117226590712953188'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/1117226590712953188'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/03/another-reaction-to-iphone-os-30.html' title='Another reaction to iPhone OS 3.0 annoucement'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-3976191417151745617</id><published>2009-03-16T09:05:00.004+01:00</published><updated>2009-03-16T09:29:21.965+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Appshaker genesis development"/><title type='text'>The genesis of AppShaker</title><content type='html'>With the launch of AppShaker, my new utility to find random apps on the AppStore, I thought that I might share with you how this idea came to be.&lt;br /&gt;&lt;br /&gt;I am an avid fan of the iPhone, and I love to discover new apps. But I really thought that the existing AppStore application for the phone is far from ideal when trying to discover new applications. The real problem is that you have easy access to applications that Apple selected for you, or the best sellers, but anything else is really hard to find. There are countless sites out there that will offer their own rating system, but they don&#39;t really solve this problem.&lt;br /&gt;&lt;br /&gt;I think one of the best way of discovering a new application is to get a recommendation from a friend. He will have discovered it himself and will recommend it to you. But it&#39;s very seldom that a friend actually sends you a recommendation for an application, and so your thirst for new iPhone software might not be quenched. At least mine wasn&#39;t.&lt;br /&gt;&lt;br /&gt;Then I was also thinking about all the great little apps, by the little guys, that really deserve recognition but that will sit in the AppStore until someone discovers them. Wouldn&#39;t it be great if we could randomly discover an application, completely undiscrimenately, without any advertising or bias ? Sure there are a lot of &quot;trash applications&quot; also in the AppStore, but if you can quickly go from one app to the next, it doesn&#39;t matter.&lt;br /&gt;&lt;br /&gt;This was the basic idea for the AppShaker. To be able to shake your phone to discover a random app. Then came the actual process of making this happen. This is when I hit the first major roadblock. How do retrieve a application at random ? There is no such function in the AppStore, even the one available in iTunes. So I wondered if some of the AppStore-replica website out there might have such an option, and much to my surprise I discovered they didn&#39;t. I looked at partnering with one of them, but figured that if I want to offer a long-term service I couldn&#39;t be dependent of a third party. Also, as I value the privacy of my users, I wanted to have full control over the process of delivering a random iPhone application.&lt;br /&gt;&lt;br /&gt;A lot of time was needed on the server side to get things optimal. The first version were too memory intensive, the next version was too CPU intensive, but eventually I managed to get it just right. Then came the next decision that would make things even harder : to offer not only a solution for users in the US but also address an international audience, and offer apps in localized stores. Here I had to make a few concessions in terms of audience, because the shear size of processing all the international data is something that only Apple can do well, but I made a few choices I hope you will agree with, and basically users in Canada, Germany, Switzerland (because it&#39;s my home country :)), the US and England get their customized store. If there is high demand for other areas I might add them too.&lt;br /&gt;&lt;br /&gt;On the front-end side, I could have gone the easy way and implement an interface using a UIWebView and do all the layout in HTML. But I had high-end requirements for the UI, which will improve over time. Basically I wanted to be able to do all kind of nice-looking animations which would be really hard to achieve with HTML. I also wanted bandwidth use to be minimal, so that even users on the go would be able to download application content. I tested in all conditions, testing for network loss, testing in locations with intermediate coverage, tested a lot with Edge networking, and I think I achieved something that in terms of speed is comparable to the official AppStore app, and in some cases even faster !&lt;br /&gt;&lt;br /&gt;One of the &quot;tricks&quot; you can do with a random application loader is that you can preload the next application. So while the user is reviewing the currently displayed application, you can preload the next one, so it will be immediately available to the user when he requests it. This, again, was tricky to achieve because I was banging my head against a big problem in the SDK with NSOperationQueues. I finally rewrote the whole networking code in a completely different way to get it to work just right.&lt;br /&gt;&lt;br /&gt;Then came the long wait. One of the most frustrating things about the reviewal process is that until Apple accepts your application, you have no idea if all the work you have done so far will ever see the light of day. So you submitted a completed, and tested application, but those 3-4 months of efforts might be refused because some guy in the reviewal process doesn&#39;t like it. This is a huge problem in this process, and I can&#39;t even begin to think what this must be like for companies that depend on AppStore revenue. Fortunately this isn&#39;t my case, but this must change. Apple was good in this case, and I only had to worry for two weeks :)&lt;br /&gt;&lt;br /&gt;I hope this post gives you a little insight into what this simple application actually requires in terms of developement, and I just scratched the surface. Sometimes the simplest things are the hardest to do, and Apple is really good at making hard things simple, but I&#39;m sure it also takes them a lot of time to get to that point.</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/3976191417151745617/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/3976191417151745617' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/3976191417151745617'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/3976191417151745617'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/03/genesis-of-appshaker.html' title='The genesis of AppShaker'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-6219068127775834463</id><published>2009-03-16T08:10:00.004+01:00</published><updated>2009-03-16T08:27:02.579+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iphone os 3.0 features open SDK development platform"/><title type='text'>The only needed &quot;feature&quot; in iPhone OS 3.0</title><content type='html'>I was reading through the week-end the different wish lists that people want for the release 3.0 of the iPhone OS. I was hoping to see someone present the argument that features are not really needed, but a really open development environment is *critical* to the competitivity of the platform. Strangely I have not found anyone to present this argument, so this is the reason of this post.&lt;br /&gt;&lt;br /&gt;The OS doesn&#39;t need copy &amp;amp; paste, it doesn&#39;t need MMS, it doesn&#39;t need any other feature under the sun as much as it needs to be completely open. If I were an engineer at Apple this is what I would be pushing most, and making every effort to make it happen. If you have an open platform, other developers can add copy &amp;amp; paste (they already started !),  MMS support etc. Sure it would be best if Apple integrated it into the platform, but they are a company with limited resources, and I think the priorities should be to open the platform, rather than develop more features.&lt;br /&gt;&lt;br /&gt;Look at the jailbroken apps. There are wonderful applications available, including tethering, full interface customization, MMS support, copy &amp;amp; paste, etc. Jailbreaking developers are slowly but steadily eating up market share, and now they are even developing their own app store ! What Apple needs to do is remove the biggest reason for jailbreaking the device by opening up the SDK so that all the current &quot;forbidden&quot; applications can be distributed through their AppStore. Of course the other reason for the jailbreaking is for pirating apps, but those users will always be there. But why should you jailbreak your phone if all you want to do is install a theme for SpringBoard ?&lt;br /&gt;&lt;br /&gt;Of course opening up the platform is technically hard to do, as it opens up all kinds of questions about security. But if Google can do it for Android, why can&#39;t Apple do it for the iPhone ? Again, this is a question of priorities, and this is why I argue that Apple should concentrate on this more. Another example is the argument for background apps or notifications. Focusing on opening the platform, and possibly allowing for background apps is the only needed thing.&lt;br /&gt;&lt;br /&gt;From what we have seen, there are a *lot* of iPhone developers out there, and they will be really quick at offering incredible applications if the platform opens up. So to me it really makes no sense at all to focus on anything else than making sure that they can unleash the full potential of this powerful platform.&lt;br /&gt;&lt;br /&gt;If Apple doesn&#39;t do this for 3.0, it will be a missed opportunity, but I hope they will do it soon after, otherwise they will surely loose marketshare to Google Android and the jailbreaking world.</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/6219068127775834463/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/6219068127775834463' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/6219068127775834463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/6219068127775834463'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/03/only-needed-feature-in-iphone-os-30.html' title='The only needed &quot;feature&quot; in iPhone OS 3.0'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-7537962546619108752</id><published>2009-03-16T08:03:00.003+01:00</published><updated>2009-03-16T08:10:10.862+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="appshaker random iphone appstore application"/><title type='text'>AppShaker available now in the AppStore !</title><content type='html'>Finally, AppShaker is released. After a long time in the making, because this application required a lot of work on the device part but also on the server part, AppShaker is available for &lt;a href=&quot;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=306901892&amp;amp;mt=8&quot;&gt;purchase on the AppStore&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;What this application does is present a random iPhone application on your screen, that you can review to see if it interests you or not. You can click on the screenshot to zoom it to full screen, you can swipe the description to read all of it, you can click on the publisher&#39;s name to go to their website, and if you want to download/purchase it, simply click on the price to go *directly* to the AppStore (there is no going through Safari for affiliate purchasing).&lt;br /&gt;&lt;br /&gt;I deliberately didn&#39;t develop the app too much because I wasn&#39;t sure it would get accepted by Apple. But now that it has been accepted, the good news is that there is a lot of features planned, that of course will be free. Among the planned features are : select the price and categories of apps you want to see, see all the screenshots of an app, and possibly much more. Please send me feedback about what you would like to see, I will probably include it over time :)&lt;br /&gt;&lt;br /&gt;I really hope that you will appreciate AppShaker, it was a long project in the making, and I am committed to making it as good as it should be.</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/7537962546619108752/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/7537962546619108752' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/7537962546619108752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/7537962546619108752'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/03/appshaker-available-now-in-appstore.html' title='AppShaker available now in the AppStore !'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-2590810203569801050</id><published>2009-03-13T11:58:00.003+01:00</published><updated>2009-03-13T12:01:17.530+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="tiltsnake update iphone app appstore"/><title type='text'>TiltSnake 1.2.2 available on the AppStore</title><content type='html'>TiltSnake 1.2.2 is now available on the AppStore. It brings the following changes :&lt;br /&gt;&lt;br /&gt;- Animated level display&lt;br /&gt;- Continue instead of Restart, so that you may continue on the level you reached.&lt;br /&gt;&lt;br /&gt;I have been getting requests by users for an endless mode, and I am considering it, but this is a major change in gameplay so I&#39;m curious as to which would make most sense for all users ? If any TiltSnake users reads this, please leave me comments about what you think is best. I&#39;d like to avoid having to support both modes, because that adds a lot of complexity, and this means that I would have to spend a lot of time testing. Already supporting both tilt and swiping is a challenge :)</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/2590810203569801050/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/2590810203569801050' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/2590810203569801050'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/2590810203569801050'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/03/tiltsnake-122-available-on-appstore.html' title='TiltSnake 1.2.2 available on the AppStore'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-1827285072227822950</id><published>2009-03-06T16:39:00.003+01:00</published><updated>2009-03-06T16:46:14.216+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iphone application refusal horror story"/><title type='text'>Pocket rejection</title><content type='html'>I found another horror story about iPhone application rejection today, you can &lt;a href=&quot;http://www.appleiphoneapps.com/2009/03/pocket-rejection-app-store-submission-troubles-hit-home/&quot;&gt;find it here&lt;/a&gt;. I find it amazing that there isn&#39;t a bigger outcry by developers that invest time and money just to find their efforts rejected and trashed. What is even worse is that Apple is not communicating anything on this front, which is really not a smart move.&lt;br /&gt;&lt;br /&gt;We need to find a way to force Apple to change this behavior, any suggestions ?</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/1827285072227822950/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/1827285072227822950' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/1827285072227822950'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/1827285072227822950'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/03/pocket-rejection.html' title='Pocket rejection'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-2400089506042952083</id><published>2009-03-05T08:25:00.004+01:00</published><updated>2009-03-05T08:48:21.690+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="iphone appstore refusal"/><title type='text'>More on the refused application front.</title><content type='html'>Today I was just reading &lt;a href=&quot;http://www.macbidouille.com/news/2009-03-05/#18092&quot;&gt;this story&lt;/a&gt; (in french) about a developer that released an iPhone application that had a critical bug. It got accepted with the bug, and while he was quick to identify and fix the bug, Apple didn&#39;t manage to release the fix until 3 weeks later. This  fortunately hasn&#39;t happen to me, but as you will see, I&#39;ve had my share of issues with the approval process.&lt;br /&gt;&lt;br /&gt;In January, in the midst of all the &quot;joke&quot; and &quot;fart&quot; applications I decided to get on the bandwagon and do my own. I wasn&#39;t going for the easy road of imitating everyone else and tried to think of an original concept that would be fun for users. So I came up with the idea of ShakeCharge, an application that would let you recharge your device by shaking it !&lt;br /&gt;&lt;br /&gt;Of course this was a prank application, and I never intended to sell it as the real thing. I developed a fake interface to recharge the battery, and I really struggled to design something that would *not* look like the real battery-charging user interface of the iPhone, in order to avoid any complaints by Apple that I was re-using or changing UI purposes. I also clearly stated in the marketing text for the store that this was a joke application to be played on friends and collegues and that it didn&#39;t recharge your battery in any way.&lt;br /&gt;&lt;br /&gt;I submitted the finished application, including translations in french (my first language). Despite what you think, even simple iPhone applications can take a lot of time to complete, especially when you count all the work on testing, bug fixing, design, illustrations, marketing materials, advertising, etc. I patiently waited 5 weeks, without *any* news from Apple. Thinking there might be a problem, I changed the marketing text and resubmitted a binary, also re-signing it since the certificates had expired in the meantime. I got an answer from Apple a week later refusing the application on the grounds that it didn&#39;t comply with the UI guidelines.&lt;br /&gt;&lt;br /&gt;At this point I wasn&#39;t expecting that decision to change so I did some analysis on the applications already available on the store and realized there&#39;s a full section of fake SMS or fake call apps that, for some, even re-use the real user interface. So a rejection on the basis of UI guidelines seemed completely inconsistent to me. I thought that maybe the name is misleading, so I resubmitted the application under the name &quot;Fake Charge&quot;, and got prepared to wait some more...&lt;br /&gt;&lt;br /&gt;After a week, I got the exact same rejection. If you count the total, this is a 6 weeks process for an application that wanted to be a simple &quot;joke&quot;. I&#39;m guessing that Apple doesn&#39;t have much of a sense of humor. So I decided to abandon the application, but to hopefully make some noise about the refusal, because I think that this process is *very* wrong. I can understand refusals on copyright, quality or even competition grounds, but in my case I really tried to work carefully as to avoid any of these issues, and was available for any questions or modification requests.&lt;br /&gt;&lt;br /&gt;The moral of the story ? I applied for a developer membership for Android. The irony of it all ? As I live in Switzerland I cannot sell applications as the process is only available to developers based in the UK and the US ! So much for competition :(</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/2400089506042952083/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/2400089506042952083' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/2400089506042952083'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/2400089506042952083'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/03/more-on-refused-application-front.html' title='More on the refused application front.'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-930007117238863596.post-8757276951884661488</id><published>2009-03-02T08:23:00.003+01:00</published><updated>2009-03-02T08:36:37.690+01:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="domain name scam"/><title type='text'>Domain scamming, continued...</title><content type='html'>I blogged &lt;a href=&quot;http://blog.tofodo.com/2009/02/beware-of-domain-scams.html&quot;&gt;a few days ago about a domain scammer&lt;/a&gt; that contacted me and tried to scam me into buying some domains. I ignored them and just recently got a new &quot;reminder from them&quot; :&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;span style=&quot;font-family:Verdana;font-size:85%;color:#000080;&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: navy;&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: navy;&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: navy;&quot;&gt;&lt;span style=&quot;font-size: 13px; font-family: Verdana;&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style=&quot;font-size: 10pt; color: navy;&quot;&gt;&lt;span style=&quot;font-size: 13px; font-family: Verdana;&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style=&quot;font-family:Arial;&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: navy;&quot;&gt;&lt;span style=&quot;font-size: 13px; font-family: Verdana;&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style=&quot;font-family:Arial;&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: navy;&quot;&gt;&lt;span style=&quot;font-size: 13px; font-family: Verdana;&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style=&quot;font-family:Arial;&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: navy;&quot;&gt;&lt;span style=&quot;font-size: 13px; font-family: Verdana;&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style=&quot;font-family:Arial;&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: navy;&quot;&gt;&lt;span style=&quot;font-size: 13px; font-family: Verdana;&quot;&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style=&quot;font-family:Arial;color:#000080;&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: navy;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;blockquote&gt;Dear  Sir, Sorry to trouble you! Ple see the below email.as aforesaid I told  that the domain name registration is open to the world,we have no rights to  interfere with other people to register.We are waiting for your reply.but  we did not receive your reply until now.now i want to know whether you want to  protect these domain names?if you want to protect your Trademark,we will send  an application form and the price list to you and help you register these within  dispute period.This is the only way to prevent domain name  grab.  pls let me konw your decision immediately.Hope you could seize the time and  solve this matter.I must state that we have time limited for one person or one  company’s registration.if the dispute period is over,and we haven&#39;t received  your application,our arbitration department will agree LaiKa company&#39;s  application, I can not help you at that time.        Best Regards,     Gordon   Li&lt;/blockquote&gt;&lt;span style=&quot;font-family:Verdana;font-size:85%;color:#000080;&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: navy;&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: navy;&quot;&gt;&lt;span style=&quot;font-family:Arial;&quot;&gt;&lt;span style=&quot;font-family:Arial;&quot;&gt;&lt;span style=&quot;font-family:Arial;&quot;&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;span style=&quot;font-family:Arial;&quot;&gt;&lt;span style=&quot;color:#000080;&quot;&gt;&lt;span style=&quot;font-family:Verdana;font-size:85%;color:#c0c0c0;&quot;&gt;&lt;span style=&quot;font-family:Verdana;color:#000080;&quot;&gt;&lt;span style=&quot;color:#000080;&quot;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;One thing I can give them is that they are persistent. Of course this is normal as they are posing as a valid organization trying to get money from people with little experience in these types of scam. Another interesting thing to notice is the fact that there is a strong degradation in the quality of the writing, which is probably due to the fact that he is no longer using pre-canned texts.&lt;br /&gt;&lt;span style=&quot;font-family:Verdana;font-size:85%;color:#000080;&quot;&gt;&lt;br /&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://blog.tofodo.com/feeds/8757276951884661488/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment/fullpage/post/930007117238863596/8757276951884661488' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/8757276951884661488'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/930007117238863596/posts/default/8757276951884661488'/><link rel='alternate' type='text/html' href='http://blog.tofodo.com/2009/03/domain-scamming-continued.html' title='Domain scamming, continued...'/><author><name>Anonymous</name><uri>http://www.blogger.com/profile/04623918690083720863</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>