Computable.nl
  • Thema’s
    • Carrière
    • Innovatie & Transformatie
    • Cloud & Infrastructuur
    • Data & AI
    • Governance & Privacy
    • Security & Awareness
    • Software & Development
    • Werkplek & Beheer
  • Sectoren
    • Channel
    • Financiële dienstverlening
    • Logistiek
    • Onderwijs
    • Overheid
    • Zorg
  • Computable Awards
    • Overzicht
    • Nieuws
    • Winnaars
    • Partner worden
  • Vacatures
    • Vacatures bekijken
    • Vacatures plaatsen
  • Bedrijven
    • Profielen
    • Producten & Diensten
  • Kennisbank
  • Nieuwsbrief

Koste wat het kost genereren

01 december 2015 - 13:554 minuten leestijdOpinieData & AI
Tom van Maanen
Tom van Maanen

Ik hoorde laatst de stelling dat je altijd scripts moet genereren als je daartoe de mogelijkheid hebt. De betreffende zegsman heeft navolgers. Ik zie dat veel organisaties heel graag scripts genereren. Genereren waar kan, lijkt het devies. Maar is dat wel zo? Daarover gaat dit artikel.

Een tijdje geleden werkte ik in een project met een college die de forse uitspraken niet schuwt. De collega poneerde de stelling ‘Generate or die’. Ofwel als je een script kunt generen, moet je het ook genereren. Koste wat kost.

Nu kan ik best een heel eind met hem meegaan, maar halverwege haak ik toch af. Laat me dat illustreren met een paar voorbeelden.

Het eerste voorbeeld is het aanmaken van een database script. Als je een datamodel met een modelleringstool als Powerdesigner of Erwin maakt, is het heel verstandig om database scripts te laten genereren. Je weet dan zeker dat je geen fouten maakt in de vertaling van model naar database script. Een tikfoutje is zo gemaakt, maar het is hartstikke lastig om dat later weer te herstellen. Met een generatie vanuit een modelleringstool is de kans op zo’n foutje een stuk kleiner. Kortom: het is absoluut een aanrader om gebruik te maken van de generatiemogelijkheden van Powerdesigner of Erwin.

Het tweede voorbeeld is het aanmaken van scripts uit een ETL-tool. Je hebt tools als Oracle Warehouse Builder en SAS Data Integration Studio die respectievelijk PL/SQL- en SAS-scripts op ETLgebied kunnen genereren. Die scripts zijn heel efficiënt opgezet en zitten vol slimmigheden die je er gratis met het generatieproces meekrijgt. In beide gevallen is het dan echt een aanrader om steeds gebruik te maken van de generatiemogelijkheden. Dat betekent dat iedere aanpassing eerst in Oracle Warehouse Builder of SAS DI Studio wordt aangebracht en dat je daarna het script opnieuw genereert. Op die manier blijf je gebruik maken van alle slimmigheden die je met het generatieproces meekrijgt.

In al die situaties ben ik het best eens met mijn collega, al zou ik de uitdrukking ‘Generate or die’  liever niet willen gebruiken. Ik ben wat vreedzamer aangelegd.

Doorslaan

De liefde voor genereren slaat tegenwoordig echter in sommige organisaties wel eens fors door. Ik ken verschillende organisaties waarin ook scripts gegeneerd worden waarbij ik me afvraag wat het nut is. Het is dan ontaard in genereren omdat het kan. En dat is minder handig.

Zo is er een grote organisatie waarbij Informatica xml-scripts moesten worden gegeneerd vanuit een Excel-script waarachter een VBA -programma zat dat vanuit Excel het xml zou moeten genereren. Nu waren er twee problemen met die oplossing. Ten eerste kon niet van alle Informatica-mogelijkheden gebruik gemaakt worden, omdat het VBA-programma niet de complete Informatica-functionaliteit afdekte. Bovendien vertoonde het VBA-programma wat bugs, zodat er handmatig een en ander moest worden aangepast. Het resultaat was dat het genereren van een xml-script een paar dagen kostte. Als je dan een foutje ontdekte, moest je het Excel-bestand aanpassen en kon je weer een paar dagen wachten. Heel wat ontwikkelaars zochten naar allerlei uitvluchten om maar direct Informatica te kunnen gebruiken om frustraties te vermijden die gepaard ging met het eindeloos wachten op een nieuw script. De leiding van de afdeling was evenwel streng en zorgde ervoor dat de meesten braaf een Excel-sheet invulde. Is dat handig? Ik zou denken van niet.

Ik ken een andere organisatie waar een hele slimme architect een programma had gemaakt waarmee je automatisch xml-scripts kon aanmaken om in Informatica mappings te kunnen genereren. Maar je kunt dergelijke mappings ook heel snel in Informatica zelf bij elkaar klikken. De tijdwinst die je wint met generatie is vrijwel verwaarloosbaar. Ik zag dat de ontwikkelaar op een hele slimme manier het generatieprogramma omzeilde omdat hij terecht geen zin had een programma te leren om een minimale tijdwinst te boeken. Eerlijk gezegd begreep ik die ontwikkelaar wel: het voordeel van het gebruik van het programma is minimaal. Waarom zou je je er dan aan wagen?

Deze voorbeelden laten zien waar je geen gebruik moet maken van generatiemogelijkheden. De voorbeelden laten zien dat je terughoudend moet zijn als er geen duidelijke voordelen aan het genereren zijn. Beide negatieve voorbeelden hebben ook allebei zelf gemaakte programmaatjes als gemeenschappelijk element. Probeer dit soort eigengemaakt spul te vermijden. Iedere ict-manager kiest voor buy’ boven ‘build’. En dat heeft een reden: eigengemaakte programmaatjes hebben nu eenmaal foutjes waar je arme ontwikkelaar mee wordt opgezadeld. En dat leidt tot frustratie en hoeveel kost dat dan weer niet? En als je dan nog niet overtuigd bent: denk nog eens even aan het herstellen van eigen gemaakte programmatuur als de ontwikkelaar vertrokken is. Wie neemt dat voor zijn rekening?

Deel

    Inschrijven nieuwsbrief Computable

    Door te klikken op inschrijven geef je toestemming aan Jaarbeurs B.V. om je naam en e-mailadres te verwerken voor het verzenden van een of meer mailings namens Computable. Je kunt je toestemming te allen tijde intrekken via de af­meld­func­tie in de nieuwsbrief.
    Wil je weten hoe Jaarbeurs B.V. omgaat met jouw per­soons­ge­ge­vens? Klik dan hier voor ons privacy statement.

    Whitepapers

    Computable.nl

    De weg van dataverzameling naar impact

    Iedere organisatie heeft data, maar niet iedereen weet hoe je het goed gebruikt. Hoe zet je waardevolle informatie om in actie?

    Computable.nl

    In detail: succesvolle AI-implementaties

    Het implementeren van kunstmatige intelligentie (AI) biedt enorme kansen, maar roept ook vragen op. Deze paper beschrijft hoe je als (middel)grote organisatie klein kunt starten met AI en gaandeweg kunnen opschalen.

    Computable.nl

    Maak kennis met digitale identiteiten

    De digitale economie groeit snel en de EU heeft strikte regelgeving ingevoerd om de veiligheid en privacy te waarborgen; in deze whitepaper ontdek je hoe digitale identiteiten deze transitie ondersteunen en wat dit voor jouw organisatie betekent.

    Meer lezen

    AchtergrondData & AI

    Een stortvloed aan ai-tools; ServiceNow drinkt zijn eigen champagne

    ActueelCloud & Infrastructuur

    Kort: Eigen ai-assistent Amsterdam, NIS2-manager Atos, DSA-check ACM en…

    AchtergrondData & AI

    ISO 42001 veelbelovend als standaard voor verantwoorde ai

    Maersk containerschip in de Rode Zee
    ActueelData & AI

    Verbetering nodig bij Digitale Infrastructuur Logistiek

    ActueelData & AI

    EU investeert bijna 2 miljard in digitale innovatie

    ActueelData & AI

    IBM investeert miljarden in VS

    Eén reactie op “Koste wat het kost genereren”

    1. Henri Koppen schreef:
      2 december 2015 om 16:02

      Beetje flauw eerste voorbeeld bij het doorslaan.

      “Bovendien vertoonde het VBA-programma wat bugs”

      Tja, als er in de er SAS Data Integration of Powerdesigner of Erwin bugs zitten zal het genereren van het script ook niet goed gaan.

      “Ik hoorde laatst de stelling dat je altijd scripts moet genereren als je daartoe de mogelijkheid hebt. ” , uiteraard bedoelde diegene dat als het vol bugs zit dit valt onder “geen mogelijkheid”.

      Dus ja, ik snap je verhaal, maar de voorbeelden vind ik minder sterk waardoor de stelling niet geheel uit de verf komt.

      Login om te reageren

    Geef een reactie Reactie annuleren

    Je moet ingelogd zijn op om een reactie te plaatsen.

    Populaire berichten

    Meer artikelen

    Footer

    Direct naar

    • Carrièretests
    • Kennisbank
    • Planning
    • Computable Awards
    • Magazine
    • Abonneren Magazine
    • Cybersec e-Magazine

    Producten

    • Adverteren en meer…
    • Jouw Producten en Bedrijfsprofiel
    • Whitepapers & Leads
    • Vacatures & Employer Branding
    • Persberichten

    Contact

    • Colofon
    • Computable en de AVG
    • Service & contact
    • Inschrijven nieuwsbrief
    • Inlog

    Social

    • Facebook
    • X
    • LinkedIn
    • YouTube
    • Instagram
    © 2025 Jaarbeurs
    • Disclaimer
    • Gebruikersvoorwaarden
    • Privacy statement
    Computable.nl is een product van Jaarbeurs