‘Apple innoveert te snel, ontwikkelaars raken gestresst’
Vorig jaar was er nog kommer en kwel omdat Apple niet snel genoeg innoveerde. Maar nu Apple iOS 8 heeft uitgebracht met talloze functionele verbeteringen, gaat het voor veel ontwikkelaars weer iets té snel. Volgens onderzoeksbureau Forrester wordt iOS zo complex dat ontwikkelaars het niet meer kunnen bijbenen. Het levert bergen stress en slapeloze nachten op – niet alleen bij iOS-ontwikkelaars, maar ook bij collega’s die voor Android ontwikkelen omdat ontwikkelingen zoals Google Glass en Project ARA daar ook veel te snel gaan.
Het is te lezen in het rapport ‘Voorspellingen 2015‘, waarin analisten van Forrester trends onderzoeken waar ontwikkelaars mee te maken krijgen. Vorig jaar moesten ontwikkelaars al hun apps nog aanpassen voor het nieuwe uiterlijk van iOS 7. Nu zijn er 4.000 nieuwe API’s bijgekomen en praat alles met elkaar. Wired zag die ontwikkeling ook en publiceerde een stuk over de vele uitdagingen waar ontwikkelaars vandaag de dag mee te maken hebben.
Een aantal ontwikkelingen die Forrester ziet:
- Stand-alone apps gaan verdwijnen. Apps krijgen te maken met extensies en met data-aggregatie van HomeKit en HealthKit. Ze moeten samenwerken met externe diensten zoals Google Now.
- Hardware-ontwikkelingen zoals iBeacons, Touch ID en de A8X-processor brengen extra complexiteit met zich mee. Gebruikers verwachten rijkere content en betere games, maar ontwikkelaars moeten ook oude toestellen blijven ondersteunen.
- Mobiele concurrentie verschuift naar accessoires en ecosystemen. Apple en Google zijn daarin de grootste spelers. Het wordt een strijd op het gebied van auto’s (CarPlay vs Android Auto), wearables (Apple Watch vs Android Wear), televisie (Apple TV vs Android TV) en het huis (HomeKit vs Nest). Accessoires binnen zo’n ecosysteem werken goed met elkaar samen, maar dat geldt niet tussen ecosystemen onderling. Je zult dus moeten kiezen: Apple of Google. Microsoft en Amazon zijn ook met ecosystemen bezig, maar die zullen in 2015 nog niet aanslaan, denkt Forrester.
- Veel hogere eisen. In het begin was een app met basisfunctionaliteit voldoende, maar de lat voor succesvolle innovatieve apps ligt tegenwoordig een stuk hoger. En het moet binnen no-time klaar zijn. Ontwikkelaars kiezen daarom voor bestaande front-end componenten.

Wired informeerde bij een aantal ontwikkelaars en kwam met een eigen lijstje met uitdagingen op de proppen, die het leven van een appontwikkelaar moeilijker maken:
- Alles praat met alles. Voorheen stonden apps op zichzelf, nu moet je rekening houden met zaken als Handoff en Continuity. Heeft een app een OS X- en iOS-versie, dan verwachten gebruikers dat je ze beter laat samenwerken, ongeacht op welk apparaat je zit.
- App-extensies leveren ontwikkelaars extra hoofdbrekens op, zoals bij Evernote (onlangs vernieuwd). Zij moesten een share-extensie maken en ontdekten dat ze tegen een hoop beperkingen aan liepen, die ze niet gewend waren in de app zelf. Ze moesten met technologieën gaan werken, waarmee ze niet vertrouwd waren. Maar dat was nog niet eens het grootste probleem: het vinden van de juiste oplossing, zonder dat performance en bruikbaarheid in het geding kwamen, bleek een nachtmerrie met veel vallen en opstaan.
- Grotere schermformaten. De grotere schermformaten van de iPhone 6 (Plus) lijken vrij triviaal, maar het bracht ontwikkelaars wel aan het twijfelen of ze nog wel de meest ideale UX voor hun app hadden. Gaan mensen de iPhone 6 gebruiken als een miniatuur tablet? Dan moeten de items op het scherm niet hetzelfde zijn als in de iPhone-app.
- Beperkende factoren. Bij Fantastical 2 (zie artikel) veroorzaakte de widget de grootste vertraging. Er zitten beperkingen aan widgets, zoals de maximale hoogt. Het Fanastical-team had moeite om de widget nuttig en mooi te maken, op zo’n klein oppervlak. Wat willen mensen zien als ze het Vandaag-scherm bekijken? Dat is moeilijk in te schatten als er nog geen gebruikservaringen zijn.
- Ondersteuning van oude versies. Flipboard (onlangs vernieuwd) zat met het probleem welke oude iOS-versies ze nog moesten ondersteunen. Bij Android kun je zorgen dat nieuwe API’s ook werken op oudere Android-versies. Maar bij iOS bestaat dat niet. Ze moesten een knoop doorhakken welke iOS-versies ze nog zouden ondersteunen. Teruggaan tot iOS 5? Maar dat is behoorlijk oud. De makers van Fantastical 2 besloten dat ze alleen nog iOS 8 zouden ondersteunen.

