Het einde van het GUI-tijdperk
We doen er goed aan om het toneel te schetsen door te kijken naar enige historische context rond GUI's en hun rol binnen de wereld van systeembeheer.
In de “oude tijd” hadden we op geen enkele computer grafische gebruikersinterfaces, laat staan op onze servers. Lang nadat GUI's populair begonnen te worden op eindgebruikersapparatuur, hadden servers ze nog steeds niet. In de jaren tachtig en negentig was de rekenkundige overhead die nodig was om een GUI voort te brengen aanzienlijk ten opzichte van de totale rekencapaciteit van een machine, en het was nogal onpraktisch, zo niet vaak zelfs volledig onmogelijk, om het weinige dat er was te gebruiken om een GUI voort te brengen. De wereld van systeembeheer is in deze context opgegroeid, werkend vanaf de opdrachtregel omdat er geen andere optie beschikbaar voor ons was. Het was niet gebruikelijk dat mensen GUI's voor systeembeheer wensten, misschien omdat het idee nog niet bij mensen was opgekomen.
Halverwege de jaren negentig begon Microsoft, samen met enkele anderen, het idee van GUI-gestuurd systeembeheer voor de instapservermarkt te introduceren. Aanvankelijk was de aanpak niet erg populair, omdat deze niet aansloot bij de manier waarop ervaren beheerders in de markt werkten. Maar langzaam, naarmate nieuwe Windows-beheerders, en tot op zekere hoogte Novell Netware-beheerders, begonnen “op te groeien” met toegang tot GUI-gebaseerde beheertools, ontstond er een geaccepteerde plaats in de servermarkt voor deze systemen. In het midden tot het einde van de jaren negentig domineerden UNIX- en andere niet-Windows-servers de markt volledig. Zelfs VMS was nog een belangrijke speler, en aan de kant van het kleinbedrijf en de commodity-servers was Novell Netware halverwege het decennium de dominante speler en aan het einde van het decennium nog steeds een zeer serieuze kandidaat. Netware bood een GUI-ervaring, maar een die zeer licht was en waarschijnlijk slechts als “semi-GUI” zou moeten worden beschouwd in vergelijking met de rijke GUI-ervaring van Windows NT, die ten minste vanaf 1996 werd geboden en tot op zekere hoogte eerder met de NT 3.x-familie, hoewel Windows NT vóór de uitgave van NT 4 zijn plaats in de wereld nog maar net aan het vinden was.
Zelfs in die tijd bleef de markt voor GUI-gestuurd beheer voornamelijk een uithoek. Microsoft en Windows hadden aan de serverkant nog steeds geen belangrijke plaats, maar begonnen terrein te winnen via de kleinbedrijfsmarkt, waar hun lage kosten en gebruiksvriendelijke producten veel hout sneden. Maar het was werkelijk de paniek en marktexpansie van het einde van de jaren negentig, teweeggebracht door de combinatie van de millenniumangst, de internetzeepbel en de uitstekende productontwikkeling en marketing van Microsoft, die zorgde voor een aanzienlijke groei en verschuiving naar een markt voor GUI-gestuurd beheer.
De enorme expansie van de IT-markt aan het einde van de jaren negentig betekende dat er niet genoeg tijd of middelen waren om de nieuwe mensen die in de IT instroomden op te leiden. De leercurve voor veel systemen, waaronder Solaris en Netware, was zeer steil, en de branche had een werkelijk episch aantal mensen nodig om sneller van nul naar “competente IT-professional” te gaan dan met de bestaande platforms van die tijd mogelijk was. De marktgroei was explosief en er viel zoveel geld te verdienen met werken in de IT dat er geen middelen beschikbaar waren om nieuwe mensen die de IT moesten instromen doeltreffend op te leiden, aangezien iedereen die gekwalificeerd was om onderwijstaken op zich te nemen ook zoveel meer kon verdienen met werken in de branche dan met werken in het onderwijs. Naarmate de markt groeide, werd de waarde van volwassen, ervaren professionals buitengewoon hoog, omdat zij in het almaar uitdijende vakgebied als geheel steeds zeldzamer werden.
De markt reageerde op verschillende manieren op deze behoefte, maar een van de grootste was een fundamentele verandering in hoe IT werd benaderd. In plaats van IT-professionals aan te sporen de traditionele leercurves te overwinnen en de benodigde vaardigheden te ontwikkelen om de op dat moment op de markt aanwezige systemen doeltreffend te beheren, veranderde de markt de tools die zij gebruikten om tegemoet te komen aan minder ervaren en minder deskundig IT-personeel. Eenvoudigere en vaak duurdere tools, vaak met GUI-interfaces, begonnen de markt te overspoelen, waardoor degenen met minder opleiding en ervaring op zijn minst vrijwel onmiddellijk nuttig en productief konden beginnen te zijn, zelfs zonder ooit eerder een product te hebben gezien.
Deze verandering viel samen met de natuurlijke vooruitgang van de prestaties van computerhardware. Het was tijdens dit tijdperk dat voor het eerst de kracht van veel systemen zodanig was dat, hoewel de GUI nog steeds een nogal aanzienlijke impact op de prestaties had, de lagere kosten van ondersteunend personeel en de snelheid waarmee systemen konden worden uitgerold en beheerd dit verlies aan rekencapaciteit door de GUI over het algemeen compenseerden. De GUI werd snel een standaardtoevoeging aan systemen die er slechts enkele jaren eerder nooit een zouden hebben gezien.
Om de capaciteiten van deze nieuwe IT-professionals te verbeteren en hen de markt op te jagen, verschoof de branche ook sterk naar certificeringen, destijds min of meer een nieuwe innovatie, die nieuwe IT-professionals, vaak zonder enige praktijkervaring, in staat stelden een zekere mate van competentie aan te tonen, en dat doorgaans zonder dat er enige noemenswaardige interactie of investering van bestaande IT-professionals nodig was, zoals universitaire programma's wel zouden vereisen. Zowel de markt voor GUI-gebaseerd beheer als de certificeringsbranche kwam tot bloei, en het gezicht van de IT veranderde aanzienlijk.
Het resultaat was zeker een stortvloed aan nieuwe, ongetrainde of licht getrainde IT-professionals die in recordtempo de markt betraden. Op korte termijn pakte deze verandering goed uit voor de branche. Het vakgebied ging jaren sneller dan anders mogelijk zou zijn geweest van dramatisch onderbezet naar relatief goed bezet. Maar het duurde niet lang voordat de keerzijden van deze snelle opname van nieuwe mensen zich begonnen af te tekenen.
Een van de grootste gevolgen voor de branche was dat er een branchebrede “babyboom” plaatsvond, met alle groeistuipen van dien. Een hele generatie IT-professionals groeide op in de bootcamps en de snelle “certificeringstrainingen” van het einde van de jaren negentig. Dit had als langetermijneffect dat de vuistregels en algemene benaderingen die in dat tijdperk gangbaar waren vaak werden vastgelegd tot bijna religieuze overtuiging, op een manier die bij eerdere én latere benaderingen niet het geval zou zijn. Doordat het onderwijs vaak snel en oppervlakkig gebeurde, moesten veel concepten uit het hoofd worden geleerd zonder begrip van de fundamenten erachter. Naarmate de “klas van 1998” in de loop der tijd uitgroeide tot de senior IT-professionals binnen hun bedrijven, werden zij de mentoren van nieuwe generaties, en dat oude uit-het-hoofd-leren is in de jaren daarna zeer zichtbaar doorgesijpeld via vergelijkbare benaderingen, zelfs lang nadat de kennis verouderd of onpraktisch was, en in veel gevallen is zij onjuist geïnterpreteerd en op voorspelbare wijze verkeerd, zelfs voor het tijdperk waaruit zij voortkwam.
Onderdeel van dit leren van het tijdperk was een algemene aanvaarding dat GUI's niet alleen aanvaardbaar waren, maar dat zij praktisch en verwacht waren. Het babyboomeffect betekende dat er weinig mentorschap was vanuit het voorgaande tijdperk en dat eerder gevestigde praktijken en normen vaak werden weggevaagd. Het babyboomeffect betekende dat de branche zichzelf niet zozeer opnieuw uitvond als wel zichzelf simpelweg invulde. Zelfs het concept van Informatietechnologie als een specifieke branche op zichzelf kreeg zijn huidige vorm en vatte voet in het publieke bewustzijn tijdens deze wisseling van de wacht. In plaats van een overblijfsel of een onderdeel van andere afdelingen of disciplines te zijn, kwam de IT tot wasdom; maar zij deed dat zonder de rijping en continuïteit van praktijken die zouden hebben bestaan bij een meer organische groei, waardoor de branche mogelijk in een slechtere positie achterbleef dan zij had kunnen zijn als zij zich op een continue wijze had ontwikkeld.
De naijlende impact van de IT-hausse van het einde van de jaren negentig zal nog zeer lang voelbaar zijn, aangezien het vele generaties zal duren voordat de trends, overtuigingen en aannames van die periode eindelijk worden weggevaagd. Langzaam vatten nieuwe concepten en benaderingen voet, vaak alleen wanneer oude technologieën verdwijnen en nieuwe worden geïntroduceerd, waarmee de wurggreep van de traditie wordt doorbroken. Een daarvan is het idee dat de GUI de dominante methode is waarmee systeembeheer wordt uitgevoerd.
Zoals we eerder opmerkten, was de GUI bij haar ontstaan een punt van onderscheid tussen oude systemen en de nieuwe wereld van het einde van de jaren negentig. Maar sindsdien zijn GUI-beheertools alomtegenwoordig geworden in hun beschikbaarheid. Elk noemenswaardig platform heeft, en heeft al lang, grafische beheeropties, zodat de GUI geen enkel platform meer op een noemenswaardige manier onderscheidt. Dit betekent dat er geen leverancier meer is met een duidelijke agenda die hen ertoe aanzet het concept van de GUI te promoten. De marketingwaarde van de GUI is in feite verdwenen. Evenzo ontwikkelden niet alleen vrijwel alle systemen die voorheen geen sterke GUI hadden er een (of meer), maar gingen ook de GUI-gebaseerde systemen die geen sterke opdrachtregeltools hadden terug om die alsnog te ontwikkelen en bouwden er nieuwe professionele ecosystemen omheen. Het tij is beslist gekeerd.
Bovendien is in de afgelopen bijna twee decennia de retoriek van de niet-GUI-wereld voet aan de grond beginnen te krijgen. Systeembeheerders die werken vanuit een meesterschap over de opdrachtregel, op welk platform dan ook, presteren over het algemeen beter dan hun tegenhangers, wat leidt tot meer loopbaankansen, uitdagender functies en hogere inkomens. Bedrijven die zich richten op opdrachtregelbeheer beschikken over vaardiger werknemers en een hogere beheerdichtheid, wat op zijn beurt de totale kosten verlaagt.
Dit alleen al was genoeg om de positie van de GUI te doen wankelen. Maar er was altijd het oude argument dat GUI's, zelfs aan het einde van de jaren negentig, slechts een kleine hoeveelheid systeembronnen gebruikten en slechts een zeer klein aanvalsoppervlak toevoegden. Zelfs als ze niet gebruikt zouden worden, waarom ze dan niet “voor de zekerheid” geïnstalleerd hebben. Naarmate CPU's sneller werden, het geheugen groter, opslag goedkoper en naarmate het systeemontwerp verbeterde, werd de impact van de GUI steeds kleiner, waardoor dit argument om GUI's beschikbaar te hebben sterker werd. Bijzonder sterk was het voorstel dat GUI's junior personeel in staat stelden taken ook uit te voeren, waardoor zij nuttiger werden. Maar het kwam veel te vaak voor dat senior personeel de GUI in deze omstandigheden als kruk behield.
Met de komst van virtualisatie in het domein van de commodity-servers begon dit alles te veranderen. De kosten van een GUI werden plotseling weer merkbaar. Een systeem dat twintig virtuele machines draait, zou plotseling twintig keer de CPU-bronnen, twintig keer het geheugen en twintig keer de opslagcapaciteit van één enkele GUI-instantie gebruiken. De voetafdruk van de GUI was weer merkbaar. Naarmate de dichtheden van virtuele machines begonnen te stijgen, deed de relatieve impact van de GUI dat ook.
Virtualisatie deed cloudcomputing ontstaan. Cloudcomputing verhoogde de implementatiedichtheden van virtuele machines en bracht andere prestatie-effecten van GUI's aan het licht, vooral in de vorm van langere bouwtijden van instanties en complexere consoletoegang op afstand. Systemen die een GUI vereisten, begonnen in adoptie en mogelijkheden merkbaar achter te lopen op hun GUI-loze tegenhangers.
Maar de veel grotere factor was het bijproduct van de standaard factureringsmethodieken van cloudcomputing. Omdat cloudcomputing de kosten per instantie doorgaans op een rauwe, volledig zichtbare manier blootlegt, hadden IT-afdelingen geen middel om de kosten van GUI-implementaties, waarvan de extra overhead vaak zelfs de kosten van een enkele cloudinstantie zou verdubbelen, te verdoezelen of over het hoofd te zien. De boekhouding zou zeer duidelijk de rekeningen zien voor GUI-systemen die veel meer kostten dan hun GUI-loze tegenhangers. Zelfs niet-technische teams konden zien dat de kosten van GUI's opliepen, nog voordat de kosten van het beheer in aanmerking werden genomen.
Deze kosten blijven toenemen naarmate we opschuiven naar containertechnologieën, waar de schaal van afzonderlijke instanties klein wordt, en kleiner betekent dat de relatieve overhead van de GUI groter wordt.
Maar de werkelijke impact, mogelijk de grootste blootlegging van de problemen rondom GUI-gestuurde systemen, is de verschuiving van de branche naar de DevOps-modellen voor systeemautomatisering. Vandaag de dag stapt slechts een relatief klein percentage van de bedrijven actief over op een volledig cloudgeschikt, elastisch schaalbaar DevOps-model van systeembeheer, maar de trend is er, en het model laat GUI-beheerders en hun systemen volledig achter. Bij DevOps-modellen is directe toegang tot machines niet langer een standaardwijze van beheer en zijn systemen nog verder gegaan dan uitsluitend werken vanaf de opdrachtregel, naar volledig in code opgebouwd worden, wat betekent dat systeembeheerders die in de DevOps-wereld werken niet alleen op een opdrachtregel met hun systemen moeten interacteren, maar dat zij dat programmatisch moeten doen.
De markt verschuift snel naar minder, hoger geschoolde systeembeheerders die met veel, veel meer servers “per beheerder” werken dan in enig voorgaand tijdperk. Het idee dat één enkele systeembeheerder slechts enkele tientallen servers kan beheren, een gangbare overtuiging in de GUI-wereld, is allang ter discussie gesteld, zelfs in traditioneel “sneeuwvlok”-opdrachtregelsysteembeheer, met aantallen die gemakkelijk oplopen tot in de paar honderd. Maar het DevOps-model of vergelijkbare automatiseringsmodellen brengen die aantallen naar de duizenden servers per beheerder. De overhead van GUI's wordt steeds duidelijker.
Naarmate nieuwe technologieën zoals cloud, containers en DevOps-automatiseringsmodellen alomtegenwoordig worden, doet ook de natuurlijke “wildgroei” van werklasten dat. Dit betekent dat bedrijven van elke omvang een toename zien in het aantal werklasten dat beheerd moet worden. Bedrijven die traditioneel slechts twee of drie servers hadden, hebben vandaag de dag wellicht tien of twintig virtuele instanties! Het aantal bedrijven dat slechts één of twee virtuele machines nodig heeft, slinkt.
Dit alles betekent allerminst dat GUI-beheer in de nabije, of zelfs de verre, toekomst zal verdwijnen. De behoefte aan “eenmalig” systeembeheer zal blijven bestaan. Maar de verhouding tussen beheerders die in een “eenmalige” GUI-beheermodus kunnen werken en degenen die via de opdrachtregel en specifiek via geschreven of zelfs volledig geautomatiseerde systemen (à la Puppet, Chef, Ansible) moeten werken, helt al ongelooflijk snel over naar niet-GUI-systeembeheer en DevOps-praktijken.
Wat betekent dit alles voor ons in de loopgraven van de echte wereld? Het betekent dat zelfs functies, zoals Windows-beheer in het kleinbedrijf, die traditioneel weinig of geen noodzaak hadden om op de opdrachtregel te werken, de afhankelijkheid van de lokale server-GUI voor ons werk moeten heroverwegen. Opdrachtregeltools en -processen worden steeds krachtiger, bekender en de manier waarop wij geacht worden te werken. In de UNIX-wereld is de opdrachtregel altijd gebleven en zou de noodzaak om op GUI-tools te leunen vrijwel altijd als een grote handicap worden gezien. Diezelfde indruk begint nu ook op de Windows-wereld van toepassing te raken. Langzaam worden degenen die uitsluitend op GUI-tools leunen als tweederangsburgers gezien en in toenemende mate verwezen naar meer junior functies en kleinere organisaties.
De verbetering van script- en automatiseringstools betekent ook dat de waarde van schaal beter wordt, zodat de kosten om kleine aantallen servers te beheren per werklast zeer hoog worden, wat betekent dat er een zeer sterke aanmoediging is voor kleinere bedrijven om te kijken naar beheerconsolidatie via het gebruik van externe leveranciers die zich kunnen specialiseren in grootschalig systeembeheer en script- en automatiseringstechnieken kunnen benutten om hun kosten meer in lijn te brengen met de kosten van grotere bedrijven. Het vermogen om externe leveranciers te gebruiken om schaal of een benadering daarvan te bewerkstelligen, zal in de loop van de tijd zeer belangrijk zijn voor kleinere bedrijven om concurrerend in kosten te blijven wat betreft hun IT-behoeften, terwijl zij toch dezelfde stijl van computervoordelen genieten die grotere bedrijven vandaag de dag beginnen te ervaren.
Het zij opgemerkt dat gelijktijdig met deze verschuiving van de branche naar de opdrachtregel en automatiseringstools de overstap naar modernere, krachtigere en in beginsel op afstand bediende GUI's plaatsvindt. Dit is een veel minder dramatische verschuiving, maar wel een die niet over het hoofd mag worden gezien. Tools zoals Microsofts RSAT en Server Administrator bieden een GUI-weergave die onder de motorkap gebruikmaakt van opdrachtregel- en API-interfaces. Evenzo beschikt Canonicals Ubuntu-wereld nu over Landscape. Deze tools zijn minder populair in de enterprise, maar beginnen de grotere mkb-markt in staat te stellen een GUI-afhankelijkheid te behouden en tegelijkertijd een grotere reeks serverinstanties te beheren. De vooruitgang in dit soort GUI-tools is mogelijk de sterkste kracht die de bredere adoptie van opdrachtregeltools vertraagt.
Of we nu geïnteresseerd zijn in de overgang van de opdrachtregel, naar GUI's en terug naar de opdrachtregel als een interessant overblijfsel van de geschiedenis van Informatietechnologie als branche, of dat we hiernaar kijken als een manier om te begrijpen hoe systeembeheer zich ontwikkelt als loopbaanpad of bedrijfsmatige benadering voor ons eigen gebruik, het is goed voor ons om de factoren te waarderen die het hebben veroorzaakt en waarom de eb en vloed van de branche ons nu opnieuw terug naar de zee van de opdrachtregel voert. Door deze krachten te begrijpen, kunnen we praktischer inschatten waar de toekomst ons heen zal brengen, wanneer het tij wellicht opnieuw zal keren, hoe we onze eigen loopbaan het beste kunnen benaderen, of beslissingen kunnen nemen over zowel technologie als menselijk talent voor onze organisaties.

