How to accurately calculate the number of days between two dates in Java?

divorcelawyerseo1

Neues Mitglied
Hello everyone,

I’m currently working on a small Java project where I need to calculate the difference between two dates (days, months, and years). While Java’s LocalDate and ChronoUnit work fine in simple cases, I’m running into issues when dealing with:

  • Different month lengths
  • Leap years
  • Historical date edge cases
I’ve been comparing my results with some online date calculation tools to verify accuracy. One example I found useful is an online date calculator that shows date differences, adds/subtracts days, and handles calendar logic quite cleanly:
https://calculatedatetime.com/date-calculator/

My questions are:

  1. What is the best practice in Java for handling date difference calculations reliably?
  2. Should I rely solely on java.time, or are there edge cases I should manually handle?
  3. How do you usually validate your results when building a date or time calculator?
Any advice or sample code would be greatly appreciated. Thanks in advance!


If you want, I can also:

  • Rewrite this for Stack Overflow, Quora, or Reddit
  • Make it more beginner-focused or more advanced
  • Create multiple variations for posting on different forums without duplication
 

Robert Zenz

Top Contributor
While Java’s LocalDate and ChronoUnit work fine in simple cases, I’m running into issues when dealing with:

  • Different month lengths
  • Leap years
  • Historical date edge cases
For that we need concrete examples of the problems you're running into, because ChronoUnit.DAYS.between(Temporal, Temporal) will deliver the correct answer.

What is the best practice in Java for handling date difference calculations reliably?
Use the standard library with LocalDateTime, OffsetDateTime, and Duration.

Should I rely solely on java.time, or are there edge cases I should manually handle?
If you run into edge cases not covered by the standard library then...well, I guess than you are on your own. But it's like optimizing the byte-code the JIT emits, if you need that, you know what you're doing.

How do you usually validate your results when building a date or time calculator?
With hard-coded well-known values. For example, I know that between m and k are 324 days, so the unit test is simpy

Java:
Assertions.assertEquals(324, calculateThatValue());

Unless you're writing a date/time library, at which point you'd better know what you're doing.

If you want, I can also:

  • Rewrite this for Stack Overflow, Quora, or Reddit
  • Make it more beginner-focused or more advanced
  • Create multiple variations for posting on different forums without duplication
Look, if you gonna spam us with LLM generated questions, at least take the time to proof read them, damn it. Or at least tell the model that it should output German...or just let it tell you the answers (but beware that it is an "average" machine, so it might or might not be real what it tells you).
 

mihe7

Top Contributor
I’ve been comparing my results with some online date calculation tools to verify accuracy. One example I found useful is an online date calculator that shows date differences, adds/subtracts days, and handles calendar logic quite cleanly:
view-source:https://calculatedatetime.com/date-calculator/ hat gesagt.:
Javascript:
            const timeDiff = Math.abs(endDate - startDate);
            const daysDiff = Math.floor(timeDiff / (1000 * 60 * 60 * 24));
            
            const years = Math.floor(daysDiff / 365);
            const months = Math.floor((daysDiff % 365) / 30);
            const days = Math.floor((daysDiff % 365) % 30);
            const weeks = Math.floor(daysDiff / 7);
            const hours = Math.floor(timeDiff / (1000 * 60 * 60));

Uhm... no.

1766399410658.png

I’m running into issues when dealing with:

  • Different month lengths
  • Leap years
  • Historical date edge cases

It's like @Robert Zenz already pointed out: we need some examples, that is input and expected output. The concept of date and time is very complex. For example, what result would you expect if you add one year to 2024-02-28? Depends. If we talk about years, the result would probably be 2025-02-28. But if you add 365 days, you’ll get 2025-02-27 because of the leap day in 2024.
 
Zuletzt bearbeitet:

Robert Zenz

Top Contributor
I’m currently working on a small Java project where I need to calculate the difference between two dates (days, months, and years). While Java’s LocalDate and ChronoUnit work fine in simple cases, I’m running into issues when dealing with:

  • Different month lengths
  • Leap years
  • Historical date edge cases
Also note that "day" is a very fluid concept. Not all days have 24 hours, or do have hours at all.
 
Zuletzt bearbeitet:

White_Fox

Top Contributor
Leute, die eine KI befragen müssen (weil sie mit normalen Suchergebnissen nichts mehr anfangen können?) sind schon schlimm genug.

Aber KI benutzen um Suchanfragen zu formulieren...mir graut vor der Software, die wir in den nächsten 5...10 Jahren bekommen werden.


Edit: Why the heck do you trust a random website more than the Java standard library? It may be possible that the JSL is not right, but this code is very likely more often investigated, checked, reviewed, audited, tested and proofed in practical use then any random online calculator.

You better start to learn what a trusted source has to be alike.
 

Robert Zenz

Top Contributor
Ja, das wird für viele interessante Vibes bei den Benutzern sorgen.
Vergiss die Benutzer, wir haben jetzt schon Software mit vielen (teilweise schweren) Fehlern welche die Entwickler nicht die Bohne interessieren (oder diese nicht in der Lage sind sie zu korrigieren). Cool wird es wenn man nur per Test verifiziert dass die Software etwas bestimmtes tut, und der generierte Code aber gleichzeitig zum Beispiel einen welt-offenen Jetty im Hintergrund startet der das Dateisystem ausliefert. Oder das LLM das Beispiel mit SQL-Injection verwendet fuer den Produktiv-Code. Wenn man es schafft die Code-"Beispiele" in einem LLM so zu vergiften dass x% mit einer Hintertuer ausgestattet sind, ist man schon voll dabei. Wenn man dann auch noch bedenkt dass es LLM-Anbieter gibt wo der Code vom "Programmierer" gar nicht kontrolliert wird, wird es ploetzlich extrem interessant.

Und da sind so Dinge wie 'Versagen' von KI-Agenten korrekt mit einem System zu interagieren oder das KI-Agenten einfach mal Code in E-Mails welche sie zusammenfassen sollen ausfuehren noch gar nicht enthalten.

Die Idee von Vibe-Coding ist es eine Black-Box (fuer den Projektbesitzer) zu erstellen welche einfach korrekt funktioniert, und dass ist extrem optimistisches denken, selbst wenn man gezielte Angriffe komplett aussen vorlaesst.
 

White_Fox

Top Contributor
Vergiftete Codebeispiele...da gab es doch kürzlich mal auf Heise einen Artikel dazu. Man braucht da erschreckend wenig vergiftete Dokumente in den Trainingsdaten....und die Trainingsdaten sauber zu halten ist so gut wie unmöglich.
 

White_Fox

Top Contributor
Höhö...ich suchte gerade besagten Heiseartikel, da finde ich mittlerweile das es bereits eigens Werkzeuge gibt um Bilder so umzubauen daß es für den Menschen noch genauso aussieht wie vorher, aber KIs daraus irgendeinen Schwachsinn ableiten und das ganze LLM so unbrauchbar werden könnte. Ach ja, und Russland steckt natürlich voll tief drin, KI-Modelle durch Fakenews zu vergiften...😭

Bei Quellcode wird das gar nicht erst nötig sein, da geistert auch so genug Schwachsinn herum ganz ohne daß da jemand dran dachte, KI-Trainingsdaten vergiften zu wollen. Ich warte auf die Witzbolde, die jetzt massenhaft Repos auf github.com reinstellen und wahllos ein Thread.sleep(1) verteilen und ähnlichen Unfug treiben. Ob es dafür schon eine Verabredung auf Reddit oder 4chan gibt?
 

KonradN

Super-Moderator
Mitarbeiter
Aber das ist doch das, was wir schon jetzt sehen. Hatten wir doch erst vor kurzem, dass da jemand einen Service nach aussen gebaut hatte, der dann direkt auf die Datenbank zugegriffen hat. Diese Security-Dinge sind also nichts Neues.

Das ist eher etwas, wo die KI extrem gut unterstützen kann. Beruflich läuft jeder MR auch über eine KI, die alle möglichen Schwachstellen / Probleme aufzeigt. Das kann grosser Quatsch sein (Eine OpenAPI Beschreibung hatte bei einem neuen Request dann plötzlich keine spezifische Id. Die hat er halt bei allen anderen Requests gesehen und hatte erwartet, dass es diese überall geben müsste) aber ich habe bei meinen MRs fast nur sinnvolle Dinge gesehen. Wirklich kritische Probleme weniger, aber halt berechtigte Einwände.) Sowas hilft dann beim Code Review enorm. (Er bietet auch an, manche Dinge direkt zu beheben. Aber das passt nicht wirklich in unsere Arbeitsweise, weil das Commit dann nicht unserem Schema entspricht ... Aber das ist ja dann ein anderes Thema)

Aber hier geht es ja um die Erstellung von Software. Und der Kernpunkt der Kritik ist dann ja, dass man den Code nicht mehr wirklich überprüft. Ja, das ist doch üblich. Wie viel % des Codes wird denn überprüft? Es wird ja massiv eingebunden. In der Anwendung ist also dann Spring Boot, Quarkus oder so drin. Aber ok, das ist dann TEAM Arbeit (Toll Ein Anderer Machts) und man vertraut ja den Quellen ... (Die Problematik hier sollte jedem bewusst sein ... jetzt erst Notepad++ aber da war ja vor nicht zu langer Zeit ein kompromitiertes Node Paket?)

Und was ist das genaue Problem im Detail?

- Kontext. Je größer der Kontext sein muss, desto problematischer wird es. Es ist also problematisch, wenn die KI Massen an Code generieren muss. Also da ist Java ja absolut die schlechteste Sprache - so viel Boilerplate Code wie in Java hat man sonst wirklich nirgends mehr ... Hier macht es aber Sinn, das massiv zu reduzieren. Wird auch deutlich, denn was für Code schreiben wir denn z.B. für Datenbankzugriffe? Da ist es doch üblich, nur noch eine Methodensignatur zu schreiben und der Rest geht automatisch. Im Worst Case kommt noch eine Query Annotation dazu .... Mein Fazit ist hier: Es braucht ein höheres Abstraktionsmodell auf dem dann die KI Dinge generiert. Daraus entsteht dann alles mögliche. (Die Sprache ist da übrigens egal. Die spielt da kaum noch eine Rolle.... Also das Java Bashing nicht falsch verstehen. Das ist ja auch meine Haupt Entwicklungssprache)

- Konsistente Trainingsdaten - Hier sehe ich ein grosses Problem. Denn ich nutze jetzt eine Library XYZ. Diese gibt es aber in Versionen 1, 2, 3 und 4 und es gab jedes Mal viele Breaking Changes. Die KI kriegt jetzt im Training alle Versionen und was dann heraus kommt ist dann ein tolles Gemisch. Und die Art und Weise, wie die LLMs arbeiten, machen dies extrem schwer.

- Tests - Ja, das ist ein wichtiger Punkt. Bei vielen Systemen sehe ich hier große Probleme. Ich habe schon viele Dinge ausprobiert und das war fast immer ein kritischer Punkt. Es war toll, wie in kurzer Zeit tolle Anwendungen entstanden sind. Aber es fehlten die Tests. Ob das damals ein MS Access war oder heute eine Low Code Sprache ist: Die Tests sind schwierig. Aber bei so Systemen ist die Frage: Hat man noch Units im eigentlichen Sinne? Evtl. braucht es wirklich nur noch reine Integration oder UI Tests. Dann baut man halt nur noch Requests an das System, die dann erfolgreich bearbeitet werden müssen. Sehe ich nicht wirklich als problematisch.

Ich sehe hier durchaus auch die Möglichkeit, diese Probleme deutlich besser anzugehen. Das behebt nicht die generellen Probleme von LLMs. Aber es reicht, um wirklich gute Ergebnisse zu bekommen. Die Frage ist doch hier, was mein Ziel sein soll:

- Will ich, dass die KI mir grundlegende Systeme baut, die die Basis für die Existenz von riesigen Konzernen bilden? Das wohl kaum. Ein "Ups, die KI hat eine neue Version gebaut und deshalb ging der Internationale Geldtransfer nicht" ist wohl kaum denkbar. (Aber hier kann die KI sehr gut unterstützen. Code Reviews aber auch viel Erzeugung von Code.)

- Was ist aber mit den typischen "Excel Ersatz" Lösungen. Irgendwelche Prozesse, die automatisiert ablaufen sollen? Wo nun jemand eine Webseite hat statt ein Excel Sheet. Und er hat sich da am Server einmal authentifiziert und muss dann nicht irgendwas als PDF drucken um dieses dann digital zu signieren um es dann per Email an seinen Chef zu geben, der es dann ebenso signiert und der es dann weiter sendet ...... Hier sehe ich durchaus sehr viel Potential. Und ich denke, dass hier auch Low Code Anbieter bereits sehr stark dran sind.

Und was wir auch noch nicht gesehen haben: KIs sind ja nicht nur gut zur Entwicklung von Anwendungen. Es wird auch gut sein, um Anwender bei Anwendungen zu unterstützen. Die KI kann Anfragen formalisieren. Dann versteht die Anwendung plötzlich eine Anfrage: "Gib mir alle Rechnungen vom Zeitraum x bis y die auch einen Artikel des Herstellers Z betroffen haben" oder so.

Leider hatte ich bisher zu wenig Zeit, um mich damit noch viel intensiver zu beschäftigen. Ich wollte mich jetzt viel stärker in die Bereiche sprec-driven development und OpenSpec einarbeiten und damit etwas herum spielen (mit nicht freien Modellen - das ist wohl auch kritisch, denn ich hatte da oft die Modelle ausgewählt, deren Benutzung nicht begrenzt war, was evtl. die teilweise schlechten Ergebnisse bei mir erklärte).

Zu dem Thema konsistente Trainingsdaten: Das wird schnell möglich, wenn es ein Anbieter selbst macht. Dann trainiert Microsoft eine KI mit Azure spezifischen Dingen. Wenn es Updates gibt, dann wird halt mit dem nächsten Training der aktuelle Stand verstanden. Dann bekommt man auch nie alte APIs oder so. Es wird nur eine API gekannt und das ist die aktuelle. (Das muss auch nicht direkt in das Training selbst einfliessen. Das geht über MCP Server, RAG, ... ) Hier kann also sehr viel gemacht werden aus meiner Sicht. Man muss sich nur überlegen, wie sowas aussehen könnte. Wir sind hier ja noch komplett im Neuland. Also so nach dem Motto: Wir sind paar Monate nach den ersten CPUs und freuen uns, dass wir ein Assembler haben so dass wir keinen Maschinencode mehr selbst schreiben müssen ... Das ist erst der Absolute Anfang und wer weiss, was für Tolle Ideen wird noch bekommen werden :)
 

KonradN

Super-Moderator
Mitarbeiter
Höhö...ich suchte gerade besagten Heiseartikel, da finde ich mittlerweile das es bereits eigens Werkzeuge gibt um Bilder so umzubauen daß es für den Menschen noch genauso aussieht wie vorher, aber KIs daraus irgendeinen Schwachsinn ableiten und das ganze LLM so unbrauchbar werden könnte. Ach ja, und Russland steckt natürlich voll tief drin, KI-Modelle durch Fakenews zu vergiften...😭

Bei Quellcode wird das gar nicht erst nötig sein, da geistert auch so genug Schwachsinn herum ganz ohne daß da jemand dran dachte, KI-Trainingsdaten vergiften zu wollen. Ich warte auf die Witzbolde, die jetzt massenhaft Repos auf github.com reinstellen und wahllos ein Thread.sleep(1) verteilen und ähnlichen Unfug treiben. Ob es dafür schon eine Verabredung auf Reddit oder 4chan gibt?
Also da sehe ich erst einmal noch kein ernstzunehmendes Problem.

Ja klar, Dinge können auch missbraucht werden und das wird bestimmt teilweise kritisch sein. Aber sorry: Schau Dir das Schulsystem in den USA an. Da wird teilweise in den "Südstaaten" in der Schule unterrichtet, dass die Sklaverei positiv war und die Sklaven doch top versorgt wurden mit super Nahrung, beste medizinische Versorgung u.s.w. ...) Und wenn man schaut, was den Leuten da erzählt wird und was da geglaubt wird: Da soll eine KI noch irgend eine Rolle spielen? Und nein, da muss man nicht erst in die USA gehen. Das geht auch in Deutschland. Da demonstrieren Quere Leute für die Hamas ... Also Leute gehen für Andere auf die Strasse, die sie sofort töten würden weil Schwul oder lesbisch sein ja so absolut nicht geht .... Oder Arbeitslose wollen eine Partei, die ihnen sofort die Mittel streichen würde .... Oder rein manche Reaktionen auf Postilion Artikel ....

Also nein, ich sehe hier die KI an sich nicht als ein wirkliches Problem. Und zur Not wird erst einmal ein CodeReview auf GitHub Repositories gemacht, ehe diese fürs Training verwendet werden (oder eben nicht). Oder wenn es wirklich problematisch wird, dann baut man da eine Lösung. Also sowas wie ein Like / Dislike incl. Member Bewertung. Was bei SO gut geht, das wird auch bei Github und Co funktionieren können. Und bei KIs ist es doch schon jetzt so, dass die KIs sich an den Nutzer anpassen. Also wird bei Anfragen eine ähnliche Sprache verwendet (Sonst wären KIs doch bei den jüngeren komplett nicht verwendbar... :) oder das vorhandene Projekt wird analysiert bezüglich Styling und co ...
 

White_Fox

Top Contributor
Ganz ehrlich: Das Schulsystem in den USA kenne ich nicht ansatzweise gut genug um mir da ein Urteil erlauben zu wollen. Aber aus den USA kommen Firmen wie OpenAI, Google, Microsoft, Facebook, Amazon, usw. Die einzige bekannte brauchbare Softwarebude aus De ist SAP, und die ist nicht gerade dafür bekannt das irgendjemand deren Produkte freiwillig verwenden würde. Ansonsten hat Software aus Deutschland einfach einen generell schlechten Ruf...nach meiner Erfahrung zu Recht. (Mitarbeit in OSS-Projekte ausdrücklich ausgenommen, da kenne ich überraschend viel gute Beispiele von Leuten aus De.)

Irgendwas scheinen die USA da besser zu machen als wir. Aber mal vom Politsichen weg hin zum Fachlichen:

Und zur Not wird erst einmal ein CodeReview auf GitHub Repositories gemacht, ehe diese fürs Training verwendet werden (oder eben nicht).
Meinst du, das hat jemand bisher gemacht? Oder hältst du das vom Arbeitsaufwand her überhaupt für möglich?

Böswilligen Kram wie Thread.sleep(1); in jeder zehnten Zeile wird man bestimmt schnell finden. In ausgewählten Codestellen, die oft ausgeführt werden, kann man sowas aber gut verstecken. Da müßte man sich mit dem Quellcode schon etwas intensiver auseinandersetzen.
Viele Geisterprojekte, die eine giftige Bibliothek verwenden, wären auch so ein Angriffsvektor.

Besagter Heiseartikel (zu dumm daß ich den nicht mehr finde) beschäftigte sich mit der Untersuchung, wie groß der Anteil an vergifteten Trainingsdaten sein müßte und kam zu dem Schluß, daß dieser wirklich verschwindend gering ist, das vergiftete Ergebnis jedoch so gut wie garantiert in der Ausgabe landet. Trainingsdaten sauber zu halten ist so kaum möglich, wenn man die Trainingsdaten nicht selbst erstellt und so volle Kontrolle hat.
 

KonradN

Super-Moderator
Mitarbeiter
Also ohne das erste Thema vertiefen zu wollen:
Du siehst hoffentlich selbst, dass es relativ unsinnig ist, Probleme eines Schulsystems mit Einzelerfolgen zu vergleichen? Und das es ein Eliten-System gibt, das besonders in den USA ausgeprägt ist, ist hoffentlich bekannt? Und mit was für Mitteln so Firmen Erfolg hatten, hoffentlich auch? Sonst einfach mal bei Microsoft nachforschen: Da sieht man das mit am deutlichsten...

Das sollte eigentlich nicht das Thema sein, aber die aktuellen Entwicklungen zeigen ja, wie genau das ein riesen Problem ist in den USA. Die "Eliten" machen sich gerade extrem viel reicher und sichern sich ihre Macht. Ist nichts Neues, wie viele CIA Operationen und viele Kriege gezeigt haben (Interessant, dass die USA immer wieder Gruppierungen aufbaut um diese dann in einem Krieg zu bekämpfen ...)

Aber zurück zu den eigentlichen Kernthemen:

Was CodeReviews angeht: Das können KIs schon sehr gut, wie die Praxis zeigt. Somit ist das tatsächlich denkbar. Somit wäre es denkbar, das man das Trainingsmaterial selbst gezielt erst bewerten lässt. Damit kannst Du sogar in validen Code viele Thread.sleep(1) einbauen und mit dem Code könnte sinnvoll trainiert werden (Weil eben nur etwas übernommen wird, das erst bewertet bzw. verbessert wurde).

Und es gibt ja bereits heute Möglichkeiten zu sehen, wie sehr ein Projekt benutzt wird oder nicht. Das kann also auch mit einfliessen. GitHub selbst hat die Daten auf jeden Fall und damit kann das entsprechend einfliessen.

Die Frage ist auch, wie sowas zukünftig einfliessen muss. Es ist denkbar, deutlich mehr aussen vor zu lassen. Es geht um eine Generalisierung, die man dann ggf. anwenden kann. Ich sehe es halt nur im Job, dass einiges über einen MCP Server bereit gestellt wird in Copilot. Da ist dann tatsächlich die Frage, in wie weit das nicht genereller so denkbar wäre.

Und nochmal: Meine Argumentation ist nicht, dass es nicht möglich ist. Einfach mal ein Beispiel:

Ich bezweifle nicht, dass Plastikstrohhalme und Einmal-Besteck auch in der Natur landen und dann zu Mikroplastik werden. Aber das geht an der ganzen Thematik größtenteils vorbei. Wenn ich mir anschaue, woher in Deutschland oder in Europa Mikroplastik kommen, dann sieht man die Kernprobleme (Spoiler: Das sind nicht Plastikstrohhalme und Einmal-Besteck)

So bezweifle ich nicht, dass Trainingsdaten verseucht werden können. Dass es da einen Angriffsvektor geben könnte, ...
Die Probleme von KI sind (derzeit) nicht die Verseuchung der Trainingsdaten. Die Trainingsdaten sind nicht unproblematisch - aber da diskutiere ich eher, was ein Elon Musk machen will (oder eben nicht) und andere Themen, wo das Ergebnis ggf. kritischer ist (Weil es z.B. direkt um Menschenleben geht oder so. Was juckt ein nicht funktionierendes Programm?).
Aber das ist mehr ein Thema aus der praktischen Umsetzung. Wenn das akut wird, dann kann man sehen, wie man damit umgehen kann.

Die wichtigen Herausforderungen sehe ich bei KIs in anderen Bereichen.
 

White_Fox

Top Contributor
Du siehst hoffentlich selbst, dass es relativ unsinnig ist, Probleme eines Schulsystems mit Einzelerfolgen zu vergleichen? Und das es ein Eliten-System gibt, das besonders in den USA ausgeprägt ist, ist hoffentlich bekannt? Und mit was für Mitteln so Firmen Erfolg hatten, hoffentlich auch?
Wie gesagt, ich wollte das Thema nicht unnötig vertiefen, das geht in so ein paar Posts ja auch gar nicht. Und ja, ist mir alles bekannt. Von MS weniger, von Google weiß ich das vieles daraufhin deutet das schon deren Gründung mit massiver Hilfe einschlägig bekannter Three-Character-Organisations war.

Worauf ich lediglich hinaus wollte: Egal wie schlecht – nach welchen Maßstäben auch immer – das Schulsystem der USA ist, es funktioniert für die USA offensichtlich. Und insgesamt betrachtet hat es auch massive Vorteile und passt auch gut in deren wirtschaftliches und gesellschaftliches Gesamtsystem. Natürlich kann ein in Deutschland ausgebildeter Facharbeiter mehr, ein ausgebildeter Fluggerätemechaniker liest sich ein oder zwei Tage in das Wartungshandbuch eines TP-400 (das sind die Dinger die den A400 Atlas in die Luft wuchten) ein und kann das Ding dann in den Prüfstand einrüsten. Oder Wartungen durchführen. Und kann dies alles mit etwas Umarbeitungszeit dann auch an einem LM2500 tun.

MTU sucht dann nach Leuten mit einer Ausbildung zum Fluggerätemechaniker, neben den üblichen anderen Tauglichkeitsmerkmalen (Zuverlässigkeit, Pünktlichkeit, usw), Pratt&Whitney dagegen suchen einfach jemanden der gerade Geld braucht und zeigen ihm, wie man diese eine spezielle Schraube löst und wieder anzieht. Dafür braucht man auch keinen Collegeabschluß, und muß keine Fachkräfte aus dem Ausland anwerben. Und selbst wenn kommt man dann besser damit klar, wenn man feststellt daß diese nichtmal in ihrer Muttersprache vernünftig lesen und schreiben können . So richtig Bescheid wissen und clever sein muß dann nur der eine, der die Arbeitspakete verteilt, der dann aber auch mit einem Master vom MIT daherkommt.

Ich würde mich damit auch nicht so sehr anfreunden wollen, und mir wären vernünftig ausgebildete Leute lieber die selbständig handeln können, aber auf die USA so herunterzublicken ist mir doch etwas zu einfach (und leider auch sehr typisch deutsch). Und um zum Ausgang zurückzukommen: der Erfolg gibt den USA ja auch Recht. Die USA bekommen moderne Technik gebacken, wenn auch mit fragwürdigen Methoden. Das Deutschland – De-Mail, elektronische Gesundheitskarte, ... –; oder wenigstens Europa – GaiaX – da auf Augenhöhe mithalten kann, sehe ich nicht. Wenn, dann sind es eher fein ausgetüftelte Nischenprodukte für sehr spezielle Anwendungsfälle, gemacht von eher kleinen Firmen. Und selbst das machen wir gerade kaputt.


Aber zurück zu den eigentlichen Kernthemen:
Ich weiß nicht ob ich es irgendwann schonmal erwähnt habe, aber ich programmiere ja nicht beruflich, außer evt. mal irgendwelchen Firmwarekram für Mikrocontroller und angrenzendes Zeug.

Was ich aber aus Erfahrung sehe: Techniken, die es ermöglichen mit weniger Ausbildung scheinbar komplexere, größere Dinge zu erschaffen sind erstens noch relativ neu, und haben zweitens noch nie zu besseren Produkten geführt. Das Vibe Coding, auf das hier ja schon eingeprügelt wurde, ist ja genau für Leute gemacht die nicht programmieren können, und es ist meines Wissens nach auch nur für Spielereien und absoluten Grundlagenkram gedacht.

Mir kommt das sehr bekannt vor, aus der Elektronik. Bis vor ca. 2010 mußte man schon ziemlich was lernen, um Mikrocontroller programmieren zu können. Da mußte man C und/oder C++ beherrschen, und gelegentlich auch mal Assembler verstehen. Mit einem Oszilloskop (mein Laborpartner im Studium hat Oszilloskope gehaßt, weil viel zu viele Knöpfe und Schalter) umgehen zu können war beim Debuggen oft ein großer Vorteil. Und mit den Innereien des Mikrocontrollers mußte man sich früher oder später nach dem ersten Hello World auch herumschlagen.

Dann kam irgendwann Arduino auf. Eine Art Baukastensystem für Mikrocontroller, der erste damals mit einem ATMega8, einer standardisierten Schnittstelle und mehreren Zusatzboards mit Sensoren, Motortreiberstufen, usw. um komplette kleinere Systeme zu bauen. Mit einer Sprache die die Programmierung auch Leuten ermöglicht, die von Programmierung und Elektronik absolut keine Ahnung haben. Ursprünglich entwickelt z.B. für Schaufensterdekorateure oder Künstler, die mal irgendwas blinken oder einen Motor drehen lassen wollten.

Gebracht hat das insgesamt eine Menge Schrottprodukte, Startups mit drei BWLern als Geschäftsführern und keinem einzigen Entwickler in der Belegschaft, und die Lektion daß man komplexe Dinge eben nicht beliebig vereinfachen kann. Und diese Lektion wird die Softwareentwicklung an KI auch sehr hart lernen, aber nicht nur die. Den Traum, Quellcode vollständig von KI machen zu lassen, den gibt es auch in anderen Branchen ganz genauso, die haben allerdings das Problem daß sie kaum Trainingsmaterial zur Verfügung haben. (Was Altium anscheinend ändern will und deshalb seine Kunden versucht in deren Cloud zu drücken.)
 

KonradN

Super-Moderator
Mitarbeiter
Wir driften dann ganz massiv ab vom Thema:

a) Was funktioniert oder eben nicht ist immer Ansichtssache. Das System USA funktioniert aus meiner Sicht eben nicht, es sei denn, ein "Ich arbeite 3 Jobs und habe dennoch Probleme mein Dach über dem Kopf zu bezahlen" ist ein "funktionieren". Und Du hast da Jobs vor Augen, die brauchen: "neben den üblichen anderen Tauglichkeitsmerkmalen (Zuverlässigkeit, Pünktlichkeit, usw)" aber dann ist es ok, wenn da einfach jemand genommen wird "der gerade Geld braucht"? Irgendwie glaube ich, dass hier Dinge durcheinander geschmissen werden ...

b) Komplexität reduzieren
Genau das wird doch ständig gemacht und funktioniert extrem gut. Sei es in der Technik: Was interessieren Dich irgendwelche exakten Details? Du hast nur noch Module und die packst Du zusammen. Da nimmst Du ein Board, da kommt eine CPU drauf (Du achtest noch auf den gleichen Sockel bei beiden), dann steckst Du etwas RAM rein und noch eine Grafikkarte .... Viele Details interessieren nicht mehr.
(Findet sich bei vielen technischen Dingen. Was interessiert denn noch irgend ein Interna?)

Software Entwicklung doch genau das gleiche. Am Anfang hat man die CPU noch selbst bedient. Dann wurde immer mehr abstrahiert. Auf Grund der Abstraktion wurde vieles deutlich einfacher. Es wurden Hochsprachen entwickelt. Dann abhängige Produkte wie z.B. Datenbanken. Durch Abstraktion wurde vieles immer einfacher (Wer interessiert sich noch für die Komplexität von irgend welchen Kontext Switches bei Threadwechseln, Interrupts bei CPUs und all so ein Quatsch?) Und immer mehr wird nicht mehr selbst entwickelt.

Um es mal ganz deutlich zu machen einfach einmal eine Entwicklung, die ich mitgemacht habe:
  • Ich habe ursprünglich in C eine eigene "Datenbank" geschrieben. Da wurden Datensätze in einer Datei gespeichert, ich hatte separate Indices und all sowas (Das war so um 1987/88).
  • Dann später war das separat: ich habe dann SQL Befehle geschrieben und habe die Verwaltung/Speicherung/Optimierung als Komplexität abgegeben (Das war dann so 1995 und später)
  • Jetzt schreibe ich sowas nicht mehr. Jetzt schreibe ich nur noch reine Entity Klassen und überlasse Frameworks den Zugriff. Ich schreibe da kaum noch Code. Je anch verwendetem Framework muss ich nicht einmal das Speichern selbst machen. Ich sage einfach: Gib mir die Entity. Wenn ich dann verlinkte Entitäten aufrufe, dann passiert das Laden der Daten im Hintergrund automatisch. Und wenn ich etwas ändere: Das wird getrackt. Ich speichere nicht mal mehr selbst. Also ganz massive Abgabe an Komplexitäten. Und das gibt es an vielen Bereichen. Ich schreibe doch keinen RestClient selbst. Ich gebe entweder das Interface vor und sage: Da will ich ein RestClient oder ich lasse das von der OpenAPI generieren. (Das ist Stand heute!)

c) Vibe Programming
Hier verstehe ich immer nicht, wieso hier die Welt der Software Entwicklung separat gesehen wird. Clean Code / Agile Vorgehensweise: Das klingt bei vielen als wäre hier das Rad neu erfunden worden oder so. Das sind ganz normale Standard-Vorgehensweisen. Das man in kleinen Teams kleine Dinge macht um damit dann schrittweise ein Problem zu lösen (Das ist so eine Umschreibung von Uncle Bob) ist in anderen Bereichen absolut normal und da würde niemand auf die Idee kommen, das anders machen zu wollen. Und auch das Vibe Programming ist doch keine andere Vorgehensweise als das, was Anfänger schon jetzt machen. Man probiert einfach etwas aus. Und wie man z.B. bei manchen Fragestellungen im Forum manchmal sieht: Da hat man offensichtlich keine Ahnung, was da überhaupt gemacht wird und es wird einfach irgend etwas zusammen gestrickt, was man irgendwo gefunden hat ...
Aber das ist doch normal. Wie baut denn ein Kind mit Bauklötzen? Also ich habe noch nie Kleinkinder gesehen, die Statik und Co berechnet haben um dann Bauklötze stabil und sicher zu stapeln.
Was spricht dagegen, etwas einfach zusammen zu bauen? Und dann schaut man: Funktioniert es? Super. Funktioniert es nicht? Dann probiere ich es einfach noch einmal.
Klar, so baue ich kein Hochhaus und kein Atomkraftwerk. Aber wie viele Leute bauen letzten Endes so etwas?

Wenn ich schaue, was ich in den diversen Konzernen gesehen habe, dann sehe ich eine Masse an Excel Sheets und PDFs und Co. Das einfach mal eben so zu ersetzen ist doch nichts wildes. ==> Hier kommen dann Low Code Ansätze ins Spiel und schon habe ich super Lösungen. Und die gehen mit mehr oder weniger Vibe Programming: Man klickt da mehr oder weniger was zusammen und testet es dann. Wenn es funktioniert: Super! Wenn nicht, dann schaut man noch einmal.
Und klar: Man braucht dann gewisse Sicherheit, aber die wird oft direkt bereitgestellt. Die Low/No Code Anbieter wissen in der Regel, was sie tun.
Oder man hat zur Not ein kleines lokales Programm und ein OneDrive/Sharepoint mit Dateien: Da hat man eine ähnliche Sicherheit wie bei z.B. Excel mit Macros.

Daher ist wirklich die Frage, was man wirklich genau braucht oder will. Viele Anforderungen sind schlicht Niveau: Bauklötze. Wenn es geht ist es gut wenn nicht baue ich es noch einmal. Und in der Zwischenzeit mache ich "EDV zu Fuss" (So nannte es mal ein Mentor damals. Da hatte ich in einem mittelständischen Unternehmen Prozesse optimiert und Tools entwickelt)

Und gerade wenn Du wenig Erfahrung in der Software Entwicklung hast: Ich bezweifle, dass Du bessere Ergebnisse lieferst wie eine KI mit vernünftigen Vorgaben. (Ohne Dir zu nahe treten zu wollen! Das ist keine Wertung Deiner Person! Es ist lediglich eine Erfahrung, die ich in meinem Berufsleben gemacht habe.)

d) Kontrolle von Ergebnissen einer KI
In einem (grossen) Projekt sehe ich da nicht wirklich ein grosses Problem. Aufgaben sind ordentlich unterteilt. Es werden also immer nur klar abgesteckte Teile gebaut und kommen als MR rein. Und unabhängig von dem Ersteller: Es wird ein Core Review gemacht. Da wird jede Zeile Code, jeder Change betrachtet. Wieso soll das schwieriger sein bei einer KI als bei einem menschlichen Entwickler? Unabhängig vom Ersteller habe ich immer die Chance, dass dieser einen Hinweis nicht versteht. Dann muss ich Schulen. Bei einer KI ist das dann eben eine Anpassung von Specs, Prompts, ... Bei einem Menschlichen Entwickler Schulungen und Co.

Ich habe das Gefühl, dass hier immer zu viel auf einmal erwartet wird, a.la. "Bau mir ein komplettes SAP" (natürlich nicht so sondern als Auflistung von Features) und dann schaue ich, was die KI entwickelt. Der Ansatz ist Müll. Mach das mal mit einem Entwickler. Da kann eigentlich auch nur Müll bei heraus kommen.


Unabhängig davon von all dieser Theorie um die es in dieser Diskussion geht: Unter dem Strich ist die Frage einfach: Wie kann die aktuelle KI uns aktuell unterstützen. Wenn Du mit einem Tool nicht klar kommst, dann hilft es Dir nicht. Beispiel Handwerker: Nagelpistole. Man muss immer überlegen: Hilft Dir das Tool. Wenn Du öfters viele Nägel verbrauchen musst, dann kann es sinnvoll sein, den Umgang damit zu üben und dann hilft es Dir. Wenn Du ein Elektriker bist und 2 mal im Jahr eine paar Nägel brauchst um irgendwo mal etwas Trockenbau wieder dran zu hämmern: Da ist das Tool Quatsch.

Man kann also einfach einmal schauen, was man da selbst braucht oder nicht braucht. Mein Arbeitgeber gibt jedem eine Github Copilot Enterprise Lizenz (mit entsprechenden Settings für Privacy) und der Kunde für den ich arbeite pusht das auch und hat es für viele Projekte freigegeben (Da gibt es noch gewisse Bedingungen die erfüllt sein müssen, aber das ist erst einmal hier uninteressant). Da kann man dann jederzeit schauen, ob und wo es einen unterstützt. Aber das geht dann auch soweit, dass es klare Hinweise und Hilfen gibt, wie man es einsetzen könnte. Und dann probiert man es aus und schaut sich das Ergebnis an.

Meine Erfahrung ist, dass die KI bei vielen Dingen gut unterstützen kann. Sobald der Kontext zu gross wird, wird es schnell zu viel (was evtl. mit Modellen mit größerem Kontext besser wird - das muss ich noch besser ausprobieren) aber ansonsten ist es super. JavaDoc schreiben ist bei mir ein Klick, die KI macht es, ich lese nur noch einmal drüber und passe ganz selten noch etwas an. Die KI schreibt bessere JavaDoc als ich (ich bin einfach zu faul a. la. getCar -> gets the Car - das ist etwas übertrieben und das Beispiel ist schlecht, aber ja: Ich halte es oft etwas minimaler ... Da ist die KI deutlich besser und erfasst auch mehr vom Inhalt der Methode.)
Oder Auswertung von Logs oder so - Gerade wenn man da zu sehr zugemüllt wurde - da kann die KI deutlich schneller Dinge ausfiltern.
Aber auch bei Tests mit Mocken und co - da kann die KI recht viel Tipparbeit übernehmen....
Das sind aber nur meine Erfahrungen. Und die sind halt auch speziell in dem Bereich, in dem ich tätig bin. Also nix Low Code auch auch nix Vibe Programming. Das ist also unabhängig von den Entwicklungen und Möglichkeiten die ich so noch sehe. Aber in der Praxis muss halt jeder für sich selbst heraus finden oder entscheiden, was er nutzen kann oder eben nicht. Die Entwicklung ist halt noch frisch. Da wird in den nächsten Monaten noch sehr viel kommen bin ich mir sicher und evtl. will man noch abwarten, ehe man hier etwas macht.

(Wobei Vibe Programming haben wir auch ... Wir haben kleine Tools mal eben durch die KI generieren lassen. Ein kleines node basiertes Tool für das Laden von Testdaten und absetzen von Requests an die Umgebungen. Da machen wir viel mit Bruno, aber das passte nicht immer. Teilweise haben wir direkt Daten in die Datenbank gepusht nachdem die Testcontainer gestartet sind und so ... Und Bruno passte nicht immer so gut von den Anforderungen. Da ist dann das Tool nicht schlecht und das war dann mehr oder weniger eine kleine Anzahl Prompts und das Tool war fertig ... )
 

