Wednesday, January 13, 2010

Standards : How do you like them Apple ?

Okay I have been trying hard to find some funny way to introduce this post, don't worry if you don't think it is (funny).

Actually, there are two reasons why I wanted that funny start, the first one being because it has been a long time since I posted anything -or since I posted at all- and the second one because, I am still not sure if I should post it. I have been wrestling with myself over this, but I believe that accumulated frustration finally triggered the whole thing, so let's go. I will try to explain here how I am getting more and more disappointed by an overrated phone...

It all began when I bought an iPhone for my wife. Very good idea by the way, because being very busy all day along, she could not use her computer anymore and this was a kind of pocket substitute. She had tried a few other tiny gadget notebooks like the Zaurus, various VAIOs, but apparently she was much more pleased with this one. She mainly uses it for : browsing the web, reading RSS flows, writing emails and taking pictures.

And these last two were iPhone killers. At the time we got it (I believe 2.0 upgrade, the one with Google Streetvie) there was still no cut and paste (ha ha !) and it was not possible to send more than 1 picture by e-mail, with butchered resolution. This led me to design a small web-based mailing application allowing a bit of formatting, and image inlining which is much better than attaching everything at the bottom. If anyone is interested, I can talk about that another day. So e-mail problem was solved.

What about pictures then ? There is a camera on the iPhone so it should be okay. Should be. This is where we will discover the meaning of the title. But first, let's digress a bit and discuss Standards.

I never loved anything as much as standards when it comes to computers. Either hardware or software, standards are good for us. If a manufacturer, software developer fails, you don't have to worry if they were operating within a standard : data can be losslessly converted, parts can be replaced, etc...

Now back to the camera. Under a little obfuscation layer that we will discuss again later, the iPhone has folders to organize the pictures it takes. And of course, people over there at Apple didn't want to re-invent the wheel, so they just went for the famous ABCD1234.JPG naming scheme. If you have ever looked at the data produced by digital cameras on their memory cards, you know what I mean. And guess what ? This naming has been standardized. Yes ! By the Japan Electronic Industry Development Association, and it can be found here. Read it if you want, the important part is, the name should be made of 8 chars including 4 free chars and 4 digits.

Okay, so just plug your iPhone into your computer and check out the storage device that is created. You can see the pictures there, sorted neatly in a few 100APPLE and such folders. Let's see how Apple people decided to name the files. The folders look like 100APPLE, 101APPLE, 102APPLE and so on. In each folder, there are files called IMG_numb.JPG, where numb is unique and incremented after each shot. And now is the interesting part : this unique number was also decided, by the designers of the iPhone and out of the specification scope, to be unique among directories. The quick and very dirty way is to decide that 100APPLE has pictures from 0001 to 0999, then 101APPLE has pictures from 1000 to 1999, and this sounds so much like "640Ko should be enough for all" that I am surprised they could do the exact same mistake !

What happens when someone has more than 9999 pictures ? I will tell you, a new folder is created, called 110APPLE and it contains files named IMG_10001,JPG and so on. I would laugh if it didn't deprive me from sleeping for a few days. So here we have a clear violation of the DCF standard, right ? For people like Apple this is no big deal because they make the picture taking, picture viewing, picture synchronizing (iTunes, iPhoto, whatever) applications, so they just have to be aware of this standard "enhancement". But they are not. Which is why during a few weeks (before an update that silently fixed the camera roll without telling) it was impossible for me to see any pictures taken after the 9999th in the Camera Roll application within the iPhone. Good job guys...

Hmmm this is getting longer than expected so i will cut here and resume the story in the next post soon... Because let me reassure you, we never shot ten thousand pictures with the iphone, yet we reached the 10'000 bar...

No comments: