• Software-Entwicklung

Sind wir alle Zahlenjunkies?

Softwareentwickler müssen gut in Mathematik sein – dieser Mythos hält sich nun seit Beginn meiner Tätigkeit in diesem Feld vor gut 20 Jahren. Doch was ist dran an diesem Claim? 

 

Müssen wir alle dauernd irgendwelche Halbwertszeiten berechnen und Integralgleichungen im Kopf lösen können?

Um diese Frage beantworten zu können, gehen wir zurück in die graue (oder besser bernsteinfarbene) Vorzeit der Informatik, in die 60er und 70er Jahre des letzten Jahrtausends, und betrachten die damalige Situation. Programmiersprachen wie FORTRAN (die wörtliche Abkürzung für Formula Translator) und COBOL waren der neue heiße Scheiß, den jeder Informatiker können musste. Der Code lief auf Mainframes, zentralen Großrechnern, die nicht nur ein kleines Vermögen kosteten.

Wer also konnte sich Informatik leisten und wofür wurde sie eingesetzt?

Im Großen und Ganzen gab es damals drei große Wirtschaftsbereiche, die sowohl die Notwendigkeit als auch das nötige Kleingeld übrig hatten, um sich intensiv mit elektronischer Datenverarbeitung auseinanderzusetzen: die Industrie, der Finanzsektor und die Forschung. Allen drei gemein ist, dass sie in der damaligen Zeit im großen Stil Mathematiker beschäftigten, welche für die Berechnung von verschiedensten Dingen verantwortlich waren. Diese Berechnungen hatten damals alle einen riesigen Nachteil: da sie von Hand gemacht wurden, waren sie unglaublich langsam. Wollte man die Statik eines neuen Gebäudes berechnen und stellte die Frage ob ein Querträger wohl auch einen Zentimeter schmäler sein dürfte, dann bekam man die Antwort darauf im günstigsten Fall nach Tagen, im schlechtesten Fall – abhängig von der Gebäudegröße – wohl erst nach einigen Wochen.

Hier schlugen die eben erwähnten Programmiersprachen in die Bresche und beschleunigten diese Antwortzeiten um ein Vielfaches. Doch welches Personal kümmerte sich dann damals um die Programmierung – wer waren diese ersten Softwareentwickler? Du ahnst es bereits – es waren jene Mathematiker, welche diese Berechnungen derzeit von Hand ausführen. Einerseits deswegen weil sie im Unternehmen wohl die einzigen waren die die Berechnungsmodelle verstanden und anwenden konnten und andererseits weil der Prozess der Softwareentwicklung von jedem ein hohes Maß der Abstraktionsfähigkeit verlangt – genauso wie es die Mathematik tut, insofern war es damals einfach nur natürlich und pragmatisch nicht auf eigenes EDV-Personal zu setzen, zumal es ja auch im Gegensatz zu heute damals keine „gelernten“ Softwareentwickler gab.

 

Ist das aber schon die ganze Antwort?

Mathematiker waren vor 50, 60 Jahren die ersten Softwareentwickler und deswegen glaubt auch heute noch jeder, dass Terme frühstücken und komplexe Zahlen abends essen?

Nun ja, nicht ganz. Es gibt wohl kaum einen Beruf, der mittlerweile so sehr in Zahlen gefasst wird wie der des Softwareentwicklers – Metriken sind unser sprichwörtliches Leben. Von der cyclomatic complexity (ein Maß für die Komplexität des Codes) über den Speicherverbrauch bis hin zu den Antwortzeiten unserer APIs wird mittlerweile alles vermessen. Wir schätzen in Story Points und stehen für unsere Velocity gerade. Wer nicht zumindest ein kleines Faible für Zahlen hat, wird bei uns wohl kaum glücklich. Sicher muss das nicht jeder so exzessiv betreiben wie der Autor dieses Beitrags welcher sowohl den Stromverbrauch seines Hause als auch das Wachstum seiner Kinder Monat für Monat in Tabellen einträgt und sich an den lustigen Grafiken und Diagrammen ergötzt die er damit basteln kann – aber man kann und darf es auch.

Und was lernen wir aus dieser Reise in die Vergangenheit? In jedem Mythos liegt auch ein Fünkchen Wahrheit und jeder Softwareentwickler hat wohl seine persönliche Lieblingszahl – meine ist übrigens die 37 und ich habe auch mindestens 5 gute Gründe warum sie besser ist als alle anderen.

In diesem Sinne

peace out

Du willst mehr über Software-Modernisierung wissen?

geschrieben von:
Sascha
WordPress Cookie Plugin von Real Cookie Banner