1. REST zal heersen over IoT...in het begin

Het REST protocol heeft het web overgenomen en het ziet ernaar uit dat dat voorlopig zo zal blijven, aangezien elke thermostaat, deurknop en keukenapparaat tegenwoordig pakketjes stuurt en ontvangt. De redenen zijn duidelijk, programmeurs houden van de simpliciteit van REST. Het protocol is makkelijk te begrijpen en redelijk simpel te debuggen.

Er gaat niks boven het hebben van je data in tekstvorm om makkelijk inzichtelijk te maken wat er allemaal precies gebeurt. Kijk niet raar op als die nieuwe beveiligingscamera, magnetron of neustrimmer opstart met Nginx, draaiend op poort 80 en je de nieuwste nieuwtjes voorschotelt in HTML en CSS.

2. Binaire protocollen zullen herrijzen

Het heen en weer tennissen in JSON pakketten met REST-protocollen lijkt simpel, tenminste, vergeleken met de oude wereld van XML. Maar sommige superefficiënte programmeurs zullen zich afvragen waarom sommige binaire data geconverteerd moet worden naar een string om correct te worden weergegeven in JSON. Aan de andere kant gaat deze string namelijk toch weer parsen en terug-converteren naar bytes. Waarom niet direct de bytes doorsturen?

Het bouwen van meer binaire protocollen gaat niet vanzelf. De http-standaarden zijn van zichzelf behoorlijk tekstueel. Veel programmeurs hebben slechte ervaring met propriëtaire binaire protocollen die alleen maar uitgepakt kunnen worden door propriëtaire bibliotheken die niet werken zoals beloofd. De openheid van JSON en REST zijn aan het winnen. Maar dat betekent niet dat een open benadering tot een binair protocol geen efficiëntie kan brengen aan open standaarden. Het IoT zal meer data genereren dan ooit en veel apparaten zullen genoeg kleine pakketjes gebruiken die een strakke encodering nodig hebben. Wanneer zulke prestaties noodzakelijk zijn, zullen programmeurs zoeken naar manieren om meer binaire efficiëntie toe te passen op hun pakketten.

3. Video wint het van HTML

Vroeger hield het surfen op het internet in dat mensen van site naar site sprongen, lange teksten lazen, klikkend op hyperlinks als ze meer wilden weten. Tegenwoordig kijken we uren, en soms zelfs dagen, naar video's. We pakken alleen nog een toetsenbord om op te zoeken wanneer het volgende seizoen wordt ge-upload naar Netflix. Het internet verandert langzaam maar zeker in de televisie van weleer.

Dit is echter niet helemaal waar en sommige mensen zeggen zelfs dat het internet de televisie heeft "bevrijd". Mensen kijken zo nu en dan televisieclips op het internet. Ik zou bijvoorbeeld niet weten of "Saturday Night Live" nog steeds wordt uitgezonden op zaterdagnacht en of dit programma nog echt wordt gefilmd voor een live publiek. Maar ik weet wel dat je praktisch elke clip van het programma kan zien op een website. Heeft het programma een openingsmonoloog, is er nog steeds een host die de boel aan elkaar praat? Wie weet.

Er is op dit moment maar weinig te doen voor de couchpotato behalve het absorberen van bewegende plaatjes. Er wordt niet of nauwelijks geklikt of genavigeerd. Wellicht dat de volgende generatie video-apps een nieuwe dimensie zal toevoegen en de gereedschappen, die al beschikbaar zijn, zal verbeteren. De dood van Flash en de opstanding van HTML 5 brengen de mogelijkheid met zich mee videoclips samen te voegen met HTML. Misschien dat programmeurs gebruik kunnen maken van nieuwe, mogelijkheden. Tot die tijd zullen de gebruikers rustig zitten en "tv kijken" op praktisch dezelfde manier als onze grootouders in die (goede) oude tijd.

4. Smartphones doen van alles, behalve bellen

Belt er nog wel eens iemand met z'n smartphone? We sturen allemaal smsjes, lezen mail, bezoeken websites en dat is nog maar het begin. De kleine rechthoekige schermpjes hebben ons leven radicaal veranderd de afgelopen tien jaar en de veranderingen worden alleen maar interessanter. Er worden steeds meer sensoren toegevoegd en we vinden steeds meer handige toepassingen voor de microfoon, camera en accelerometer. Er is voor elk wat wils.

Met de gedachte behandeld te worden door een dokter in de praktijk na uren gezeten te hebben in de wachtkamer, zijn honderden startups bezig met het zoeken naar een manier om je smartphone te veranderen in een medisch apparaat. De microfoon luistert naar je hartslag, de camera kijkt naar je keel en de accelerometer registreert je lichaams-oefeningen. Al deze gegevens worden beschikbaar gemaakt met alle doktoren in de cloud die jouw informatie kunnen doorsturen naar een specialist die je kan helpen.

