Wednesday, March 18, 2009

Clueless predictions

Unsurprisingly, all my predictions from yesterday turned out to be just a wishes list. Turns out, I had in mind 3.0 to be matching the Pre offering ... but it just wasn't the case. Either Apple can't, or more likely they just don't care, meaning they don't see Palm as the mobile version of the anti-Christ. As eloquently put in this article, Apple's fixation on avoiding background processes, is causing us, the users, some usabilities PITA.

Anyway, I still think we will see some application switching support in OS 3.0 .... but only on the new version of the iPhone, rumored for this summer. As often, Steve Jobs will casually announce it with some smug comments about some power (but clueless) users wanting it very bad, so here it is but we don't like it much ... (e.g MacBook Pro 17" with mate display option).

Tuesday, March 17, 2009

Mandatory predictions

With now less than two hours to go before the iPhone OS 3.0 event, I think it is time for me to join the geek creed and make a couple of (clueless) predictions. Still I don't have John Gruber's writing style, nor insight, I'll keep these shorts and to the point.

So what to expect? Well since there is now a real challenger to the iPhone (that'll be the Palm Pre), Apple has to play catch-up and show that 3.0 will have all the goodies (and more, hopefully) than the Pre. Sounds pretty obvious isn' it? Well yeah it is. CNNMoney has a little write-up of the details of what to expect, here.

So then, what is/are my prediction(s)? Well here they are:

  • The multitasking (don't really like to use that term, 'cause technically the iPhone OS is already multitasking) will not be available unless you are using the new iPhone to come out in June (or it will be available on older HW, but with a limitation of said 2 users launched applications and you will have to enable it via some hidden setting). The reason for this isn't much about hardware limitation, but giving you reason to upgrade to the new iPhone, which will come with a faster CPU/GPU (just stating the obvious here) and 256Mb of RAM (instead of 128Mb currently).
  • Background application will be supported, but wont be based on UIApplication (let's call it UITask) and will have limitations on what they can do.
  • The OS will allow applications to exchange data (by using files in a common area and/or IPC
  • The new SDK will support building app with web technologies (a la Mojo)
Wishes list or predictions? Only 90 minutes to go before we found out!

Friday, March 6, 2009

Tweeting!

@All I finally succumbed to the Twitter temptation and created an account for myself (please follow me! ... please, pretty please?). Originaly, my motivation for doing so, was to follow some of the blog authors I read and some of the Cocoa/iPhone world celebrities (e.g Wil Shipley), but then I caught the tweeting bug and I have been tweeting (mostly non-sense and everyday stuff) furiously.

So what can you expect from following me? Pretty much the same kind of stuff that I blog about here: Cocoa, iPhone, Space, (weird) Music, books etc ... but in a more condenced form (for obvious reasons).

Tuesday, March 3, 2009

Time fly

Well, March has arrived, and I'm back at (my day) work (since yesterday). Our iPhone app is not yet finished (hard to believe I know ... and yet here we are), so the month have gone without any submission to the app store, contrary to what we were hoping for. Maybe in a couple of weeks? Two things have colluded to cause this schedule slip: feature creep and usability concerns. Concerns is maybe a bit too strong of a word, really. Let said that the UI wasn't as good as it could be.

Tuesday, February 17, 2009

Late CodeSigning

Just for fun, I decided last night after 9:30PM to install the latest WIP of our iPhone app on my wife's 2G iPod touch. In order to that, I first tried to modify the provisioning profile so to include the new device in it, but that didn't work too well. Even after having removed completely (or so I though) the said profile from her device and mine (and from the IDE's organizer) and created a new one (following the how-to instructions from the SDK developer portal), I could still not recompile the application. The error reported (in red, mind you) by Xcode being:

CodeSign error: a valid provisioning profile is required for product type 'Application' in SDK 'Device - iPhone OS 2.2'

By then, since it was well after 10pm, way past the baby bed time (and ours ...) , I had to close shop for the night. Problem is that closing the lid of the laptop doesn't mean one's mind isn't going to keep thinking about the problem ... well into the wee hours of the night. Hopefully, when I woke-up this morning (I'm gonna need a nap this afternoon!), I had an idea: Maybe, somewhere inside the project files, references to the old profile were still present? This turned out to be a correct theory (!), for when I grep-ed the project.pbxproj file for PROVISIONING_PROFILE, I found some references to the old profile. A simple copy&paste (BTW I use Smultron for such text editing tasks) of the profile identifier fixed the issue and shortly after, Susan's iPod was running our app :-)

Saturday, February 14, 2009

2Busy2Blog!

Since I'm now half-way trough my parental leave, it is time to review a bit what I have been up to, which is mostly coding and parenting ... but mainly the latter. Nevertheless, our iPhone app is getting closer and closer to be ready. I swapped successfully the old data management stuff for the soup thing I was talking about in my previous post, and so far it's working pretty well. I also, followed the advice of Tweetie's author (Loren Brichter) and replaced the five UITextView objects I was using in my UITableView cell by a single UIView (drawing by hand the content). The speed-up is great, there is no longer that impression of lag when flicking up or down, it is amazingly cunning :-)

There is two videos (youtube) I'd like to share with you today. The first one is from a concert of Terje Isungset, who use ice to make (somewhat weird, but oh so lovely!) music (courtesy of The Signal's blog):




The second video shows a simulated depiction of the Phobos -Grunt Russian mission. Pretty cool (and bold) mission I must said. Let's hope it'll get to fly:




Anyway, gotta go change diaper now. So long for now.

Tuesday, February 3, 2009

Parental Leave

Yesterday was the first day of my month long parental leave. While the main purpose of it is to gives me and the baby time for some more quality bounding, the hidden agenda is to try to finish-up that iPhone application which we had been working on a while ago ... Parental duties and paid job, have so far colluded into putting that project on the back (waaaay back) burner. Or so it looks like. Non-obstante the fact that indeed, my (precious) geeking time had been slashed ten-fold by the arrival of the Baby, I also wasted the few minutes I could saves here and there, on trying to come up with a better way to save my application data. Since we were in a rush to get the app usable by the time we needed it, I had hacked my model so that the data (in a form of 3 arrays plus some metadata) were been stored using a NSKeyedArchiver, and fetched from it when the application was launched. That naive solution had two major issues: it was keeping in memory data that were not used, and it was putting the newly entered data at risk, since a crash of the application will (and did ...) prevent its data to be written to the disk.

To store permanent data on the device, there is 3 common possibilities: flat binary file, NSKeyedArchiver and SQLLite3. To store a limited amount of data, I personally found SQL (even Lite!) to be overkill and not that practical when dealing with objects (yes, I do know about Jeff Lamarche's project and the iPhoneLite3 project), thus I have been working on my own object persistence framework, which won't be as efficient as using SQLLite for backend (well I'm not that good!) , but will serve its purpose for this app and the others to come (hopefully!). Since I'm an ex-Newton user and developer, I couldn't help but inspire myself, rather heavily, off the Newton's Soup ...