De Smartphone heeft de desktop in de afgelopen jaren verdrongen als belangrijkste device waarmee we werken. Veel organisaties hebben daarom een mobile first-strategie wanneer het gaat om applicatieontwikkeling. Dat klinkt enorm hip. Mijn stelling: dat is alweer enorm ouderwets.
Het succes van alle nieuwe platformen en verschillende form factors is in zoverre lastig voor it, omdat ze hun aandacht over een groot aantal technologieplatformen moeten verdelen. Bij veel bedrijven zie je daarom dat ze hun it-afdeling in teams opknippen. Eén team is gespecialiseerd in Android, één in iOS et cetera. Sommige van die bedrijven beginnen nu mobile first te ontwikkelen. Wat je dan in feite zegt is dat je niet genoeg resources hebt om voor alle technologiestacks een team in te richten. Je kan de strategie mobile ‘first’ noemen, maar bijvoorbeeld ook desktop ‘last’. Alle mensen die de desktop liever gebruiken dan de mobiel zullen niet zo blij zijn met mobile first.
Opknippen is niet zinnig
De it-afdeling opknippen in teams die zich met allerlei verschillende technologiestacks bezighouden is niet zinnig. Of je nu een applicatie bouwt voor een Android smartphone, een Apple tablet of een desktop met Microsoft Windows, de applicatie die erop draait hoeft geen wezenlijk andere logica of integraties te hebben. Neem bijvoorbeeld een applicatie die de kredietwaardigheid van een potentiële koper checkt. De koppelingen en business logica die eraan vastzitten is voor ieder technologieplatform hetzelfde. Zonde om voor iedere technologiestack het wiel opnieuw uit te vinden, nog maar te zwijgen of al het onderhoud.
Waar het in beginsel om gaat bij applicatieontwikkeling is de usability. Maakt een gebruiker alleen gebruik van de applicatie op de desktop? Dan bouw je een desktop app. Is hij altijd onderweg? Dan een mobile app. Is hij altijd onderweg en heeft hij vaak geen dekking? Dan een native mobile app. Een mooi voorbeeld is een klant van ons: SES, een wereldspeler op het gebied van satellietdienstverlening. Zij bouwen voor klanten in beginsel voor de smartphone, maar intern ontwikkelen ze ook portaalfuncties voor de desktop, omdat die functies vooral intern op de zaak gebruikt worden met desktops. Mobiel is niet bepalend voor hun aandacht, maar de gebruiker.
Universal app
Ontwikkelaars zouden in feite uit één codebase moeten werken die los staat van het technologieplatform waarop de applicatie uiteindelijk komt te draaien. Noem het maar een universal app. De ontwikkelaar zou zich dan bij het ontwikkelen enkel nog bezig hoeven houden met het it-landschap, de koppelingen met externe systemen, de logica en een generieke workflow, ongeacht het device type. Een tweede expert zou zich dan bezig kunnen houden met UX en Usability van de devices waar de universal app op komt te draaien. Hij moet alleen wel vanuit een platform ontwikkelen die dit helemaal end-to-end ondersteunt. Wat mij betreft geen mobile first maar user first, met al z’n voorkeuren.