25 Punkte von hwaan2 2022-11-11 | 47 Kommentare | Auf WhatsApp teilen

Warum meiden Startups Java? Antwort auf eine Frage, die auf HN gepostet wurde

  • Der größte Grund ist, dass das Java-Ökosystem kaputt ist, mit Schrecklichkeiten wie Maven/Gradle.
  • Es wird wegen der Entwickler gemieden, die Spring anhängen.
  • Weil Java mit Hibernate/Spring Boot verwechselt wird.
  • Java steht für langweiliges Enterprise-Coding und ist nicht der neueste heiße Scheiß wie Rust.
  • Wenn man die JVM nutzen muss, ist es besser, andere Sprachen wie Kotlin oder Clojure zu verwenden.
  • 2022 zu sagen, dass dein neues Startup Java verwendet, ist so, als würde man sagen, dass es Cobol verwendet.
  • Früher war es hip und trendy, dann kam Oracle.

47 Kommentare

 
zoonoo 2022-11-18

+1 zum letzten Punkt. Nachdem Oracle es geschluckt hatte, begann der Rückschritt.

 
duqduqduq 2022-11-17

Es ist doch völlig offensichtlich, dass sie weder die Kosten noch den Personalaufwand stemmen können — wovon redest du also ...

 
whjgmlwns 2022-11-15

Maven/Gradle usw. sind furchtbar
Das deutet darauf hin, dass man daran das Niveau des Autors erkennen kann.

 
dndnp4 2022-11-15

Vielen Dank für Ihre Hinweise, ich nehme sie gern mit.

 
narugal 2022-11-15

Der Vorteil, dass Recruiting leicht ist, kann auch den Nachteil haben, dass sich wirklich jeder bewirbt.
Es wird Veteranen geben, die von Kotlin bis Scala alles durchhaben und die JVM gemeistert haben, und es wird auch Leute geben, die in der SI-Branche zwar mehr als zehn Jahre Java-Erfahrung haben, aber keinen Willen zur technischen Weiterentwicklung zeigen, nicht einmal die Stream API kennen und bei der damaligen Syntax stehen geblieben sind. Wenn man stattdessen Go oder Rust einstellt, dürfte der Anteil der Letzteren deutlich sinken. Bei Python bin ich mir allerdings nicht sicher...

 
crusien 2022-11-14

Der Umstieg von Java auf Kotlin ist nicht schwierig, und auch der Wechsel von JSP zu Thymeleaf ist nicht schwer. Es ist lediglich etwas umständlich, weil es weniger Referenzen gibt. Womit auch immer Sie arbeiten: Befassen Sie sich zuerst mit Objekten und Vererbung sowie mit strukturellem Design. Sich von Bibliotheken oder Nebentools abhängig zu machen, beweist letztlich nur, dass man noch Anfänger ist.

 
bbulbum 2022-11-14

Persönlich habe ich den Eindruck, dass es bei Java aufgrund seiner langen Geschichte ein starkes Informationsungleichgewicht gibt.
Da es nun einmal eine Sprache war, die eine ganze Ära geprägt hat, gibt es aus dieser Zeit noch sehr viele Informationsartefakte, und selbst nach unzähligen Versionsupdates scheint vieles davon noch immer weiterverbreitet zu werden, als wäre es weiterhin gültig.
Ich erinnere mich, dass es sehr schwierig war, neue Ansätze zu finden, die zu den neueren Versionen passen.
Das ist zwar nicht nur bei anderen Sprachen so, aber wenn man Sprachen mit starker Fragmentierung nennen müsste, wären Python und Java für mich die naheliegendsten Beispiele.
Python wird jedoch wegen seiner hohen Entwicklungsgeschwindigkeit geschätzt, weshalb es in Startups wohl nach wie vor gelegentlich eingesetzt wird.
Das scheint mir aber ein anderer Grund zu sein als der, weshalb Startups Java meiden.

[Warum Startups Java meiden]

  • weil es keine angesagte Sprache ist
  • weil Startups meist Menschen einstellen wollen, die glauben, neue Trends voranzutreiben, und deshalb offenbar lieber angesagte Sprachen verwenden möchten
    [Warum Startups sich trotzdem für Java entscheiden sollten]
  • Es ist leicht, dafür Leute zu finden.
    [Warum man das dennoch überdenken sollte]
  • Nur weil es leicht ist, Leute zu finden, heißt das nicht, dass es auch leicht ist, gute Leute einzustellen.
 
