INTRODUCTION -> Geschiedenis

Voor we beginnen met uit te leggen wat DevOps is moeten we eerst weten waar het vandaan komt. DevOps is namelijk geen technologie of een verzamelmaam maar een beweging binnen de software en netwerk wereld.
We situeren ons rond het jaar 2008, om ons een idee te geven moeten we best de wereld van toen eens bekijken. We zaten in een pre-smartphone era. De iPhone was pas aan zijn 2de levensjaar toe maar de PC had al al onze huiskamers veroverd, net als het breedband internet. Het bedrijfsleven was gelijkaardig. Web gecentreerde bedrijven als Facebook zagen pas het licht maar grotere machten als Google waren al langer bekend. We kwamen net uit een browser en zoekmachine oorlog (IE en Google).

Hoe werkte deze organisaties intern? We kijken daarvoor even naar onze collega’s van de opleiding prgrammeren. Het Agile manifesto kwam al uit in 2000. Dit was wel niet de doorbraak door het publiceren van een boek (het is geen religie) maar het einde van het waterfall model om development van applicaties strikt in fases uit te voeren (analyseren, ontwikkelen en publiceren) was wel al zeker. Als we over Agile spreken, spreken we over continu opleveren van software, onze grote handleidingen werden post-it briefjes op een bord naast ons op kantoor. Onze klant kreeg elke 2 weken wel iets nieuws te zien wat was afgewerkt. Deze nieuwe werkmethode bewees zijn nut in een als maar sneller veranderende maatschapij.
Op Agile werken gaan we verder in tijdens het verloop van deze cursus.

Nu we toch al even naar onze opleidingen hebben gekeken zien we dat we een Graduaat Programeren en een Graduaat Netwerkbeheer hebben. Nu dit was exact hoe bedrijven werken (en vaak nog altijd, maar daar komen we op terug)! Binnenin meeste organisaties hebben we twee teams. De programeurs en “die mensen in de kelder die de servers online houden”. Waarom die neerkijkende toon? In vele gevallen werkte de twee “afdelingen” in andere verdiepen of gebouwen. Fouten werden op elkaar gestoken (het bekende “works on my laptop”) en comminucatie was minimaal. Kennisuitwisseling van vakexperten in beide domeinen bestond ook amper. Developers en Operations.

Net als in de software wereld voor Agile werken merkten we een inefficiëntie, het kon niet veel beter, een server opszetten koste veel tijd en resources. Virtuele Machines loste al veel op voor ons maar was louter een technisch hulpmiddel. Nieuwe versies van software kwamen alsmaar sneller. En het internet? Dat begon de start van een exponentiele curve (opens new window)met de populariteit van smartphones, laptops,…

En dan waren er twee groepen die elkaar ontmoeten, en georganiseerd ontmoeten. Een paar trekkers in de community organiseerde meetups en conferenties om de twee samen te brengen, om ideeën uit te wisselen met elkaar. Online en offline begon een enkeling de gebroken communicatie op te lossen. Wat hier ontstond was een wisselwerking tussen de twee groepen. Developers leerden over hoe rekening te houden met waar hun code terecht komt, de operations mensen zagen inzicht van code, automatie en agile werkmethodes.

Nu in 2008 was het nog niet opgelost door de invoer van een kanban bord in de kelder. Aan de organisatie kant kwam er een verandering, de twee teams werken nu vaker samen “op hetzelfde verdiep”. In sommige bedrijven gaat het verder en maken ze deel uit van hetzelfde team met een constante wisselwerking.

Wat het voor ons nog interessanter maakt is de opkomst van nieuwe technologieën. De eerste is cloud computing, in 2006 kwam Amazon met een toevoeging van S3 en EC2 aan hun aanbod die tot vandaag een van de meest gebruikte cloud services zijn.
Nu onze servers zo snel en flexibel te kopen waren was de tijd van een server een naam te geven en uren mee te spenderen gedaan. Een oplossing vonden we in de wereld van de Developers, code! Infrastructure as Code liet ons toe om doormiddel van een basis kennis aan programeren het werk van het opzetten, updaten en aanpassen van servers te verbeteren. Een volgende revolutie kwam uit een onverwachte hoek: dotCloud wou de cloud nog een stukje makkelijker maken voor developers. Die naam ken je niet, want de techologie was beter dan de cloud. Daarom kennen we het nu beter als Docker (opens new window). Containers waren niet nieuw, maar hoe de technologie te gebruiken als tool voor developers, operations en de open source community was het wel.

Dit is de wereld waar we ons in gaan verdiepen in het vak.