News 30/25 –

formisch // Symfony AI Initiative // PHP Lizenzänderung // eslint-config-prettier Attacke // Context

24.07.2025

Shownotes

Unser programmier.bar Alumni Fabian Hiller hat mal wieder eine Bibliothek veröffentlicht! Und wie von ihm gewohnt, soll es wieder besonders schnell und schlank zur Sache gehen. Dennis hat sich formisch einmal angesehen und berichtet, was die Form-Validation-Library so kann.

Außerdem sprechen wir darüber, was die AI Initiative des Symfony Frameworks für das PHP-Ökosystem bedeutet und welche (Lizenz-)Änderungen bei PHP mit Version 9 scheinbar noch bevorstehen.

Und leider müssen wir auch in dieser Folge wieder über Supply-Chain-Angriffe in der Welt von npm sprechen. Dieses Mal scheint es unter anderem eslint-config-prettier getroffen zu haben – Dave kennt hier alle Details.

Wie weit man inzwischen im Bereich App-Development mit künstlicher Intelligenz arbeiten kann, hat sich Dennis einmal am Beispiel der App Context genauer angeschaut – die wurde nämlich fast ausschließlich von AI gebaut.

/transkript/programmierbar/news-30-25-formisch-symfony-ai-initiative-php-lizenzaenderung-eslint-config-prettier-attacke-context
Jan
Hallo und herzlich willkommen zu 1 neuen Programmierberne News Ausgabe, heute schon in der Kalenderwoche 30 des Jahres 20 25 mit mir in diesem virtuellen Studio, heute der Dave. Hi Dave.
Dave
Jo, was geht?
Jan
Und der Dennis will immer in der mittleren Ecke, tatsächlich wieder in der mittleren Ecke, Dennis. Ich weiß nicht, wie Du das machst.
Dennis
Das macht einen Dennis Becker aus.
Dave
Aber das ist doch irgendwie komisch, mittlere Ecke kannst Du gar nicht geben, weil eine Ecke ist immer eine Ecke. Wie kann jemand in der Mitte sein? Die Diskussion haben wir uns noch mal.
Jan
Ja, aber dass ich diese verschiedenen Fenster vor mir hab und weißt Du, 1 links, 1 rechts hat man immer in meine Mitte.
Dave
Ja, ja, wir sehen, ich war wirklich die schon. Genau diese Frage hab ich mir in der letzten Newsfolge schon gestellt, ne.
Jan
Scheiße, okay. Scheiße, okay. Ja. Wir sprechen Wer bist denn Du? Nicht nur über Ecken und Geometrie, wir sprechen heute über über AI und PHP, über Supply Chain Attacken, weil Dave wieder mit dabei ist. Und wir reden ein bisschen über Ais, die Apps bauen. So. Und damit wir euch nicht so langweilen, haben wir auch noch ein kleines Update mit dabei, weil Dennis sagt ja immer, ne, hab ich gelernt, Dennis, hier auf unserem Offside. Wir müssen immer ganz vorne mit dabei sein.
Dennis
Ich weiß nicht, ob ich derjenige bin, aber ja.
Dave
Nee, ich glaub nicht.
Dennis
Aber schieß los. Kam das
Jan
nicht von der ich dachtestkampf.
Dave
Nee, das kam sogar von mir.
Jan
Oh Gott.
Dave
Oh. Ja. Weil das Beste für die Chartplätze, die wollen wir's nicht. Okay, okay, das wird sein.
Dennis
Okay, schieß los.
Jan
Wir haben, wenn ihr das hört heute, am Donnerstag, weil heute ist ja Donnerstag, Leute, ne, Ja. Gibt's noch ein Meet-up für euch. Und zwar könnt ihr uns heute besuchen kommen in der Saline in Bad Nauheim und etwas über KI und Stimmengenerierung und und wie das selber machen könnte, damit das überhaupt so alles funktioniert, erfahren. Es geht wie immer los so gegen 6 Uhr. Open End, Dave, nein, Dave siehst Du mal nicht am Start, Dennis ist am Start, ne? Dennis mischt Concell.
Dave
Warte, wieso bin ich nicht am Start? Nein, nein,
Dennis
nein, Dave macht ihr
Jan
Wie seid ihr beide am Start?
Dennis
Ja, klar.
Dave
Vor allem große große Ankündigung. Wir hatten ein Cocktail Tasting gemacht, wo wir quasi unsere gesamte Karte noch mal 'n bisschen erweitern wollen und sehr coole Drinks anbieten. Und morgen gehen wir an den Start mit einem neuen Cocktail, richtig?
Dennis
Mit 2.
Dave
Mit 2 sogar? Natürlich. Ah, und wir haben direkt 2 gemacht mit 'nem altbekannten Klassik, okay. Welche welche bieten wir morgen an, Dennis?
Dennis
A Pirinha.
Dave
A Pirinha, sehr gut.
Dennis
Und Windows Windows sauer.
Dave
Oh, sehr gute Fall. Oh. Also an an alle, die gute Cocktails haben wollen und vor allem auch alkoholfreie Cocktails, kommt auf jeden Fall zum Meet-up.
Dennis
Oder auch alkoholfreie Cocktails. Oder auch. Kommt, ganz.
Dave
Aber beide sind gut. Das wollt ich damit sagen. Ja. Ja.
Jan
Wunderbar. Jetzt, wo wir die kritischen Dinge geklärt haben,
Dave
können wir
Jan
uns Frontloaden. Ja, Frontloaden, weil da können wir uns den langweiligen Content kümmern.
Dennis
Ja. Da fang ich an. Langweilig.
Dave
Ja. Boah,
Jan
harter Disc gegen Fabian Hiller, aber Dennis schieß los.
Dennis
Nein, Liebe geht raus, die hab ich ihm heute geschrieben. Fabian Hiller, der ja auch mal bei der programmier.bar war und die die Webseite umgesetzt hat und alles Mögliche und mittlerweile sehr fleißig in den USA unterwegs ist, hat eine neue ein neues eine neue rausgebracht. Und zwar geht es da, ich weiß nicht, ob ich, wie wie gut ich den Namen die Dampfsendung finde, aber es heißt. Ich würde es mal ein bisschen Englisch aussprechen.
Dave
Ich find's perfekt. Ist
Dennis
perfekt. Und zwar geht es einfach eine Stopp,
Jan
darf ich ganz kurz unterbrechen? Fabi Link. Fabi Link. Wenn Du das hörst, schreib uns oder erklär mir bitte diesen Namen, weil ich hab ihn auch überhaupt nicht verstanden, wie man da drauf gekommen ist und was mir das sagen soll. Ja.
Dennis
Vielleicht auch nicht so wichtig. Du brauchst einfach nur 'n Namen und da ist Form drin und irgendwas, was hinten dran ist.
Dave
Ja, das ist wirklich, also
Dennis
Ja, passt schon. Ist gut. Auf jeden Fall, es geht darum, dass man eine für Formulare hat für Javacript Frameworks. So. Ah, ich glaub, aktuell ist und unterstützt. Und er hatte ja schon mal eine oder eine relativ bekannte, über die wir auch gesprochen haben, mit Valibot, die praktisch so Validierung macht für alles Mögliche. Und da das ist natürlich, arbeitet wunderbar zusammen, aber tatsächlich ist es so, also wenn man ohne viel außen rum mit 'ner sehr kleinen Wandels heiß, supereasy Formulare bauen möchte, kann man sich tatsächlich mal formisch angucken, gibt 'n Playground, wo man das 'n bisschen austesten kann Und ja, guckt mal rein.
Dave
Ist das ist das nicht wegen wegen des Namens? Ist das nicht wegen, also wirklich wegen und weil das schemabasiert ist? Also und also das ist doch eigentlich genau der Wortwitz, oder? Auf die wichtigen Sachen würd ich jetzt kurz eingehen.
Dennis
Wegen dem Ess Ich dachte, das heißt
Jan
am Ende, weil es sone deutsch, typisch deutsche Endung ist und weil es
Dave
Ja, aber weil von von Schema, Schema. Also wir würden das einfach
Dennis
Aber dann wär's ja nur 'n wohlkommendes I jetzt aber mehr her.
Dave
Ja, Du musst irgendwie das Ja. Weil das ist, geil.
Dennis
Nenn doch mal
Dave
Genau. Bitte.
Dennis
Aber nenn das doch mal Gut. Next.
Jan
Kommen wir von kleinen, schlanken Libraries zu großen, mächtigen Frameworks. Alter. Was? Was?
Dave
Nee, das ist krass. Du warst ja letzte News Folge nicht dabei, Jan. Und da musste Dennis die Übergänge machen.
Dennis
Die haben wir Und wahnsinnig. Und Ich
Dave
muss sagen, es ist es ist sehr schön, dass Du wieder da bist, Jan.
Jan
Also ich muss auch sagen, die Hälfte werden immer flüssiger dadurch, dass wir sie mittendrin unterbrechen.
Dave
Ja, aber man muss sich auch 'n bisschen highlighten so. Man muss auch das wertschätzen, was man hat. Und es ist sehr cool, dass Du wieder dabei
Jan
bist. Wir wollen einmal sprechen über das PHP Framework Symphony. Du. Und zwar hat Symphony eine AI Initiative
Dave
angekündigt.
Jan
Und das ist son bisschen son bisschen Copy and paste, aber auch son bisschen was Neues. Und zwar haben sie da verschiedene und Komponenten zusammengesammelt aus dem bereits bestehenden PHP LLM Projekt, haben das quasi sich so einverleibt. Wie und warum können wir vielleicht auch drüber sprechen, das ist ja eigentlich egal.
Dennis
Ja, ein Satz noch mal ganz kurz, Symphony ist
Jan
Symphony ist 'n PHP Web Framework. Web Framework, okay. Ja. Also PHP ist ja per se eigentlich eher so im Web unterwegs, ne. Kann man auch für andere kleinere Tools benutzen, aber eigentlich Web. Ja. Genau und sie haben da son paar Komponenten gebaut für eigentlich erst mal so generische Abstraktionen, dass Du halt irgendwie mit all den gängigen Plattformen da draußen reden kannst, ne. OpenAI, Intropic, Azure, Google, Myster und was es so alles gibt, Olama, bla bla bla. Dann haben sie 'n Library gebaut, so Gentic Workflows irgendwie abbilden zu können, wo Du das halt alles sehr sauber mit soner Domain zusammenkonfigurieren kannst. Sie haben eine Store Komponente gebaut, die dir son bisschen dabei hilft, alles, was so angeht, Vektordatenbankansprachen, Vektorisierung überhaupt vielleicht erst mal zu machen und haben ein MCP SDK rausgebracht. Das Coole bei Symphhine ist ja eigentlich immer, dass es so diese Komponenten gibt, die Du im Prinzip in jedem PHP Projekt benutzen kannst. Das ist ja auch der Grund, warum zum Beispiel so Sachen wie Laravelle irgendwie viele Symphony Komponenten benutzen, weil's halt alles sehr modular und recycelbar ist sozusagen. Und dann setzen sie da noch mal sone dünne Schicht drauf in 'nem separaten Paket, was es bei Simpony Bundle heißt. Und das übernimmt im Prinzip das Dependency Management, holt sich diese ganzen Komponenten für dich rein und konfiguriert sie aber auch gleich so vor, dass Du sie im Web Framework quasi direkt einsetzen kannst. Heißt, Du kannst jetzt quasi das AI Bundle benutzen und dann kriegst Du alles in deinem Framework schon vorkonfiguriert. Wenn Du aber nicht Symphony benutzt und trotzdem nur die einzelnen Komponenten benutzen willst, dann kannst Du das super, super gerne auch machen. So. Und sie haben ja schon 'n paar coole Beispiele gezeigt, wie man zum Beispiel mit 'ner MongoDB irgendwie eine Vektorsuche bauen kann und sich son bisschen eine Lösung bauen kann, wie sie dann aus PHP heraus die Vektorisierung machen können, eben durch dieses ganze, durch diese Plattformkomponente kannst Du im Prinzip jedes Modell zur Vektorisierung heranziehen, dass Du möchtest, eine Ergebnisse zurück in deine eigene Datenbank schreiben und darauf dann wieder eine eine Volltextsuche zum Beispiel laufen lassen oder halt eben eine ganz normale Rack Suche. Das war alles, also wenn ich mir die Beispiele hier so angucke, in so, weiß ich nicht, 50 Zeilen Code irgendwie gemacht, was schon irgendwie ganz, ganz nice ist. Mhm. Sie haben son von diesem Agent Workflowing haben Sie auch son paar Beispiele gezeigt. Sie haben auch Toolcalling Abstraktionen gebaut, ja. Also das das vielleicht auch son Punkt, über den man streiten kann. Der Unterschied zwischen so und LLM mit ist ja son bisschen fließend, sag ich vielleicht mal, ja. Aber Sie haben auf alle Fälle schon son paar Standardtools definiert, damit man sich das angucken kann, wie das funktioniert. Es gibt sone Abstraktion für Internet suchen mit Brave, Wikipedia suchen, irgendwie Youtube Videos automatisch transkribieren zu lassen und so was auch. Alles mit sehr, sehr schlankem Code und so kann man nun halt seinen eigenen Agenten nehmen und da auch noch eigene mehr Tools, was auch immer alles alles dran koppeln. Fand ich fand ich ganz beeindruckend, aber ich bin halt auch irgendwie, also ich mein, das ist ja auch so die Ecke, wo ich selber herkomme und ich mag einfach so die Art und Weise, wie Symphony mit DSL umgeht und man dann wirklich sehr verbus, aber trotzdem noch schlank irgendwie seinen Code zusammenschreiben kann. Ich find guten Quelltext immer dann gut, wenn man ihn im Prinzip lesen kann, wie als wär's fast so natürliche Sprache, ja? Weil's irgendwie sprechende Klassennamen gibt, sprechende Methodennamen und nicht alles nur so superstark abgekürzt und verkürzt oder so, weil am Ende wissen wir alle, ne, man liest Code eigentlich viel häufiger, als dass man ihn schreibt. Und wenn der Code dir dann dabei hilft, irgendwie schnell wieder Verständnis aufzubauen, find ich das immer immer ganz nice.
Dave
Mhm.
Jan
Ja. Der einzige kleine Kaviar dadran ist, dass eigentlich, wenn man Symphony kennt, weiß man, dass sie son sehr großes Backwords Compatability Promis haben. Das heißt, so Komponenten, die sie jetzt veröffentlichen, garantieren sie dir eigentlich, dass sie dir auch die nächsten Jahre, Jahrzehnte und Versionen von Symphony so mit supportet werden. Das machen sie jetzt grade noch nicht, weil sie halt sagen, das ist alles halt noch son bisschen Work in Progress und sehr frühe Versionen. Also kann es sein, dass da noch 'n bisschen was ändert natürlich. Aber das, wie gesagt, baut eigentlich alles auf dem PHP LLM Projekt auf und das gibt es schon seit über 'nem Jahr und ist auch von 'nem, ja, ich sag mal, ehemaligen Symphony Core Entwickler mitgebaut. Also die wussten auch damals schon, was sie so tun Und der Übergang ist, glaub ich, relativ geschmeidig. So. Das vielleicht mal dazu. Fragen, Anregungen, Kritik, Dave guckt ins Leere.
Dave
Ich fand das sehr cool, was Du erzählt hast.
Jan
Bist ja auch 'n alter PHP Hase, ne.
Dave
Ich liebe PHP. Nichts besser als das. Aber Ja, ich hab ich
Dennis
hab grad son bisschen darüber nachgedacht, ob's das brauch, also ob's das brauchen, wahrscheinlich schon. Also ich, ne, es ist ja irgendwie wahrscheinlich ein ein ähnliche eine ähnliche Bereitstellung von Infrastruktur, die's halt einfach jetzt schon in anderen Gebieten gibt. Wahrscheinlich angefangen von denen, die näher dran sind irgendwie mit Python, keine Ahnung was, ne, wo's dann SDKs und den Zugang zu allem gibt. Und aber wenn Du das halt in deinem in deiner Umgebung und wenn die PHP es haben möchtest und auch alle die Funktionen in den Applikationen, in den PHP Applikationen haben willst, dann hört sich das irgendwie nach 'nem sinnvollen Schritt an, ja.
Jan
Ich glaub, es ist so sehr PHP typisch, ne. PHP ist jetzt so nicht so das Ökosystem, was irgendwie jedem Hype hinterherrennt, sondern halt son bisschen wartet, bis sich das so alles gefangen und standardisiert hat. Und dementsprechend find ich's irgendwie sehr bezeichnend, dass sie halt so jetzt, ich sag mal, ein bis 2 Jahre nach den ganzen anderen Sprachen und Frameworks vielleicht da ankommen, aber dafür halt so, ne Richtig. Haben halt jetzt eine gleich eine sehr solide MCP Implementierung irgendwie am Start und Du kannst irgendwie dein Tool Calling machen oder so. Ja, so, ja. Aber zumindest versuchen sie nicht von Anfang an irgendwie alles da selber zu erfinden, sondern warten halt immer son bisschen son bisschen ab.
Dave
Ja, vielleicht Und ich hab Und ich hab auch mal gesehen, fand ich interessant, und zwar wird Symphony unter anderem von Spotify und auch bla blacar benutzt. Also große Firmen setzen auch drauf. Ja. Schon cool, oder? Dennis? Hat er
Dennis
grade gegoogelt. Hast Du gut gemacht. Dankeschön.
Jan
Na ja, ist aber ist aber wirklich, also Symphony ist eigentlich mehr noch son Enterprise Framework, als das Larawell vielleicht sein will eigentlich,
Dave
ne. Wir
Dennis
nicken. Der ist Taefa noch
Jan
nie Larawell gehört. Natürlich. Kurze PHP Randnotiz, bevor's weitergeht. Ich hab kurz vor Aufnahme hier noch gelesen, dass PHP sein Lizenzmodell ändern will, also na ja, ist 'n bisschen übertrieben, seine Lizenz ändern will. Und zwar von dieser superalten, eingestaubten Zen Lizenz hin zu einfach 'ner ganz normalen BSD Lizenz. Ist 'n bisschen nitypicky Detail vielleicht, aber es gibt halt Leute, die sehr pingelig sind, was Open Source Lizenzen angeht. Und es gibt auch gewisse Rahmenbedingungen, wenn man bei öffentlichen Auftraggebern zum Beispiel unterwegs ist, die dann auch gewisse Ansprüche haben an, was sind eigentlich Open Source Lizenzen und was sollte da an welcher Stelle verwendet werden? Und wenn euch so was alles interessiert, verlinken wir euch mal das Proposal, wo vorgeschlagen wird, eben die PHP Lizenz für die Version 9 von PHP dann und kommt, zu ändern. Wann das passiert, ist noch vollkommen unklar. In der Diskussion steht, wir sollten uns mindestens 6 Monate Zeit nehmen, darüber zu reden. Es gibt natürlich mal ansatzweise 'n Releasetermin für PHP 9, also kann das alles noch dauern. Aber ich find's krass, dass man so nach 20 Jahren dann sagt, ja, wird ja vielleicht mal Zeit, die Lizenz zu ändern.
Dave
Aber gut,
Dennis
dass Du direkt bHP 9 gesagt hast. Das wär nämlich noch eine kleine Frage gewesen, wo man so Versionsnummern technisch mittlerweile Nicht
Dave
bei 9.
Dennis
Auch nicht bei 9.
Jan
Nee. Im Moment sind wir bei 8 4 und 8 5 befindet sich grade in der Vorbereitung für den Release,
Dennis
ne. Sehr gut. Ja.
Jan
Hast Du mal PHP gemacht, Dennis?
Dennis
Natürlich.
Jan
Ja? Was hast Du so gemacht?
Dennis
Ich geh Klammer auf, Fragezeichen PHP Leerzeichen und dann da irgendwas reingeschrieben. Nein, aber ich hab, also ich hab mit Sicherheit während des Studiums war das ja noch irgendwie, so alt bin ich ja auch, dass es so der Standard war, irgend eine Applikation zu bauen. Und von daher, auf irgendwelchen Serversachen hatten wir auf jeden Fall per Bibelbudes, aber nicht im professionellen Umfeld. Also ich nicht.
Dave
Ich hatte ich hatte tatsächlich auch ein Modul im Master und das war, glaub ich, das schlechteste Modul, das ich hatte. Es war irgendwas irgendwas mit web basierte Entwicklung oder so was hieß es. Und da haben wir auch irgend, das ist irgend 'n Open Source PHP Projekt, son Content Management Tool ist das. Kommt ihr drauf? Sagt euch das so was? Nein. Ich weiß es nicht. Auf jeden Fall auch haben wir damit Leuten, die da aktiv dran entwickeln da irgendwie gearbeitet und es war ganz, ganz 2. Ganz, ganz schreckliches, nee, nee.
Jan
Magento? Nee. Jumla?
Dave
Ja, oh mein Gott. Oh mein Gott Jumla. Es war Jumla. Es ist doch fucking Jumla. Genau, ich hab ich hab, oh, das war genau und wir mussten halt dann auch so Beiträge machen, also auch dann so und so was und wo das auch so präsentieren und wirklich von der Community und so, hey, das ist so die Änderung, die wir machen wollen. Wär das nicht cool und so was alles sagen, das war richtig schrecklich, dieses Modul. Wir haben so gar keine Einleitung bekommen. Das ist ja 'n riesiges Projekt auch. Wie kann man Jumla,
Dennis
Jumla hab ich vor 1 vor Version 1 5 genutzt. Also, als ich noch 1 5 war irgendwie total Break King, wenn ich mich das richtig im Kopf hab.
Jan
Ja, aber grad aus, was hast Du im Master studiert?
Dave
Ich hab ganz normal Informatik studiert im Master tatsächlich.
Jan
Ah, ich dachte, Du hättest was anderes gemacht.
Dave
Nee, Bioinformatik war's im Bachelor.
Jan
Ah ja, das hatt ich nämlich irgendwie im Kopf und hatte das dann, da hat er irgendwie gedacht, das hättest Du, was hättest Du da gemacht? Okay.
Dave
Nee, nee, nee, genau. Und wir waren ja Jumla stimmt, Jumla Alter, ich krieg jetzt so richtig PTSD, das war eine ganz schöne Zeit, wo wir Das ist
Dennis
Slow, kenn ich auch noch.
Dave
Wo wir dann wirklich so Dieses Ja, es war und und und dann, wo wir dann noch nachts irgendwie dafür was gemacht haben, weil wir's dann am nächsten Tag präsentieren mussten. Und dann dann ging's halt auch ins Review von Leuten, die wirklich in der Jumna Community aktiv entwickelt haben und die haben uns auch so im Grund und Boden beschäftigt. Die meinte, oh, das klingt ja total das klingt ja total cool, das Feature und es hat aber überhaupt nicht funktioniert, aber also die Prämisse war schon cool, aber es es war es war schlimm.
Dennis
Es gibt's noch. Ich meine, die Webseite sieht auch ungefähr so aus, wie man sich das noch vorstellt. Alter, ich Und in Erinnerung hat.
Dave
An alle, die die News Folge hören, bitte contributete auch mal. Das ist es war eine
Dennis
Falls Du Du der Fans da draußen gibt,
Dave
dann Alter Jumler Fans, schreib.
Dennis
Machen wir sofort eine Folge. Deep Dive.
Dave
Wirklich, Alter. Ich ich kann dazu alles erzählen mittlerweile. Ich ich kenn alles.
Dennis
War aber wirklich ernst gemeint.
Jan
Kommen wir von gut abgehangenen Sprachen hin zu Sprachen, in denen dann dauernd irgendwas kaputtgeht. Dave, erzähl doch mal was über Eas Lind.
Dave
Alter IS Lind. Ja, eigentlich eine richtig krasse krasse Sache, denn es gab auf NPM gab's ein, das einfach mal 30000000 Weekly Downloads hat und zwar IS Lind. Ist natürlich krass, wenn da drauf ist bei so 1 hohen Downloadzahl. Aber was ist denn eigentlich passiert? Und zwar ist es so, dass 1 der, der Joan Quinn, so nennt er sich zumindest auf Twitter, der hat tatsächlich eine täuschend echt aussehende E-Mail, hat er draufgeklickt, weil es von Support at NPMJS Punkt com war, aber der Link hat zu Support at NPNJS geführt. Und das war halt eine gefälschte Domain. Und da wurden nämlich seine sein NPM Token gestohlen und in in in seinem Namen wurden dann halt neue Versionen veröffentlicht von von dem. Also es gab dann verschiedene Versionen, die kamen wirklich also einfach, wurden die veröffentlichen ohne irgendwelche GitHub Commits, wo natürlich sich andere Materender machten, hä, was soll das so. Und aber andere Leute haben das dann auch installiert und bei diesem NPM von diesen neuen Versionen lief da son bösartiger. J s. Und der hat dann halt die Malware dann ausgelöst, wurd wo dann halt, es wurd, war, glaub ich, dann ein Trojaner, der halt dann alles dann in deinem PC gelockt hat und so was alles und dann verschiedene Informationen von dir erhascht hat. Kleine Entwarnung an der Stelle, also natürlich ist es eine, krass, wenn man die einfach diese Zahl hört, 30000000 Weekly Downloads, Malware ist in den neuesten Version, was ist da? Tatsächlich waren nur Windows Maschinen davon betroffen, also weil da irgendwie direkt geprüft wurde so, okay, wenn die OS Plattform Win 32 ist, dann mach was, also auf Linux und macOS ist nichts passiert. Was natürlich für vieles die eine Umgebung total gut ist, weil die meisten auf auf Linux laufen. Von daher so kleine Entwarnung und es wurd auch relativ schnell gefixt tatsächlich. Also es ist natürlich Leuten aufgefallen, die Version wurd rausgelöscht. Da wurden Sicherheitsvorkehrungen dann auch von Joan Quinn an der Stelle ausgeführt, aber war natürlich trotzdem heftig mit mit mit was für 'ner Wucht das dann auch auf bekannte Packages einfach treffen kann und dass so supply Chain supply Chain Attacks ja immer noch einfach 'n Ding ist. Und was natürlich auch wieder interessant zu sehen ist, was ist die größte Schwachstelle für so Security? Na ja, der Mensch wieder, ne?
Jan
Jo. Hast Du in dem Atemzug das von dem auch gelesen.
Dave
Nee.
Jan
Ja. Also ist ja, ah, ist jetzt echt nicht meine Welt, aber ich glaub, das ist son son Package, was irgendwie hilft bei der CSS Generierung, ne. Mhm. Und das ist heute Morgen wohl einfach so offline gegangen, ohne dass irgendwie jemand was damit zu tun gehabt hat. Und wenn Du's auf NPM aufgerufen hast, war nur sone Security Warning Message so. Und alle Versionen davon waren entfernt. So, es gab nur noch so eine Version, die irgendwie als 0 Punkt 0 Punkt 1 getagt war und on security holt hieß. Und das scheint wohl so, als ob superviele Packages da draußen das halt irgendwie verwenden. Und auf alle Fälle sind halt heute Morgen links und rechts irgendwie alle Bildpipelines fehlgeschlagen von allen da draußen, weil jeder, der halt irgendwie mit type Skript CSS generiert, nutzt halt irgendwie unten drunter Styles oder so was. Ja, jetzt scheint das so von der Größenordnung. Ja. Und warum ist das offline genommen worden? Weil der Typ, der das ESLINT Package gehjejacked hatte, wohl auch schon Maintainer bei Styles geworden war. So und nachdem das halt mit diesem ESLINT Ding rausgekommen ist und gemerkt, also und die Leute halt gemerkt haben, okay, da ist halt son 'n jüdributor irgendwie drin, ja, haben die halt einfach alle Packages, wo der so seine Finger drin hatte, bei MPM halt auch on Security Holke sitzt. Was im Prinzip, also ist ja schon eine sinnvolle Maßnahme so. Mhm. Ja? Mhm. Aber ironischerweise war bei den anderen Paketen noch, in Anführungszeichen, nichts passiert so.
Dave
Mhm.
Jan
Ja. Aber es zeigt halt da so, wie vorsichtig man so bei diesen Supply Chain Attacken sein muss und wie man da halt manchmal auch so das Kind mit dem Bart ausschütten muss, da halt irgendwie Schlimmeres zu verhindern, ja. Und auch, es gab stundenlang überhaupt gar keine Kommunikation von MPM dazu. So, ich weiß nicht, vielleicht sind alle schlafen gegangen danach. Ja. Weil keine Ahnung, wo die so sitzen, das Security Team von MPM. Und heut Morgen war halt das halbe Internet nur so, wieso funktioniert hier nichts mehr? Ja, ja. Ja, ist schon krass, weil das heißt
Dave
ja auch dreieinhalb Millionen Weekly Downloads Downloads. Ist schon ist auch schon krass. Ja.
Jan
Kann man mal auf Pause drücken.
Dave
Ja, eben. Braucht ihr niemand.
Jan
Ja. Supply Chain, so wichtig. Aber wir hatten ja auch bei uns dann, ich weiß nicht, ob ihr das 'n Slack gesehen habt, sone kleine Diskussion mit 'n paar Devs hier, was man eigentlich dagegen machen kann. Und im Prinzip ist die Antwort halt nichts.
Dennis
Fühlt euch sicher.
Jan
Na, also es ist ja wirklich, es gibt Lösungen, ne? Ja. Die überwachen so deinen Dependency Graph und so was, aber die können dir ja auch quasi erst Bescheid sagen, wenn jetzt irgendwas public geworden ist und im Prinzip Schlimmeres verhindern. Es gibt 'n paar Lösungen, die wirklich so den Quelltext durchscannen, aber das ist halt sehr teures Enterpriseszeug so. Mhm. Und es gibt halt, ich sag mal, Softwareumfelder, die einfach so reguliert sind, dass Du wirklich jede Dependency von Hand angucken musst. Ich sag mal so, alles, was mit Glücksspiel zu tun hat, ja, wo einfach krass viel reguliert ist. Da ist es vielleicht, aber ich glaub so Otto Normalentwicklerin da draußen hast, glaub ich, keine Chance, da irgendwie sinnvoll gegen vorzugehen.
Dave
Aber, also was ich mich gefragt habe, also weil was was hier ja auch passiert ist, ist, dass der Dude natürlich den Zugang zu seinem Account verloren hat und deswegen das von seinem Account ausging. Wenn, also wenn man jetzt diese, was man 2 Faktor Authentifizierung nennt ja, das einfach einbaut, dann wär das wahrscheinlich ja nicht so easy möglich gewesen, oder an der Stelle? Also das wär doch zumindest für so Mainainer von so großen Packages wär das doch auf jeden Fall eine gute Maßnahme.
Jan
Ja, also für den Case bestimmt, aber wir haben ja auch schon andere Sachen gesehen, wo's halt so harte Social Engineering Angriffe waren, ne, wo sich jemand da monatelang Zeit nimmt und sich irgendwie so auf legitimen Wege quasi Berechtigungen ins Repository erschleicht, nur dann damit am Ende irgendwie Schindluder zu treiben. Also ja, mehr Security ist immer mehr gut, aber ich glaube, also so 100 Prozent verhindern kannst Du's halt am Ende nicht wie immer bei Security.
Dennis
Aber ich wollt grad sagen, das ist ja irgendwie 'n Statement, das für alle Sicherheitslücken gilt, wo Du in der Regel erst danach davon erfährst und dich, ja, selten schützen kannst. Also natürlich gibt es viele Maßnahmen, die man treffen kann und man sollte auch bei jetzt im im Nachgang darüber nachdenken, was man explizit dazu ändern kann, aber es wird halt dann bald die nächste kommen, vor dem man sich auch nicht hat schützen können.
Jan
Mhm. Ja. Und grade Supply Chain wird halt gefühlt irgendwie jedes Jahr 'n mehr.
Dave
Ja. Was ich aber auch interessant finde, wo Du grad Social Engineering erwähnt hast, 'n Freund von mir arbeitet auch in in 'nem Security Richtung und das ist auch 'n unter anderem Ding, was er halt macht, dass er wirklich in in Unternehmen reingeht und da halt irgendwie vor Ort irgendwas machen muss, ne, irgendwas da dann lokal anschließen und da die Daten bekommen möchte. Und das ist krass, der sagt, es ist total einfach, wie Leute dir vertrauen, Leute dir helfen so. Also Du kannst in eine Bank reingehen, hast einfach 'n Anzug an und sagst, ey, sorry, ich hab mal eine Karte vergessen, kannst Du das kurz für mich öffnen. Der Großteil macht das einfach wirklich. Das ist es ist total interessant, wie easy es funktioniert. Also der hat gesagt, es gab keine größeren Hürden, wo Leute ihn dann auch wirklich aufgedeckt haben, so. Der Großteil funktioniert erst mal total easy. Find ich auch sehr erstaunlich. Ich glaub, das ist einfach so, der Mensch ist an sich gut. Deswegen vertrauen wir allen.
Jan
Steile These, lassen wir mal so im Raum stehen.
Dennis
Ja, fast 'n schönes Schlusshog.
Dave
Ja, genau. Wenn wir
Dennis
nicht noch 'n Thema hätten. Ach wirklich, wir haben noch 'n Thema?
Jan
Ja, Dennis hat noch 'n Thema. Dennis Alter,
Dave
das war doch nicht die Arbeit. Schon. Dann red da einfach in 2 Wochen drüber, oder Dennis? Okay, tschau. Tschau.
Dennis
Ich muss ganz ehrlich sagen, ich bin mir nicht hundertprozentig sicher, warum es in der Tech Bubble so relativ groß geworden ist, also ob der Typ irgendwie besonders bekannt ist oder dass jetzt mal was wirklich produktiv ist. Aber kann man sich auf jeden Fall mal durchlesen, weil da ist jemand, der hat eine Mac OS, eine native mac OS App entwickelt und zwar zu großteilen mit und hat das Ding ganze Ding auch rausgebracht. Also wo es son bisschen über Prototyping, erstmal wie wir's ausprobieren hinausgeht, sondern wirklich an 'ner App, die jetzt produktiv in Appstore ist. Die App selbst, da geht's darum, lokal MCP Server zu testen und zu evaluieren und zu debuggen. Aber was irgendwie ganz schön ist, dass er recht übersichtlich so geschrieben hat, okay, wo hat's geholfen? Wo musste ich die eigentlich noch irgendwohin bringen? Er sagt, das ganze Ding hat irgendwie 20000 Zeilen Code jetzt und er denkt, dass er unter 1000 davon selbst geschrieben hat und selbst, genau, gemacht hat. Und von daher ist es relativ nett aufbereitet, was er dort alles gemacht hat. Das kann man sich mal ganz gut durchlesen, weil's ja auch, keine Ahnung, native MacOS Entwicklung ist dann auch wieder 'n bisschen was anderes, als was man so standardmäßig halt sieht mit Webkomponenten, wo dann auch da eine Evaluierung ist. Wie gut ist es denn mit SWIFT UI und SWIFT und so weiter. Und ja, am Ende ist es eine App, die man sich runterladen kann im App Store.
Jan
Und ich glaub, das ist halt genau der Punkt, warum das so bisschen durch die Decke und auf Hacker News und so überall gegangen ist, weil's halt endlich mal son kommerziell fertiges Produkt war, ne, was es halt irgendwie dann auch von hinten bis vorne geschafft hat und veröffentlicht und kaufen und voll funktionsfähig und so. Und halt auch nicht nur son 0 8 15 Webding, was dir diese ganzen Vibe Coding Tools ja irgendwie hat, ne, egal ob Lovable oder oder so.
Dennis
Dieser alte Mann, der hier schon wieder gegen AI wettert.
Jan
Ne, ich sag ja nur, dass die meisten halt immer nur Websachen so machen und mal zu sehen, das ist halt auch für andere Sprachen. Und wo Du dich vielleicht als macOS Entwickler eher so in in x-Code gefangen fühlst, ne, zu sehen, dass es da halt irgendwie auch funktioniert. Das war halt glaub ich superspannend.
Dennis
Ja. Und er hat tatsächlich auch so halt diese ganzen den Veröffentlichungsprozess, der halt sonst auch supernervig ist bei Mac mit Zertifikaten et cetera. Das hat er auch größtenteils die AI übernehmen lassen und das Kürzel für schreiben lassen. Genau. Von daher, ja, auf jeden Fall schon ein interessanter Use Case.
Jan
Cool. Dann, was ist das Wichtigste, was die Leute aus dieser Folge mitgenommen haben sollten?
Dennis
Falls heute noch Donnerstag ist und es vor 18 Uhr ist, setzt euch in ein Auto oder in einen Zug und kommt nach Bad Nauheim, einen Drink von Dave serviert zu bekommen.
Dave
Aber vor 18 Uhr, also je nachdem, wo Du wohnst, brauchst Du ja schon länger Ja. Als eine halbe Stunde.
Jan
Ja, aber deswegen reicht Vorträge für meine Talk. Genau.
Dave
Ah ja, okay. Zeit. Stimmt. Stimmt. Eine schon Haben wir eigentlich
Dennis
nur Cocktails gesagt oder haben wir auch gesagt, was der Inhalt ist vom Meet-up?
Dave
Das hat Jan direkt am Anfang gesagt.
Jan
Ich hab den Inhalt des Meetups genannt. Du hast son bisschen den Inhalt der Cocktails angeteasert und wir können auch noch erwähnen, dass es dazu Pinseln gibt, den Inhalt des Buffets irgendwie noch zu tätern so.
Dave
Von von von von welchem von welchem Restaurant gibt's die Pizza? Ratelo. Ratelo. Okay. Okay. Beste. Das ist schon krass. Also dann würd ich, egal wo ich in Deutschland wohne, würd ich herkommen.
Jan
Und also weil Dennis die Bestellung übernommen hat, dieses Mal gibt's sogar nicht vegetarische Pinsel auch. Sonst gibt's ja immer nur vegetarisches Essen bei uns Arright, don't komm, it. Kannst Du jetzt Dave
Dennis
nicht abholen.
Jan
Was sagst Du?
Dennis
Damit kannst Du Dave jetzt nicht abholen.
Jan
Nee, damit kann ich Dave nicht abholen, aber vielleicht Leute da draußen, weißt Du, werden wir schon ab und zu mal das Feedback bekommen, so, wir sollten nicht nur vegetarisches Essen anbieten, auch wenn das ja son Backword Kompatability Ding ist.
Dave
Uns wurde auch das Feedback gesagt, wir sollen auch nicht gendern, so. Also weißt Du, also worauf willst Du jetzt hören, Jan? Genau.
Dennis
Man kann auch nicht alles Feedback ernst nehmen. Eben.
Jan
Ja. Sagt der Typ, der angefangen hat Fleischpizza zu bestellen, ich sag ja nix.
Dennis
Das hab ich aus ganz privaten Gründen gemacht, nicht auf eure Feedback. Nein, alles alles Obwohl, die haben so eine mit Montadella Montadella und sonem selbstgemachten Pesto obendrauf, die ist schon lecker.
Jan
Die ist nice. Aber ich dachte, es geht nichts über die Traube, Walnuss und
Dave
Honig. Und Käse. Corvinzola.
Jan
Corvinzola ist der. Alter Chips Cola.
Dennis
Nee.
Jan
Alright, dann war's das bis für heute. Wir sehen uns vielleicht heute Abend, wenn nicht in den nächsten News. Und bis dahin, viel Spaß. Und wie immer, wenn ihr Feedback und Rückmeldung habt, auch wenn's nicht Pizza geht, dann einfach ein Podcast at Programmier Punkt bar oder auch Social Media, wo immer ihr uns findet. Bis denn. Tschau, tschau.
Dave
Vielen Dank fürs Zuhören. Bis dann. Geräusch der Woche.
Dennis
Macht's gut. Tschüssi.
Feedback