News 44/25 –

Swift SDK for Android // Vitest 4 // AWS Incident Report

30.10.2025

Shownotes

Es ist endlich programmier.con Woche! Wir haben trotzdem eine leicht verkürzte Podcastfolge mit den aktuellen Tech-News für euch.

Dennis berichtet uns, was das neue Swift SDK für Android alles mit sich bringt und was es für das Ökosystem im Mobile App Development bedeuten könnte.

Außerdem gab es mit Vitest 4.0 ein bedeutsames Release des Test-Frameworks aus dem Hause Vite/void(0). Garrelt hat sich das Update angeschaut und erklärt uns, warum ausgerechnet die – jetzt endlich – stabile Browser-Integration das Highlight des Releases ist.

Und auch wir sprechen natürlich über die Outage bei AWS, die in der letzten Woche das halbe Internet lahm gelegt hatte. Jan hat sich durch den Incident Report gearbeitet und beleuchtet, wie es zu dem Ausfall gekommen war und warum die Reparatur so lange gedauert hat.

/transkript/programmierbar/news-44-25-swift-sdk-for-android-vitest-4-aws-incident-report
Jan
Hallo und herzlich willkommen zu 1 neuen Programm übern News Folge heute in der Kalenderwoche 44. Wir sprechen heute über VITES, über AWS, natürlich, wie wahrscheinlich so alle diese Woche und wir reden mit einem Experten über Swift. Ich bin hier wie immer Jan Gregor eben Getriebe und mit mir im Studio sind in der mittleren Ecke Dennis Becker. Hallo Dennis. Das das wäre deine Zeit Hallo, Frau Kollegin. Moment. Moment. Moment. Moment.
Dennis
Moment. Moment. Moment. Moment. Moment. Moment. Moment. Moment. Moment.
Jan
Bevor Du jetzt sehen, ob ich den Moment magst, Außerdem dabei, ich bin Gerrit. Hallo, Gerrit.
Garrelt
Hallo und ich find's cool, dass 44 die zweite Schnapszahl im Jahr ist und die letzte für dieses Jahr. Die letzte Schnapszahl Folge, Leute.
Jan
Also, wenn Du die AI News mitmachst, dann kommst Du auch in die 33.
Dennis
Ja, aber Ich hab, ja okay. So weit hat er nicht gedacht.
Garrelt
Aber das trotzdem die Letzte dann, oder? Weil 55 gibt's ja nicht.
Jan
Ja. Nee. Sehr gut. So, und was heißt Kalenderwoche 44? Warum ist das eine tolle Woche? So ist es nämlich. Und das heißt, wenn ihr die Folge hier veröffentlicht hört, sitzen wir alle schon auf der Programmiercon.
Dennis
Korrekt. Und falls ich gleich während der Folge raus muss, dann hat das auch mit der Programmiercon zu tun, weil wir technisch noch was Kleines fixen müssen und da ich dann einen Anruf gleich erwarte.
Jan
Dann würd ich sagen, Dennis, darfst Du mit deinem Thema anfangen, dass Du danach entlassen bist?
Dennis
Ja. Und nur ganz kurz fürs Protokoll, damit die Leute nicht denken, warum hat er nicht einfach hallo gesagt und sich so doof angestellt? Wir haben also sone neue, wir haben einstudiert praktisch in wochenlanger Probe unsere neue Begrüßung einstudiert, an die sich Jan Gregor M Getriebe heute vorsichtshalber nicht gehalten hat.
Jan
Ist das so? Ich hab mir das ja aufgeschrieben, aber war das anders?
Dennis
Ja, die Leute sollen sich selbst vorstellen. Wer ist jetzt? Der Reihenfolge, das das das
Jan
Aber das hat neulich auch schon nicht so gemacht, würd ich sagen. Nein, genau. Aber okay. Kein Problem.
Garrelt
Ich dachte eigentlich auch, dass dass der Jan jetzt wart oder war das nur dann bei den Ach
Jan
nee, deshalb haben wir darüber gesprochen. Wir machen das in alphabetischer Reihenfolge, damit jeder weiß, wann
Garrelt
wir krank sind. Richtig. Okay. Ich möchte sagen, ich
Jan
hab die alphabetische Reihenfolge eingehalten.
Dennis
Das ist korrekt.
Jan
Ja. Hab die Aufgabe halb verstanden.
Dennis
Sehr gut. Ja, also ich SWIFT Experte, so hat Jan mich heute angekündigt. Ich weiß nicht, ob das wirklich so ist.
Jan
Also im Vergleich zu mir halt schon. Das stimmt. Ist alles relativ.
Dennis
Das stimmt. Ich müsste noch mal nachrechnen, ob ich mehr Zeit mit Objective C verbracht hab oder mehr? Nee, mehr mit SWIFT. Das kam schon relativ schnell, glaub ich, nachdem wir damals gestartet sind mit iOS. Anyway, also kommt ja aus der schönen iOS Welt. Und SWIFT hat damals Objective C abgelöst, was eine ganz schöne Erleichterung war. Da hat man noch ja irgendwie so Memory allokiert und wieder freigegeben und all so schöne Sachen noch irgendwie gemacht und viele eckige Klammern auf und zu und all so was, was man es braucht. Und dann war SWIFT natürlich schon eine gewisse Erlösung. Und Apple hat, ist steht hinter SWIFT oder hat das Ganze gestartet. Aber auch schon damals, glaub ich, gestartet als, ey, das ist eine geile Programmiersprache, die wir offen machen und die grundsätzlich jetzt nicht begrenzt ist, darauf irgendwie nur iOS User glücklich zu machen und so. Es ist über die Jahre tatsächlich so gewesen, dass Swift in immer mehr Applikationen und immer mehr Use Cases auch eingesetzt werden konnte. Und jetzt die neueste Schritt in diese Richtung und das ist natürlich irgendwo kann man's mit einem leichten Augen zwinkern, dass das falsch falsch ist. Es hatte hat eine gewisse Brisanz, kann man vielleicht sagen, denn das Swift SDK ist jetzt auch für Android erhältlich und das heißt so die große Konkurrenzplattform von iOS, da jetzt technologisch draufzugehen. Ich glaube tatsächlich, dass es diese Überlegung so aus der Dev Sicht da gar nicht so groß gibt. Also das ist jetzt nicht irgendwie 'n Kampf die Plattform und die Programmiersprachen, sondern da geht's wirklich eher die Technologie dahinter. Und genau, grundsätzlich ist SWIFT halt so gebaut, dass es sehr gut auf verschiedensten Plattformen und Architekturen laufen kann. Und es gab schon eine für längere Zeit eine sogenannte Android Work group innerhalb von der SWIFT Entwicklung. Und genau, die hat auch schon relativ lange daran gearbeitet. Man kann da auch einfach beitreten und und auch helfen, das Ganze zu tun. Und jetzt gibt es aber ab jetzt praktisch Knightly Previews für das SWIFT SDK für Android. Das heißt, sie wollen, dass jetzt die Leute anfangen, das tatsächlich auch auszuprobieren und das sofern weiterzuentwickeln. Das heißt auch, ja. Ich versteh immer nur nicht
Garrelt
so genau, was heißt denn das SDK verfügbar auf Android? Also könntest Du eine Android App komplett mit Swift bauen dann? Ja. Und wie würdest Du dann UI machen? Also würde das wirklich, könntest Du 'n Code von 'ner iOS App nehmen und den fürn sone Android App machen? Nee, wahrscheinlich nicht.
Jan
Nee, weil das ist ja UI Kit auch, ne? Also das ist ja die Frage, welche sind da verfügbar?
Dennis
Ja, gute Frage, wie das jetzt mit SWIFT UI und sonstigen Sachen dann tatsächlich funktioniert, aber es gibt eine zusammen Zusammenarbeit. Also es kann mit Java zusammenarbeiten. Das heißt, da gibt's eine Bridge, die in beide Richtungen funktioniert und die genau dazwischen, wie man das symbolieren kann oder
Jan
wie auch
Dennis
immer. Und genau, von daher kann man das auch festfallen, miteinander verdrahten, dann diese Parts. Ich würde sagen, also ich glaube, es gibt halt jetzt erst mal eine sehr große neue Möglichkeit, die man da irgendwie hat, damit es zu machen. Ich kann mir jetzt nicht vorstellen, dass jetzt gerade die iOS Entwickler sagen, die auf Swift entwickeln, nee andersrum, die Android Entwickler, die mit Cottle und Java unterwegs sind, jetzt direkt sagen, oh, SWIFT geil, nehme ich sofort. Aber gerade für son paar Cross Plattform Komponenten beispielsweise, wenn Du irgendwelche, ne, abgekapselten Pakete baust oder so was, die Du dann nur für eine Plattform gebaut hast bis jetzt und dann vielleicht auch bei nutzen kannst und so weiter die schönere Sprache es, die dir vielleicht mehr bietet für den Use Case, den Du brauchst, hast Du jetzt eben dafür die Möglichkeit. Und Du kannst auch eben diese Swift Packages, die es auch gibt, da sind jetzt schon 25 Prozent aller Packages sind kompatibel mit Android.
Garrelt
25. Das klingt wenig. Ist das viel?
Dennis
Weiß ich nicht.
Jan
Ich glaub, dass es neu ist und es praktisch
Dennis
noch nicht, also dass noch nichts Öffentliches war und der jetzt schon 'n Viertel davon einfach von Haus aus funktionieren, ohne Ach,
Garrelt
man kann einfach die Packages in Android, also in Javacode nutzen. Okay, okay,
Jan
okay, okay, okay.
Dennis
Dann würde ich sagen, ja, genau. Aber auch da Okay. Also ist jetzt so groß aufgehängt, dass auch in diesen, dass man da auch dann eben sehen kann, ist das für Android kompatibel
Jan
Ja.
Dennis
Und in dem, wie heißt der, Index oder wie der Manager da heißt, weiß ich auch gar nicht genau.
Garrelt
Aber ist das Ziel sozusagen so was wie obsolet zu machen von sonem Move von Apple? Also was was hat Apple davon? Und können wir darauf hoffen, dass dadurch irgendwann möglich ist, dass wir Apps, also eine Sprache schreiben und beide Apps bedienen?
Dennis
Da hatten sicher Jan Gregor M. Retriebe einen guten Take zu. Ich verabschiede mich, welcher raus muss. Hab noch viel Spaß und ich
Garrelt
freu mich auf
Dennis
die Probe bei mir kommen. Macht's gut.
Jan
Tschau tschau. Tschau tschau. Also ich glaub, da gibt's so 2 Sachen, ne. Das eine ist, dass Apple ja selber auch Android Apps baut.
Garrelt
Mhm.
Jan
Und da so was wahrscheinlich auch selber benutzen kann. Ich glaube nicht, dass sie so was machen wollen wie bei React Native, Du baust jetzt einmal und das läuft dann einfach überall weiter, weil Du ja Interface, Bindings und so was alles irgendwie dann nicht hast. Und ich ich kann mir auch nicht vorstellen, dass die so komplett Swift UI irgendwie portieren wollen mit der Idee, dass alle Apps dann überall gleich aussehen und sich gleich verhalten und so, weil so Plattformunterschiede muss man ja schon auch anerkennen.
Garrelt
Ja, klar.
Jan
Und deshalb ist, glaub ich, so headless App mäßig der Ansatz eher, wenn Du halt schon viel Businesslogik hin- und herportieren kannst und dann Bindings ins UI oder so was hast, ist auch schon
Dennis
viel wert.
Garrelt
Ja, das stimmt.
Jan
Ja, so viel zu SWIFT. Dann haben wir aber auch noch VIFTst für alle Leute, die schon wirklich Production Code schreiben und nicht auf irgendwelchen komischen Android Prereeleces von SWIFT rumhängen. Was hat's damit auf sich, Gerald?
Garrelt
Mit V-Test generell, meinst Du?
Jan
Ja, oder halt mit dem neuen Release. Aber vielleicht für, ah ja, fair, für alle da draußen erst mal, die das nicht benutzen und kennen, was ist das überhaupt?
Garrelt
Die Frage ist, warum benutzt ich's nicht? Weil ich würde sagen, V-Test ist mittlerweile zum Standard für Testing im Webbereich geworden. In meinen Augen hat es Ja, und jetzt hab ich eine Lücke. Wie ist das Framework vorher? Jazz. Hat das Jazz abgelöst? Bei uns vor allen Dingen auch letztens erst, wir sind migriert von Jazz auf Vietst, was auch relativ frei bewusstlos funktioniert. Also sie versuchen schon generell viel Kompatibilität zu bieten. Genau, und wie der Name schon 'n bisschen sagt, das kommt son bisschen aus diesem Team. Also Viet und Vietst gehen auch sehr gut Hand in Hand. Und bietest ist jetzt mit der 4 Punkt 0 Version aus dem Versteck gekommen.
Jan
Ich weiß nicht, wie ich das ankündigen solltest.
Garrelt
Ve, bietest 4 Punkt 0 ist da.
Jan
Die Ecke gekommen.
Garrelt
Die Ecke gekommen. Vielen Dank. Seit 5 Tagen, seit dem zwanzigsten Oktober. Und Sie haben ein paar schöne Änderungen mitgebracht.
Jan
Nein, nein, nein, Gerald. Seit seit 7 Tagen quasi. Weißt Du? Ja. Seit 7 Tagen. Heute ist doch
Garrelt
Ja, ja. Vater. Du hast das besser im Blick als ich. Ich weiß das, wo man die Signale. Okay, seit 7, seit 1 Woche ist das draußen, also noch sehr, sehr frisch. Und Sie haben ein paar schöne Änderungen mitgebracht. Und zwar ist der Browser Mode stabil. Also der war vorher schon im Experimental als Experimental Feature verfügbar. Und jetzt ist es aber stabil und da haben Sie auch noch einige Was
Jan
ist ein Browsermode?
Garrelt
Genau, der Browsermode, Du, man kann ja verschiedene Dinge an der Software testen. Ich glaub, so die Grund funktioniert ja jetzt erst mal, okay, ich will Javaskripte Code testen, Tests, vielleicht auch Integration Tests, aber dass der meiste JavaScript, das meiste JavaScript läuft ja im Browser. Und der Browsermode ermöglicht mir eben auch Tests in dieser zu schreiben, also dass die die Tests auch Zugriff auf das Dokument und den Windo haben. Und und das kommt jetzt eben dazu, auch so was wie möglich sein soll. Mhm. Das heißt, dass es auch eine Neuerung, die dazugekommen ist, die grade auch für uns spannend ist, dass man auch für alle, die nicht wissen, was das ist, man kann sozusagen eine Seite in dem Test öffnen, 'n Screenshot davon machen und dann in einem Folgetest noch mal den gleichen Screenshot machen und die beiden miteinander vergleichen. Und dann guckt man sich eben an, sind da irgendwelche visuellen Änderungen passiert, die ich's nicht haben möchte? Und das geht nur mit sonem Browsermode, weil man eben diese Browserumgebung braucht. Und da haben Sie auch noch 'n paar Anpassungen gemacht. Sie, man braucht da son Provider für diesen Browser, weil Sie das selber nicht anbieten. Da geht so was Das wär
Jan
ich meine Frage gewesen, ob sie dann so was wie oder so was da nutzen oder ob man was selber mitbringen muss.
Garrelt
Ja, genau. Das genau das ist der Punkt. Sie nutzen den Browser von, aber sie haben auch den vom Web Driver Io, den kann ich nicht. Und es gibt noch 'n Browser Preview. Kann sogar sein, dass das was Eigenes ist, das weiß ich aber nicht. Ja, ich glaub, das sind so die 3 Provider, die sie anbieten. Und die Integration ist eigentlich auch ganz schön. Also jeder, der benutzt, kennt bestimmt auch die Traces, die dabei rauskommen. Also wenn man son Test laufen lässt, son Browsertest bei, dann kann man sich danach immer noch genau anschauen, wie dieser Test vonstatten gegangen ist. Also man sieht dann, wo die Klicks waren und so weiter und so fort. Und man kann auch über W-Test diese Traces sich erstellen lassen und die sich ja, ausgeben anzeigen lassen. Genau, das ist so das größte Feature, was sie gebracht haben. Ich glaub, das ist auch so das Spannendste. Und grade grade auch die Tests sind für uns zum Beispiel spannend, weil wir nutzen für Test, aber für sonst auch nichts. Und die Überlegung ist jetzt sogar, das alles auf Tests umzu bauen. Dann hat man ein Framework, klar, den Browserprovider, aber nicht das ganze Framework. Und das find ich schon spannend, dass sie da ja, so auch versuchen, das alle umfassend zu bauen, dass man eigentlich am Ende wahrscheinlich gar nichts anderes braucht als b-Test. Was aber nicht verwunderlich ist, weil das ja auch son bisschen das Ziel von Void Zero ist, dieser Firma, die im Prinzip irgendwie hinter sich Alle,
Jan
die's da draußen nicht gesehen haben im Podcast, Gandelt hat grade eine Firma in große Anführungszeichen gepackt bei Point Euro, weil das ehrlicherweise was ist, was ich auch noch nicht so ganz versteh, wie sie so Geld einsammeln und eine Firma draus bauen, dann im Prinzip nur in Anführungszeichen Open Source Packeters damit zu veröffentlichen. Ja. Also cooler Move immer noch so, ja. Aber ich frag mich, wie das in 3 Jahren aussieht, wenn das Geld verbraucht ist oder so.
Garrelt
Toll. Und ich mein, ich weiß nicht, Viet plus wär eigentlich auch 'n spannendes Thema für heute gewesen, hab ich's leider nicht vorbereitet. Aber schaut da mal rein, Viet plus wurde letztens veröffentlicht. Und das soll sozusagen die bezahlte Version von Viet sein. Und ich versteh immer noch nicht so genau, was sie an Mehrwert bietet. Also für mich ist das alles immer noch sehr, sehr schwer nachzuvollziehen. Aber so das grundsätzliche Ziel find ich eher cool, das Tooling im Web irgendwie zusammenzubringen und irgendwie nicht 10 verschiedene Tools haben, sondern am Ende 1. Und das find ich schon nice. Und das, glaub ich, ist auch das, was V-Test hier verfolgt, dass sie eben alles abbilden können. Und dann aber auch schön, dass sie trotzdem so was nutzen wie, die und so. Das ja, Es wirkt so, als wären sie sehr kompatibel mit irgendwie anderen Systemen. Ja. Und der Rest aus dem, das ist eigentlich hauptsächlich irgendwelche, also der, der womit man die Elemente findet in sonem Test, der es verbessert. Dann haben sie noch 'n bisschen verbessert, den, ich glaub, das von den auch verbessert. Also das eher Kleinigkeiten, würd ich sagen. Außer eine Sache noch, die fand ich noch sehr spannend, man kann jetzt auch ein machen. Also man kann ihm einen Zot- oder Valley Bot Schemema geben und dann einen Test darauf aufbauen und sagen, okay, guck mal, das, was hier rauskommt, entspricht das diesem Schema. Mhm.
Dennis
Ist ganz nett. Cool.
Garrelt
Wenn man das drin hat, kann man das da auch nutzen.
Jan
Ja. Das ist cool. Das ist ja immer son, wenn man so APIs testet, grade wenn man jetzt nicht ganz genau weiß, was da aus der API Response irgendwie kommt und mir im Prinzip halt auch egal ist, ne, was bei dem created at Datum jetzt irgendwie drinsteht, aber halt Du nur wissen willst, okay, ist das halt 'n Datum, so, ja? Dann ist da sone Schema Validation schon irgendwie ganz cool. Ich hab da auch schon mal Libraries gesehen, die halt so so Meta Schema Validation machen, würde ich mal sagen, ne, wo Du halt zum einen sagen kannst, okay, das Feld ist ein Datum. Mhm. Und weil das jetzt zum Beispiel ein created Ad ist, muss es auf jeden Fall in der Vergangenheit liegen.
Garrelt
Ah, das ist spannend.
Jan
Nur, dass Du son bisschen mehr Sanitycheck quasi noch machen kannst, ne. Oder ja, ein ein bei darf ein User sein, kann aber nur 1 von diesen paar Texten, was weiß ich. Also, ne, dass Du halt nicht jedes Bit sozusagen einzeln prüfen musst, aber am Ende schon son bisschen mehr drauf haben kannst, als zu sagen, okay, das ist halt nur irgendein beliebiges Datum, weil
Garrelt
Ja.
Jan
Hilft dir ja nix, wenn dein irgendwie 10 Jahre in der Zukunft liegt, ist trotzdem was schiefgelaufen.
Garrelt
Ja, voll.
Jan
Nice, nice. Cool, also wie Test alle mal ausprobieren und Leute, die auf Playright setzen, sollten sowieso schon zweimal reingucken und Leute, die viel benutzen, sollten sich vielleicht mal Videos angucken. Ich find's immer gut, wenn man für Open Source auch 'n bisschen was bezahlt. Ja, das Unabhängig davon, was man eigentlich davon kriegt, weil man kriegt ja schon ganz viel und zahlt ja eigentlich nix dafür. Ja. Man zahlt dafür und kriegt gar nix. Reden wir über über AWS Autages. Okay, das ist jetzt vielleicht 'n bisschen bisschen unfair, weil ich glaub, ne, so. Ustage based billigen, man zahlt ja gar nix, wenn die Infrastruktur down ist. Ja, aber wie ihr sicher alle mitbekommen habt, es hat sich letzte Woche das Internet ein bisschen verabschiedet. Und wir haben's bei uns in der Firma auch erst son bisschen gemerkt, weil wir morgens so angefangen haben zu arbeiten und dann die ersten so, hey, bei mir geht dieses nicht und jenes. Und dann dachten wir erst, das wär so unsere Internetverbindung in der Firma, bis sich die Leute aus dem remote Office gemeldet haben und gesagt haben, nee, bei mir gehen auch diverse Services hier irgendwie gar nicht und sich dann herausgestellt hat, wie immer, wenn gefühlt das halbe Internet kaputt ist, ist AWS dran schuld, weil nun mal das halbe Internet irgendwo bei AWS gehostet ist mittlerweile. Ich glaub, es gibt so neben AWS und Google und Cloudflyer nicht viele andere große Player, Ackermai vielleicht noch, die so das ganze Internet mit runterreißen können, wenn sie irgendwie Probleme haben. Und letzte Woche waren wir wieder son Tag. Und wir haben uns versucht son bisschen da einzulesen, was passiert ist. Ich muss sagen, ich bin auch kein Operations Engineer, aber ich glaub, ich hab verstanden, was es war. Und ich möchte hier einmal kurz Credits absahnen, weil ich's vorausgesehen hab, was passiert war, ne. Nee. Als dann hier bei uns im Chat die die Diskussion losging, hat gesagt, das ist garantiert DNS, weil das ist immer DNS, wenn was kaputt geht im Internet so, ja? Und ich hab danach bei, irgendjemand hat mir das auf LinkedIn geschickt, Polymarket. Ich weiß nicht, wer das kennt, das ist sone Onlinemettenplattform für, Du kannst auf alles sone Wette abschließen. Du kannst jetzt da hingehen und sagen, hey, ich mach eine Wette auf für, weiß ich nicht, wer macht den besten Talk irgendwie auf der Programmierkorn und wenn halt genug Leute mitmachen, kann man da halt irgendwie Geld durch die Gegend schieben. Und als diese AWS Outage angefangen hat, ging halt auch so sofort die Wetten los so, woran lag's und so was alles. Und mit DNS hätte man richtig gut Geld machen können, wenn man das wenn man das geantwortet hätte, ja. Und ich hatte einfach nur nicht auf dem Schirm da mal bei Polymarket vorbei zu machen. Abgesehen davon, Glücksspiel ganz gefährlich sollte man nicht machen. Ich dachte, das ist dein Pick
Garrelt
of the day heute. Na.
Jan
Ja. Mehr mehr Glücksspiel. Garelt und ich mal einmal mit Megas und seitdem bin ich voll. Ja, anyway, also zurück zu DNS. Was ist passiert? Ungefähr 12 Uhr Ortszeit, also Mitternacht in den USA gab's ein Problem in der AWS Region US East und wer AWS kennt, ne oder große Cloud Rider sind ja immer so in verschiedene Regionen unterteilt und wie es kommt wie es kommen musste, AWS US East 1 ist natürlich auch die größte Region, die AWS betreut. Ich glaube auch mit 1 der ältesten. Und da gab's ein Problem in der in dem Management von DynamoDB. So, eine DynamoDB hat einen neuen DNS Eintrag gebraucht, da kam es zu 1 Race Condition und auf einmal hat der der Eintrag für deine Modibi im US East Area auf 0 gezeigt sozusagen. Und das ist natürlich ärgerlich, weil, noch mal wieder 1 ausgeholt, für alle, die AWS Gott sei Dank nicht so tief kennen, DynamoDB ist das, was bei AWS, glaub ich, Foundational Service heißt, weil ganz viele andere Services bei AWS auf DynamoDB aufbauen.
Garrelt
So, das
Jan
heißt, in dem Moment, wo DynamoD nicht mehr zu erreichen ist, greifen natürlich erst mal noch so einige Cash Mechanismen und so und das war auch so mit der Grund, warum nicht alle Services sich gleichzeitig verabschiedet haben, weil die Dependence auf Dynamo ist unterschiedlich stark. Aber im Prinzip sind dann so nach und nach alle Services ausgefallen wie Lambda, ECS, ihr Cubanita Service, ihr Identity und Log in System, Ratshift, also was so deren Ratshift zu deren Data Warehouse Ding. Ja. Deine Immobilie bin natürlich selbst für Leute, die das direkt benutzen, auch so das das Kontrollplan für ist ausgefallen, das Networking und das Load Balancing. Also im Prinzip hat das so komplett US East 1 runtergerissen und wenn Du in anderen Regionen arbeitest, aber trotzdem eine Dependency auf US East 1 hast, bricht dir das natürlich auch alles so mit weg, weil Du vielleicht nicht deine, also ne, viele Leute machen das ja, wenn sie son bisschen skalieren, dass sie irgendwie ihr Comput in andere Regionen noch verlagern und hast dann 'n Webserver in US East und in US West und in Europe und so, aber trotzdem vielleicht deine Hauptdatenbank immer noch nur in 1 Region, weil Datenbankreplikationen ist halt son Thema, das willst Du dir erst dann antun, wenn Du's wirklich brauchst. Solange Du halt nur mit skalierter Computleistung irgendwie klarkommst und dann denkst Du, ja, ich bin jetzt schon gut skaliert, aber solange deine Datenbank immer noch in US East 1 steht und Du da deinen Bottleneck hast, hatte ich das halt trotzdem so mit runtergerissen. So, anyway, also auf alle Fälle gab's ein ein Problem in eine Race Condition in deiner Modibie und dann haben sie das natürlich gefixt und dann ist irgendwie versucht, deiner Modibie wieder irgendwie ans Laufen zu kommen und dann ist es natürlich munter weitergegangen, weil natürlich dann so Sachen kamen wie, okay, deiner Modib ist wieder da und jetzt versucht irgendwie EC2 hochzufahren, weil ne, sein Foundation Service ist wieder da und jetzt fahren diese ganzen dynamischen Instanzen in EC2 wieder hoch. So und darauf ist dieses Cuey System halt auch einfach nicht ausgelegt gewesen, dass im Prinzip komplett US East 1 von 0 auf auf im Prinzip ja nicht mal auf 100, sondern auf 200 wieder hochfahren muss, weil natürlich superviel Zeug sich angestaut hatte, ja? Das heißt, jedes Cureing System in EC2, in Lambda, in überall ist halt mal komplett in sich zusammengefallen, ja? Was dann auch dazu geführt hat, dass natürlich so andere Systeme wie die Network Load Balancer halt noch mal zweimal umgekippt sind, weil die, also, gern wieder kleine AWS Runde, so die Network Load Balancer, die laufen ja im Prinzip auch auf EC 2. So, wenn jetzt e c 2 grade wieder am Hochfahren ist und grade wieder umfällt, dann fallen die Network Load Balancer wieder zusammen. Die dann sorgt das wieder dafür, dass sich nur außen noch mehr Traffic irgendwie anstaut so, ja? Dann versuchen sie das noch mal hochzufahren, noch mehr Traffic bricht wieder auf der Also das war im Prinzip wie son wie sone Dominoaktion, die so im Kreis sich dreht, ja? 1 baut die Steine immer wieder auf und von hinten kommt der Stein, der schon wieder alles alles umschmeißt.
Garrelt
Aber das heißt, der Fix, den Sie eigentlich gemacht habt, die diese DNS Fix, der war schnell und dann haben Sie sehr, sehr lange daran gebraucht, so diesen Domin Effekt zu fixen.
Jan
Ja, genau. Also wenn man wenn man sich so die die Recovery Timeline irgendwie anguckt, war schon deiner Modibie relativ schnell irgendwie wieder ready so, ja, aber dann musstest Du halt in jedem von diesen Services im Prinzip einzelne Fixes so nachspielen, ja, also Lambda war relativ schnell wieder da, aber das spielt wahrscheinlich auch so mit rein, dass es halt als Server, das vielleicht 'n bisschen schneller funktioniert hat, so, ja. Security war auch irgendwie relativ schnell wieder. EC2 hat noch 'n bisschen gedauert, weil das halt super komplex ist. Managed hat noch 'n bisschen länger gedauert, weil das wiederum erst mal warten musste, bis EC2 wieder da war und so was alles. Und ja, das ist schon das schon richtig abgefahren. Und warum das eigentlich so interessant ist, darüber zu reden, sind sind 2 Punkte. Es gibt natürlich die einen, die jetzt irgendwie groß gesagt haben, na ja, das ist halt der Grund, warum Du dich nicht auf diese Cloud Hoster verlassen sollst. Die machen dir auch nur Probleme und dann kannst Du nicht mal selber reparieren. Das ist, glaub ich, 'n Bullshitargument, so. Mhm. Weil ich glaub, wenn Du keinen Cloud Hoster benutzt, fliegst Du auch irgendwann auf die Nase und dann musst Du's selber fixen und hast irgendwie keine großen Engineeringteams, die sich darum kümmern. Mhm. Von daher wär ich da vorsichtig mit der Helme. Der andere Tech und da ist aber, glaub ich, schon son bisschen was dran. Ich hab das bei oder so, glaub ich, war 'n ganz guter Artikel dazu. Muss gucken, ob ich den noch mal finde und verlinken kann. Die meint, na ja, überleg dir mal, ob das damit zu tun haben könnte, dass halt ABS, wie viele große andere Tech Firmen in den letzten Jahren halt Zehntausende Mitarbeiter entlassen hat und was da halt teilweise für institutionelles Wissen abhandengekommen ist, ja. Also wie in jeder Firma, ich bin mir sicher, ABS macht technisch bestimmt viel richtig und hat viele gute Leute, aber es steht und fällt halt nicht immer nur damit, dass alles gut dokumentiert ist, sondern dass irgendwo der eine Hans Müller sitzt, der weiß, na ja, wenn dieser Service ausfällt, geh mal an diesen Server und drück auf den großen roten Knopf und starte den in der Reihenfolge neu, weil das haben wir bisher nur einmal gebraucht, das ist nirgendswo dokumentiert, aber das sind halt so Sachen, die man wissen muss. Und grade wenn dir halt so die ganze Infrastruktur quasi implodiert, dann hast Du wahrscheinlich Hunderte oder tausende Stellen in dem Fall, wo halt genau das auf so Wissen ankommt, ja, wo's nicht darum geht, dass Du irgendwie der größte Cis Admin überhaupt bist oder bestimmt weißt, was Du tust, sondern dass Du halt einfach an genau dem Dienst genau dieses Problem schon mal behoben hast, ja. Und wenn Du natürlich irgendwie reihenweise auch besonders seniorige Leute entlässt, dann geht dir halt viel so Wissen irgendwie flöten und das merkt man dann, glaube ich, an an so Momenten. Ja, ich war nicht dabei, ich kann das auch nur von außen mir irgendwie anschauen und mutmaßen, aber wenn man halt sieht, dass diese Outage irgendwie von von ungefähr Mitternacht bis halb 3 nachmittags am nächsten Tag irgendwie ging, ja, bis alle Services wieder vollständig da waren, boah, dann denk ich mir schon so, also egal, wie groß das ist.
Garrelt
Aber glaubst Du nicht auch, dass es, also das wirkt ja wie son Fehler, den man jetzt auch nicht vorhersehen kann, ne? Also dass die ganze Nee, das will
Jan
ich ja sagen. Du kannst dich nicht davor schützen. Aber die Frage ist halt, wie gehst Du damit und wie gut kannst Du recopfern?
Garrelt
Ja. Aber also mein erster Gedanke wär erst mal, dass ich's krass finde, dass sie es am Ende doch noch so schnell so schnell hinbekommen haben, wenn so viele Services betroffen waren. Und wenn Du meinst, es waren mehrere kleine Fixes notwendig, dann find ich's fast schon eher beeindruckend, dass sie's in soner großen Firma so gut hinbekommen haben, das so zu handhaben, weil es halt so viele verschiedene Teams sind, ne. Weil dann, Du hast nicht ein Team, was jetzt diesen fix machen muss, sondern das sind halt irgendwie 20. Und das find ich auch keine leichte Aufgabe. Aber ich kann, also trotzdem ist es natürlich schwer zu sagen, wie schnell's gegangen wär, wenn diese Leute noch da gewesen wären, ne. Und wenn's
Jan
Ja, natürlich. Du kannst das jetzt nicht so einfach a b testen und so. Du hast schon auch recht, das waren viele Fixes, wenn man sich den Audit Report, Incident Report bei ABS mal anschaut, dann sieht man, sie haben halt, ne, das deine Mode DBDNS Management natürlich erst mal gefixt, diese auszuhebeln. Dann haben sie was am DNS Verhalten geändert. Sie haben das EC2 Testing angepasst. Sie haben das Queueing System irgendwie angepasst. Sie haben ihre Load Balance angepasst. Also da da kommt, ne, Du musst schon auch was lernen, wenn Du so auf die Nase fällst. Und das haben sie da scheinbar getan, das ist ja auch alles cool. Und das ist auch genau das, was ich meine mit, son Cloud Hoster lohnt sich halt, weil im, also ja, sie sind jetzt auf die Nase gefallen, aber sie haben halt diese ganzen Fixes auch mitgenommen. Und die Chance, dass genau dieses Problem halt noch mal auftritt, das würd ich sagen, schon relativ gering, wohingegen ich behaupten kann, der auch schon einige Anwendungen und Server betreut hat, ich bin durchaus mehrfach auf dieselbe Nase gefallen so, ja, weil man halt nicht immer den Luxus hat zu sagen, okay, genau dafür Ja. Bau ich jetzt halt irgendwie 'n Fix oder so. Ja. Vielleicht am Ende noch, das das einzuordnen. Also wir haben gesagt, so Outage, verschiedene Services, bis alle da waren, am Ende ungefähr so 15 Stunden. Ich habe einen Report gelesen, der versucht hat, diesen Schaden son bisschen zu beziffern. Mhm. Und da war ein Analyst bei CNN, der meinte, es wird wohl irgendwo im einstelligen Milliardenbereich liegen, an Damage, der da entstanden ist, weil in Onlineshops Checkout Systeme nicht funktioniert haben, weil bei irgendwelchen Airlines die Backend Systeme sich verabschiedet haben und Flüge ausgefallen sind, weil in irgendwelchen verabschiedet haben und Flüge ausgefallen sind, weil in irgendwelchen Fabriken, die halt irgendwie hart vernetzt sind, Sachen nicht mehr funktioniert haben und so was. Und das ist halt auch schon krass, wenn Du dir überlegst, so, ja, hier kleine Race Condition. Ja. Milliarden Dollar vernichtet so. Okay. Ehrlicherweise muss man natürlich dazu sagen, dass jeder, der da hart betroffen war, sich natürlich auch selber hinterfragen muss, warum war ich halt betroffen, ne? Warum habe ich selber sone große Dependency auf US East 1 und hätte man das nicht irgendwie antizipieren müssen und irgendwie bessere eigene Failover Lösungen haben müssen und so weiter und so fort. Auch das im Nachhinein immer einfacher gesagt als getan Und wenn son sone Katastrophe einmal in 5 Jahren passiert, dann ist muss man sich ja auch realistischerweise die Frage stellen, lohnt es sich da so krass in Redundanzen und Failovers zu investieren oder nimmt man das nicht einfach als operatives Risiko in Kauf, ja?
Garrelt
Ja, ja.
Jan
Wie bei jeder Risikoabwägung am Ende des Tages. Aber ja. Das nur zu unserer kleinen Nachlese, zu dem ABS Incident.
Garrelt
Aber vielen Dank für die Erklärung, weil ich hab mich auch schon gefragt, was da genau das Thema war und irgendwie spannend, dass der Fix eigentlich so schnell ging und dann ja, die Probleme anderer waren. Ja. Denen muss auch irgendwie der Arsch aufgrund des Gegingen sein für eine Weile.
Jan
Ja, da gab's auch son paar interessante Memes zu, die sich da so natürlich instant verbreitet haben. Und irgendjemand hat direkt son Parady Account aufgemacht auf x und das, normalerweise bin ich ja nicht mehr so viel auf x, aber aufgemacht auf x und da da das, normalerweise bin ich ja nicht mehr so viel auf x, aber der wurde mir auch zugeschickt, ich hab's mega gefeiert, der halt so aus Sicht 1 Interns diesen Tag irgendwie beschreibt, ja? Und das fängt halt irgendwie so an mit, hey, heute ist mein erster Tag bei ABS und ich durfte direkt am DNS System von deiner Mutter dir irgendwie meinen ersten Patch deployen. Und dann beschreibt er halt so, wie dieser Tag irgendwie gelaufen ist für absolutes Comedy Gold, ja? So Die Hälftelevel. Muss ich aber euch noch mal raussuchen. Ja, vielleicht kann ich nicht über das noch mal teil oder so. Aber das war Und also wie gesagt, es liest sich superlustig an, der Typ hat wohl auch gleichzeitig so viel Hate abgekriegt, dass er dann sich genötigt gesehen hat, doch noch mal klarzustellen, dass es nur 'n Commitment Account ist und dass es nicht her war, auch weil wo wirklich Leute da wohl geglaubt haben, so, ja. Alter. Der 1 war's. Und es gab natürlich auch Leute, die direkt so gesagt haben, so, ja, da hat irgendwie wieder jemand die AI DNS Code schreiben lassen und dann ist alles kaputtgegangen und so, ja. Die so Leute gab's natürlich auch, aber gell. Ja. Wer den wer den Schaden hat, braucht für den Spott nicht zu sorgen, ne. Absolut. Dann bleibt uns, glaub ich, gar nicht mehr so viel zu sagen. Falls ihr das jetzt grade hört und gleich auf dem Weg zur Programmierkontakt 2 seid, dann wünschen wir euch quasi schon mal superviel Spaß. Wenn ihr das hört und nicht auf dem Weg zur Programmierkontakt 2 seid, dann sagen wir euch, ihr habt bestimmt ganz schön viel verpasst. Warum seid ihr nicht da? Aber nächstes Jahr ist auch noch ein Tag. Nein, das das klingt doof. Nächstes Jahr ist auch noch eine Programmiercom. Habt ihr dann vielleicht da noch mal die die Ist
Garrelt
das schon Spoiler jetzt?
Jan
Nee, ja, hab ich auch grade ganz kurz überlegt, aber bis wir das veröffentlichen, ha, Big Brain Move, ja, haben wir das auch schon angekündigt auf der Programmicon. Also außer Du hörst den Podcast echt direkt, wenn er rauskommt. Wir publishen das ja immer so 6 Uhr morgens rum und wenn Du direkt früh aufstehst und das hörst, dann hast Du quasi hier die Chance gehabt, das zu hören, bevor wir's auf dem Opening von Tag 2 irgendwie anteasern.
Garrelt
Aufregend.
Jan
Ja. Alright. Dann 1000 Dank. Heute eine etwas kürzere Folge der Programmiercon geschuldet und Dennis ist schon abgehauen zum Telefonieren. Deswegen bleibt mir nur noch zu sagen, 1000 Dank, Gerald, dass Du wieder mit am Start warst. Hat Spaß gemacht. Wir hören uns in 2 Wochen wieder. Wenn ihr da draußen Feedback, Anregungen, Fragen, Kritik habt, dann wie gesagt immer gerne auf unseren Discord Server kommen oder ihr meldet euch auf Social Media oder schreibt uns eine Mail an Podcast at Programmier Punkt bar. Wir hören uns dann bald wieder. Tschau, tschau.
Garrelt
Tschau, tschau.
Feedback