Apple kürzt Speed-Up-Loop
Neu in watchOS 7: Nahtlos schneller animiert
Die kurze, augenzwinkernde Geschichte vom „Speed-Up-Loop“ gehört zur klassischen Internet-Folklore und kann unter anderem hier nachgelesen werden. Die Kurzfassung: Als institutioneller Entwickler ist man gut damit beraten seinem Code einen kleinen Speed-Up-Loop mit auf den Weg zu geben. So in etwa:
- for (i=0; i< 1000000; i++) { ; }
Irgendwo im Quelltext vergraben, muss dieser bei jeder Ausführung stets bis auf eine Million hoch zählen, ehe die nächste Zeile abgearbeitet werden kann. Die Idee:
[…] immer wenn wir diese wirklich langsamen Wochen haben – Du weißt schon – diese, in denen wir eigentlich keine Fehler beheben oder andere Änderungen vornehmen, dann entfernen wir einfach eine der Nullen aus dem Loop. Und dann sagen wir den Managern, dass wir bei der letzten Code-Sichtung auf einige Geschwindigkeitsprobleme gestoßen sind, diese aber nach einer Menge tiefgreifender Optimierungen behebn und den Programmablauf erheblich beschleunigen konnten […]
In watchOS 7 scheinen auch Apples Entwickler eine Null aus ihrem Speed-Up-Loop entfernt zu haben. So laufen die Animationen für den Übergang ins Dock, zu Apple Pay oder in die App- bzw. Homescreen-Ansicht deutlich schneller ab, als noch unter watchOS 6.
Actually the animation trick is even more obvious with the side button (and maybe a little confusing but still worth it imo) pic.twitter.com/jVXFsfaU1a
— Felix Lapalme (@lap_felix) June 27, 2020
Die Computeruhr setzt fortan zudem auf nahtlose Animationen, die den laufenden Übergang nicht mehr abbrechen, sondern schlicht erweitern, wie die eingebetteten Videos von Felix Lapalme zeigen.
watchOS 7 wird noch im laufenden Monat auch als Public Beta für freiwillige Tester zur Verfügung stehen.
Actually the animation trick is even more obvious with the side button (and maybe a little confusing but still worth it imo) pic.twitter.com/jVXFsfaU1a
— Felix Lapalme (@lap_felix) June 27, 2020
Klug gemacht!
Wäre wünschenswert, wenn meine AW3 wieder ein bisschen flüssiger/schneller/performanter laufen würde. Die Geschichte zum Speed-Up-Loop kannte ich nicht, ist aber äußerst amüsant. :D
Ich finde es jetzt schon gut und möchte WatcOS7 nicht mehr vermissen …
Gute Planung ist alles :-)
Haha „Deep-juju“ I will keep that one
Ja, und das wirklich nervige ist das Besitzer der Watch 1-2 einfach grundlos immernoch auf den längeren Animationen sitzenbleiben …
Grundlos? Warum programmierst DU das nicht rein, immerhin bist Du doch im Entwicklerteam.
Oder woher weißt Du, dass das grundlos ist?
Apple muss ja sehr mutig sein eine Public Beta an zu bieten nach den Fällen mit den roten Ausrufezeichen noch gar nicht so lange her. Bin gespannt wie viele watch Einsendungen es geben wird.
Die Animationen finde ich größtenteils störend wenn nicht gar nervig. Jedesmal wenn eine Push reikommt muss sich erst dass App-Icon einblrnden, dann 1-2 Sekunden warten und erst dann bekommt man die relevanten infos. Aus UX Sicht ein graus. Bei Nachrichten Pushes immer wieder. Auch verstehe ich nicht warum bei mehreren Nachrichten der ganze Verlauf durchgescrollt werden muss, obwohl ich die Konversation auf der Watch mitverfolgt habe. Das Apple da nicht mal ins Detail kuckt.
Stört mich auch jedes Mal wieder. Da frage ich mich immer, ob die ihre eigenen Produkte nicht benutzen. Sowas fällt doch sofort auf, wenn man mal mehrere Nachrichten am Stück bekommt …
Kann man die watchOS Beta auch nutzen, wenn man auf dem iPhone bei iOS 13 bleibt?
Nein das geht nicht, das iPhone muss erst auf iOS 14 hoch
Soweit mir das bekannt ist, geht das nicht. WatchOS 7 setzt zwingend iOS14 voraus.
In einer professionellen Firma geht sowas sicher nicht durchs Code-Review. Bei Apple kann ich mir vorstellen, dass Sie entweder die Animations-Parameter angepasst haben oder tatsächlich optimiert haben. Ein ganzes Team samt Lead von diesen Praktiken zu Überzeugen halte ich bei Apple für unmöglich. Wer auf solche Mittel zurückgreift hat wahrscheinlich Kompensationsbedarf für irgendwelche Unarten des Arbeitgebers oder ist nicht besonders ehrenwert…
Ja, du hast Recht, ehrenwert ist es nicht.
Doch, das kann ich mir gut vorstellen. Bei einigen Apps sogar unterstellen.
Witz nicht verstanden, richtig?!
Bei mir kommt seit jeher eine zweite Benachrichtigung bei einer Mail. Hoffe das wird endlich behoben
Kann msn das direkte Öffnen einer Mail abschalten?
Jeder moderne Compiler optimiert so eine nichts machende Loop automatisch heraus.
Das aktuelle Pendent wäre vielleicht diese Optimierungen auszuschalten um sie dann später wieder einzuschalten.
Wers nicht glaubt schaut hier: https://godbolt.org/z/HUZMnV
Oben rechts das -O anpassen: -O0 keine Optimierungen, -O1 -O2 -O3 steigert die Optimierung
Als SW Entwickler sag ich euch aber: Sowohl ich als auch meine Kollegen machen sowas nicht. Es gibt Code Reviews, alles muss zertifiziert und abgewunken werden. Diese Cowboy-Zeiten sind lange vorbei.
Das freut uns natürlich, dass du und deine Kollegen das nicht machen – DANKE!!!