Direct naar content

To script or not to script: that is the question

Automatisering is hot. DevOps, CI/CD, Infrastructure as Code – het lijkt wel alsof handmatig werken taboe is geworden. Maar is automatisering altijd de slimste keuze? Cindy Beernink, database consultant bij OptimaData, ziet regelmatig dat teams te ver doorschieten in hun automatiseringsdrang. “Soms kost het bouwen van een script meer tijd dan het probleem gewoon handmatig oplossen,” vertelt ze. In deze blog legt ze uit wanneer scripten waardevol is en wanneer je beter je handen uit de mouwen steekt.

Cindy Beernink

DBA Consultant en Database Reliability Engineer
Cindy Beernink - DBA Consultant en Database Reliability Engineer
To script or not to script: thats the question - databasebeheer

De kracht van standaardiseren

Scripts kunnen een enorme tijdsbesparing opleveren. Neem bijvoorbeeld het uitrollen van een nieuwe virtuele omgeving. Als je tientallen servers moet inrichten met identieke configuraties, is automatisering goud waard. Je voorkomt menselijke fouten, werkt volgens best practices en kunt bij problemen direct een aantal oorzaken uitsluiten. “Als je weet dat verschillende omgevingen op exact dezelfde manier zijn opgeleverd, is de kans op slordigheden nihil,” legt Cindy uit. “Dan kun je bij een melding direct focussen op diepere oorzaken van de fout. Dat scheelt stress, tijd en geld.”

Wanneer scripten juist problemen oplevert

Men probeert vaak technisch hoogstandjes in het script te bouwen in plaats van scripts begrijpbaar te maken. De aanpak van Cindy is helder: “Als ik kennis overdraag, laat ik iemand eerst twee of drie keer handmatig de stappen uitvoeren. Zo begrijpen collega’s echt wat er gebeurt. Pas wanneer werkzaamheden zich herhalen, is scripten nuttig. Om zichtbaar te maken welke acties het script uitvoert, is het belangrijk om leesbare logging op het scherm te tonen.”

“Maar juist in ons werk als specialistische consultants is onze bijdrage vaak kort of eenmalig. Onze kracht zit in kennisoverdracht op zo’n manier dat de klant of het team ermee verder kan en tegelijk meer weet dan voorheen.”

Maatwerk boven standaard

Niet elke situatie vraagt om dezelfde aanpak. Cindy noemt het voorbeeld van verschillende databasetypen: “Een database voor datawarehousing gebruik je heel anders dan een database voor software van derden. Die hebben ook een andere configuratie nodig. Standaardisatie is geweldig, maar flexibiliteit blijft nodig.”

Bij beheer speelt dit nog sterker. “We hebben vaak te maken met probleemoplossing, bijvoorbeeld problemen die alleen in de productieomgeving voorkomen. Voor veelvoorkomende problemen kunnen scripts handig zijn, maar je loopt er vaak tegenaan dat je net weer andere informatie nodig hebt. Dan kun je alle moeite doen om scripts aan te passen, maar soms is het sneller en efficiënter om losse queries uit te voeren of gebruik te maken van de beschikbare beheertooling.”

Visueel inzicht maakt het verschil

Cindy benadrukt nog een voordeel van handmatig werken: “Grafieken en plaatjes maken voor de klant vaak beter zichtbaar wat er speelt. Daardoor begrijpt de klant sneller wat er aan de hand is en waarom er actie ondernomen moet worden.”

Drie vragen voordat je begint

Hoe weet je nu of iets de moeite waard is om te automatiseren? Cindy heeft een praktische checklist:

  1. Ben je zeker dat je het script in de toekomst nodig hebt? Als je het maar één keer gebruikt, is handmatig vaak sneller.
  2. Win je er echt tijd mee? Tel niet alleen de uitvoertijd, maar ook de tijd die het kost om het script te bouwen, te testen en te onderhouden.
  3. Helpt het script je collega’s? Scripts zijn waardevol als ze werk uit handen nemen. Voor eenmalige of steeds wisselende situaties zijn ze minder geschikt.

DevOps versus beheer versus probleemoplossing

De druk vanuit de markt om alles te automatiseren is groot. DevOps, CI/CD en Infrastructure as Code zijn geen buzzwords meer, maar standaard.

Cindy: “Continuous Improvement en automation zijn belangrijke onderdelen van de DevOps-lifecycle. Om verbeteringen aan te brengen en de daaruit volgende wijzigingen te automatiseren, is er een goede analyse nodig. Scripts kunnen handig zijn voor probleemanalyse. Soms is het sneller om handmatig instellingen en logs te controleren voordat je begint met automatiseren. Als de acties bekend zijn die je wilt uitvoeren, dan kun je de oplossing omzetten naar een script om de werkzaamheden te automatiseren volgens DevOps.”

Controle houden over het proces

Voor sommige werkzaamheden is automatisering simpelweg niet geschikt. “Foutoplossing,” noemt Cindy als voorbeeld. “Vaak heb je meer baat bij het uitvoeren van losse queries.” Soms wil je stap voor stap werken, in controle zijn en kunnen ingrijpen als het nodig is. Vooral bij bedrijfskritische processen waar de continuïteit op het spel staat, is handmatige controle onmisbaar.

Bewuster kiezen

Cindy’s advies? “Stel jezelf de vraag of automatisering echt waarde toevoegt. Win je er tijd mee? Helpt het je collega’s? Scripts zijn krachtig, maar niet altijd de oplossing; automatiseren kan ook gewoon meer tijd kosten dan het oplevert. Ik probeer te stimuleren om bewuster na te denken voordat je iets gaat scripten.”

Meer weten?

Worstelen met de vraag wanneer je wel of niet moet automatiseren? Bij OptimaData denken we graag met je mee. We helpen niet alleen met technische oplossingen, maar zorgen ook voor kennisoverdracht zodat je team zelfstandig verder kan. Neem gerust contact met ons op.