Der Entwickler in mir ist heute ein wenig verzagt. Ich musste dieses schöne Stück Code abreißen, eine ganze Klasse, von der ich glaubte, sie sei das Rückgrat des gesamten Projekts. In den letzten vier Monaten hatte ich ihn sorgfältig zurechtgestutzt, mit Testfällen gepflegt und mit den anschaulichsten Kommentaren verziert. Jeden Tag betrachtete ich sie mit väterlichem Stolz. Nur noch ein paar Wochen, dann ist es live. Mein CLASS würde dann in den warmen Serverschränken eines Rechenzentrums nicht weit von meinem Wohnort entfernt ein nahezu ewiges Dasein fristen. Aber es sollte nicht sein. Das Schicksal entschied anders.
Die sprichwörtliche Axt des "Re-Scoping" fiel auf meine Klasse. Das Re-Scoping bedeutete ein Refactoring meiner Codebasis - Refactoring ist ein schickes Wort für das Löschen von Unnötigem. Meine monatelange Arbeit ging in Flammen auf. Jetzt verstehe ich, wie sich Hagrid gefühlt haben muss, als Macnair die Axt auf Seidenschnabel* schwang.
Am Anfang war es sehr deprimierend. Stunden später kam die Akzeptanz. Und ein paar Radler später kam die Reflexion. Aus einem Moment der Melancholie kommend, könnten einige Teile davon Sie düster stimmen. Also, macht euch auf etwas gefasst - hier kommen meine nicht so beliebten Meinungen über Softwareentwicklung.
- Fast jede einzelne Codezeile, die Sie heute schreiben, wird in ein paar Jahren Geschichte sein. Nein, das liegt nicht an Ihnen - es liegt daran, wie schnell sich die Welt, insbesondere die IT-Welt, bewegt - Ihr Code wird durch einen "besseren", "dockerisierten", "serverlosen", "Microservice" ersetzt werden.
- Maschinelles Lernen ist keine Wunderpille. Genauso wenig wie GraphQL, NodeJS, NoSql, Kubernetes und . Alles funktioniert in einem bestimmten Kontext und versagt außerhalb des Kontexts.
- JavaScript ist keine Müllschlucker-Sprache, wie viele Leute glauben, dass sie es ist. Da, ich habe es gesagt - Erleichterung. Und es ist auch nicht Java, wie viele Personalvermittler glauben. Nun, wenn Sie nach einem Skript suchen, das wie Java geschrieben ist, dann ist das Groovy für Sie - nicht JavaScript.
- Angst vor Vorstellungsgesprächen ist eine echte Sache. Kodierung ist eine Kunst. Wie die gegensätzlichen Stile von Matisse und Picasso haben wir alle unseren eigenen Stil. Und wir alle haben unsere eigenen Komfortzonen und sogar Zeiten, in denen der beste Code geschrieben wird. All diese Fähigkeiten in einem 2-stündigen Vorstellungsgespräch unter einen Hut zu bringen, ist eine Kunst für sich und hat nichts damit zu tun, wie gut man programmieren kann.
- Beim Aufbau eines Produkts geht es um mühsame, schrittweise Entwicklung. Die Menschen unterschätzen oft die Macht der schrittweisen Entwicklung. Die große Einzelhandels- oder Dienstprogramm-App, mit der Sie Ihre alltäglichen Aufgaben erledigen können, war vor ein paar Jahren nichts weiter als ein Kästchen und zwei Tasten. Es gibt keinen Ersatz dafür - es sei denn, Sie haben Millionen von Dollar, um eine bereits existierende App zu kaufen.
- Softwareentwicklung ist/kann langweilig sein. In einem früheren Beitrag habe ich einen Vergleich zur Kunst gezogen. Die Entwicklung eines großen Produkts ist keine A3-Skizze, sondern ein großformatiges Fresko, bei dem mehrere Entwickler zusammenkommen und gemeinsam entwickeln müssen. Das bedeutet, dass man viel Zeit damit verbringt, Code-Reviews durchzuführen, Git-Pushes zu korrigieren, sich um Abhängigkeiten zu kümmern, Leistungstests durchzuführen usw. Nicht alles davon ist Kunst.
- Bessere Ux ist eine kurzlebige Errungenschaft. Kunden gewöhnen sich immer an Ihre neue, bessere Ux und wenn sie sich einmal an eine Ux gewöhnt haben, werden sie sich immer langweilen. Veraltete Ux ist schlechte Ux.
- Die Softwareentwicklung wird zunehmend demokratisiert. Da der Fokus auf "bürgerliche Entwickler und Integratoren" jeden Tag zunimmt und KI viel zuverlässiger wird als je zuvor, können Power-User und KMU ihre Software selbst entwickeln. Langfristig bedeutet dies, dass mittelmäßige Programmierung (nicht Programmierer) wie Glue Code zwischen API, Zucker und Boilerplate-Frameworks, Endbenutzer-Enabler wie "besser aussehende Ux" - nicht mehr wichtig sind.
Ok, ich bin fertig. Los geht's.
Und...
*Buckbeak ist nicht wirklich gestorben - ein Jahrzehnt später ist das kein Spoiler.