Saturday, September 14, 2013

Apple - ahead of the competition, again


5 days have passed since Apple presented the best iPhone yet - iPhone 5s. The only great feature I see there is the 64-bit processor inside. Let me tell you why I believe this is a brilliant move and why I do think Apple's users will not be the first to take advantage of this.

Why is it brilliant move?


Apple is a great vertically integrated company. They make both hardware and software, then pack it into great products. While they do not make all the hardware, they control the most important parts of it and work on helper chips like M7 to add additional functionality to their devices. All this makes possible for innovation to happen quicker compared to other vendors. On 10th of September they prove it once again by showing the first 64-bit smartphone. This makes them way ahead of the competition on that field.

What will it cost to the rest of the smartphone industry to match that?


Several companies need to work together, or in turns, to make the same thing happen.
  • ARM should produce a final specification of the instruction set (this is probably done or almost done)
  • ARM certified companies should create 64-bit processors working with the new instruction set. I can only hope this is in the works too.
  • Whoever makes the C/C++ compiler (gcc, arm, microsoft) should add support for that new 64-bit instruction set. I guess that someone is working on that. This will produce all the needed tools (compilers, linkers, other developer stuff called "toolchain"), which will make the next step possible
  • Google and Microsoft should port Android and Windows Phone/RT/etc. to be built with the new 64-bit toolchain. They should also provide support for the new 64-bit versions to run old 32-bit programs.
  • With all previous steps done - Samsung, HTC, Nokia and others can build the new generation of devices.
As you can see this is a big set of complex tasks. Though some of them can be done in parallel, others have dependencies and cannot. It will take time for the rest of the smartphone industry to catch up!

Why I do believe, Apple users won't be the first to take real advantage of this 64-bit thing?


Apple made a great marketing message out of it. They reminded the world they have not lost their innovation edge and I really love that! But what does 64-bit really means to the end users? Well - it does lead to minor performance boost in some specific tasks involving 64 bit integer calculations. Probably memory transfers will be faster too. It will also lead to bigger code size (that's more data to transfer when you download apps). The most important gain from 64-bit transition is support for more than 4GB of RAM inside your device. To be honest, if it wasn't for that last advantage, I don't think switching is needed at all, but it is there and the smartphone future is 64-bit for sure. To me unless you put more than 4GB of RAM inside that device, 64-bit architecture is just a nice marketing message, another line in specification wars, showing a potential - but nothing substantial.

Having all that said and taking into account current specifications history, I expect Samsung, Sony or HTC to be the first to release a smartphone with more than 4GB of RAM, not Apple. That's how it might be Android, not iOS users be the first to enjoy the true 64-bit advantages.

Sunday, September 1, 2013

Apple "cable" adventures

Several weeks ago I found out I need a long lightning cable. Since Apple provides only 1 meter cables for $19 I decided to buy a 2 meters cable from eBay for $3 (delivery included) instead. Today it arrived from China and this is the welcoming message to see when I plugged it in. (<= look at the picture now!) ... 

"It's a bloody cable" I yelled at the screen, but Siri remained silent.

Of course I know this is not a cable. Cables are used to transfer electricity only. Apple call it a cable, it looks like cable to the users, but it a contains electronics, which makes it a convertor. Convertors are more complex and tend to break more often. In general using convertors for cables is bad for users. Here are several examples when those convertors got me in trouble:

The last two devices we bough for development used a lightning cable. We used cables that came with them for development and one of those cables just stopped working about 1 week later. Looking from outside it was a perfectly new cable. Just electronics inside were broken. We put it in the trash and bought two new cables from Apple. You know ... just in case ...

The second story is older and is about the older 30 pin Apple "cables". Since the principle is the same I guess same things can happen with the new cables.

I bought my iPad 3 and found out that not only the cables are the same, but chargers also look exactly the same as those of my old iPhone 3GS. I got worried because the new charger had 2.1A output, while iPhone's charger was 1A output. If I put 2.1A into iPhone it could fry it. If I put 1.0A into iPad it will charge it more than twice slower! It turned out the "cables" take care of this. They know they are connected to iPhone and they make it charge with the proper power. However my original iPhone 3GS cable knew nothing about iPad 3 and even with iPad's charger it charged it at iPhone's rate! Now I have two "cables" which look exactly the same and both work on iPhone, but only one of them charges properly my iPad. It SHOULD be a bloody cable, NOT a converter! Electronics should be inside the devices not inside the cables!