Programméierer, Devops a Schrödinger seng Kazen

Programméierer, Devops a Schrödinger seng Kazen
D'Realitéit vun engem Netzwierkingenieur (mat Nuddelen a ... Salz?)

Viru kuerzem, wärend ech verschidde Tëschefäll mat Ingenieuren diskutéiert hunn, hunn ech en interessant Muster gemierkt.

An dësen Diskussiounen kënnt ëmmer d'Fro vun der "root Ursaach" op. Trei Lieser wësse wahrscheinlech datt ech hunn e puer Gedanken Op der dat ongeféier. A ville Organisatiounen baséiert Tëschefallanalyse ganz op dësem Konzept. Si benotzen verschidden Techniken fir Ursaach-an-Effekt Relatiounen z'identifizéieren, wéi z "Fënnef Firwat". Dës Methoden huelen déi sougenannt "Linearitéit vun den Eventer" als onbestridden Dogma un.

Wann Dir dës Iddi erausfuerdert an drop hiweist datt d'Linearitéit a komplexe Systemer berouegend täuschend ass, gëtt eng faszinéierend Diskussioun gebuer. Disputanten insistéieren passionéiert datt nëmmen d'Wësse vun der "root Ursaach" eis erlaabt ze verstoen wat geschitt.

Ech hunn en interessant Muster gemierkt: Entwéckler an Devops reagéieren anescht op dës Iddi. A menger Erfahrung sinn d'Entwéckler méi wahrscheinlech ze streiden datt d'Wurzelursaach wichteg ass an datt Ursaach-an-Effekt Bezéiungen ëmmer an Eventer etabléiert kënne ginn. Op der anerer Säit sinn DevOps méi dacks d'accord datt eng komplex Welt net ëmmer d'Linearitéit befollegt.

Ech hu mech ëmmer gefrot firwat dat ass? Waat mécht Programméierer fir d'Iddi "d'Wurzelursaach ass e Mythos" esou ze kritiséieren? Wéi en Immunsystem deen en auslännesche Agent erkennt. Firwat reagéiere se sou, während d'Devops éischter geneigt betruecht dës Iddi?

Ech net ganz sécher, mee ech hunn e puer Gedanken op dëser. Et bezitt sech op déi verschidde Kontexter an deenen dës Fachleit hir alldeeglech Aarbecht maachen.

Entwéckler schaffen dacks mat deterministeschen Tools. Natierlech sinn Compiler, Linker, Betribssystemer all komplex Systemer, awer mir si gewinnt datt se en deterministescht Resultat ginn, a mir stellen se als deterministesch vir: wa mir déiselwecht Inputdaten ubidden, da erwaarden mir normalerweis deeselwechten Output vun dëse Systemer. A wann et e Problem mat der Ausgab ass ("Bug"), da léisen d'Entwéckler et duerch d'Analyse vun den Inputdaten (entweder vum Benotzer oder vun enger Rei vun Tools während dem Entwécklungsprozess). Si sichen no engem "Feeler" an änneren dann d'Inputdaten. Dëst fixéiert de "Bug".

Programméierer, Devops a Schrödinger seng Kazen
Basis Virgab vun Software Entwécklung: déi selwecht Input Donnéeën zouverlässeg an deterministesch produzéiert déi selwecht Output.

Tatsächlech gëtt en net-deterministescht Resultat selwer als Feeler ugesinn: wann den onerwaarten oder falschen Output net reproduzéiert gëtt, tendéieren d'Entwéckler d'Enquête op aner Deeler vum Stack (Betriebssystem, Netzwierk, etc.) ze verlängeren, déi sech och méi behuelen oder manner deterministesch, déi selwecht Resultat mat der selwechter Input Daten produzéiert ... an wann et net, da gëtt dat nach ëmmer als Käfer ugesinn. Et ass just elo e Betribssystem oder Netzwierkbug.

Op jidde Fall ass Determinismus eng Basis, bal iwwerholl selbstverständlech Viraussetzung fir vill vun der Aarbecht Programméierer maachen.

Awer fir all Devops Guy deen den Dag verbruecht huet Hardware opzemaachen oder eng Cloud API erauszefannen, ass d'Iddi vun enger komplett deterministescher Welt (soulaang et iwwerhaapt méiglech ass all d'Inputen ze mapen!) ass am beschten e flüchteg Konzept. Och wann Dir et op der Säit setzt BOHF Witzer iwwer Sonneflecken, erfuerene Ingenieuren hunn déi komeschst Saachen op dëser Welt gesinn. Si wëssen dat souguer e Mënsch Gejäiz kann de Server verlangsamen, fir net vun de Millioune vun anere Faktoren an der Ëmwelt ze schwätzen.

Also et ass méi einfach fir erfuerene Ingenieuren ze bezweifelen datt all Tëschefäll eng eenzeg Root Ursaach hunn, an Technike wéi déi "Five Whys" wäerten korrekt (an widderhuelend!) zu där Root Ursaach féieren. Tatsächlech widdersprécht dat hir eegen Erfahrung, wou d'Puzzelstécker an der Praxis net sou richteg passen. Dofir akzeptéiere si dës Iddi méi einfach.

Natierlech soen ech net datt d'Entwéckler naiv, domm oder net fäeg sinn ze verstoen wéi d'Linearitéit täuschend ka sinn. Erlieft Programméierer hu wahrscheinlech och vill Net-Determinismus an hirer Zäit gesinn.

Awer et schéngt mir datt eng gemeinsam Reaktioun vun den Entwéckler an dësen Debatten dacks mat der Tatsaach ze dinn huet datt d'Konzept vum Determinismus déngt hinnen allgemeng gutt am alldeeglechen Aarbecht. Si begéinen net sou dacks den Nondeterminismus wéi d'Ingenieuren dem Schrödinger seng Kazen op hirer Infrastruktur mussen opfänken.

Dëst kann déi observéiert Entwécklerreaktiounen net komplett erklären, awer et ass eng mächteg Erënnerung datt eis Reaktiounen eng komplex Mëschung vu ville Faktoren sinn.

Et ass wichteg dës Komplexitéit ze erënneren, egal ob mir mat engem eenzegen Tëschefall ze dinn hunn, un enger Software Liwwerung Pipeline kollaboréieren oder probéieren Sënn vun der méi breeder Welt ze maachen.

Source: will.com

Setzt e Commentaire