Natuurlijk hoef je als ontwikkelaar niet aan al die nieuwe ontwikkelingen mee te doen. Zit je in een segment met hevige concurrentie, zoals agenda- en notitie-apps, dan zul je wel als die nieuwe functies moeten uitproberen. Maar heb je een gespecialiseerde app voor een heel specifieke doelgroep, dan hoeft het allemaal niet zo snel gaan. De app van mijn kapper heeft een lelijk icoontje en zal echt geen Handoff en widgets ondersteunen – en dat verwacht ik als klant ook helemaal niet. Als ik er maar gewoon een afspraak mee kan maken.
In de serie iCulture Biz vind je nog meer artikelen over onderwerpen die voor zakelijke appgebruikers en ontwikkelaars interessant zijn.
Taalfout gezien of andere suggestie hoe we dit artikel kunnen verbeteren? Laat het ons weten!
iOS
iOS is het besturingssysteem van de iPhone. iOS regelt alles wat er op je iPhone gebeurt: van de apps tot aan de functies van je iPhone en de verbindingen met Bluetooth, wifi en mobiele netwerken. Voor iOS brengt Apple regelmatig nieuwe gratis updates uit. Dit kunnen zowel hele grote updates met nieuwe functies zijn als kleine updates met bugfixes en verbeterde beveiliging. Lees hier meer over de huidige iOS-versie. Voor de iPad heeft Apple het besturingssysteem iPadOS, met grotendeels dezelfde functies.

Autolayout werkt vaak niet niet helemaal lekker dit brengt problemen met zich mee voor iPhone 6 (plus) ondersteuning.
Dat ze eens opschieten met de iphone 6 optimalisatie. Erg teleurstellend dat bedrijven als whatsapp(facebook) nu.nl (sanoma) en nos nog niet eens een update uitbrengen
Dat de ontwikkelingen te snel gaan is op zich geen probleem, maar het moet dan ook goed werken. Sinds iOS 8 zijn er heel wat veranderingen doorgevoerd in de opbouw van de code structuur. Apple probeert je ook naar de richting van Swift te duwen, welke ook nog absoluut niet naar behoren werkt en momenteel nog erg beperkt is.
Als developer ben ik momenteel meer bezig met het verhelpen van bugs van voorgaande apps door workarounds te zoeken en op te lossen dan het daadwerkelijk (door)ontwikkelen van nieuwe en bestaande apps.
Het artikel zegt niets teveel, ook ik raak steeds meer gefrustreerd hierdoor en het brengt echt wel slaapproblemen met zich mee. Het is al zo erg dat ik bijna de handoek in de ring wil gooien en stoppen met het developen voor Apple. Na iOS5 is het allemaal bergafwaarts gegaan helaas!
De IT-industrie gaat razendsnel en als je daar niet in mee wil of kan, is dat niet Apple’s probleem.
Apple moet leading zijn, het heeft geen keus. Dat het allemaal te snel zou gaan, lijkt me onzin.
Apple is een prima enabler – wat wil zeggen dat developers die snel WILLEN daartoe de mogelijkheden moeten hebben en anderen het op hun eigen tempo kunnen doen.
Nieuwe schermformaten ondersteunen kan bijv. snel.
Ondersteuning van alle -kits en extensies kost veel meer tijd maar daar kan je jezelf wel weer mee profileren.
Onnodige complexiteit kan je als developer vermijden door (eerst) alleen basisfuncties te ondersteunen (niemand verplicht Fantastical om die hele kalender in NC te hijsen)
Wat je Apple wel kan verwijten is de (hopeloos) selectieve communicatie, merendeels via rumor-kanaal, over release schema’s en uitrol van functies. Die op de meest onverwachte tijden verschijnen, weer half ingetrokken worden, en dan zonder kommentaar opeens weer terug zijn.
Release notes die meer vragen oproepen dan beantwoorden.
En basisfucties (Wifi, Bluetooth) moeten altijd rock solid zijn – maar dat is weer een ander chapiter…
@icook: Vooral aangezien je apps zelf al kunt optimaliseren met een jailbreak tweak.
Gelukkig herkenning vanuit onverwachte hoek: check je werkstress – campagne vanuit de overheid
Apple is vandaag de dag ook traag met het keuren van Apps. Daarom duurt het zo lang voordat er updates komen.
Een jaar geleden werden mijn Apps binnen 3 a 5 dagen gekeurd, nu wacht ik vaak 14 a 21 dagen…
Absoluut mee eens dat technologie snel veranderd en innoveert. Ben recent begonnen met ontwikkelen voor mobiele software (iOS) en ze hebben nu niet alleen Swift (wat niet noodzakelijk een vereiste is, overigens), maar al die continue veranderingen houdt je wel aan het denken.
Ben het overigens niet met alles eens; voor essentiele apps vind ik het wel belangrijk dat alle mogelijkheden worden benut (WhatsApp), maar van het gros van de apps vind ik het voldoende als ze eindelijk mijn 6+ scherm ondersteunen.
Ik ben het niet eens met “Nest vs. HomeKit”. Het lijkt me dat Nest prima kan aansluiten als één van de apparaten van HomeKit.
Waar heb je het over? Auto-layout werkt fantastisch! Ik kan nu zo snel dingen layouten die op magische wijze direct werken op meerdere resoluties!
Alleen is het nog niet helemaal lekker in Storyboard geïmplementeerd, misschien is dat wat je bedoelt. Daarom doe ik vaak alles in code. De truc is alleen dat je voor elke situatie moet afwegen of je storyboard, visual format of pure constraints gebruikt.
Ik kan me er iets bij voorstellen. Aan de andere kant…
Stabiel op iOS 8 en de grootte van de nieuwe schermen zijn nu prioriteit 1. Een widget, share extensions zijn secundair.
Bedrijven die op dit moment veel met mobiel hebben (banken maar ook nieuws en sociale zaken) zijn wel traag. De banken zouden Touch ID moeten omarmen. Zij hebben wel geld voor die apps.
Apple innoveert te snel. Het is nog nooit zo slecht geweest na een update.
Los eerst de IOS 8 problemen op.