An iPhone app in a month

Photokast
Diese Woche habe ich eine ganz interessante Geschichte gefunden. Und zwar ein 37 Seiten starkes PDF von den Entwicklern der iPhone App Photokast. Was schreiben die Damen und Herren? Nun, sie geben Ihre Erfahrungen bezüglich iPhone App Entwicklung, Konzept und auch App Store Erfahrung weiter. Ein sehr gelungenes Dokument, das ich jedem empfehle.
Photokast ist eine Social Networking App, die es in 2 verschiedenen Ausführungen gibt. Zum einen die Pro-Version, die es für wenige Euros im App Store zu kaufen gibt. Zum anderen die kostenlose Variante, etwas abgespeckt. Ladet Euch mal die kostenlose, klickt euch ein bisschen durch – und lest dann mal durch das PDF. Eine ideale Wochenendlektüre für alle künftigen Mobile App Entwickler.
Ach ja, das PDF ist leider in Englisch. Aber das sei nur mal so erwähnt. Und hier gehts direkt zu Photokast:
http://www.photokast.com
//
Gesucht: iPhone App Developer / Programmierer
Für eine kurzfristige Projektumsetzung suche ich einen erfahrenen iPhone App Entwickler / Programmierer. Projektbriefing und detailierte App Beschreibung sind vorhanden. Hier einige Voraussetzungen:
- Freelancer / Student mit Objective-C / Cocoa Erfahrung (bitte keine Agenturen)
- Webservices App Entwicklung / Beratung / Erfahrung (MySQL, PHP)
- Weitere Umsetzungen für Android, Windows Mobile, Palm WebOS geplant
- Standort Deutschland (idealerweise München)
Bei Interesse an einer fruchtbaren Zusammenarbeit, bitte meldet Euch hier per Kommentar oder schickt eine e-Mail an mark.matters <at> me.com. Weitere Details werden dann übermittelt.
Page Magazin: Making of GfK Mobile Sites

Page 2/09
Im aktuellen Page Magazin habe ich einen interessanten Artikel gefunden, dem ich nur jeden angehenden iPhone Entwickler empfehlen kann: Handlich Designkonzepte. Danny Franzreb von der Agentur Taobot erläutert in dem Artikel, wie man an die Umsetzung mobiler Webseiten rangeht.
Auf 4 Seiten findet Ihr einen guten Einblick in die herangehensweise der Agentur Taobot: von der Anforderungsanalyse bis hin zur Umsetzung und Usability Tests wird alles im Detail erklärt. Das Projekt geht von einer existierenden Webseitenstruktur aus und optimiert die Informationen für die mobilen Seiten gfk.mobi.
Mehr will ich gar nicht verraten. Würde den Leuten von Page ja auch nicht gefallen, wenn ich hier den ganzen Artikel abdrucke. Das Magazin ist als Ganzes wie immer zu empfehlen, diesmal halt ganz besonders.
Weitere Artikel im Heft bzw. das komplette Inhaltsverzeichnis gibts hier:
http://www.page-online.de/archiv/heft/200902_page/
Das Magazin ist am Kiosk erhältlich und kostet € 7,95. Ihr könnt das Heft aber auch online über folgende URL bestellen: http://www.page-online.de/archiv/backissue/200902_page/
Buch: iPhone SDK Development
Bücher erleichtern den Einstieg. Nur schwierig, wenn es zu einem Thema einfach keine Bücher gibt. So war es beim iPhone SDK. Apple hat das SDK komplett runderneuert, Xcode entsprechend angepasst – und dafür gesorgt das keinerlei Literatur auf dem Markt war. Noch dazu hat man eine Verschwiegenheitsklausel gesetzt, so dass kein Autor darüber schreiben durfte.
Das hat sich inzwischen geändert. Jetzt gibt es einige wenige Bücher, und wenn noch nicht ganz fertig, dann kann man diese immerhin im Beta Format lesen. Beta? Jawohl, das gibts neuerdings in den USA. Beta bedeutet das man im Internet bereits mitlesen kann, obwohl das Buch noch nicht druckfertig ist. Ein Buch im Beta Format möchte ich hier kurz vorstellen: iPhone SDK Development.
Das Buch ist noch nicht erschienen, und kann bei Amazon nur vorbestellt werden. Auf den Seiten des Autors kann man das Buch Beta lesen, und seit einiger Zeit arbeite ich mit der PDF-Beta Version.
Das Buch arbeitet anhand von Beispielen, und geht Schritt für Schritt durch alle wesentlichen Themen der iPhone App Entwicklung (Navigation, UI Design, etc). Alle Beispiele sind gut bebildert, und lassen sich sehr einfach umsetzen. Die Themen und Tutorials steigern sich von sehr einfach, und werden immer komplexer. Als Einsteiger fühle ich mich Anfangs sehr wohl, umso weiter ich in das Buch einsteige, umso mehr merke ich das mir der Hintergrund fehlt: Objective-C oder das Foundation Framework der Mac Umgebungsumwicklung sind wesentliche Bestandteile der iPhone App Entwicklung. Hier hilft das Buch nicht weiter – das entsprechende Wissen wird vorausgesetzt.
Dennoch, das Buch hilft beim Einstieg enorm. Die iPhone App Entwicklung hat Ihre eigenen Gesetze und eine gewisse Lernphase ist auch für erfahrene Mac Entwickler notwendig. Dieses Wissen bekommt man hier sehr anschaulich. Man versteht sehr schnell die verschiedenen Konzepte der iPhone App Entwicklung. Man lernt View Controller, Table Views, etc kennen, und auch anzuwenden. Trotzdem ist eine weitere Lektüre notwendig, nämlich Objective-C Hintergrundwissen. Zu diesem Thema gibt es entweder das Einführungs-PDF von Apple, oder das Buch Objective C 2.0 von Stephen Kochan.
Webseite des Autors / Verlags: http://pragmaticbookshelf.com/
Werbung in iPhone Apps: Around Me & Google
Seit Jahren schwärmen Analysten von dem Potential der mobilen Dienste und Applikationen, in Verbindung mit der Einnahmequelle Werbung. Google ist auch hier längst vertreten – hier ein iPhone App Beispiel: Around Me.
Around Me ist eine App, die durch lokale Dienste und Empfehlungen mittels GPS viele Benutzer auf Ihrem Telefon installiert haben. Noch dazu ist die kleine App kostenlos. Seit einem der letzten Updates von Around Me gibt es nun Werbung – die erste Zeile der Tabellenansicht wird jetzt von Google blockiert. Google mobile Ads ist das entsprechende Programm, das Software Herstellern diese Einnahmequelle ermöglicht. Google’s mobile Advertising Programm ist wie alle anderen Anzeigenprogramme aus dem Hause Google performance orientiert – das heisst, das nur nach erfolgreichem Klick bezahlt wird. Pageviews werden nicht vergütet.

