Schlagwort-Archive: Apple

Goto Fail als Lehrstück

Während dem vergangenen Wochenende und dem Anfang dieser Woche wurde der Fehler in der Zertifikats-Überprüfung in Apples Code ausführlich diskutiert. Der Quellcode kann öffentlich angesehen werden und dass die fehlerhafte Codezeile dann auch noch „goto fail“ heisst hat natürlich viele ermutigt mit Häme nicht zu sparen.

Goto Fail

Die Code-Zeile, die das Problem verursachte (gelb hervorgehoben)

Eine Variante dieses Fehlers hatte ich auch als Punkt 6 in den 9 unbeliebtesten Entdeckungen in fremdem Code beschrieben.

Ob der Fehler durch ein automatisches Mergen von zwei Codefiles, unkonzentriertes arbeiten beim Code schreiben oder ein unbeabsichtigtes Kopieren der Codezeile entstanden ist kann nur anhand der Codefiles nicht erörtert werden. Gleichwohl darf man aus den Fehlern anderer lernen und so habe ich mir Gedanken gemacht, wie dieser Fehler hätte vermieden werden können.

Hier ein paar Punkte, die aus meiner Sicht das Risiko vermindert hätten:

  • Code Reviews
    Wenn Code Änderungen von einer zweiten Person überprüft werden ist die Gefahr kleiner, dass ein solcher Fehler hinein rutscht. Ausgeschlossen werden kann es natürlich trotzdem nicht, denn Menschen machen Fehler.
  • Warnungen einschalten und beachten
    Da ich die Umgebung nicht kenne, mit der OS X und iOS gebuildet wird kann ich nicht beurteilen, ob der Compiler hier Unterstützung geboten hätte. Aber viele Compiler geben ab einem bestimmten Warning-Level eine Warnung oder sogar einen Fehler aus, wenn Codeabschnitte vorhanden sind, die gar nie erreicht werden können. Dabei müssen dann aber auch die Warnungen entsprechend beachtet werden, nicht wie in Punkt 7 meiner unbeliebtesten Entdeckungen in fremdem Code.
  • Coding Guidelines
    Mit Coding Guidelines, die verlangen, dass jeder Block mit geschweiften Klammern eingefasst wird, hätte dieser Fehler vermieden werden können oder er wäre vermutlich eher aufgefallen. Auch ein fehlerhaftes Mergen mit diesem Resultat wäre vermutlich nicht passiert. Die Guidelines müssen aber auch wieder durch ein Code Review oder durch ein Tool überprüft und durchgesetzt werden.

Fehler passieren, und vielleicht versteckt sich in all den Codezeilen, die ich schon geschrieben habe ein ähnlicher Fehler. Wenn ein solcher Fehler öffentlich wird versuche ich deshalb lieber, daraus zu lernen als über den Verursacher zu spotten.

Android holt bei den Tablets auf

Nachdem vor einem Jahr Android auf den Smartphones die 50%-Hürde geknackt hat, ist es auch bei den Tablets auf dem Weg, diese Hürde zu meistern. Laut den Zahlen des Marktforschungsunternehmens Strategy Analytics haben die Android-Tablets im dritten Quartal 2012 (3Q12) mit 10,2 Millionen verkaufter Geräte einen Marktanteil von 41,3% erreicht. Apple ist mit 14 Millionen verkaufter iPads immer noch Marktführer, der Marktanteil beträgt 56,7%. Microsoft wird mit 400’000 verkauften Geräten gelistet, gleich viele wie ein Jahr zuvor.
IDC hat ebenfalls Marktzahlen für 3Q12 veröffentlicht, jedoch nicht auf das Betriebssystem bezogen, sondern nach Herstellern. Die absoluten verkauftszahlen für Apple werden hier bestätigt, der Gesamtmarkt wird aber etwas grösser angenommen (27,8 Millionen gegenüber 24,7 Millionen bei Strategy Analytics). Dadurch ergibt sich bei IDC ein Marktanteil von 50,4% für die Tablets von Apple.

Ausblick
Die von Google angekündigten neuen Tablets der Nexus-Reihe dürften einige Käufer finden. Apple versucht aber durch das iPad mini den Markt der kleineren (7 Zoll) Tablets anzugreifen, den Android bisher alleine beherrschte. Und Microsoft startet mit Windows 8 auch richtig im Tablet-Markt. Die bisherigen Windows-Versionen waren ja nicht unbedingt für die Touch-Bedienung geeignet.
Die Verkaufszahlen dürften weiterhin steigen. Dies sicherlich auf Kosten der Netbooks, die wahrscheinlich entweder durch Tablets oder durch ausgewachsene Notebooks ersetzt werden dürften. Der Marktanteil von Apple bei den Tablets wird auf unter 50% sinken. Wie stark dabei die Android-Tablets den Marktanteil steigern können und wieviel Microsoft mit Windows 8 vom Kuchen abbekommt ist dabei schwierig abzuschätzen, da Windows 8 eben erst veröffentlicht wurde und Microsoft mit der eigenen Hardware beim Surface noch Probleme hat.

Androids Marktanteil bei 50%

Laut den Zahlen von Gartner hat Android bei den Smartphone-Betriebssystemen einen Marktanteil von 50% an den im dritten Quartal 2011 verkauften Geräten erreicht.

