Sind wir "die alten Säcke" nicht genau die, die den Kids den richtigen Weg zeigen sollten?
ich kann mich noch dunkel daran erinnern, das du in Zeiten von Delphi 1 (ja, so lang ist das her)
als damals noch nicht ganz so alter Sack einem anderen damals auch noch nicht ganz so alten Sack (mir)
auf irgendeiner Konferenz (gab es ja damals noch und man war persönlich da)
gezeigt hast, wie du den Übergang von Turbopascal zu Delphi gemacht hast und große Teile von deinem
Code in beiden Welten compilierbar waren. Fand ihr sehr faszinierend und überzeugend, daher auch nie
vergessen.
Seit der Zeit hatte ich ja einige Jobs im Delphi Umfeld und da wurde ja von diversen Anbietern
wirklich jedes Jahr eine neue Sau durchs Dorf getrieben, die alles mögliche besser konnte. Ich
hab mir das sehr oft im Kundenauftrag (gegen Bezahlung versteht sich) gerne immer mal zusammen mit
denen angetan, aber so richtig die Palastrevolution gab es irgendwie nie. Immer wenn da jemand
spezielle Ideen hatte, wie man dies das oder jenes umsetzen könnte, hab ich dafür ganz brauchbare
Lösungen zusammengebaut, gerne auch mit Komponenten, aber selten mit komplett anderen Tools und
Archtekturen oder Frameworks, von denen ich noch nicht mal die Buchstabenkombination kannte. Meistens
lohnte es sich auch nicht, sich die zu merken, weil die im Jahr danach eh wieder Geschichte waren.
Und im Bereich Web gebe ich sebastian auch recht, natürlich gab es dadurch völlig neue Anforderungen
und Umsetzungen der selben,
SOAP wurde irgendwann durch REST abgelöst, den
XML Mumpitz hat
irgendwann mal json mit weniger Bytes auch umgesetzt, aber das es im Hype von
XML damals
sogar eine
XML Datenbank gab, mit der man eine kleine Datenmenge ohne echten Mehrwert in einer
10 mal größeren Datenbankdatei speichern konnte, ist an den meisten sicher berechtigt
vorbeigegangen ...
Ein Kunde hat damit aber mal sicherlich 2 Mannjahre (ohne das ich dafür bezahlt wurde, weil ich das auch
nicht gemacht hatte) verbraten, weil sein Entwickler
XML-
DB für die zukunftssicherste Plattform hielt.
Ich hab dann halt gegen honorar den Kram da wieder rausgeholt und in ein klassisches Datenbankmodell
mit ein paar Ideen umgesetzt, die man auch in einfachen relationalen
SQL Datenbanken umsetzen konnte
und das Projekt war ziemlich zeitnah in der Produktionsumgebung einsetzbar, im Gegensatz zu dem anderen
Kram.
Ich bin nicht sicher, aber ich glaub, der Kram läuft da immer noch mit Firebird 1.5 und meiner Exe,
weil der halt das macht, was der machen soll. Schnittstellen der
DB an andere Systeme gab es damals schon
und weitere wurden da auf jeden Fall im Laufe der Jahre dazu gebaut, aber nicht immer alles weggeschmissen.
Es gibt viele Projekte, die ich mal als 80% Mainstream bezeichne. Das ist nicht High Tech sondern
simples Handwerk.
Die machen was die machen sollen, man muss auch heute noch keine compiler selber schreiben, weil der
Quellcode schon seit Jahren mit mehr oder weniger Aufwand immer noch compilierbar ist und nicht alles
besser wird, nur weil der Quellcode weggeschmissen wurde und durch einen neuen ersetzt wurde.
Das IBExpert Pascal Quellcode Dateien benutzt, deren Zeitstempel noch aus dem letzten Jahrtausend stammen
und seitdem nicht verändert wurden, kann ich ganz klar bestätigen, und bei 2 anderen ziemlich großen
Projekten gibt es diverse hundert anwender, die das jeweilige Gesamtprojekt seit ca 10 Jahren mit
uns begleiten. Sind war keine Webapplikationen, aber werden auch per remotedesktop an dutzenden
Standorten ohne Probleme benutzt.
Wenn es denn aber damals als Webapp gestartet wäre, dann hätte ich ähnlich wie Frank sicherlich die
Werkzeuge, die ich kenne, daraufhin abgeklopft, was damit geht und ganz sicher auch kritisch hinterfragt,
wofür sich das Werkzeug evtl nicht wirklich eignet, um zu eruieren, was ich dafür als Ersatz nehmen kann.
Mit wäre aber nicht in den Sinn gekommen, erst mal 25 mögliche eierlegende Wollmilchsäue in allen
Details zu evaluieren, um dann festzustellen, das 20 davon kompletter Müll sind, 5 zwar ganz gut, aber
auch mängel haben usw.
Nicht jedes Mainstream Projekt ist ein neuer facebook webserver und nicht jede webshop Anwendung
muss alle apis auf diesem Planeten beherrschen. Im b2b Bereich ist eine paypal Zahlung gelinde gesagt
Mumpitz, den Auftrag online aber schon mit bonitätsdaten aus dem Kundenstamm oder direkt über creditreform
oder ähnlich abzugleichen, um gar nicht erst was zu fertigen, was der eh nich bezahlen wird, ist ein
ganz anderer Prozess.
Es muss aber nicht jeder Entwickler dabei alles mit einer zeile quellcode alles können, die ganzen Kraut
und Rüben Apis zu verstehen ist ein ganz anderes Thema, diese nutzen zu können aber reine Fleissarbeit
ich hatte erst vor wenigen Wochen das Vergnügen, die Ladestromregelung für mein Tesla Elektroauto
so programmieren zu wollen, das der in erster linie dann lädt, wenn die sonne vom Himmel brennt und die PV Anlage
Strom liefert. Eine Mini Exe (lazarus) liefert mit die Daten aus einer ziemlich miesen
Api von PV Wandler
und schreibt mir den kram in eine Datenbank rein, zusammen mit einer anderen exe (lazarus) die den
Stromzähler ausliest, ob der eigenverbauch gerade hoch ist. Beides geht über usb ... (für die
jüngeren: das sind Kabel die man da anschliessen muss
)
und wenn da genug strom über ist wollte ich eben dem auto mitteilen, das der Lader
mal angehen soll oder auch bei wolken wieder aus.
Eine Einarbeitung in die Tesla
API ist gruselig, zum Glück habe ich aber eh einen serviceprovider
im Einsatz, der mir dafür eine single line https
api mit oauth anbietet (teslafi.com) über den
ich dann aus dem was sich da in der datenbank berechne ergibt, welchen Ladestrom der da im Minutenakt
anpassen soll. Das das ganze sogar mit einem fast 7 Jahre alten Tesla geht, finde ich sehr hilfreich.
Resume ist aber: aus der Tesla
api eine für normal denkende Menschen benutzbare zu machen, hat der typ
hinter teslafi super verstanden. warum soll ich das besser können, also lass ich das. den hardware kram
mit dem stromzähler und wandler nimmt man wie das ist, sind aber eigenständige teilprojekte oder services
oder wie auch immer man das nennt.
Am ende landet bei mir der kram in eine Datenbank, ich hab ein schönes protokoll und kann jederzeit meine Logik
verbessern (und zum Beispiel dafür sorgen, das der beim Aufladen am Supercharger in Süddutschland nicht
abschaltet, nur weil in Norddeutschland gerde wolken sind, der punkt fiel mir dann auch erst da auf, war aber
während der Ladepause schnell angepasst).
Nun denn, ist schon wieder "oppa erzählt vom krieg ...." ist aber so ähnlich wie frank das schreibt und ich das
auch denke. Es gibt wenig was mit delphi/pascal/lazarus nicht geht, manchmal muss man seinen Werkzeugkasten
erweitern , aber aus mmeiner sicht eigentlich nie wegschmeissen und durch 20 andere ersetzen.