White_Fox

Top Contributor
Und gerade wenn Du wenig Erfahrung in der Software Entwicklung hast: Ich bezweifle, dass Du bessere Ergebnisse lieferst wie eine KI mit vernünftigen Vorgaben. (Ohne Dir zu nahe treten zu wollen! Das ist keine Wertung Deiner Person! Es ist lediglich eine Erfahrung, die ich in meinem Berufsleben gemacht habe.)
Keine Sorge, das kann ich ab. Ist ja schließlich auch so...ich bin halt kein Softwareentwickler.

d) Kontrolle von Ergebnissen einer KI
Ich kürze das mal ab, denn ich glaube da liegt unser Mißverständnis. Du geht von einem recht konservativem und angemessenem Einsatz von KI als sinnvollem Werkzeug aus, und das würde ich so auch unterstützen.

Ich sehe hingegen, daß es nicht dabei bleiben wird. Es wird sich, zumindest wird man es versuchen, die Frage stellen warum man nicht einfach jeden in die Softwareentwicklung stecken (und entsprechend weniger bezahlen) sollte, wenn doch jeder mit Hilfe von KI Software entwickeln kann. Und diese Denke wird nicht nur auf die Softwareentwicklung beschränkt bleiben, sondern in allen anderen technischen Bereichen genauso aufgegriffen werden.

Die Softwareentwicklung, so wie sie heute vielfach umgesetzt wird, ist in einem ziemlich schlechten Zustand. Es gäbe zwar Werkzeuge und Techniken, um gute, stabile und fehlerarme Software zu bauen. Wir haben allerdings einen Riesenzoo an mehr oder weniger vermurksten Frameworks, Programmiersprachen und Bibliotheken, das überblickt schon längst keiner mehr so richtig. Und viel Software ist eben auch eine Katastrophe, paradoxerweise vor allem Software für Industriekram, CAD und so.

Und dann kommen solche Großkatastrophen wie das MCAS der Boeing 737MAX. Gut, daß hat Boeing sogar ohne KI mit heutiger Software geschafft, aber so oder so hätte schon das Konzept niemals so ausgearbeitet werden dürfen und es ist mir nach wie vor unbegreiflich, wie sowas überhaupt ans Reißbrett kam. Aber so ungefähr stelle ich mir die Folgen vor. Oder massenhaft Firmen, die tagelang nicht arbeiten können weil irgendeine zentrale KI-gestrickte Unternehmenssoftware Amok läuft.
 

KonradN

Super-Moderator
Mitarbeiter
Ich kürze das mal ab, denn ich glaube da liegt unser Mißverständnis. Du geht von einem recht konservativem und angemessenem Einsatz von KI als sinnvollem Werkzeug aus, und das würde ich so auch unterstützen.
Nein, das ist nur eine Möglichkeit. Ich sehe auch, dass Leute ohne Wissen in Software Entwicklung damit irgend welche Lösungen entwickeln.

Ich sehe hingegen, daß es nicht dabei bleiben wird. Es wird sich, zumindest wird man es versuchen, die Frage stellen warum man nicht einfach jeden in die Softwareentwicklung stecken (und entsprechend weniger bezahlen) sollte, wenn doch jeder mit Hilfe von KI Software entwickeln kann. Und diese Denke wird nicht nur auf die Softwareentwicklung beschränkt bleiben, sondern in allen anderen technischen Bereichen genauso aufgegriffen werden.
Ja, das ist doch ok. Wenn eine Firma aufgestapelte Bauklötze, die jederzeit zusammen fallen können, verkaufen kann, dann kann diese Firma auch kleine Kinder anstellen, die diese aufgestapelten Bauklötze erstellt. Die Frage ist doch, was genau gebraucht wird. Ich kenne Projekte, in denen es darum ging, einen Konzern mit Low Code Lösungen zu unterstützen. Da waren dann auch weniger Software Entwickler gefragt als Product Owner / Business Analysten und so ... (So ich das richtig mitbekommen habe. Ich war in das Projekt in keiner Weise eingebunden.)

Die Softwareentwicklung, so wie sie heute vielfach umgesetzt wird, ist in einem ziemlich schlechten Zustand.
Genau das sehe ich nicht so. Ich arbeite in einem Projektbereich. Ich bekomme schon einige Projekte mit und da würde ich genau das eben diese Aussage so nicht unterstreichen. Aber der Unterschied ist halt, dass ich in einem Umfeld bin, in dem Leute sind, die professionelle Softwareentwicklung machen wollen. In dem Umkreis bei uns ist jeder involviert in die Themen KI, Secure Software, Barrierefreiheit, ... Wir haben hier regelmässige Schulungen (Also nix wirklich grosses, aber da hat man dann halt mal paar Stunden in so Themen investiert um da dann eben z.B. aktuelles von OWASP zu erfahren, neue KI Entwicklungen / Einsatzmöglichkeiten, .... Das sind dann nur Sessions von 1-2 Stunden, aber das ist halt so eine Art "Learning Friday")

Aber das Thema wollte ich eigentlich nicht kommentieren, denn Deine Aussage war mir schon richtig stark aufgestossen ... Also Open Source ist gut auch von Deutschen, aber wenn man etwas beruflich macht, dann sind wir plötzlich alles schlecht? Und diese Bewertung kommt von jemand, der natürlich selbst kein Software Entwickler ist .... Du kennst die Untersuchungen bezüglich eigenes Wissen und wie sicher man mit Aussagen auftritt? Evtl. mehr mit Softwareentwicklung und Projekten beschäftigen, ehe man dann gewisse Urteile fällt. Und nur um etwas Kontext zu geben: In den letzten Jahren war ich in einem Produktbereich / Projekt in dem es um eine Software ging, die vor ca. 30-35 Jahren entwickelt wurde, die mit eine wichtige Rolle in einem grossen DAX Konzern spielt, viele Schnittstellen zu anderen Systemen hat und die diese Jahrzehnte gut überlebt hat, die Anwendung wurde am Ende von einem sehr kleinen Team supported und weiterentwickelt. Wenn die in Deutschland entwickelte Software doch ach so schlecht ist: Wie kann es denn dann sowas geben? Derzeit wird an einer Ablösung gearbeitet weil der Konzern alles auf eine zentrale Plattform umstellen will und alle Systeme eine einheitliche Schnittstelle nach einem Branchenweit definierten Standard anbieten/nutzen sollen.

Dein Beispiel mit Boing: Und Boing ist doch USA? Wie kann da etwas schief gehen? Die USA sind doch ach so genial und gut? Hmm ... muss ich Dich missverstanden haben.

Oder massenhaft Firmen, die tagelang nicht arbeiten können weil irgendeine zentrale KI-gestrickte Unternehmenssoftware Amok läuft.
Das ist doch einfach nur Quatsch. Du wirfst hier massiv Dinge durcheinander.

Du hast natürlich die Software Entwicklung. Du bist im Elektronik Bereich? Also machst Du ggf. sowas wie Schaltungen. Was passiert denn da? Du entwirfst irgend eine Schaltung, daraus werden dann irgendwelche Platinen und Bestückungen berechnet und das geht dann direkt in die Grossproduktion? Und dann kommt die grosse Lieferung mit Tausenden oder Millionen Deiner Schaltung und ups: Nichts geht?

So arbeitest Du doch nicht! Du wirst doch auch mehrere Stufen haben. Du testest die Schaltung selbst. Dann wird eine kleine Charge gebaut und die wird getestet. Dann kommen die ersten Testchargen, die z.B. an Kunden zur Abnahme / zum Test gehen ... Irgend sowas.

Und genau sowas gibt es doch auch in der Software Entwicklung.

a) Development und QA: Wenn du vernünftig Software baust (da kannst Du ja mal die KI fragen, was da Sinn macht. Was für Checks Sinn machen und all sowas),m dann hast Du erste Tests. Und dazugehören nicht nur Unit Tests sondern auch Integration Tests. Also direkt bei der Entwicklung wird schon einiges direkt aufschlagen

b) Rollout Management: Dann gibt es immer ein Rollout. Die Produkte gehen dann erst in einen Playground / Integration Test / wie auch immer man diese Stufe beschimpfen will. Hier werden dann erste Zusammenspiele getestet. Aussenschnittstellen müssen funktionieren. Üblicherweise werden hier die wichtigen Use Cases abgebildet.
Dann kommt in der Regel eine PreProd. Hier hat man dann meist eine Kopie der Produktionsdaten. Man kann also sehen, dass z.B. die Datenmigration funktioniert und erneut laufen die Tests.
Dann erst kommt etwas in Produktion. Die Prozesse können schnell sein. Aber da wird immer etwas gezielt ausgelöst. Im Playground kommen die Merge Requests meist sehr schnell. Das kann dann das Zusammenspiel zerbrechen. Klar, ein Microservice ist schon angepasst aber ein anderer Microservice muss die Änderung auch erst machen ... Aber dazu dienen ja diese Umgebungen auch: Du hast dann Kombinationen, die funktionieren sollten.

c) Change & Risk Management: Rollback - Wenn durch einen Change Probleme auftreten, dann wird es in der Regel entsprechende Pläne geben für einen Rollback oder ähnliches. Das
Was Du also angesprochen hast mit dem "tagelang nicht arbeiten können" ist eher ein Problem, das im Change Management abgehandelt wird. Es gibt ja bei dem Szenario ein ganz klares Risiko ... Die Chance, das da also mehrere Firmen nicht arbeiten können, ist ein Risiko, das bewertet werden muss. Und dann muss eine Strategie zum Umgang mit diesem Risiko festgelegt werden. Das spielt dann direkt in das Change Management ein. Alle Änderungen an Produktion werden geplant und bewertet.

