iPhone review from a free software guy

(10 comments)

I got an iPhone on the very first day it was available officially in my country. I have used it every day since then and am now ready to decide how good it really is. Summary: it is a great piece of technology and the only tradeback is the locked down platform. I have abandoned my Palm and am not looking back.

Hardware: the hardware is just perfect. 4 buttons (Home, Power, Volume Up and Down) and 1 switch (Mute) are all very clear, easy to find and press and frankly are enough. The touchscreen is reasonably fast and very precise nicely corrected by software that guides your presses toward UI points of interest if such are within your finger. The casing is absolutely solid - there is no gaps, no wobble, nothing. All glossy surfaces attract fingerprints, but a couple passes with a microfiber cloth (included) clean it up easily. The loudspeaker is phenomenal - all sound comes from a single small hole, but it can easily fill a small room with music. Call sound quality is impeccable. You can plug in any headphones, but if you use the included headphones you get a microphone with a button that can pickup and hand up calls, start/pause music and skip to the next track. I also love that the only charger included is a very small power brick that provides a power-only USB port and a USB charging cable. That is a good way to reduce number of power bricks for gadgets. The iPhone 3G (that is what I have) also has a GPS build-in, but let us be clear - it is not good enough to replace a car GPS, the iPhone GPS is slow (takes several seconds to refresh the location and tens of seconds to find it first time) and the precision is measured in meters or even tens of meters. The WiFi is very good at getting a connection and doing it very fast. Oh and there is an acceptable camera.

Out of the box software: the software included surely is better than on any other phone I have seen (including Palm). The UI widgets are nicely written specially for a touchscreen interface - the best example is having click wheels instead of drop down menus. It is much easier mentally to flick a wheel up or down then to click on a list, click to scroll the list and then click to select an entry. And the click wheel makes it much easier to correct off-by-one errors. Switches that look like regular physical switches instead of checkboxes is another very useful UI concept. I think a lot of this can be reused on the desktop as well.

iTunes: and here comes the bad spot, the lock-in part. To get anywhere with the iPhone you need to associate it with an installation of iTunes. It fails to work in Wine or even in a virtual machine - apparently there are some errors related to avahi or something. Unfortunately, this means that you need wither Windows or MacOS to do nything with your iPhone. iTunes is the only way to backup, restore and upgrade your iPhone, it is the only way to get contacts and music on the iPhone (there is an iTunes Store app in the newest version that allows purchasing music over the air). Even after doing a jailbreak (see further) it is currently not possible to add music to the iPhone from any third party applications, because the iTunes database has a hashed checksum that the build-in iPhone music player (and iTunes) check before doing anything. If the checksum is wrong the only thing you can do is a full restore of the phone from backup. Crypto geeks - please help decrypt that hash, so that we can sync iPhones to amaroK. The iTunes itself is a bit weird - to get music onto the phone you need to create a playlist and then you can sync that playlist over. One of the playlist options is a smart playlist with a random feature and a limit on number of matches. That is the way to get random music from your collection onto the phone. I do dislike the fact that iTunes syncs all the contacts from Google to the phone and not only contacts for a certain group or only those that have a phone number, for example. Search and favorites do help here.

Third party software (iTunes Store): it is very easy to install new software on the phone over the WiFi and there is plenty to choose from. You do need a Mac to develop this software which restricts the developer base a bit. The main bases that I needed (or did not know I needed) are covered: Last.fm player, TwitterFon, LockBox password storage, Stanza ebook reader, Shazam music identificator, Wordpress client, BigOven cookbook and lots of fun games. Have not used any paid-for apps due to the fact that iTunes store is not available in Latvia and the official documentation recommends registering with a fake address in UK or US. :) Most of the software is rather stable and useful, but there is also a lot of fluff. User reviews and ratings help a lot, can we have those for Debian packages?