handdol 2022-11-14

Unabhängig davon, ob Java gut ist oder nicht, habe ich persönlich den Eindruck, dass Java bei ausländischen Startups nicht zum Mainstream gehört.

Ich habe technische Analysen im Rahmen von Übernahmen ausländischer Unternehmen durchgeführt, und kein einziges davon setzte auf Java. Interessanterweise gab es überraschend viele mit .NET.

Da ich schon vor 2–3 Jahren eine ähnliche Erfahrung gemacht habe, kann ich dem Inhalt gut zustimmen.

 
cbk1411 2022-11-13

Maven ist mir auch zu geschwätzig, deshalb mag ich es ebenfalls nicht,
aber Gradle ist wohl auch furchtbar gewesen.
Ich finde npm allerdings noch beängstigender;

Und COBOL ist meiner Meinung nach schon etwas drüber,
liegt das daran, dass es vor allem von Entwicklern in Großunternehmen genutzt wird? haha

Wie auch immer, ich finde es jedes Mal unterhaltsam, wenn Java blindlings niedergemacht wird. Wenn man sich die Beispiele anschaut, sieht man die jeweils düsteren Erfahrungen der Leute.

Java war einfach zu träge.
Es verdient die Kritik.
In letzter Zeit scheint man sich zwar etwas mehr anzustrengen, aber ich finde, es sollte noch mehr Kritik einstecken.

 
stardust 2022-11-13

Mit dem Wandel der Generationen wird ohnehin wieder eine andere Sprache zum Mainstream werden. Bei Startups ist der Entscheidungsprozess zur Einführung neuer Strömungen einfacher, und erst wenn die von ihnen verwendete Sprache zum Mainstream wird, wachsen sie über die Startup-Phase hinaus. Bei großen Unternehmen hingegen sind die Entscheidungswege komplex und von Interessenlagen geprägt, daher führen sie Neues erst ein, wenn die Stabilität gesichert ist – liegt der Unterschied nicht darin?

COBOL, das 1959 erschien, verschwand im Finanzsektor erst im 21. Jahrhundert. Übrigens startete auch Java, das viele von euch nicht besonders gut finden, als Open Source und war zeitweise die beliebteste Sprache im SOHO-Bereich. Und dass Java stärker das Image einer Sprache für Großunternehmen bekam, liegt daran, dass Oracle es übernahm und in Korea das staatlich initiierte E-Government-Framework aufkam.

 
pppqqq 2022-11-13

Ich frage mich, woher der Mythos kommt, dass „Java nur in Korea beliebt ist“. Liegt das daran, dass es unter den großen koreanischen IT-Konzernen im Grunde nur zwei von „Nekara“ gibt und beide Java verwenden?

Natürlich ist der Engineering-Pool in den USA deutlich breiter, daher ist es dort in mancher Hinsicht einfacher, Teams mit anderen Sprachen aufzubauen. Aber auch bei allen US-IT-Unternehmen, einschließlich FAANG, ist Java ein äußerst gängiger Tech-Stack.

Da es sich um so große Unternehmen handelt, unterscheiden sich die Teams stark voneinander, aber bei Amazon ist das interne Standard-Framework wohl sogar Java (ich habe gehört, dass in Version 2 Spring verwendet wurde und inzwischen auf Guice umgestellt wurde). Bei Google ist es meines Wissens ungefähr halb C++ und halb Java, mit einigen Teams, die Python verwenden. Und auch bei Apple laufen meines Wissens die meisten Webservices auf Java.

Von Netflix ganz zu schweigen: Hystrix, Zuul und Eureka wurden alle von Netflix entwickelt, daher ist es vielleicht das Unternehmen, das Spring weltweit am besten einsetzt.

Bei Facebook ist es meines Wissens zwar größtenteils C++ oder Hack, aber es gibt wohl auch einige Teams, die Java verwenden.

Auch Twitter hat meines Wissens anfangs Ruby verwendet und ist dann zu Scala, also einer JVM-Sprache, gewechselt. Und auch darüber hinaus dürfte es bei Großunternehmen wie Atlassian, VMware, Red Hat usw. eher schwieriger sein, welche zu finden, die kein Java einsetzen.

Da Kafka, Hadoop usw. alle auf der JVM laufen, gibt es wahrscheinlich kaum ein Unternehmen, das Java wirklich überhaupt nicht braucht, selbst wenn es Java nicht direkt für seine Services verwendet.

 
derse 2022-11-13

Niemand bestreitet, dass Java früher viel verwendet wurde. Das scheint aber ziemlich am Kern dieses Artikels vorbeizugehen.

 
pppqqq 2022-11-13

Dein Beitrag selbst spricht doch unabhängig vom Land über typische Großunternehmen, aber in den Kommentaren fällt mir auf, dass besonders oft erwähnt wird: „In Korea ist das so“ oder „Das gilt nur für Korea“.

 
kunggom 2022-11-13

Nicht nur in Korea wird viel Java verwendet, aber es stimmt wohl, dass Java dort besonders stark verbreitet ist. Zum Beispiel hieß es in den Ergebnissen der JetBrains-Umfrage vom letzten Jahr: „Java ist die am häufigsten verwendete Sprache in Korea, China und Deutschland. Der Java-Anteil beträgt in Korea 53 %, in China 47 % und in Deutschland 33 %.“. Auf dieses Phänomen haben vermutlich auch die Existenz des E-Government-Frameworks, das viele andere in den Kommentaren erwähnt haben, sowie die Curricula staatlich geförderter Coding-Ausbildungen einen Einfluss gehabt.

 
functor 2022-11-12

Wenn ich mir einige der Kommentare anschaue, muss ich an den früheren Beitrag zu C++ denken. In der koreanischen Entwickler-Community haben C++ und Java offenbar fast schon den Status von Heiligtümern erreicht, haha — sobald man sie kritisiert, scheint bei unzähligen Leuten sofort der Trigger gedrückt zu werden..

 
tequila 2022-11-14

Es gibt natürlich auch Gründe, warum Java den heimischen Markt dominiert hat, aber C++ mit Java in einen Topf zu werfen, ist ein bisschen ... haha

 
cbk1411 2022-11-13

"Auslöser-Knopf" scheint mir kein besonders guter Ausdruck zu sein, weil er die andere Person negativ darstellt.

Ich erlaube mir, das anzusprechen, in der Hoffnung, dass wir eine Community werden, die einander etwas mehr respektiert. Es tut mir leid.

 
freehn 2022-11-15

Stimme zu. Es scheint, als müsse man sich dafür nicht entschuldigen.

 
passerby 2022-11-12

Ich denke weniger, dass Startups Java meiden, sondern eher, dass die Vorteile anderer Sprachen/Frameworks größer sind. Ich stimme aber zu, dass das Java/Spring-Ökosystem schlechter ist, als man denkt. Ehrlich gesagt bin ich zwar Spring-Entwickler, mag Spring aber nicht besonders. Es gibt nur wenige Entwickler, die Webanwendungen außerhalb von Java entwickelt haben (de facto ein Synonym für Spring), deshalb wirkt es vielleicht noch extremer.

Spring

  • Obwohl es sich um ein ausgereiftes Projekt handelt, ist die Dokumentation nicht ordentlich gepflegt und stark fragmentiert. Wenn man googelt, wirkt Baeldung fast wie die offizielle Dokumentation.
  • XML ist am schlimmsten, aber auch die auf Annotationen basierenden Funktionen sind schrecklich. Sie sehen zwar ähnlich aus, unterscheiden sich aber grundlegend von etwas wie Python-Decorators.
  • Eine in Korea verbreitete Entwicklungskultur, in der man ohne großes Nachdenken träge das erweiterte Spring-Ökosystem übernimmt. Projekte werden unnötig aufgebläht und die Versionsabhängigkeiten sind stark. Das Vertrauen in Hibernate (data-jpa) hat fast religiöse Züge.

Java

  • Da Java selbst alt geworden ist, schleppt es Funktionen mit, deren Design schon früh fehlerhaft war, weil man sie unter Wahrung der Abwärtskompatibilität weitertragen musste. Dadurch ist es schwierig, neue Funktionen einzuführen.
  • Selbst wenn sie eingeführt werden, geschieht das oft auf indirekte oder eingeschränkte Weise. Typische Beispiele sind das Modulsystem oder asynchrone Programmierung (im Vergleich zu C# ... ein trauriges Niveau).

Die Vorteile des JVM-Ökosystems sind natürlich klar vorhanden, deshalb ist Kotlin bei neuen Projekten fast Pflicht. Wenn es keinen eindeutigen Grund gibt, Spring mitzunehmen, halte ich es für sinnvoll, mit einem leichtgewichtigen Framework wie Ktor zu starten. Auf die genannten Nachteile reagieren viele damit, dass das Design falsch gewesen sei oder man die Spring-Philosophie nicht richtig verstanden habe, aber OOP kann man auch in anderen Sprachen machen ...

 
wooseop 2022-11-14

Obwohl die Kommentarspalte ziemlich chaotisch und aggressiv ist, ist das hier ein Kommentar, dem ich zustimmen kann.

 
kunggom 2022-11-12

Ich stimme zu, dass wir neue Sprachen und Frameworks etwas offensiver einführen sollten. Aber ehrlich gesagt ist es hierzulande nach wie vor Realität, dass selbst bei gerade erst neu gestarteten Projekten unzählige Leute ohne irgendeinen vernünftigen Grund aus reiner Gewohnheit Java 8 statt der aktuellen LTS-Version Java 17 wählen. Wenn man auf Plattformen wie Tistory-Blogs schaut, findet man wirklich leicht Beiträge wie „So lädt man Java 1.8 herunter“, die mit einem Datum aus diesem Jahr 2022 veröffentlicht wurden. Wenn man so etwas sieht, hat man das Gefühl, dass die starke Abneigung vieler anderer hier gegen Java vielleicht gar nicht unbegründet ist.

Trotzdem scheint dieses Problem nicht allein auf die Sprache Java selbst zurückzugehen. Ich denke eher, dass eine gegenüber Veränderungen feindselige Kultur, die besonders hierzulande stark ausgeprägt zu sein scheint, sowie die Flut an Copy-and-paste-Code ohne jede Weiterentwicklung das größere Problem sind. Tatsächlich arbeite ich derzeit an der Wartung mehrerer ähnlicher Programme, die in C# entwickelt wurden. Ich halte die Sprache selbst zwar für besser als Java, aber egal wie gut eine Sprache ist: Gegen den Horror von Code, bei dem der Vorgänger nur schlampig alten Projektcode per Copy-and-paste wiederverwendet hat, gibt es kein Mittel. Noch schlimmer ist es, weil wir aufgrund von Veränderungen im externen Umfeld nun gezwungen sind, einen großen Teil dieses sich ständig wiederholenden Codes bis zum Jahresende unbedingt auszutauschen.

 
d3fau1t 2022-11-12

Das ist wohl ein Trigger-Thema, allerdings nur in Korea.
Es dürfte schwer sein, das seit Langem viel genutzte Java aufzugeben, und weil weiterhin Leute gebraucht werden, produzieren staatlich geförderte Akademien mit demselben Curriculum immer weiter Spring-Nachschub.

Ich habe daher den Eindruck, dass dieser Kreislauf nur schwer zu durchbrechen ist.
Versuche, Kotlin mit Spring zu nutzen, sehe ich positiv.

 
ruinnel 2022-11-12

Wenn man Docker benutzt ...
werden auch die Docker-Images unnötig groß.
Auch der Start dauert lange und so weiter ...

Heutzutage nutzen ohnehin alle Docker, deshalb scheint es wohl unbeliebter geworden zu sein..

 
bbgom 2022-11-12

Das Java-Ökosystem ist noch nie wirklich kaputtgegangen.
Es gibt unzählige Open-Source-Projekte, und mit Versionsupdates werden aktuelle Entwicklungstrends meiner Meinung nach schneller als in anderen Sprachen aufgegriffen.

Gradle/Maven sind Build-Tools, aber nur eine Wahl und keine Pflicht.
Es gibt viele andere Build-Tools, und man kann einfach das verwenden, was man möchte.
Warum verwendet man in Node npm? Weil es bequem ist. Gradle/Maven werden ebenfalls so häufig genutzt, weil sie praktisch sind.

Obwohl es auch in Java viele Frameworks gibt, wird Spring genutzt, weil es flexible Erweiterbarkeit, bequemes Projektmanagement und stabile Performance bietet; deshalb ist es bis heute beliebt geblieben.

Wenn man sich ansieht, warum Startups mit wachsender Unternehmensgröße auf Java umsteigen, dann entscheiden sie sich meist wegen des stabilen Projektmanagements dafür.
Solange in kleinem Rahmen mit Python oder Node entwickelt wird, gibt es keine Probleme. Wenn das Geschäft aber erfolgreich ist und 100 oder 1000 Entwickler am selben Projekt arbeiten, lassen sich die Vorteile von Python oder Node nicht mehr gut ausspielen, und stattdessen treten eher die Nachteile stärker hervor.
Ich denke, man wechselt zu Java, weil man in großen Projekten Qualität managen und zugleich Stabilität sicherstellen kann.
Wenn es eine bessere Alternative als Java gäbe, hätte man sie wahrscheinlich schneller als alles andere eingesetzt, oder nicht?

Zum Schluss noch: Mit Java entwickelte Services haben hohe Einstiegshürden und verursachen höhere Infrastrukturkosten. Deshalb sieht man gerade in der frühen Startup-Phase oft, dass eher Sprachen verwendet werden, die sich ohne hohe Anfangskosten und viel Zeit für das Setup einfach und schnell einsetzen lassen.

 
kasiel 2022-11-12

Zunächst einmal, auf den heimischen Markt beschränkt, gibt es einfach zu viele Java-Entwickler. Genauer gesagt gibt es eigentlich keine Java-Entwickler, sondern nur Spring-Entwickler. Da das E-Government-Framework auf Spring basiert, lernen alle Entwickler nach demselben Schema nur Spring. Weil es von solchen Leuten mit Berufserfahrung mehr als genug gibt, ist das so. Es gibt auch keine Vielfalt mehr, und das Ökosystem der Sprache ist bereits kaputt. Viele nennen sich Java-Entwickler, können aber ohne Spring nicht einmal ein einfaches Board-System bauen.

 
angryshot 2022-11-12

Der Punkt dieser Frage ist das „Startup“; wichtiger als „Stabilität/Skalierbarkeit“ ist die „Entwicklungsgeschwindigkeit“.
Für Startups ist Zeit Geld!
(Wenn später Zeit und Geld da sind, dann Java?)

Und außerdem ist die Popularität von Java vermutlich keine Besonderheit nur in Korea. Es ist auch jetzt noch unter den Top 3 der beliebtesten Programmiersprachen.

 
derse 2022-11-12

Aus diesem Grund scheint die Geschichte, dass man auf Java umsteigt, nur in Korea zu funktionieren.
Da in großen Unternehmen vieles auf Java basiert, ist der größte Grund die Wartung.

 
blackj0221 2022-11-12

Ob Oracle nun auftaucht oder nicht, ist für die meisten Unternehmen an der Front in Wahrheit kaum relevant ... Selbst bei Naver, Kakao, Line und Coupang laufen die Hauptsysteme komplett auf Java. Auch bei Spielefirmen wie Nexon ist das interne Backend-Netz in Java geschrieben.

Dass das Java-Ökosystem kaputt sei und Gradle schrecklich sei, kann ich überhaupt nicht nachvollziehen.

 
nick9060 2022-11-11

Ich verstehe die Logik nicht, dass Java eine alte Sprache ist und es viele Java-Entwickler gibt, und dass diese Leute deshalb nichts Neues lernen wollen oder von geringerer Qualität sein sollen.

Bei Nekarakubae ist Java überall die Hauptsprache, und in letzter Zeit wird Kotlin nur nach und nach eingeführt.
Heißt das etwa, dass die wirklichen Könner in Startups sind oder was? haha

 
roxie 2022-11-11

Für "hotshit" scheint es eine passendere Übersetzung zu geben.

 
derse 2022-11-11

„Zu sagen, dass euer neues Startup im Jahr 2022 Java verwendet, ist so, als würde man sagen, dass es Cobol verwendet.“

In Korea kommt man gegen das Argument nicht an, dass sich Java-Entwickler leicht finden lassen. Über die Qualität der Entwickler, die man auf diese Weise einstellt, lässt sich allerdings streiten.

 
love7peace 2022-11-11

Ist das Java-Ökosystem kaputt? Warum soll Spring nicht geeignet sein? Die Begründung ist viel zu dürftig.

 
chicol 2022-11-11

Wenn die JVM eine Kryptowährung wäre, dann wäre Java Bitcoin.

 
roxie 2022-11-11

Hahahahahahahahahahahaha

 
ifmkl 2022-11-11

Früher gab es das Meme „Java = zwei Leute und ein Toyota“ ja nicht ohne Grund … Dazu kommt, dass man im staatlichen Standard-Framework und in öffentlichen SI-Projekten der Behörden fast schon halb erzwungen Java verwenden muss …

 
kallare 2022-11-11

Ich finde es etwas schwer nachvollziehbar, dass die Toolchain rund um Java nicht besonders gut sein soll.
Verglichen mit der Verwaltung in Maven/Gradle war sie geradezu himmlisch, wenn man zuvor unter npm gelitten hatte...

 
tesha001 2022-11-11

Auch ich habe meine Karriere mit Java begonnen und etwa vier Jahre lang in einem Unternehmen ausschließlich als Java-Entwickler gearbeitet. Danach bin ich zwischen verschiedenen Firmen gewechselt und habe dabei mit unterschiedlichen Sprachen wie Python, Ruby und Go gearbeitet; in letzter Zeit setze ich meine Karriere als Solidity-Entwickler fort.

In letzter Zeit sieht man, dass viele Startups, nachdem sie bis zu einem gewissen Grad gewachsen sind und in ruhigeres Fahrwasser kommen, ihre Infrastruktur größtenteils auf Java umstellen. Als ich darüber nachgedacht habe, warum sie das tun, kam es mir so vor, als läge es einfach an der Trägheit.

Viele Entwickler auf Lead-Niveau sind mit Java vertraut und zögern, andere Sprachen zu lernen. Deshalb verwenden sie einfach das Java, mit dem sie vertraut sind, und wenn solche Leute in Startups zusammenkommen, scheint die gesamte Infrastruktur auf einer Java-Basis umgestellt zu werden.

Persönlich kann ich nicht nachvollziehen, die Infrastruktur allein aus Gründen der Vertrautheit komplett umzubauen. Aber Menschen scheuen nun einmal oft davor zurück, etwas Neues zu lernen, und da das Java-Ökosystem in Südkorea so außerordentlich gefestigt ist, dürfte es sehr schwer sein, das zu ändern.

 
hasugogro 2022-11-11

Java und Spring eignen sich gut dafür, große Services stabil bereitzustellen, aber die Services eines Startups sind anfangs klein, sodass die Vorteile von Java nur schwer zum Tragen kommen.

In der Anfangsphase eines Startups muss ein kleines Team oft sowohl Frontend als auch Backend übernehmen; dafür ist es praktischer, alles auf einmal mit Node.js oder JS umzusetzen als mit Java.

Letztlich wechseln aber alle zu Java und Spring, sobald sie eine Series-Investmentrunde erhalten haben, oder?

 
kbumsik 2022-11-11

Java und Spring eignen sich gut dafür, große Services stabil bereitzustellen,

beim ersten Punkt bin ich mir manchmal nicht so sicher. Das heißt aber auch nicht, dass andere Sprachen instabil wären. Wenn es ohnehin groß wird, muss man am Ende auch bei Java noch Tuning betreiben.

Wenn man sich das so anschaut, hat man manchmal das Gefühl, dass Leute einfach das, womit sie vertraut sind und bei dem ihnen Performance-Tuning und Troubleshooting leichter fallen, als „stabil“ bezeichnen.

 
kunggom 2022-11-12

Wie ihr alle wisst, bietet Java seit seinen frühen Versionen viele Dinge, die heute als völlig selbstverständlich gelten, etwa automatische Speicherverwaltung. Und in den 1990er Jahren, als Java erstmals aufkam, wurden Sprachen wie C oder C++ noch deutlich häufiger verwendet als heute — Sprachen also, in denen schon kleine Flüchtigkeitsfehler von Entwicklern leicht Speicherlecks verursachen und damit die Zuverlässigkeit einer gesamten Anwendung viel stärker beeinträchtigen konnten. In einer solchen Zeit soll das Erscheinen einer Sprache, die zwar möglicherweise vorübergehende Ausführungsunterbrechungen (Stop-the-world) mit sich brachte, dafür aber die Wahrscheinlichkeit drastisch senkte, dass ein Dienst wegen Speicherproblemen komplett ausfiel, eine ziemliche Sensation gewesen sein. Deshalb hatte Java wohl schon früh das Image, deutlich stabiler als andere Sprachen zu sein, und ich denke, dieses Image hat sich bis heute gehalten.

Außerdem verfügt Java zum jetzigen Zeitpunkt über ein hohes Maß an Vertrauen und über angesammelte Erfahrung, weil es in den verschiedensten Diensten über lange Zeit hinweg breit eingesetzt wurde. Deshalb ist es, wie du gesagt hast, auch einfacher, Performance-Tuning oder Troubleshooting zu betreiben, und es gibt viele Tools und Lösungen, sowohl kommerzielle als auch Open Source. Das Ökosystem eines weit verbreiteten Produkts erleichtert die Problemlösung schon an sich, und dass sich Probleme im Störungsfall leichter beheben lassen und dadurch Downtime reduziert werden kann, ist aus einer auf Stabilität bedachten Perspektive ein großer Vorteil.

Was Kotlin betrifft, das in anderen Kommentaren häufig erwähnt wird, heißt es laut einem anderen Kommentar hier auf GeekNews, dass es überraschenderweise bis heute noch viele Probleme mit Compiler-Bugs oder Kompatibilität gibt. Wenn selbst eine Sprache, die dieselbe JVM nutzt und inzwischen fast seit zehn Jahren öffentlich verfügbar ist, solche Schwierigkeiten hat, dann erscheint es doch völlig rational, bei einer Entscheidung, in der Stabilität das wichtigste Kriterium ist, nach Möglichkeit etwas zu wählen, das über viele Jahre hinweg ausreichend erprobt wurde.

Nur als Hinweis: Aus heutiger Sicht mag das sehr seltsam klingen, aber als Java erstmals erschien, vermittelte es, um eine Formulierung aus dem Buch 『Polyglot Programming』 (2014) von Lim Baekjun zu zitieren, angeblich sogar „ein frisches, junges und geradezu sexy Gefühl“. In diesem Zusammenhang stelle ich eine Übersetzung eines Textes vor, den James Gosling, der Vater von Java, 1997 geschrieben hat.

 
colus001 2022-11-11

Ich denke, dass der Grund, warum man zu Spring greift, in den Besonderheiten des koreanischen Entwicklerarbeitsmarkts liegt.
Im Ausland stellt man innerhalb der JVM, wie in diesem Artikel beschrieben, größtenteils auf Kotlin um.

 
lordang 2022-11-11

Für mich hat sich das Image von Java wegen der Spring-Anhänger auch verschlechtert.
Vor allem in Korea gilt: Wenn jemand sagt, er macht Java, dann ist damit praktisch immer Spring Boot gemeint. Oft ist es dort so nach dem Motto: Java = Spring Boot.

 
freedomzero 2022-11-11

Ich bin Entwickler und kann kein Java, also fühle ich mich gut.

 
imyounjs 2022-11-11

Trotzdem scheint es mir so, als würde man in Startups damit am schnellsten Leute finden können..

 
superwoou 2022-11-11

Aber in Korea ...

 
dbs0829 2022-11-11

Ich habe früher auch einmal Java verwendet, aber inzwischen möchte ich möglichst kein Java mehr nutzen.

 
xguru 2022-11-11

Warum ist das gleichzeitig traurig und zum Lachen..? hahaha
(Früher haben wir im Startup Java verwendet, jetzt aber nicht mehr)