Wer's genau nimmt, darf Apples iPhone nicht als Smartphone bezeichnen - jedenfalls nicht, wenn man unter einem Smartphone ein Handy versteht, das auf einem offenen bzw. über APIs zugänglichen und damit beliebig erweiterbaren Betriebssystem wie Symbian, Linux oder Windows Mobile basiert. Das iPhone bezieht seine Leistungsfähigkeit aus einem verschlankten Mac OS X-Kernel und Apple hatte bislang nie Ambitionen angekündigt, Entwicklern Werkzeuge an die Hand zu geben, mit denen sie neue Programme fürs iPhone schreiben können. Die bislang einzige - und durchaus sinnvolle - Möglichkeit, eigene Anwendungen fürs iPhone zu programmieren, setzt ein via Javascript, AJAX und CSS dynamisiertes Widget voraus, das von der Safari-Applikationsengine des internen iPhone-Browsers ausgeführt werden kann.