Contranoid is live!

Get ready! Attori in scena! Soyez pret! Prepárate! Mach dich bereit! Parat! Klaar? На старт! Внимание! Cancel all your plans for the day, because we just launched our newest game: Contranoid. Contranoid features Player versus Player combat on a single mobile or tablet as well as Single Player stages. Have a go at:http://contranoid.com/ Or download for iOS, Android or Windows Phone. Enjoy!
PAPER van De Persgroep, een hybride app, maar waarom?
Voor de prijs van de Linda, maar dan in plaats van één keer in de maand zes dagen in de week een verse editie. PAPER zit ergens tussen een serieuze krant en een glossy in en is geschreven door De Persgroep. Met veel liefde en plezier hebben wij deze hybride app ontwikkeld. Maar waarom eigenlijk hybride? Waarom niet native?
Het hybride versus native-vraagstuk komt voor ons vooral neer op: waarom moeilijk doen als het makkelijk kan? Het antwoord op die vraag is uiteraard: dat hangt er vanaf.
Beleving
Native apps voelen toch altijd nét even wat soepeler. Sexyer. (Ja, zo schrijf je dat blijkbaar. Ziet er toch niet uit?) Er is meer liefde en aandacht nodig om met een hybride app datzelfde niveau van beleving te benaderen. Dat doen we graag, maar waarom moeilijk doen als het makkelijk kan? Punt voor native.
Ontwikkeltijd
Wanneer je voor twee of meer platformen ontwikkelt, kost het ontwikkelen van een native app vaak meer tijd dan het ontwikkelen van een hybride app. Met native heb je immers een codebase per platform, met hybride één. Punt voor hybride.
Maar… dat verschil is in onze ervaring alleen significant wanneer je één interface kunt aanbieden die voor alle platformen werkt. En dat is zelden een goed idee. Vinden wij. Geef dat punt dus maar weer terug. Of…?
Android-apps zien er anders uit dan iOS-apps. En belangrijker: ze werken anders. Daarmee doelen we niet alleen op Apple-fanboys of Google-groupies (of een verdwaalde Windows Phone-aanbidder) die chagrijnig worden als ze een UI pattern van het rivaliserende platform tegenkomen op hun geliefde device. Elke smartphone- of tabletgebruiker is simpelweg gewend aan de standaard interface-elementen van het platform. Het kost de gebruiker minder denkmoeite (Is dat een woord? Bij deze.) als een app zich daaraan houdt. En dat is goed. Je moet dus wel een verdomd goede reden hebben om één en dezelfde interface aan te bieden met je app.
De verdomd goede reden voor één interface
PAPER is een magazine. Met een magazine-uitstraling. En een magazine-interface. Net als bij games is het voor een magazine-app als PAPER helemaal niet gek om er anders uit te zien en anders te werken dan de meeste andere apps. Sterker nog, als PAPER met voornamelijk native UI elementen gebouwd zou zijn, dan zou de app een stuk minder sexy zijn.
Kortom, voor PAPER was hybride ontwikkelen significant sneller. Waardoor er voldoende ruimte overbleef om de app zo gelikt mogelijk te maken.
Andere overwegingen
Uiteraard weegt er meer mee. Eén codebase is gemakkelijker te onderhouden dan meerdere. En dat één van de ondersteunde platforms het web zelf is, is natuurlijk ook relevant.
Daarnaast is het ook belangrijk om te kijken naar de (on)mogelijkheden van hybride en native. Het is echter allang niet meer zo dat je met hybride minder kunt, dus dat zit wel snor. Met Cordova kan native functionaliteit gemakkelijk aangesproken worden vanuit JavaScript, ondanks de platformverschillen. Dat hebben we nu bijvoorbeeld met notificaties gedaan en we hebben net de in de platforms ingebouwde manier om artikelen te delen ingebouwd. Dat delen is een mooi voorbeeld van iets dat we dus wél platformspecifiek willen hebben. En dat kan met Cordova.
Blije nerds
Voor ons ook erg belangrijk is het meewegen van ontwikkelaarsblijheid. Het ontwikkelen van hybride apps is lang een stuk minder prettig geweest dan het ontwikkelen van native apps. Maar inmiddels is het best wel oké. We hebben ons heerlijk vermaakt met de isomorphische manier van werken van React en Fluxible. (In een notendop: dat betekent dat zowel de server als de client (delen van) de interface kunnen renderen. Net als hoe Facebook dat doet. Zij hebben React dan ook gebouwd.) Cordova lost ook veel op, maar heeft ook nog wel een weg te gaan, als we eerlijk zijn. Cordova kan soms nare, exotische bugs opleveren. En Cordova helpt ook niet als je de performance en beleving optimaal probeert te krijgen. Dat is ook niet zo gek, als je bedenkt dat Cordova nog steeds ondersteuning voor Blackberry met zich meezeult, maar daar frustreert het niet minder om. Het is dus nog niet allemaal rozengeur en manenschijn, maar er is al voldoende reden om blij te zijn.
Daarom dus hybride
In dit geval.
En nu, Apple-fanboys, kunnen jullie lekker PAPER gaan lezen op een Android. Of Google-groupies op een iPad. Maakt toch niet uit, PAPER is op elk platform even fijn.
Geniet ervan.
Postkantoor in je broekzak: de nieuwe PostNL app
Gebruik jij de nieuwe PostNL app al? Deze app is de aftrap van onze droom samen met PostNL: de toekomst van post bepalen. En daarom willen we er toch graag wat over bloggen, ook al staat het al een tijdje live.
De droom
Al voor de pitch van dit project droomden Taco en Chris over de toekomst van post. Zonder twijfel is het een wereld vol mogelijkheden. En dat vindt PostNL ook. PostNL bleek een heldere verrassende visie te hebben en hun plannen voor de toekomst van post maakten ons extra enthousiast. Aan het begin van dit project droomden we samen hardop van mooie tweets na de release. Zoals deze hierboven, want een postkantoor in je broekzak: dat is toch wel wat de ultieme post app zou moeten nastreven.
5 seconds of fame
De nieuwe PostNL app is een goed voorbeeld van de belangrijke overlap tussen ontwerp en techniek. De bedoeling van de app is namelijk vooral gebruiksgemak: als gebruiker wil je snel de informatie hebben die je nodig hebt. Dit betekent dat de app vaak niet langer open is dan een paar seconden. Je zou denken dat het dan niet zoveel voor hoeft te stellen, maar juist dit gegeven legt de lat een stuk hoger. Die paar seconden wil je je niet afvragen waar de informatie staat die je nodig hebt of moeten wachten tot informatie ingeladen is.
Onder water post bezorgen
Onder water blijkt het bezorgen van post in Nederland verrassend ingewikkeld. In de happy flow alleen al heb je ontzettend veel sporen. In de ene situatie moet het eerste adres vermeld worden, in de andere situatie het tweede, in weer een andere situatie mag de naam er niet op, terwijl dat in de andere cruciaal is, om maar een paar voorbeelden te noemen. En dan hebben we het nog niet eens over de unhappy flow. (En laat dat nou de flow zijn die we als Q minstens net zo belangrijk vinden.) De kunst is om deze complexiteit te verbergen voor de gebruiker. Dit project bestond dus voor een groot deel uit simpel maken wat onder water eigenlijk heel complex is. We zijn er trots op dat dat gelukt is in nauwe samenwerking met PostNL en de designers.
Techniek
We bouwden twee losse native apps voor iOS en Android. De iOS app bouwden we in Swift. Swift is nog vrij nieuw en nog redelijk instabiel, bleek helaas. Deze keuze was dus een technische uitdaging, maar we kunnen vol overtuiging zeggen dat we hier nog steeds achter staan. Apple staat er immers bekend om snel oude technieken af te schrijven. (Zoals USB-poorten.) Er komt dus een moment, waarschijnlijk eerder vroeger dan later, dat Apple Objective C apps niet meer toelaat, of minder mogelijkheden biedt. De instabiliteit van Swift wordt verbeterd met regelmatige updates, maar betekende nu nog veel compileertijd en crashes. Ook zijn er online nog weinig antwoorden te vinden over problemen waar je tijdens het bouwen tegenaan kunt lopen, en missen de al geschreven libraries die wel voor Objective C bestaan. Daarom hebben we die veel zelf geschreven en die delen we natuurlijk met de hele wereld. Hier, alsjeblieft en get your Swift on.
De vernieuwde PostNL app
Deze eerste versie legt de basis voor de toekomst van post. Naast bekende features als Track & Trace en een nauwe koppeling met de website biedt de nieuwe app features als inloggen en daarmee je data syncen, de handtekening zien van degene die voor je pakketje heeft getekend, pakketjes onthouden, zien welke pakketten je gaat ontvangen en je ziet welke pakketjes je ontvangen hebt. Verder kun je ermee herrouteren en dat herrouteren geeft ook weer een hoop opties: locatie, tijdslot en direct in de app betalen voor extraspeciale opties. En er zit nu een barcodescanner in. Weet je, probeer het zelf even uit!
De toekomst
Dit is de ultieme tweet waar we nog van dromen. Met de updates die blijven komen voor deze app, andere apps die we gaan integreren en alle andere plannen die we samen met PostNL hebben over de toekomst van post blijft die droom voor ons tastbaar. Dit is nog maar het begin!