Während Apple mit den iPhones die Stückzahlen steigern konnte (aber trotzdem etwas an Marktanteil einbüsste) blieben RIMs BlackBerries bei den Stückzahlen stabil, was einen grösseren Verlust beim Marktanteil zur Folge hat. Microsoft verlor sowohl bei den Stückzahlen als auch beim Marktanteil. Microsoft muss sich also sehr sputen, wenn die Prognosen von Gartner vom Frühling erreicht werden sollen.

Microsoft wurde bereits von Samsung mit ihrem eigenen Betriebssystem Bada überholt (Steigerung beim Marktanteil von 100%!). Bada ist aber noch weit von den Big 4 (Android, Symbian, iOS und Research In Motion) entfernt, von denen Symbian als der grosse Verlierer angesehen werden muss.

Warten wir mal gespannt auf die Abschlusszahlen für 2011 und vergleichen diese dann mit den alten Prognosen.

Tablet-Systeme heute und in Zukunft

Vor kurzem betrachtete ich die Marktanteile bei Smartphones, diesmal sind die Tablets an der Reihe.

Apple hat mit dem iPad die ganze Branche auf dem linken Fuss erwischt. Einige Hersteller versuchten dagegenzuhalten, zum Beispiel das WeTab mit seiner speziellen Geschichte. Andere Hersteller versuchten mit dem Smartphone-Betriebssystem Android 2.2 (Froyo) auf den Tablets zu punkten. Erst mit Android 3.0 (Honeycomb) ist aber das Betriebssystem wirklich Tablet-tauglich, bei Froyo-basierenden Tablets kommen die Smartphone-Einschränkungen früher oder später zum Vorschein.

Nach Zahlen von Strategy Analytics verlor Apple aber trotzdem im vierten Quartal 2010 20% Marktanteil, liegt mit 75% aber immer noch weit vor der Konkurenz. Dies soll sich aber laut Strategy Analytics schon in den nächsten 2 Jahren ändern, dann sollen Android-Tablets den grösseren Marktanteil haben als Apple.
Gartner gibt Apple noch mehr Zeit als Leader,
die Ablösung durch Android soll nach ihren Schätzungen erst 2015 erfolgen.
Acer-Chef JT Wang sieht Apple in Zukunft bei 20% Marktanteil, wobei er keine klare Zeitprognose angibt. Wieweit hier fundierte Abschätzungen vorliegen oder ob die Aussage auf dem Prinizip Hoffnung basiert kann jeder für sich selber entscheiden…

Zusammenfassend kann gesagt werden, dass sich bei den Tablets vermutlich das selbe Spiel wie bei den Smartphones abspielen wird. Apple als Vorreiter kann prinzipiell fast nur Marktanteil verlieren, Android prescht mit seiner Gerätevielfalt nach vorne und andere Systeme müssen sich mit Nischen zufrieden geben. Dazu müssen aber auch die Apps vorhanden und den Systemen sowie dem Nutzungsverhalten der Benutzer angepasst sein. Hier ist Android noch im Hintertreffen, da das SDK für Honeycomb erst vor drei Monaten erschienen ist.

Smartphone-Systeme heute und in Zukunft

Gartner hat aktuelle (erstes Quartal 2011) Verkaufszahlen über Mobiltelefone und Smartphones veröffentlicht. Dem Bericht zufolge dominiert Android bei den Smartphones und Microsoft kommt mit ihrem neuen Windows Phone nicht auf Touren.

Da stellt sich die Frage, wie es in Zukunft aussehen wird. Kann Microsoft dank dem Nokia-Deal Boden gutmachen? Ist der Android-Boom bald wieder vorbei?

Drei verschiedene Marktforschungsunternehmen haben dazu Zahlen präsentiert: Gartner, Pyramid Research und IDC.

In einem Punkt sind sich die drei Unternehmen einig: Symbian ist ein Auslaufmodell, im Jahr 2015 kann mit einem Marktanteil im Promille-Bereich gerechnet werden. Auch bei Apple iOS und RIM BlackBerry sehen alle drei einen leichten Abwärtstrend was den Marktanteil betrifft.

Während die Verlierer nun bekannt sind stellt sich die Frage: Wer kann die fehlenden Marktanteile an sich reissen? Hier sind sich die drei Unternehmen nun nicht mehr einig.

Gartner und IDC rechnen damit, dass Android im Jahr 2015 auf 45-50% Marktanteil kommt und damit klarer Marktführer ist. Microsoft kann vom verschwinden von Symbian profitieren und kommt mit etwa 20% Markanteil auf den zweiten Platz.

Die Prognose von Pyramid sieht im Jahr 2012 einen grossen Windows Phone Boom voraus, durch den das Microsoft System fast Android einholen könnte. Im Jahr 2013 soll dann Microsoft bereits Marktführer sein und im Jahr 2015 liegt Microsoft immer noch kanpp vor Android, wobei die beiden mit einem Marktanteil von je 30-35% den Markt beherrschen.

Der Blick in die Glaskugel bleibt also immer noch etwas trübe. Es wird wohl viel davon abhängig sein, ob die Zusammenarbeit von Microsoft und Nokia Geräte mit einem guten Preis/Leistungs-Verhältnis hervorbringt und wie diese von den Kunden angenommen werden. Wie schon beim iPhone und bei Android werden dabei die verfügbaren Apps eine grosse Rolle spielen.