Kafka in IT


Kafka

“Artikel schrijven over Kafka in IT” stond er op mijn to-do lijstje. Aanleiding was het zoveelste bericht in het nieuws dat een IT project was mislukt, duurder werd of niet het gewenste resultaat opleverde. Onwillekeurig denk ik ook aan de “Hoekse lijn”, een metrolijn die nu al meer dan 2 jaar uitloop heeft. Vanuit mijn woonkamer kijk ik uit op een splinternieuw maar verlaten metrostation. Een troosteloos gezicht, de oorzaak? Software problemen met de overgangsbeveiliging. Er was een synchronisatie-probleem waardoor de spoorbomen te laat naar beneden gingen. Tijdens het testen stonden bij sommige overgangen de hele dag verkeersregelaars.

Belangrijkste oorzaken IT problemen

Vrijwel alle problemen in de IT zijn het gevolg van menselijk falen. Een gebrek aan communicatie, onvolledige documentatie afraffelen door geld gebrek maar ook bureaucratie. ITpedia staat er vol mee. Dit soort strubbelingen zijn niet nieuw. Ver voor er sprake was van software of IT werd er al over geklaagd.

Franz Kafka is een van de mensen die veel hebben geschreven over bureaucratie. Zijn naam is een synoniem geworden voor bureaucratische chaos, stroperigheid en diepe wanhoop. Ik wilde meer over hem weten en kijken of we parallellen met de IT kunnen trekken.

Googlen op Kafka

Het blijkt dat Google mij goed kent want mijn search leverde niet het gewenste resultaat op. Bovenaan stonden links naar software die naar Kafka was genoemd. Verrassend en interessant is echter een artikel van Jean-Paul Azar op Dzone:

“Kafka wordt vaak gebruikt in real-time streaming datearchitecturen om real-time analyses te bieden. De groei van Kafka  explodeert. Meer dan een derde van alle Fortune 500-bedrijven gebruiken Kafka. Deze bedrijven omvatten de top tien reisorganisaties, zeven van de top tien banken, acht van de top tien verzekeringsmaatschappijen, negen van de top tien telecombedrijven en nog veel meer. 

LinkedIn, Microsoft en Netflix verwerken vierkomma-berichten per dag met Kafka (1.000.000.000.000). Kafka wordt gebruikt voor real-time gegevensstromen, om big data te verzamelen of om realtime-analyse (of beide) uit te voeren. Kafka wordt gebruikt met in-memory microservices om duurzaamheid te bieden en kan worden gebruikt voor het voeden van evenementen naar  CEP  (complexe gebeurtenis-streaming-systemen) en IoT / IFTTT-achtige automatiseringssystemen.”

Lees hier het volledige artikel.

Ik wist niet van het bestaan, maar Kafka lijkt mij wel een goeie naam voor deze software. Deze is namelijk bedoelt om structuur te brengen in ongestructureerde data.

Dichter bij Kafka

Kafka leefde in het begin van de vorige eeuw en was een populaire romanschrijver. Op ensie.nl kom ik al dichter bij de auteur Kafka met de volgende definitie:

“Kafkaiaans – lijkend op het gevoel en de sfeer in de boeken van Franz Kafka; met een zinloze, desoriënterende en nachtmerrieachtige complexiteit”.

Met een budgetoverschrijding van meer dan 90 miljoen heeft het projectteam van de Hoekselijn zich waarschijnlijk zo gevoeld. Waarschijnlijk heeft iedere IT-er weleens zulke momenten in zijn loopbaan meegemaakt.

Ontwikkelmethodes en frameworks

Om zoveel mogelijk Kafkaiaanse toestanden te voorkomen hebben we methodes en frameworks bedacht. Dit zijn Best Practices die een leidraad vormen en basis zijn voor een gestroomlijnde projectcommunicatie. Alle modellen die we echter bedenken zijn niet de werkelijkheid, maar slechts een schematische weergave. Gebruik je Waterfall, Scrum, DevOps of ITIL? Functionele ontwerpen of Workflows? Blijf altijd oppassen, want Kafka ligt op de loer.

Quotes van Franz Kafka

Franz Kafka leefde van 1883 tot 1924 en heeft dus weinig weet van software of IT projecten gehad. Er zijn echter wel enkele opmerkelijke quotes van hem. Die kan je eenvoudig naar redenen voor een mislukt IT project vertalen. Ik ben zo vrij geweest om die vertaling te maken en in een IT context te plaatsen:

De visionaire fantast

“Door hartstochtelijk te geloven in software die nog niet bestaat, creëren we het. Software die nog niet bestaat hebben we nog niet voldoende naar verlangd.”

Aan het begin van een te groot project

“We lossen de problemen op door ze te verslinden.”

De opdrachtgever met een dubbele agenda

“Buig niet, probeer geen logisch oplossing te vinden. Werk niet volgens een methode. Integendeel, volg je meest intense obsessies genadeloos.”

De perfectionistische ontwerper

“Alle modellen zijn slechts een slechte vertaling.”

De cynische informatie-analist

“Een gebruiker is een monster dat krankzinnigheid bedenkt.”

De introverte software nerd

“Je hoeft je kamer niet te verlaten maar blijf aan je bureau zitten en luister. Luister niet eens, wacht gewoon, wees stil, stil en eenzaam. De functionaliteit zal zichzelf vrijelijk aanbieden, het heeft geen keus, het zal in extase aan je voeten rollen.”

De hopeloze gebruiker die zichzelf onbegrepen voelt

“Ik kan het je niet duidelijk maken. Het lukt me niet om iemand te laten begrijpen wat ik precies bedoel. Ik kan het mezelf niet eens uitleggen.”

De olifant in de porselein kast

“Werkprocessen komen tot stand door te doen wat je zelf het beste lijkt.”

De arogante gebruiker

“Het is alleen vanwege hun domheid dat ze zo zeker van zichzelf kunnen zijn.”

De moedeloze programmeur

“De zin van dit project is dat het stopt.”

De onzekerheid neemt toe

“We zijn vreselijk bang om het project te stoppen omdat het tegendeel nog niet bewezen is.”

Het is duidelijk, het project mislukt

“Er is een oneindige hoeveelheid hoop in het universum … maar niet voor ons.”

Kafka situaties voorkomen

Op ITpedia staan vele artikelen waarmee je Kafka situaties kunt voorkomen. Enkele voorbeelden:

  1. Teamvorming van SCRUM-teams, dat valt soms tegen.
  2. Informatie eilanden bij de overheid.
  3. Omgaan met een slechte teamleider.
  4. Een verkeerde organisatiestructuur herkennen.
  5. Workflow biedt voordelen aan projectmanagers.
  6. IT Alignment Matrix (ITAM) – white paper.
  7. Business IT-alignment, harmonie tussen Business en IT.
  8. Ontwikkelen van een IT Strategie.
  9. En vele meer..
LinkedIn GroupDiscussieer mee op LinkedIn.
Samenvatting
Kafka in IT
Artikel
Kafka in IT
Beschrijving
Kafkaiaans - lijkend op het gevoel en de sfeer in de boeken van Franz Kafka; met een zinloze, desoriënterende en nachtmerrieachtige complexiteit. Lijkt dit op jou project?
Auteur
Publisher Naam
ITpedia
Publisher Logo
Sidebar