Google Ads in der Around Me app
Around Me hat die Werbung gut integriert – der Benutzer wird nach Klick auf den kleinen Anzeigenbanner nicht vom Programm weggeleitet, sondern bleibt innerhalb der App. In einem Frame wird der Safari Browser nachgebildet, und liefert dort die Zielseite des Werbebanners. Nach dem Werbekonsum kann der Benutzer somit zurück in die Around Me App und weitersurfen.
Allerdings sind noch nicht alle Werbetreibenden im mobilen Zeitalter angekommen: viele Zielseiten sind die Standardhomepages der Werbenden, und somit auf dem mobilen Gerät verschenkt. Die gelben Seiten z. B. werben sehr umfangreich innerhalb der Around Me App, was aus Sicht der Gelben Seiten Sinn macht – allerdings ist die Zielseite eine normale Gelbe Seiten HTML Webseite, und nahezu unlesbar. Hier besteht Nachholbedarf.
Die Performance muss Google noch verbessern: die kleinen Werbebanner laden sehr lange. Selbst innerhalb eines WLAN Netzes dauert es mitunter mehrere Sekunden, bevor der kleine Banner erscheint. Häufig viel zu lange, denn bis dahin ist der Benutzer bereits die Tabelle nach unten gesurft und sieht den Banner nicht mehr.
Insgesamt ist zu sagen, dass mobile Advertising noch in den Kinderschuhen steckt – aber sicherlich im Kommen ist. Ohne Werbung sind alle Applikationen im iPhone App Store (und wohl auch bald im Android Store) nicht finanzierbar. Solange der Endkunde nicht unter zuviel Werbung leidet, und der Nutzen der kostenlosen Apps überwiegt, dann steht einer erfolgreichen Beziehung Kunde/Werbetreibender nichts im Weg.
Buch: Programming in Objective-C 2.0
Dieses Buch wurde mir durch die Macup Zeitschrift schmackhaft gemacht. Ein kleiner Artikel über iPhone Programmierung gab Einblicke in den erforderlichen Wissenstand, und als Referenzobjekt wurde ein Buch von Stephan G. Kochan empfohlen. Die Empfehlung jedoch war das Vorgängerbuch, das schon relativ lange am Markt war, und als Einstiegsbuch für Objective-C gilt.
Nachdem der Mac und das iPhone gerade einen unglaublichen öffentlichen Schub erfahren, hat sich wohl auch der Autor gedacht, das es an der Zeit wäre, das Buch mal zu aktualisieren. Und so ist es nun zur Version 2.0 gekommen. Das aktuelle Werk ist in USA bereits erschienen, die deutsche Übersetzung lässt noch etwas auf sich warten. Bei Amazon kann das Buch bestellt werden (Link siehe unten).