Ja, de volgende generatie smartphones zullen je huidige apparaat maar simpel doen lijken. De navigatie-apps evolueren in reserverings- en plannings-apps die alles voor je doen behalve het besturen van je auto. De sport-tracking apps veranderen in programma's die al je lichaamsfuncties in de gaten houden. En wie weet, wellicht dat er in de toekomst nog steeds iemand is die zich bezighoudt met het plegen van een belletje.

5. Grotere, betere databases zullen domineren

Tuurlijk, zoekmachines hebben het web geïndexeerd, maar nu zijn er databases die de hele wereld indexeren. Dankzij de verhoogde vraag naar next-generation locatie-apps en autonome auto's. Apps als Waze houden het rijgedrag van de gebruikers bij en genereren daardoor een accurate wereldkaart voor de ontwikkelaars en andere gebruikers, die in schril contrast staan tot de vooraf getekende kaarten die ooit door de cartograaf zijn opgesteld. Als de weg ergens open ligt, weet Waze het, als er een koe op de weg staat, weet Waze het. Als er ergens een nieuwe weg wordt aangelegd, weet Waze (en z'n gebruikers) het eerder dan wie dan ook.

De mate van detail van zulke databases zal geweldig zijn. Autonome auto's zullen bijvoorbeeld precies moeten weten wat de positie van de straatlantaarns en brandkranen is. En ja, ook de politie zal meer data dan ooit tot z'n beschikking hebben over wie wat doet op straat.

Uiteindelijk zullen we databases hebben die informatie bevatten over elke kapotte putdeksel in het land. Zullen de gemeentes ze ook allemaal op tijd kunnen repareren? Dat is misschien een brug te ver voor deze generatie, maar de robots komen eraan.

6. Javascript zal domineren, maar niemand zal het schrijven

Als wij geen javascript schrijven, wie dan wel? Transcoderende robots natuurlijk. Wij schrijven onze code in tal van verschillende dialecten en de robots vertalen dat in wat de browser of node.js begrijpt. Steeds meer code op Github kan niet worden uitgevoerd zonder eerst "gecompileerd" te worden door iets anders.

De meest prominente dialecten zullen degenen zijn die je pink niet al te moe maken ;) dialecten als Coffeescript, die zoveel mogelijk "interpunctie" weglaten waar sommige programmeurs zo over klagen. Er zijn tientallen varianten op Coffeescript inclusief Coco, IcedCoffeeScript II: The Wrath of Khan. En dit is nog maar het begin, omdat slimme programmeurs vertaalprogramma's hebben geschreven voor talen als Cobol, Java, Lisp en C. Al deze talen kunnen nu gewoon worden uitgevoerd in je browser na een vertaal- en optimalisatieslag. Waarom zou je zelf nog javascript schrijven als je een robot hebt die jouw favoriete taal kan omzetten naar deze taal?

7. PHP slaat terug tegen Node.js

Maar alleen om te voorkomen dat legacy-apps worden herschreven. Een paar jaar geleden leek het erop dat PHP stilletjes zou afsterven terwijl Node.js en Javascript het serverpark overnamen. Dit zou nog steeds kunnen gebeuren. Maar dat gaat niet zonder slag op stoot. De nieuwste versie van de just-in-time-tools als PHP 7 en de HipHop virtual machine presteren veel beter. Hierdoor kunnen codebases als Wordpress of Drupal 30, 40, 50 of zelfs 100 procent sneller.

Dit verandert overigens niks aan de andere voordelen die Javascript biedt, zoals de manier waarop dezelfde code uitgevoerd kan worden in de browser en op de server. Maar het neemt een van de grootste redenen weg waarom je afscheid zou nemen van een oude codebase die geschreven is in PHP ten faveure van Node.js. Deze oude platformen wordt uiteindelijk toch nog nieuw leven in geblazen.

8. Iedereen zal weten hoe je moet programmeren, maar bijna niemand weet hoe je "echte code" schrijft

Tegenwoordig wordt er steeds meer gehamerd op het gegeven dat iedereen moet leren programmeren. Er kan niet vroeg genoeg mee worden begonnen. Het beste wat je als hardcore-programmeur kan doen is ze toelachen en vooral stimuleren. Hoe meer de gewone gebruiker probeert te programmeren, hoe sneller ze erachter komen dat het toch best moeilijk is te jongleren met al die nummers, API's en wat dies meer zij.

Het schrijven van een stuk code is één ding, het bouwen van een compleet systeem met duizenden, zo niet miljoenen, regels code, is heel iets anders.

Er zullen altijd wat mensen tussen zitten die met een programmeertaal aan de slag gaan en het allemaal in één keer snappen, maar er zullen er ook genoeg tussen zitten die met de handen in het haar zitten en er helemaal niks meer van snappen. Iedereen kan een loop schrijven, maar er zijn er maar weinig die een goede loop kiezen.

9. Het wordt nóg moeilijker om de bemoeizuchtige manager te tolereren

Het is zover, de managers hebben ook een cursusje gevolgd in een van de hour of code-sessies en nu willen ze helpen.

"Ga jij hier een variabele plaatsen?", zullen we horen. "Ik gok dat je hier een loop gaat gebruiken?"

Blijf lachen en bedank ze, dat is het enige wat je kan doen.