Boilerplate is de standaard, terugkerende code of setup die er moet zijn voordat het interessante, projectspecifieke werk kan beginnen. Elke webapp heeft een manier nodig om een server te starten, met een database te verbinden en fouten af te vangen. Niets daarvan is uniek voor jouw bedrijf, en toch moet het er zijn. Die voorspelbare, terugkerende opzet noemen developers boilerplate.

Het woord komt uit de oude krantenwereld, waar kant-en-klare metalen platen met vaste tekst naar lokale kranten werden gestuurd om zo in de pagina te zetten. Niemand schreef de standaardmededeling elke keer opnieuw; ze hergebruikten de plaat. Software doet hetzelfde: een framework of een starttemplate geeft je de gemeenschappelijke delen zodat je ze niet voor de honderdste keer hoeft uit te typen.

Een beetje boilerplate is gezond. Te veel is een waarschuwing. Als hetzelfde blok over veel bestanden gekopieerd wordt, betekent één kleine wijziging dat je het overal moet opsporen, en precies dat wil het DRY-principe voorkomen. De kunst is de nodige opzet behouden en weigeren om logica te kopiëren die op één plek hoort.

Boilerplate zit ook in gewone taal, niet alleen in code. De privacymelding onderaan een e-mail, de standaardclausules in een contract, de juridische tekst in de voorwaarden van een app: het is allemaal boilerplate, terugkerende tekst die er moet zijn maar zelden verandert. In software gebeurt hetzelfde. Een nieuw scherm heeft elke keer een kop, een laadtoestand en een fouttoestand nodig, en een vers project heeft dezelfde mappenindeling, dezelfde configbestanden en hetzelfde inlogwerk nodig voordat iemand een regel schrijft die echt over de klant gaat. Niets ervan is verspild. Het hoort alleen niet het onderdeel te zijn dat een betalende klant keer op keer financiert, en daarom houden teams startkits en generatoren bij de hand.

Bij TopDevs zetten we verstandige boilerplate één keer op en houden die daarna uit de weg, zodat het budget naar de delen gaat die je software echt van jou maken.