Jailbreak and third party software (Cydia): thanks to some anonymous hackers, we have the ability to break the software jail on the iPhone and install software that Apple did not approve. The process is made very simple, but again it does require you to boot into Windows or MacOS X. The main thing the jailbreak process does is install an installer on the phone. Currently the best one is Cydia which is built on top of ... apt-get and dpkg! After that is done, you can install a terminal, a ssh server and BossPrefs advanced preferences. There are also other interesting programs there - a different dock, file manager, caching youtube player, quake, themed app launcher with categories and startup page (winterboard). Theoretically the ssh server allows you to manage your music over WiFi from any platform, but unfortunately until the iTuned database hash algorithm is decoded, we can only copy music from the phone to the PC and not back. It is possible to copy files over using ssh and then play them using third-party players, but those players are very crude and featureless.

To summarize: an iPhone is a great phone and a decent application platform. To make using an iPhone with Linux easier we need to make iTunes run in Wine (and allow it to see the iPhone) and reverse engineer the iTunes database hashing algorithm so that we can get music on our phones with Linux tools. I also wish there was a way to develop iPhone apps in Linux, but that really is reaching for the stars.

Currently unrated

Comments

aigarius 8 years, 9 months ago

One more thing I loved. I get a bunch of email-to-sms messages from notification services. Due to a quirk of LMT each email shows up as coming from a different phone number. iPhone shows messages to and from the same phone number as one conversation, just like Palm did (it was a major requirement for me). The feature that I really love is the ability to delete conversation threads very fast - tap the Edit button and each line has a Stop sign, you tap the stop sign and a Delete button shows up on the opposite side of the line, press that and the conversation is gone. Deleting dozens of 'conversations' from automated emails has just become much easier.

Link | Reply

foo 8 years, 9 months ago

Why do you hate freedom!?

Link | Reply

chithanh 8 years, 9 months ago

Reverse engineering of the iPod/iPhone hash for 2.x firmware has been halted because Apple sent a DMCA takedown notice to the project. http://yro.slashdot.org/article.pl?sid=08/11/20/201246

Until this is sorted out, don't expect your iPhone to sync with free software music players. And even then it is far from certain that a successful attack on the FairPlay hash will be discovered.

Link | Reply

Jon 8 years, 9 months ago

I think the easier solution would be to write a decent third party media player. the Ipod functionality of the iphone isn't all that special, to be honest. A 3rd party app could scrobble too.

Link | Reply

toupeira 8 years, 9 months ago

There *is* a way to develop native iPhone apps in Linux, see for example http://antirez.com/page/iphone-gcc-guide.html. Granted, it's not as easy as with Xcode, you do need the headers from the Apple SDK, and it will only work on jailbroken iPhones.

There are also other options, you can get Python, Ruby and Java runtimes over Cydia, and there's also a simple JavaScript-based app builder at http://www.jiggyapp.com/ (site seems to be down ATM).

Link | Reply

Anton Piatek 8 years, 9 months ago

Thanks for the insight - I dont care about playing music, I already have an ipod that works with Amarok.
The lack of decent satnav software is a shame, as that would be a big plus for me (proper street routing and dynamic route recalculation are a must).
I would be tempted to buy one if I could just get the address book and calendar syncing (preferably direct with google these days), but by the sound of it I will need windows to do anything so will probably hold off for quite a while...

Link | Reply

Tuss 8 years, 9 months ago

So, what you're saying is basically a very expensive phone without syncing possibilities and almost without music player? And people are actually buying this piece of junk? I thought at least crapple wouldn't dare encrypting the music DB, but it seems I was wrong. Nothing really is sacred for these post-microsoft tyrants. Words can't describe how much I hate them.

Link | Reply

Anton Piatek 8 years, 9 months ago

I see a lot of negative comments about the iPhone - but show me a phone that has the same capabilities that isnt the iPhone...

Link | Reply

aigarius 8 years, 9 months ago

An illegitimate* DMCA takedown notice from Apple to a Wiki is not a reason to stop working on the hash.

* - As EFF argues, the research is clearly allowed by DMCA via interoperability exception. EFF lawyers are on the case.

Link | Reply

lol 8 years, 9 months ago

reaching for the stars...?

google "iphone toolchain for linux"

and there you go. Now all we need is to crack the hash

Link | Reply

New Comment

required

required (not published)

optional

Recent Posts

Archive

2017
2016
2015
2014
2013
2012
2011
2010
2009
2008
2007
2006
2005

Categories

Authors

Feeds

RSS / Atom