Die explosionsartige Entwicklung von Speicher- und Rechenkapazitäten hat uns nicht nur gutgetan.
*Geschrieben von meinem Arbeitsschoßoben, der gefühlt immer auf Anschlag läuft*
Mit Bogen hättest du dieses Problem nicht. (gesponsert von !bogengemeinschaft@feddit.org)
Stimmt, mit Bogen käme ich nämlich nicht dazu die Weichware zu starten, weil ich noch damit beschäftigt wäre die Abhängigkeiten einzeln zu bauen.
#minze
ich würde ja, aber ich werd schon komisch angesehen, wenn ich tests schreibe, statt endlich merkmal x in die Produktion zu schicken und mein Zeug muss Zeug aus 4 verschiedenen Datenbanken und 2 Nachrichtenschleifen lesen um ne anfrage zu beantworten, weil sich das irgendwer so zum Übergang überlegt hat, ist ja nur bis Projekt Rambazamba fertig ist* und um da Ordnung reinzubringen ist keine Zeit, ausserdem funktionierts ja und wo bleibt Merkmal x und wieso wird die Bearbeitungszeit von Tickets immer länger?!
* Rambazamba wurde übrigens vor 5 Jahren eingestampft, weil darum und die nachfolge Lösung funktioniert völlig anders und kann nicht in das system eingegliedert werden
und wieso wird die Bearbeitungszeit von Tickets immer länger?!
Ich hätte da so eine Vermutung, die mit “K” anfängt und “eine Tests” aufhört… 🫠
Also offensichtlich gibt es hier ein Problem mit dem Prozess! Wir machen am besten ein Meeting mit dem PO und den Architekten, damit wir einen ADR schreiben können. Wenn der wie erwartet ignoriert wird, können wir ja nochmal eine Retrospektive machen.
Echte Entwickler müssen mindestens 20h die Woche Meetings haben, musst du wissen.
haben diese Architekten irgendwo etwas über die Architektur aufgeschrieben wo ich es lesen kann, oder existiert das alles nur in nem komischen propiritären Format einer teuren Software und für die Version dieser Software gibt es nur 3 Lizenzen im Unternehmen und die dürfen nur von diesen Architekten genutzt werden und selbst wenn ich zufällig mal die Chance hätte darein zu gucken wären es nur Diagramme ohne Erklärungen, die vieles darstellen könnten, aber wie unser System sieht es nicht aus?
Das ist die falsche Perspektive. Jetzt, wo die Rechner immer leistungsfähiger werden, ist endlich die Zeit gekommen um mit den unnötigen Optimierungen aufzuhören!
Dann findest du was anderes über das du meckern kannst. Glücklich macht dich das sicher nicht.
Wenn ich mit Entwicklern sogar der mittleren Semester rede, dann stelle ich immer wieder fest, dass die weder von der Architektur, noch von effizienten Datenstrukturen und Algorithmen eine Ahnung haben.
Müllaufsammlung ist beispielsweise sowas, wo viele gar nicht so richtig zu verstehen scheinen, was das ist, und wie Speicherallokation eigentlich funktioniert. Oder warum man bei der Netzwerkprogrammierung zustandslose Kommunikation verwendet und warum nicht. Oder wie ein Prozessor überhaupt Instruktionen abarbeitet. Oder wie teuer Fadenkontextschaltung ist.
Ja, durch den explosionsartigen Anstieg der Nachfrage nach Software-Entwicklern wurde zwischendurch mal wirklich jeder genommen, der nur die Ausdauer hatte mehrere Stunden am Tag vor einem Bildschirm zu sitzen; (kommt mir vor). Da ist ja jetzt endlich eine Trendwende zu erkennen (kommt mir vor).
Ich sehe da ehrlich gesagt überhaupt keine Trendwende. Das tiefe Interesse für die Hintergründe ist bei den Berufseinsteigern absolut nicht mehr so, wie das vor zwei Jahrzehnten der Fall war. Ich glaube mittlerweile, da einer sehr exotischen Nische anzugehören: Die Generation vor mir war noch eher im “ach, Computer brauche ich nicht, ich gehe in den Garten” verhaftet, die nach mir ist Konsument der Technik und ich glaube, dass ich das Glück hatte, wirklich noch tief in die Materie einsteigen zu dürfen.
Hoffenlich liege ich damit falsch.
Wenn ich mir anhöre was bei Kongressen grade so vorgetragen wird, habe ich eher das Gefühl, dass die Industrie den Software-Entwickler an sich als Auslaufmodell ansieht.
Außer bei ein paar Konzernen in den USA sollen Firmen lieber Lizenzen für eine Cloud-Umgebung einkaufen, in der die benötigte Applikation dann mit KI-Hilfe zusammengeklickt wird.
Die Industrie sieht das bestimmt so.
Aber Software Entwickler schreiben ja nicht nur Code, sondern sie übersetzen das was die Kunden sagen zu wollen zu dem was die Kunden wirklich wollen.
Mein letztes Beispiel für warum klicken nicht funktioniert.
Ich arbeite gerade mit einem Kunde, der sich seine Website mit Wordpress zusammen geklickt hat: A) das kann nicht ansatzweise was ein custom build System könnte B) es ist viel komplexer, weil man sich alles zusammen hacken muss um leichte Probleme zu lösen C) es ist teurer, sie zahlen mehrere hundert Euro für hosting. Mein ganzer Kram lebt auf einer 1U colloc für unter 100€/Jahr D) security! Erste Sache die ich gemerkt habe war, dass die Logs öffentlich waren. Man sah aber zum Glück nur Name, Email, Geburtstage, Wohnadresse…
Kannste ja mal versuchen. Mehr als was in der Komplexität einer Todo-App kriegt ein Benutzer ohne Erfahrung auch nicht mit einer KI hin.
Also mir ging’s auch so, dass ich das alles kaum auf dem Schirm hatte, als ich nur in Sprachen mit Garbage-Collection unterwegs war. Die Sprachen geben dir ja teilweise überhaupt keine Handhabe, um zu sehen oder zu beeinflussen, wie/wo/wann Speicher alloziert wird.
Hier auf Arbeit gilt es in GC-Sprachen sogar als Best Practice, dass man mit Immutable Datentypen arbeitet, d.h. explizit die Datentypen dupliziert, wenn man ein Feld verändern will, weil die GC-Sprachen es sonst extrem einfach machen, dir in Multithreading-Kontexten in’s Bein zu schießen.
Oftmals sind es eben auch Server-Anwendungen, die man programmiert, wo man dann tendenziell einfach einen dickeren Server draufwirft, falls es mal Performance-Probleme geben sollte. Aber klar, wenn man dann mal keine Server-Anwendung programmiert, verwendet man trotzdem die Sprache, die man gewohnt ist.
Sogar CLIs werden hier teilweise mit GC-Sprachen geschrieben, wo ich mir mittlerweile nur noch denke, dass man nichts Bekloppteres machen kann. Jedes mal, wenn man einen Befehl auslöst, dackelt da eine Java/Python/sonstwas-Runtime los, nur um dann eine halbe Sekunde später festzustellen, dass der Benutzer nur die --help
wollte, also einmal ausgeben und dann die Runtime wieder zurück in den Schuppen stellen.
Also nichtmutierbare Datentypen sind schon nett, wenn die Programmiersprache denn passt. Das ist jetzt auch nicht neu und gschmackig, sondern schon seit mindestens 66 Jahren normal. Das Problem liegt wohl eher bei Java/Python und den Personen, die es bedienen. Müllabfuhr ist jetzt auch nicht prinzipiell schlecht, das Problem ist ziemlich genau das selbe, das auch eine echte Müllabfuhr im echten Leben erzeugt: Wenn es eine Tonne gibt in die ich mein Problem werfen kann, und dann ist es weg, habe ich plötzlich nichts mehr das mich daran hindert, doppelt so viel Problem in die gleiche Tonne zu werfen und auf einmal haben wir das: Daran ist aber weder die Banane, noch die Müllabfuhr schuld, sondern die Industrie und die Konsumenten.
Mal ganz polemisch gesagt ist das bei grob 99% aller Anwendungen auch kein Problem.