Um was geht es in diesem Buch genau? Das Buch ist die Grundlage für jede Mac oder iPhone Programmierung. Der Großteil des Buches handelt das Foundation Framework ab, ca 90%. Ein kleiner Teil nur gibt Einblicke in die Cocoa Programmierung, oder genauer gesagt, zeigt den Umgang mit dem Interface Builder. 2 kleine iPhone Projekte zeigen diesen Einblick.
Knapp 560 Seiten lang geht es Anfangs um Objekte, Klassen, Methoden, etc. und erklärt sehr anschaulich und einfach, was es damit auf sich hat. Letztlich habe ich einige Bücher zu diesem Thema gelesen, aber keiner hat es so einfach erklärt wie Kochan. Das Thema ist trocken, und viele Leser warten auf die visuelle Umsetzung im Interface Builder – aber der Autor verwendet bis ganz zum Schluss das klassische NSlog um Ergebnisse anzuzeigen. Ist vielleicht nicht ganz so einfach für viele Einsteiger, dennoch reicht es vollkommen um die Grundlagen zu verstehen.
In Kombination mit dem iPhone SDK Buch von Bill Dudney, eignen sich beide Werke um die Programmierung von Apple’s Mobiltelefon anzugehen. Das Buch ist eine klare Empfehlung wert – mit etwas Geduld läßt sich hier hervorragend eine neue Programmiersprache lernen.
Hier könnt ihr das Buch bei Amazon bestellen, und unterstützt gleichzeitig diesen Blog.
Hello World: Einfaches iPhone Tutorial
Nachdem ich bereits auf einige Hello World Tutorials hingewiesen habe, hier nun mein eigenes. Ich habe versucht es so einfach wie möglich zu halten, und durch Screenshots aufzubessern.
Was soll unser Hello World Beispiel zeigen? Ganz einfach, die App hat einen Button und ein Textfeld. Letztlich wird nichts anderes gemacht, als nach dem Klick auf den Button wird im Textfeld „Hello World, iPhone“ angezeigt. Das ist alles.
Hier nun Schritt für Schritt meine Erläuterungen:
- In Xcode legen wir ein neues Projekt an -> iPhone Applications / View based Application.
- Das ganze müsste dann aussehen wie in der folgenden Abbildung - all diese Dateien sind von Xcode automatisch angelegt worden:

Hello World Dateien in Xcode
- In der linken Navigation findet ihr den Punkt NIB Files -> dort bitte HelloWorldViewController.xib doppelt klicken: und es öffnet sich unser User Interface innerhalb des Interface Builders (IB).
- Im IB holt ihr euch aus der Library einen Button und ein Textfeld und zieht das ganze auf den View. Die Library aktiviert Ihr innerhalb von Tools oder durch die Tastenkombi Hochstelltaste-CMD-L (Abbildung 2 zeigt die Library).
- Den Button und das Label könnt ihr entsprechend ändern (Zentrieren, Größe, Schriftart, etc.). All dies geschieht durch Klick auf das jeweilige Element und CMD+1 Tastenkombination (Attributes Inspector). Das ganze sollte dann in etwa so aussehen:

HelloWorldViewController.xib View
- Als nächstes legen wir die einzelnen Actions/Outlets in Xcode an: Dazu gehen wir zum Header File HelloWorldViewController.h und passen den Code entsprechend an:

Interface HelloWorldViewController.h
- Alles andere außen rum (import, @end, etc. belassen wir so wie es ist, und speichern die Datei.
- Jetzt muss im Implementation File HelloWorldViewController.m noch die Methode umgesetzt werden:
- Alle anderen Code snippets innerhalb der .m Datei so belassen, und speichern.
- Zurück zum Interface Builder: wenn ihr jetzt innerhalb HelloWorldViewController.xib auf das File’s Owner klickt und durch CMD-4 den Identity Inspector aufruft, dann bekommt ihr Eure Xcode Einträge zusehen: Das UILabel und die buttonClicked Action.

HelloWorldViewController Identity
- Jetzt müssen wir das Ganze noch innerhalb des IB verbinden. Das passiert durch CTRL-Klick Methode: Zuerst verbinden wir den Button mit File’s Owner: Button aktivieren, CTRL und Maustaste drücken – den Pfeil ziehen wir zum File’s Owner (siehe Abbildung). Dort sollte jetzt das Event buttonClicked auftauchen, bitte auswählen und loslassen:

Verbindung zwischen File's Owner und Button
- Jetzt verbinden wir noch File’s Owner mit dem Label: gleiches Spiel wie zuvor, nur klicken wir jetzt File’s Owner mit gedrückter CTRL-Tase, und ziehen den Pfeil Richtung Label: dort aktivieren wir label.
- Speichern, und Build and Go klicken. Der iPhone Simulator wird gestartet, und Eure App sollte folgendes Ergebnis liefern:

Hello World App auf dem iPhone Simulator
Hoffe Ihr konntet der Beschreibung folgen. Ich freue mich auf Eure Kommentare.

Implementation: HelloWorldViewController.m
Stanford Universität: iPhone Programmierung
Die weltbekannte Stanford Universität hat Ihr Kursmaterial zum Thema iPhone Programmierung veröffentlicht. Jede Menge PDF warten hier auf den wissbegierigen Studenten. Das Material erfordert Einarbeitung, und selbständiges Lernen. Hier findet Ihr das ganze iPhone Material:
Falls Ihr vom Stanford Lehrmaterial so begeistert seid, dann könnt ihr hier weitere Themen surfen und laden:
Das ganze Material ist selbstverständlich kostenlos. Yippie.
Hello World Tutorial Übersicht
Jeder, der sich einer neuen Programmiersprache nähert, kennt die Hello World Tutorials. Diese wunderbar einfachen Anleitungen erleichtern den Einstieg – ein schneller Erfolg ist garantiert (Eine Nachricht mit dem Titel „Hello World“ auf dem Bildschirm).
Dieses Erfolgserlebnis wollte auch ich haben, und hab im Internet nach iPhone Hello World Tutorials gesucht. Gefunden habe ich sehr viele dieser Tutorials. Im Vergleich zu anderen Programmiersprachen konnte ich aber zwischen all den Tutorials nur einige wenige Gemeinsamkeiten wiederfinden. Jeder hat irgendwie eine andere Herangehensweise, was die Sache dann doch nicht erleichtert.
Hier also eine Übersicht und kurze Erläuterungen zu den Tutorials:
- Pragmatic Bookshelf Video: First iPhone Application. Sehr gut gemachtes Video, das anschaulich die Entwicklung erklärt. Wirkt am professionellsten, und bietet auch Prozess-Charts, die das ganze verdeutlichen.
- Hello World Video @ iPhone Development Central: Sehr nettes Video, das leider etwas zu schnell ist. Wenn man sich jedoch durch pausieren durchklickt, dann lernt man hier einiges.
- Weitere Einsteiger Tutorials bei iPhone Development Central: Hier gibts nicht nur Hello Wold Videos, sondern auch weiterführende Tutorials.
- Hello World in Deutsch: Schritt für Schritt, und Screenshot über Screenshot. Hier erleichtern Kommentare im Source Code das Verständnis.
- Hello World in Deutsch II: Nochmals ein Tutorial in deutscher Sprache. Etwas komplexer als andere Tutorials, erfordert das ein oder andere Coding Verständnis.
Falls Ihr weitere gute Hello World Tutorials kennt, dann postet doch Eure Links in die Kommentare.
Shazam: Interessantes Business Modell
Die iPhone App Shazam ist seit der Eröffnung des App Stores am Start, und der Erfolg ist äußerst beeindruckend. Die Funktion oder der Sinn dieser App ist schnell erklärt: Shazam erkennt Musik. Jeder kennt das Szenario, im Radio läuft ein interessanter Titel, und keiner weiß von wem dieser Song ist. Heute hält man einfach sein iPhone an den Radio, und Shazam ermittelt die Details. Genial einfach. Mehr kann die App eigentlich nicht.

Shazam UI
Viel interessanter ist aber das Business Modell dahinter: die App ist kostenlos. Womit verdient Shazam Geld? Mit dem iTunes Affiliate Programm. Wer Shazam genau kennt, weiß, das jeder ermittelte Song auch gleich einen Link zum mobilen iTunes liefert – um den Titel zu kaufen. Shazam ist eine der meistverbreitesten Apps auf dem iPhone. Wenn auch nur einige wenige Shazam Benutzer ihre Titel direkt über die App kaufen, geht das Business Modell auf. 4% auf jeden verkauften Song klingen erstmal nicht viel, aber hier geht es ums Volumen.
Desweiteren plant Shazam innerhalb der App Werbung zu schalten – eine weitere Einnahmequelle. Shazam wurde von Apple auch in einem TV Spot berücksichtigt – eine bessere Werbung kann es für eine App nicht geben:
