zaterdag 15 juni 2013

To client or not to client

In den beginne was er geen cliënt  Nou ja, er was een beeldscherm. Maar dat had niet voor niks de naam “domme terminal”. Alle slimmigheid zat in de centraal beheerde mainframecomputer. En vergis je daar niet in: die was, ook in de jaren 60 al, behoorlijk slim. In een ver verleden heb ik op een IBM System/360 mainframe gewerkt waar virtuele machines al gewoon bestonden.
Zoals iedereen weet werden de werkstations alsmaar slimmer, zodat uiteindelijk iedereen zijn eigen “personal computer” kreeg. Met daarbij een nieuw dilemma. Want vanaf dat moment moest je gaan nadenken over welke diensten je waar het beste kon laten uitvoeren.
Bepalen door wie je welke dienst laat uitvoeren is superbelangrijk, maar lang niet altijd eenvoudig . Het cliënt-server model, waarbij pc’s een groot deel van de verwerking doen, is jarenlang populair geweest maar is nu op zijn retour. Om geen last meer te hebben van het gerommel met al die pc’s willen we nu “de cloud in”. Zeg maar terug naar het model mainframe, maar dan op afstand.
Hoewel… al die apps draaien weer op je eigen apparaat. En browsertoepassingen roepen steeds vaker via javacript en jquery zelf, zonder tussenkomst van een server, diensten aan. Ook nu is het dus een en-en verhaal, waarbij de verhouding tussen lokaal en centraal steeds verschuift.
Helemaal een verhaal apart is Chrome. De browser, maar vooral het Chrome besturingssysteem. Google, van oudsher het voorbeeld van een echt cloudbedrijf, beweegt via de “app economy” geruisloos richting persoonlijk apparaat. Zet de ingezette lijn zich voort dan is Chrome straks een nieuwe laag, bovenop de traditionele besturingssystemen. Waarna het, net zoals dat met hardware is gebeurd, niet meer zoveel uitmaakt welk besturingssysteem je gebruikt. Zolang je maar Chrome hebt draaien op je apparaat…
Omdat er altijd nieuwe mogelijkheden zullen komen zal het verplaatsen van diensten van cliënt naar server en vice versa waarschijnlijk eeuwig doorgaan. Aan jou dus de schone taak om te beslissen in welke situatie welke verdeling de beste diensten oplevert.