Die Art und Weise, wie Software Entwickelt wird, spielt hier und eine relativ kleine Rolle. Es gibt halt immer die QA und dann im Anschluss ein Rollout, Risk und Change Management. Also bitte genau schauen, um was es geht: Wenn Du auf QA, Rollout, Risk und Change Management verzichtest, dann ist die KI wirklich dein geringstes Problem. Wenn Du das hast, dann kannst du auch mit der KI spielen ohne dass die Welt untergeht :)
 

mihe7

Top Contributor
Die einzige bekannte brauchbare Softwarebude aus De ist SAP, und die ist nicht gerade dafür bekannt das irgendjemand deren Produkte freiwillig verwenden würde. Ansonsten hat Software aus Deutschland einfach einen generell schlechten Ruf...nach meiner Erfahrung zu Recht. (Mitarbeit in OSS-Projekte ausdrücklich ausgenommen, da kenne ich überraschend viel gute Beispiele von Leuten aus De.)
Ich denke, das ist etwas komplexer. Deutschland hat nicht das Problem, keine Software entwickeln zu können, sondern eher damit, ein Geschäft mit Software für die Massen zu etablieren.

Das dürfte verschiedene Gründe haben, einer davon ist z. B. die fehlende Risikobereitschaft der Anleger, ein anderer sind die Energiepreise. Ich hatte in der Vergangenheit ein paar mal was mit den Amis in Bezug auf ein Investment zu tun: das läuft da "etwas" anders ab, als bei uns. Bei uns stellt man die Firma und das Produkt vor, dann geht's um Zahlen etc. Bei den Amis: das Produkt interessiert uns null, wir wollen nur die Zahlen hören. Kaum ein deutscher Investor würde in ein Unternehmen, wie es Facebook einst war, große Mengen an Geld pumpen. Bei KI ist der größte Faktor wohl die benötigte Energie. Wenn man in Deutschland das Vierfache an Strom bezahlen muss, ist das schlicht nicht wettbewerbsfähig. Dabei sind wir in der Forschung in Bezug auf KI (mit) an der Weltspitze.

Deswegen gibt es meine Erachtens bei uns weder ein "Google", noch ein "Open AI" oder ein "Facebook". Vielleicht würden die Investoren das heutzutage anders bewerten, aber wenn es um neue Dinge geht, ist man hier tendenziell doch eher zurückhaltend.
 

White_Fox

Top Contributor
Frohes Neues allerseits. :)


Aber das Thema wollte ich eigentlich nicht kommentieren, denn Deine Aussage war mir schon richtig stark aufgestossen ... Also Open Source ist gut auch von Deutschen, aber wenn man etwas beruflich macht, dann sind wir plötzlich alles schlecht? Und diese Bewertung kommt von jemand, der natürlich selbst kein Software Entwickler ist .... Du kennst die Untersuchungen bezüglich eigenes Wissen und wie sicher man mit Aussagen auftritt?
Natürlich, und verschone mich bitte mit dem ollen Dunning-Kruger. Der wird nur allzuoft von Leuten herbeizitiert, die selber nicht wissen daß sie nix wissen. Ich beurteile Software aus Anwendersicht (am Ende die einzig sinnvolle Beurteilung) und ja - da schneiden Produkte deutscher Firmen selten gut ab. Ich gebe mal ein paar Beispiele:


EasyTech - Verwaltungssoftware für Handwerksbetriebe, für Teilname an Ausschreibungen, Angebotserstellung, usw...die gesamte Verwaltung der Firma (Elektroinstallationsbetrieb mit mehreren Standorten in Deutschland), für die ich damals arbeitete, hing an jeder Ecke an diesem unsäglichen Stück Software. Kommt mit einer Benutzeroberfläche wie Mitte der Neunziger daher, kennt kein Undo-Redo. Ich dachte zuerst, das wäre noch eine Uraltversion weil die Firma Support sparen wollte, dabei haben die neben den Lizenzkosten noch mit jeder Menge Arbeitszeit bezahlt um "gemeinsam mit dem Hersteller die Software weiterzuentwickeln". Ich habe mal in einer Ausschreibung versehentlich eine Position gelöscht (was eine vernünftige Software eigentlich gar nicht hätte zulassen dürfen), und da die Software kein Undo kennt, dachte ich mir, ich beende das Programm einfach und lade die Ausschreibung neu, ich hatte da kaum noch etwas gemacht und nicht viel Arbeitszeit verloren. Auf Schließen klicken, die aufklappende Meldung mit "Nicht speichern" quittieren - und du konntest zugucken wie im Fenster alle Labels neu geladen werden und die mißglückte Änderung entgegen des ausdrücklichen Befehls doch gespeichert. Der letzte Ausweg war danach, zum Admin zu gehen der das irgendwie rückgängig gemacht hat...das hat den aber auch eine halbe Stunde gekostet.
Von irreführenden Buttonbezeichnungen und vollkommen kontraintuitiven Benutzerführung einmal abgesehen hatte diese Software auch noch weit mehr Fehler und einen fürchterlichen Mangel an Funktionen. Ich habe mal – kurz vor Angebotsabgabe – händisch den Preisaufschlag für >900 Angebotspositionen etwas nach oben ändern müssen weil das meinem Chef zu wenig war, und die Dreckssoftware globale Aufschlagsänderungen nicht kannte. Ich könnte mich noch sehr viel weiter auskotzen, aber es gibt noch anderes über das ich meckern kann.

MOS'aik - macht im Prinzip dasselbe wie EasyTech, für kleine Firmen. Kannst du dir vielleicht erklären wie es sein kann, daß eine Software >4 Stunden braucht um 20kB (zwanzig Kilobyte) an Daten auf den Server zu schieben? Manche Lieferanten bieten ihren Kunden digitale Kataloge mit Preisen und Rabatten an, das sind im Prinzip CSV-artige Textdateien, ist ein standardisiertes Datenformat, habe aber den Namen vergessen. Ich wurde bereits vorgewarnt daß dieser Vorgang sehr lange dauert, und habe die Preisaktualisierung deshalb erst vorgenommen nachdem alle anderen MA nach Hause gegangen sind und dann von 1600-2100 zugesehen wie der Fortschrittsbalken wächst.
Nachdem ich das leider mehrmals machen mußte – das Programm hatte keinerlei Möglichkeit vorgesehen zu prüfen ob eine Katalogdatei bereits eingelesen wurde – und mir die Daten dann mal näher angesehen und fand heraus wie lächerlich wenig Daten da herumgeschoben werden müssen. An der Hardware oder Netzwerkstruktur lag es definitiv nicht.
Das Programm kam zwar mit einer weitaus besser strukturierten und insgesamt frischeren Benutzeroberfläche daher, im Detail war es dennoch reichlich frustrierend. Es bot z.B. die Möglichkeit, mehrere Lagerartikel zu einem neuen Artikel zu bündeln. Toll, dachte ich mir, da kann man was machen und in der Angebotserstellung mit vernünftigen Artikelbibliotheken viel Arbeit sparen. Ein Standardbefestigungssatz von vier Schrauben und U-Scheiben, und man muß nicht jedes Mal dieselben Schrauben mit U-Scheiben aus der Lagerdatenbank raussuchen. Dann kann ich das für verschiedene Gehäusesätze verwenden, und in der Ebene darüber dann Schaltschrankelemente erstellen, die man immer wieder so braucht: Zähler, Trenner, Strommeßwandler, usw.
Als ich das dann umsetzen wollte scheiterte das daran, daß diese Artikel-aus-mehreren-Artikeln-Technik eine unbrauchbar niedrige Verschachtelungsgrenze aufweist. Anstelle eines rekursiven Aufrufes eines Dekorators oder irgendwas mit Listen hat da wohl jemand ein Array mit fester Länge verwendet oder so.
Dafür konnte man in der Mitarbeiterdatenbank Familienstand, Anzahl der Kinder, Krankheiten, Allergien und allerhand weitere lustige Dinge eintragen, einiges davon dürfte schon damals – noch einige Jahre vor DSGVO – zu erheben nicht erlaubt gewesen sein.

Das ist jetzt schon ziemlich viel Text, soll ich weitermachen? Ich könnte noch ebenso mit Teamcenter (immerhin luftfahrtzertifiziert), Tric (CAD-Software für Gebäudeautomation) fortfahren. Hast du schonmal mit Step 7 (Programmierumgebung für Siemens-SPS) arbeiten müssen? Nicht das Siemens hier nicht nur zeigt das sie Software für PCs nicht kann, Firmware für ihre Geräte können sie leider auch nicht gut.

Ansonsten...was haben wir noch? Kennst du irgendwen, der mit dem Infotainmentsystem seines VWs je zufrieden gewewen wäre? Die Geschichte von Cariad kennst du? Mercedes ist wenigstens so ehrlich und läßt sich das Infotainmentsystem gleich von Google programmieren, selber können die es auch nicht.

Gewiss, es gibt auch ein paar deutsche Firmen mit normal guten Softwareprodukten, aber das sind nur sehr wenige. Mir fällt da eigentlich nur WSCAD ein (CAD ebenfalls für Gebäudeautomationsplanung). EAGLE (Leiterplatten-CAD) war irgendwann in den 90ern mal ein echter fortschrittlicher Knaller, ich selber habe diese Software allerdings nur als die hinterletzte Crapware kennengelernt, die haben an dem Produkt auch 20 Jahre verdient und nichts mehr gearbeitet, keine neuen Funktionen, nichts mehr. Über Umwege hat irgendwann Autodesk die Software aufgekauft und weitervermarktet und hat dann neu implementierte Funktionen als den letzten heißen Scheiß angepriesen, die der kostenlose OSS-Konkurent KiCAD bereits zehn Jahre zuvor eingebaut bekam.

Ach ja...die IT-Projekte des Staates, höhöhö...


Ich bleibe dabei: Deutsche Firmen haben Software einfach nicht drauf, können es einfach nicht. Es mag Ausnahmen geben (z.B. WSCAD, oder die Arbeitsgruppe die das elektronische Rechnungsformat erarbeitet hat...wenn nur dieses dämliche Akronym nicht wäre). Aber es sind eben Ausnahmen und bestimmen nicht meinen Gesamteindruck. Völlig unabhängig von KI.

Nicht das die Produkte amerikanischer Softwarefirmen perfekt wären, aber sie sind im Allgemeinen zumindest in Ordnung. Da stecken die Probleme eher in den AGB und bei Cloudkram in den amerikanischen Gesetzen. Aber zumindest können die Software im Allgemeinen.

a) Development und QA: [...]

b) Rollout Management: [...]

c) Change & Risk Management: [...]
Ich sag es mal so: Wir werden ja in Zukunft sehen wie es weitergeht und was KI so alles bringt. Wenn Softwareprodukte am Ende besser werden als vorher, dann soll mir das Recht sein und lasse mich da gerne eines Besseren belehren.


Dein Beispiel mit Boing: Und Boing ist doch USA? Wie kann da etwas schief gehen? Die USA sind doch ach so genial und gut? Hmm ... muss ich Dich missverstanden haben.
1. Schrieb ich ja nicht, daß die Produkte amerikanischer Firmen allesamt fehlerfrei wären.
2. Waren die Unfälle mit dem MCAS kein Softwareproblem (auch wenn es in Software behoben wurde), sondern schon im Konzept ein Desaster, das hätte so niemals vom Reißbrett gehen dürfen. Eigentlich hätte es nichtmal als ernstzunehmende Idee im Kopf der Ingenieure existieren dürfen.
Das MCAS sollte ein Anheben der Nase (was wiederum einen Strömungsabriss und damit Absturz nach sich ziehen kann) bei Schuberhöhung verhindern und entsprechend gegensteuern, d.h. die Nase nach unten drücken.

Um zu prüfen ob die Nase des Fliegers in den gefährlichen Bereich geht, gibt es Anströmwinkelsensoren in der Nase des Flugzeugs, das ist im Wesentlichen ein drehbar gelagertes Fähnchen das mit dem Fahrtwind dreht und dessen Position gemessen wird.

Man sollte meinen daß ein System, das in die Steuerung des Piloten eingreifen kann, als hochkritisch angesehen und entsprechend ausgelegt werden muß. Mehrfache Redundanz, usw. Tatsächlich waren die Sensoren – die verdrecken, vereisen oder sonstwie ausfallen können – nur zweifach vorhanden, jeweils links und rechts. Und dennoch wurde im Betrieb sogar nur ein einziger Sensor genutzt, und nach der Landung auf den jeweils anderen gewechselt. Das mußte einfach schief gehen.



Das dürfte verschiedene Gründe haben, einer davon ist z. B. die fehlende Risikobereitschaft der Anleger, ein anderer sind die Energiepreise. Ich hatte in der Vergangenheit ein paar mal was mit den Amis in Bezug auf ein Investment zu tun: das läuft da "etwas" anders ab, als bei uns. Bei uns stellt man die Firma und das Produkt vor, dann geht's um Zahlen etc. Bei den Amis: das Produkt interessiert uns null, wir wollen nur die Zahlen hören. Kaum ein deutscher Investor würde in ein Unternehmen, wie es Facebook einst war, große Mengen an Geld pumpen. Bei KI ist der größte Faktor wohl die benötigte Energie. Wenn man in Deutschland das Vierfache an Strom bezahlen muss, ist das schlicht nicht wettbewerbsfähig. Dabei sind wir in der Forschung in Bezug auf KI (mit) an der Weltspitze.
Na...ich denke, das ist höchstens ein Faktor von mehreren. Meine Beispiele oben waren ja alle aus dem deutschen Markt, da hat kaum eine amerikanische Firma etwas mitzuschaffen, zumindest nicht direkt. (Außer das sie es allenfalls am Ende richten, wie bei Mercedes, bei VW oder GaiaX.) Das sind einfach nur schlechte Produkte. Und Cariad z.B. war wohl weitgehend ein Managementproblem, wenn man dem Kerl da glaubt:


Tragischerweise wäre es vielleicht sogar doch noch etwas geworden, wenn man den letzten Boss dort noch ein Jahr hätte machen lassen.

KI ist noch einmal ein Thema für sich. Rechenzentren sind ja nur das eine. Ob De in KI-Forschung Weltspitze ist vermag ich nicht zu beurteilen, ich verfolge das auch nicht. Wie will man das eigentlich messen, macht man das immer noch über den Paperausstoß über die Zeit, diese alte Unsinnsmetrik? In China wurden vor Jahren schon allerhand Paper über KI veröffentlicht, und irgendwann hörte das abrupt auf. Was allerdings kein Zeichen dafür war daß KI-Forschung in China aufgehört hat, sondern daß das wahrscheinlich in den militärischen Bereich oder dergleichen gewandert ist und man die Ergebnisse eben für sich behalten wollte. Ich sehe lediglich, daß Firmen wie OpenAI und deren chinesische Konkurrenten eben nicht aus De kommen.


Aber wie gesagt...wir werden sehen, wie KI die Softwareentwicklung verändern wird. Ich rechne zwar mit vielen Schrottprodukten, aber manches wird bestimmt auch gut. Die Sprachmodelle der einschlägigen Suchmaschinen finde ich zum Einarbeiten in Dinge oder Dokumentation finden und Codebeispiele generierenlassen (als Anschauungsmaterial) ziemlich gut.
 

KonradN

Super-Moderator
Mitarbeiter
Nur noch ein paar einzelne Punkte: Dunning Kruger habe ich nicht erwähnt und auch nicht dran gedacht. Wäre hier auch nicht passend. Es geht lediglich darum, dass jemand, der in einem Bereich professionell tätig ist, in diesem deutlich mehr mitbekommt als jemand, der eben nicht wirklich professionell in diesem Bereich tätig ist.

Amerikanische Produkte, die es nach Europa schaffen, sind in der Regel ok... Ja, ist ja auch klar, sonst hätten sie es vermutlich auch nicht auf den Europäischen Markt geschafft ... Wer also in den USA tätig ist, der wird vermutlich auch deutlich mehr aufzählen, was nicht funktioniert ... (Hatte gestern und vorgestern erst ein Gespräch mit Auswanderern, die jetzt aus den USA nach Deutschland ziehen ... fand ich recht interessant. Man hat hier schlicht oft ein falsches Bild durch Filme und so.)

Und unabhängig, ob und wie KI zukünftig eingesetzt werden könnte - ich habe bei der Ausführung nicht explizit pro KI gesprochen sondern lediglich aufgezeigt, wieso ein Problem in der Entwicklung bei vernünftigen Prozessen eben an irgend einer Stelle aufschlagen sollte. Und meist ein generelles Problem an vielen Stellen vorliegt.
Oder als ein Beispiel: Natürlich kann man durch QA und ähnliches sicher stellen, dass keine Auto Karosserieteile geliefert werden, die hergestellt wurden von einer Horde Affen, die belohnt wurden für das hämmern auf Metal-Rohlinge mit irgendwelchen Werkzeugen. Aber nur weil sichergestellt wird, dass kein Teil versendet wird, das nicht super ist, ist das keine brauchbare Methode zur Herstellung solcher Teiler. (Wobei ich KI nicht mit einer Horde Affen gleichstellen will - ich will nur das generelle Problem aufzeigen. Denn das Argument war doch etwas nach dem Motto; Dann werden nur schlechte Teile geliefert ... und nein, das ist falsch.)
ABER: Man sieht schon jetzt einige Bereiche, bei denen KI sehr gut unterstützen kann. Und ich sehe keinen Grund, wieso das zukünftig entfallen soll ... ich habe z.B. auch lokale KIs. Eine Nvidia GPU mit 16GB VRAM und einige Dinge laufen da recht gut und ich habe da mit diversen Dingen gespielt... Ja, es gibt gewisse Probleme aber: Wenn etwas geht und günstig ist: Dann gibt es kein Grund das sein zu lassen... Aber die Zukunft ist halt offen ... Ich schaue gerne auf das Thema Bilderkennung. Da kommen dann Neuronale Netze ins Spiel ... so vor 30 Jahren sah es fast so aus, als würden diese fast obsolet werden. So von 95-2005 haben NN eigentlich nur noch in Nischenbereichen existiert ... erst mit dem Aufkommen von GPUs hat sich sehr viel verändert. Und das ist aus meiner Sicht auch bei der Entwicklung der LLMs jetzt wichtig: Jetzt hat man entsprechende Systeme, die dann die Leistungsfähigkeit haben (Speichergröße, Transfergeschwindigkeit und GPU Fähigkeiten) Ich hatte neulich ein Video auf YT gesehen (Ich meine von Jeff Geerling) der eine aktuelle Hardware getestet hatte (Unsicher, was es war - ich meine 4 Mac Studios mit TB5 Verlinkung und dem neuen direkten Memory Access darüber) und dann etwas gesagt hat, dass er vor x Jahren (10 oder so) mit der Performance bei den Top 100 der Supercomputer gelandet wäre ... Also die Entwicklung ist wahnsinn - kauf 4 Systeme für 10-17 K€ pro System und Du hast eine Leistung, die lange undenkbar war ... Und da läuft dann auch super ein riesen LLM :) )

Worauf ich also hinaus will: Die KIs sind schon jetzt eine Erleichterung ... und die Leistungsfähigkeiten werden immer verrückter (ich habe eine 350€ GraKa ... richt gross und verrückt is man mit 50K€ problemlos dabei, dass es hilfreich ist). Daher glaube ich nicht, dass die KIs verschwinden werden. Ggf. sind grosse KIs zu teuer, aber das hängt von der Preisentwicklung ab: Was kostet die benötigte Leistung? Derzeit wird ja viel subventioniert von grossen Firmen.
 

mihe7

Top Contributor
Na...ich denke, das ist höchstens ein Faktor von mehreren.
Natürlich ist das nur ein Faktor - aber für meine Begriffe der gewichtigste. Ob ich als Firma entscheiden muss, ob ich $50 Mio in den USA oder 200 Mio € in D für den Strom ausgebe, dann weiß ich, wo ich nicht hingehe 😁

Dann gibt es Unterschiede in der Mentalität: Amerikaner sind ja eher Macher mit Mut zum Risiko, wir dagegen sind diejenigen, die alles fünfmal durchdenken, bevor man überhaupt überlegt, dass man ggf. riskiert, dann doch einen Euro in die Hand zu nehmen.

Und Cariad z.B. war wohl weitgehend ein Managementproblem, wenn man dem Kerl da glaubt
LOL, das glaube ich sofort.
 

KonradN

Super-Moderator
Mitarbeiter
Was haltet ihr von diesem Video zu ChatGPT ?
Das Video spricht viele wichtigen Punkte an. Aber teilweise scheint es mir etwas einseitig zu sein. Bei der Entwicklung von OpenAI dürfte vieles einfach eine Reaktion auf Marktentwicklungen sein: Sie versuchen, viel Geld zu bekommen? Ja, wie will man massiv Geld verbrennen, wenn man es nicht bekommt?
Und Geld an Trump geben? Man darf hier nicht vergessen, dass wir hier keinen lieben, zahnlosen Politiker haben sondern wir haben einen Verbrecher, der erpresserisch aktiv ist. Ich möchte nicht wissen, was da an Kommunikation gelaufen ist, so dass Trump letzten Endes Geld bekommen habt?

Dieses "OpenAI ist böse" ist daher etwas einseitig und ganz am Ende das "Ich wechsel zu lokal gehosteten LLMs" wirkt dann etwas kindisch. Aber das ist halt nur etwas, das mir hier etwas aufgestossen ist und das nichts an den dargelegten Themen ändert. Die Themen sind auf jeden Fall wert, betrachtet zu werden.
 

Oneixee5

Top Contributor
Ja, sorry - solche Videos kann man nicht ernst nehmen. Man muss sich nur mal den Account anschauen. Es wird einfach mit Aufregerthemen Aufmerksamkeit/Klicks generiert und Werbung platziert. Also nicht direkt unseriös aber auch kein ernstzunehmender Experte.
 

PizzaRomana

Mitglied
Hm, sieht mir nach verkappter Verschwörungstheorie aus (obwohl er keinen Aluhut hat...). Eigentlich ein gutes Video, um in Schulen zu zeigen, was "Fake News" sind.
 

White_Fox

Top Contributor
Ich habe bisher nur die ersten zweieinhalb Minuten von dem Video gesehen, aber trotzdem: Wie lange ist OpenAI schon eine kommerzielle Firma und keine Non-Profit-Organisation mehr? Mein letzter Stand war, daß OpenAI zwölf Milliarden Dollar Minus macht. Pro Quartal! Das ist nach wie vor eine Non-Profit-Organisation.

Und heute habe ich einen Artikel gelesen (leider kann ich den nicht verlinken) über Claude. Deren Chef vom US-Verteidigungsministerium persönlich heranzitiert wurde, weil sich die Firma bisher geweigert hat ihre Dienste dem Militär nutzbar zu machen und da gerade ziemlichen Ärger deswegen am Hals hat. Übrigens als einzige Firma, alle anderen haben laut des Artikels eine Version ihrer Produkte für das US-Militär entwickelt.

Ok, jetzt bin ich fast bei Minute acht (und weiter komme ich wahrscheinlich nicht).
Ich kann die ideologische Enttäuschung über die Entwicklung in dem Video zwar zumindest einigermaßen nachvollziehen, finde es aber auch irgendwie etwas kindisch. Und wer weiß wie freiwillig diese Entwicklung von Seiten von OpenAI wirklich war. Stichwort National Security Letter. Und wer weiß mit was die Oberste Heeresleitung bei OpenAI alles erpressbar war.


Ich wollte mir vor zwei oder drei Wochen übrigens mal OpenClaw anschauen, die Idee finde ich ja richtig interessant. Gefährlich, aber höchst interessant. Da würde mir ja ernsthaft viel einfallen, was man damit alles tun könnte.
Da ich kein ChatGPT-Abo habe und das auch nicht so gerne von einem Bot unkontrolliert leerlutschen lassen möchte, habe ich auch mal kurz angedacht ein LLM lokal selber zu hosten. Das Projekt ist sofort wieder gestorben, als ich mich über die Hardwareanforderungen erkundigt habe.:eek:
 

PizzaRomana

Mitglied
habe ich auch mal kurz angedacht ein LLM lokal selber zu hosten. Das Projekt ist sofort wieder gestorben, als ich mich über die Hardwareanforderungen erkundigt habe
Oh ja... ein LLM selber zu betreiben, ist für Privatpersonen praktisch preislich unerschwinglich geworden.

Man muss nur mal bedenken, wie sich zum Beispiel die RAM-Preise entwickelt haben (teils +500%)...

Deshalb werden sich die Abhängigkeiten zu "den Großen" Dienstanbietern auch nur schwer ganz vermeiden lassen.

Was mich an dem Video stört, sind die teils widersprüchlichen/paradoxen Aussagen: Die Models seinen dümmer geworden, dadurch ist mein Code auch dümmer geworden... und deshalb programmiere ich jetzt alles um, damit mein Code wieder schlau ist. 😵‍💫 Er hat aber schon verstanden, dass Code nicht immer gleich LLM ist? 🤔 Na ja... back to topic, bitte.
 

KonradN

Super-Moderator
Mitarbeiter
Also ich habe da doch gewisse Probleme, das gerade nachzuvollziehen. Einfache LLMs kann man bereits mit 8GB VRAM sehr gut selbst betreiben. Eine RTX 5060 mit 16GB ist im Preis hochgegangen - jetzt wohl so um 550€ - meine hatte ich vor einigen Monaten für 450€ gekauft.

Also wo ist da das große Problem?

Die Probleme sind erst dann gegeben, wenn man wirklich große LLMs nutzen möchte, die dann 200GB oder mehr gross sind. Aber selbst da ist sogar preislich schon einiges möglich dank Apple.

Bezüglich der Agents sehe ich aber noch nicht wirklich gute freie Software. Da sind dann Produkte wie Github Copilot, Cursor oder JetBrains Junie wohl noch alternativlos. Aber gerade für Spielereien (Also kleine Anwendungen mit AI Anbindung oder mal testweise ein clawbot) mehr wie ausreichend.
 

White_Fox

Top Contributor
Also ich habe da doch gewisse Probleme, das gerade nachzuvollziehen. Einfache LLMs kann man bereits mit 8GB VRAM sehr gut selbst betreiben. Eine RTX 5060 mit 16GB ist im Preis hochgegangen - jetzt wohl so um 550€ - meine hatte ich vor einigen Monaten für 450€ gekauft.
8GB VRAM Minimum war auch meine Information, besser 16GB. Empfohlen wurde mir irgendeine Karte von Nvidia, welche habe ich wieder vergessen, aber billig war sie nicht. Schneller SSD-Speicher ist auch nötig, auch das ist sackig teuer geworden.

Ich habe die Preise ehrlich gesagt auch nicht weiter nachverfolgt, zum Herumspielen und Ausprobieren ist es mir auf jeden Fall zu teuer. Ich könnte OpenClaw theoretisch auch in einer VM auf meinem normalen Rechner betreiben, das könnte gehen, aber das ist mir ehrlich gesagt doch etwas zu heikel, wenn dann hätte ich das schon gerne auf einem echten anderen Rechner auf dem sonst nichts wichtiges läuft. Ich muß dazu sagen daß ich mich mit Docker und all den Techniken drumherum nicht sehr gut auskenne. Wenn das stimmt, was einige schreiben (woran ich wenig Zweifel habe, nach einigen Berichten was Experimente von OpenAI ergeben haben), bin ich da lieber paranoid.

Für kleine LLMs habe ich ein Astra Machina Board von Synaptics hier, da soll das gehen. Bisher kam ich leider noch nicht dazu...
 

KonradN

Super-Moderator
Mitarbeiter
Das geht zwar, aber ist halt ein ziemliches "Gefrickel" und wird im Resultat niemals so gut sein wie beispielsweise OpenAI...
Ok, mit Tobias zu diskutieren macht wenig Sinn, daher verabschieden wir uns erst einmal von diesem Account von ihm.

Aber damit keine falschen Eindrücke entstehen und da ggf. jemand von Spielereien abgehalten wird:

a) Ich sehe in dem Zusammenhang kein "Gefrickel". Gefrickel tritt bei Linux eigentlich nur dann auf, wenn man Dinge macht, die noch "edge" sind. Aber da sollte man als eher unbedarfter User dann auch nicht dran gehen.
Docker, CUDA, ... Da ist nicht mehr mit Frickelei. Ok, nvidia Karte auf Linux sind mehr Schritte als einmal nur Treiber installieren, aber der Prozess mit der Kartenerkennung, der Angabe der Treiberpaketes, das man braucht um das dann zu installieren... das ist relativ einfach wenn man sich z.B,. von einer AI führen lässt (selbst als eher unbedarfter User).

b) Ja, wenn man ganz komplexe Sachen machen will, dann kommt man an entsprechenden LLMs nicht vorbei. Und die hostet man nicht einfach so. Aber hier geht es ja mehr ums Spielen. OpenClaw ist explizit gefallen.... Das geht auch mit einem halbwegs aktuellen PC so man etwas Hauptspeicher hat (wobei da 8GB evtl. schon reichen können).
  • Die Software kann dann auch direkt in Docker installiert werden, aber das ist kein muss.
  • Lokale AI ist generell einfach zum spielen. Selbst ohne grosse GPU. Dann macht man halt noch mehr Abstriche beim LLM. So ein 1b Model mit q4 hat unter 1GB. Das wird für Spielereien schon gehen.

@White_Fox: Wenn Du damit spielen willst, dann mach das ruhig. Das geht also auch one weitere Hardware, so dein Rechner nicht hoffnungslos veraltet ist.
 

Ähnliche Java Themen


Oben