|
Description:
|
|
Nachdem sich Vanessa und Peter in ihrem ersten Anlauf noch um ein strukturiertes Abarbeiten des Fragenkatalogs der 2022er State of JS-Umfrage bemüht hatten, ergehen wir uns dieses Mal in eher freier Assoziation, schaffen es dabei aber auch, die verbleibenden 98% der Umfrage in einer Revision abzufertigen.
Schaunotizen
- [00:00:58] State of JS
- Die zweite Hälfte des State of JS befasst sich mit Tools und Frameworks, die wir eher abstrakt diskutieren. Zu den relevanten Fragen zählt die von State of JS getroffene Unterscheidung zwischen Frontend- und „Render-Frameworks“ (Next, Nuxt, Gatsby etc.), die Frage inwiefern Frontend-Frameworks eher ein Management als ein Entwickler-Tool sind und wie Web Components dazu passen. Ob wir jemals weniger Frameworks haben (oder werden haben wollen) und ob uns der framework-industrielle Komplex überhaupt lässt, bleibt trotz des kreativen Einsatzes von Auto-Analogien (u.A. zur Pistolenschaltung) ungeklärt. Zu Sinn und Zweck von Mobile Frameworks haben wir eher wenig beizutragen, feiern aber Browser-Devtools wie DOM-Breakpoints (Chrome, Firefox), Hover-State-Enforcing (Chrome, Firefox), Resource Overrides (Chrome-Extension) und In-Devtools-Suchfunktionen gründlich ab (und anwesende Performance-Päpste finden darüber hinaus an an Chromes Trace-Tools gefallen). Weitere ehrenswerte Nennungen erfahren Sentry, die (einigermaßen) gute alte Formularvalidierung,
und , die View Transition API und generell alles aus der Revision 552 zu Frontend Development im Jahr 2023.
Transkript
WEBVTT
00:00.000 --> 00:04.000
WorkingDraft Revision 553.
00:31.000 --> 00:36.000
Diese Revision von WorkingDraft wird euch präsentiert von Hörerinnen und Hörern wie euch.
00:36.000 --> 00:40.000
Auf patreon.com slashworkingdraft könnt ihr uns ein paar Euro in den Hut werfen.
00:40.000 --> 00:47.000
Aus euren Beiträgen und unseren gelinglichen Werbeeinnahmen bezahlen wir allerlei teure Software-Abus und das Honorar unserer Audio-Produceren.
00:47.000 --> 00:52.000
Wenn ihr euch auch beteiligen wollt, könnt ihr das unter patreon.com slashworkingdraft sehr gerne machen.
00:52.000 --> 01:01.000
Wir danken euch tausendfach für die Unterstützung und fürs weitere Zuhören.
01:22.000 --> 01:30.000
Ich habe meine Weihnachtsbrille leider nicht gefunden, die ich noch schnell anziehen wollte.
01:30.000 --> 01:34.000
Die liegt unerreichbar für mich.
01:34.000 --> 01:42.000
Ich bin der Schepp und es steht ja noch aus, den zweiten Teil oder vielleicht den zweiten von noch viel mehr Teilen des State-of-JS aufzunehmen.
01:42.000 --> 01:45.000
Und das machen wir heute.
01:45.000 --> 01:52.000
Ich war bei der letzten bei der ersten Ausgabe ja nicht dabei. Ich habe mir die aber wohl angehört.
01:52.000 --> 01:55.000
Das heißt, so ein bisschen im Bilde bin ich schon.
01:55.000 --> 02:01.000
Wie das halt beim State-of-JS so ist, gibt es ja so verschiedene thematisch kopierte Kapitel.
02:01.000 --> 02:12.000
Und ich glaube, ihr seid zuletzt, ihr habt viel Zeit in den ersten drei Kapiteln verbracht und musstet dann bei den Frameworks das Handtuch werfen.
02:12.000 --> 02:16.000
Zeitliche Handtuche.
02:16.000 --> 02:23.000
Ich glaube, wenn wir neben Tempo weitermachen schaffen, das heute auf jeden Fall auch nicht. Aber wir gucken mal, wie weit wir kommen.
02:23.000 --> 02:28.000
Ich bin mir ziemlich sicher, dass ich zu AngularJS weniger zu sagen habe als zu Proxies.
02:28.000 --> 02:33.000
Jetzt habe ich auch schon wieder AngularJS gesagt. Aber dazu habe ich wirklich wenig zu sagen.
02:33.000 --> 02:44.000
Genau, die haben das hier aufgeteilt in Front-End-Frameworks und danach kommen die Rendering-Frameworks. Ich weiß nicht ganz genau, wo die da den Unterschied sehen.
02:44.000 --> 02:50.000
Was aber auch da liegt, dass ich jetzt gerade Front-End-Frameworks auf habe und noch nicht in Rendering-Frameworks reingeschaut habe.
02:50.000 --> 03:02.000
Rendering-Frameworks sind so die Next-JS-Dinger, die halt irgendwie festgestellt haben, dass Single-Page-Application als alleiniges Konzept vielleicht nicht ganz so tragfähig ist, wie man zwischenzeitlich mal dachte.
03:02.000 --> 03:07.000
Also sie rendern dann die Webseite nicht nur und also sie surfen die dann auch.
03:07.000 --> 03:13.000
Ich schätze mal, dass es alle sind, die ihren eigenen Server noch dazu brauchen, wahrscheinlich alle so ein bisschen auf Node.js.
03:13.000 --> 03:16.000
Die quasi alle Stages abdecken und nicht nur denen.
03:16.000 --> 03:28.000
Genau, dass du dann auch einmal das Statische HTML raus rendern kannst, falls du eine Statische Webseite möchtest oder halt eine dynamische Webseite aber eben mit JavaScript Server auch ausliefern.
03:28.000 --> 03:33.000
Dementsprechend hat man dann auch definitiv einen getrenntes Front-End und Back-End.
03:33.000 --> 03:39.000
Ist ja definitiv so der Trend der letzten, weiß ich gar nicht, wie viele Jahre schon länger.
03:39.000 --> 03:49.000
Jetzt sehe ich fast auch wieder den Trend auf der anderen Seite, dass man Back-End und Front-End teilweise auch wieder zusammen ausliefert.
03:49.000 --> 04:04.000
Oder so ein Mischmasche von allem ein bisschen macht, dass man halt quasi seine eigene Webseite durch verschiedene Technologien eben ausliefert.
04:04.000 --> 04:15.000
Dann hat man den Statischen Teil, aber dann gibt es eben eine Front-End-Back-End-Applikation zusammen, ein Full-Stack-Framework oder es gibt dann wieder einen anderen Bereich, der dann wieder eine Single-Page-Application ist.
04:15.000 --> 04:20.000
Das ist quasi immer das passende für die Aufgabe aus so einem Ganzen.
04:20.000 --> 04:23.000
Ob es das passende dann immer ist, ist die andere Frage.
04:23.000 --> 04:26.000
Aber ich glaube, das hat sich da immer so mal entwickelt.
04:26.000 --> 04:28.000
Das ist immer das Ziel.
04:28.000 --> 04:36.000
Aber ich glaube, wir hatten auch letztens schon mit Joe darüber gesprochen, dass Micro Front-Ends zum Beispiel klingen ja in der Theorie ganz toll.
04:36.000 --> 04:42.000
Ich habe mit ihnen geantwortet, ich habe mit vielen gesprochen, die damit arbeiten und es hat viele Vorteile.
04:42.000 --> 04:47.000
Aber meistens ist die Praxis nicht ganz so supergeil wie die Theorie.
04:47.000 --> 04:57.000
Und ich glaube auch dieses, wir suchen immer die richtige Technologie für den richtigen Bereich aus, ganz egal ob Micro Front-Ends oder nicht, hat da ähnliche Problemchen.
04:57.000 --> 05:09.000
Eigentlich wäre, glaube ich, auch Bereiche, wo ich an der Stelle vielleicht nicht Vue.js hätte einsetzen müssen, sondern L-Pine.js hätte gereicht.
05:09.000 --> 05:14.000
Aber das ganze Team kennt halt Vue.js und es ist schon installiert und es wird schon gemaintaint.
05:14.000 --> 05:20.000
Und wollen wir uns dann noch ein Framework mehr ans Bein binden, ist dann auch die andere Frage.
05:20.000 --> 05:26.000
Aber das könnte man ja auch so laufen lassen unter das richtige Framework für den richtigen Einsatzzweck.
05:26.000 --> 05:36.000
Also der Einsatzzweck ist dann bei dir eben auch, irgendwie jeder sollte sich damit auskennen und nicht noch mal zusätzlich was sich drauf schaffen müssen.
05:36.000 --> 05:42.000
Und vielleicht muss das auch noch gut korrexistieren. Also ich weiß nicht, ob L-Pine.js gut mit Reakt leben kann zusammen, wahrscheinlich eher nicht.
05:42.000 --> 05:45.000
Weil das eine manipuliert Dom, das andere den State.
05:45.000 --> 05:54.000
Also so wie wenn man so zu Anfangszeiten der reaktiven Frameworks immer noch so, hey, aber das kann ich nochmal mit jQuery schnell machen und dann so, ja, nee, geht nicht.
05:54.000 --> 06:05.000
Also wenn, dann musst du nur State machen, weil das State getriebene, reaktive Framework dann einfach das alles wieder zurückrollt, was jQuery da im Dom rum fummelt.
06:05.000 --> 06:14.000
Die Frage ist halt tatsächlich, sucht man das richtige Werkzeug für den richtigen Einsatzzweck, also für das Problem, das es zu lösen gilt?
06:14.000 --> 06:19.000
Oder braucht man eher ein Framework, das zur restlichen Gesamtsituation passt?
06:19.000 --> 06:27.000
Weil also ich bin mir jetzt nicht wirklich so sicher, ob man heutzutage da wirklich irgendwie einen Unterschied bezüglich Fähigkeiten machen kann.
06:27.000 --> 06:32.000
Weil ich meine, man kann ja so ziemlich jedes Problem mit jedem Framework auf die ein oder andere erschlagen.
06:32.000 --> 06:35.000
Und das geht sicherlich mal besser, mal weniger gut.
06:35.000 --> 06:40.000
Aber es gibt ja zumindest für alles irgendwie den offiziellen Weg, das irgendwie gebacken zu bekommen.
06:40.000 --> 06:46.000
Und da frage ich mich halt eben, ob so die alles überschattende Überlegung nicht eher sein sollte, was man sonst so da hat.
06:46.000 --> 06:52.000
Also irgendwie keine Ahnung, ich will irgendwie ein Problem lösen und ich habe irgendwie ein Hochhaus voller Leute, die reakt können.
06:52.000 --> 07:00.000
Dann wäre das ja wahrscheinlich irgendwie sinnvoll, Reakt auch dann zu nehmen, wenn es vielleicht für ein gewisses Problem die weniger gute Lösung wäre,
07:00.000 --> 07:05.000
wenn es nicht eine Vollkatastrophe wird, aber dann kriege ich es halt eben einigermaßen, sagen wir berechenbar umgesetzt,
07:05.000 --> 07:10.000
weil ich halt eben das institutionelle Wissen darum habe, wie man es denn machen würde.
07:10.000 --> 07:15.000
Also hier so klassischer Fall ist halt irgendwie so, okay, wir brauchen jetzt irgendwie für so eine interne Anwendung,
07:15.000 --> 07:18.000
einfach nur ein Haufen Formulare, die das irgendwie eine Datenbank reinschreiben.
07:18.000 --> 07:22.000
Wo ich ja normalerweise so spontan sagen würde von so dem Use Case her.
07:22.000 --> 07:26.000
Und man nimmt halt irgendwie so ein althergebrachtes Backend Framework, so Ruby on Rails-mäßig,
07:26.000 --> 07:31.000
dann einfach nur hin deklariert, das ist meine Datenbankstruktur und das Ding setzt einem das automatische ein okayes Formular um.
07:31.000 --> 07:35.000
Speichert das weg, Machtvalidierung und Block in bla bla bla und ich habe null Arbeit.
07:35.000 --> 07:37.000
Nützt mir halt nichts, wenn ich niemanden da habe.
07:37.000 --> 07:42.000
Mit Reakt muss man das ja quasi irgendwie von Grund auf neu aufbauen oder sich halt irgendwie 9000 Dependencies installieren,
07:42.000 --> 07:47.000
aber dann kriegt man es halt irgendwie in einem berechenbaren Zeitrahmen zuverlässig hin.
07:47.000 --> 07:54.000
Ja, ich bin ja auch so jemand, der das bevorzugt, also zu wissen, was da passiert.
07:54.000 --> 07:58.000
Lieber mehr Arbeit und zu Fuß und dann genau wissen, was wo passiert,
07:58.000 --> 08:05.000
um damit ich eben auch quasi Garantie, Garantien aussprechen kann, dass wir irgendwie was schaffen.
08:05.000 --> 08:11.000
Und dass ich auch, wenn irgendwas ist, weiß so, ah, das ist an der Stelle, muss ich die Motorhaube öffnen
08:11.000 --> 08:18.000
und rein fassen und das irgendwie anzupassen, als eben auf irgendeine Magic zu setzen.
08:18.000 --> 08:24.000
Webpack ist ja auch so ein Kandidat, die halt vielleicht das gut macht,
08:24.000 --> 08:27.000
aber wo ich im Grunde gar nicht weiß, wie das im Hintergrund funktioniert
08:27.000 --> 08:30.000
und wo ich auch nicht gerade stehen kann für.
08:30.000 --> 08:34.000
Ja, außerdem von Peter grad genannten Fall mit den internen Tools.
08:34.000 --> 08:38.000
Da ist mir eigentlich egal, wie viel Magic da jetzt mit geliefert wird,
08:38.000 --> 08:43.000
hat es funktioniert schnell und da ist natürlich dann die Voraussetzung,
08:43.000 --> 08:49.000
dass wir an diesem Interface dann möglichst wenig rumschrauben müssen.
08:49.000 --> 08:54.000
Da ist egal, ob der Button jetzt eckige oder runde Border Radius hat oder ähnliches,
08:54.000 --> 08:57.000
also gerade auch was CSS Frameworks dann angeht.
08:57.000 --> 09:00.000
Verwend ich für solche Falle immer noch gerne,
09:00.000 --> 09:03.000
wo immer, weil ich die Klassennamen einfach immer noch auswendig kenne.
09:03.000 --> 09:07.000
Und was jetzt der Button da für Style ist, also die klasse Button da,
09:07.000 --> 09:13.000
was wirklich für Style es ran macht, ist egal. Und das einzige Feedback,
09:13.000 --> 09:19.000
was kommen kann, ist tatsächlich, das finde ich super interessant,
09:19.000 --> 09:24.000
wenn dann an den Link eine Buttonklasse ran gehängt wird.
09:24.000 --> 09:27.000
Also dann, weil das ist so tief in den Leuten drin,
09:27.000 --> 09:31.000
das kann ich ja nicht im neuen Tab öffnen.
09:31.000 --> 09:36.000
Und dann habe ich dann nochmal nachgeschaut,
09:36.000 --> 09:38.000
aber guck mal, das schaut aus wie ein Button.
09:38.000 --> 09:41.000
Wieso haben wir dann einen Button? Ja, das schaut schön aus.
09:41.000 --> 09:47.000
Aber da, wie gesagt, der Button ist round, irgendwas wird schon funktionieren.
09:47.000 --> 09:52.000
Wie ich da jetzt das richtige Margin einstelle, das Style geht schon auch.
09:52.000 --> 09:56.000
Ja, es ist also worauf basiert dein Business in erster Linie.
09:56.000 --> 09:59.000
Also das, was so deine Kernkompetenz ist,
09:59.000 --> 10:02.000
da solltest du am besten die Größekontrolle darüber haben.
10:02.000 --> 10:09.000
Also dann wählst du eben Technologien aus, die du einfach gut beherrschst,
10:09.000 --> 10:11.000
weil du lebst ja davon.
10:11.000 --> 10:15.000
Und vielleicht diese anderen zusätzlichen Tools, die du dir so rundrum aufbaust.
10:15.000 --> 10:19.000
Also das ist ja genauso, die kannst du auch theoretisch auslagern
10:19.000 --> 10:22.000
in die Cloud, an irgendwelche Anbieter als Software,
10:22.000 --> 10:25.000
es ist Service oder sowas, weil so egal.
10:25.000 --> 10:29.000
Aber so dein Kernprodukt da, also das willst du,
10:29.000 --> 10:33.000
willst du einfach unter Kontrolle haben, so gut es geht.
10:33.000 --> 10:37.000
Ja, ich denke, das ist halt so das Ding.
10:37.000 --> 10:40.000
Wir hatten ja mal vor ewig langer Zeit, also hier,
10:40.000 --> 10:43.000
die Accelerated Mobile Pages noch was waren.
10:43.000 --> 10:46.000
Da haben wir ja mal irgendwann mal herausgearbeitet,
10:46.000 --> 10:49.000
dass das ja weniger ein technisches Ding ist,
10:49.000 --> 10:51.000
als vielmehr so ein Management Tool,
10:51.000 --> 10:53.000
um irgendwie die Leute darauf einzunorden,
10:53.000 --> 10:56.000
dass man halt gewisse Best Practices befolgt.
10:56.000 --> 10:59.000
Und ich glaube, ich tendiere mittlerweile dazu,
10:59.000 --> 11:01.000
diesen ganzen Frontend Framework,
11:01.000 --> 11:04.000
wo heia auch so ein bisschen in diese Richtung zu schieben.
11:04.000 --> 11:06.000
Weil das ist halt eben ein schwieriges Problem,
11:06.000 --> 11:09.000
da irgendwie so eine Frontend-Applikation aufzuziehen.
11:09.000 --> 11:12.000
Und wenn man zumindest irgendwie einen Weg eingeschlagen hat,
11:12.000 --> 11:15.000
und sei es, dass er über drei, weiß ich nicht,
11:15.000 --> 11:17.000
Umfahrungen und Umleitungen führt,
11:17.000 --> 11:19.000
wenn er am Ende zum Ziel führt,
11:19.000 --> 11:21.000
mit Werkzeugen, wie man so einigermaßen drauf hat,
11:21.000 --> 11:23.000
dann nimm's halt und mach dir halt bloß nichts drauf,
11:23.000 --> 11:25.000
wenn irgendwie deine Codebase ein bisschen all aussieht
11:25.000 --> 11:27.000
und halt nicht mehr Hippe ist.
11:27.000 --> 11:30.000
Solange da irgendwie noch einigermaßen Pflege
11:30.000 --> 11:33.000
und Aktivität hinter ist, nimm's halt.
11:33.000 --> 11:35.000
Man müsste halt nur vielleicht noch überlegen,
11:35.000 --> 11:37.000
wie das so mit der Risikoabwägung ist bezüglich,
11:37.000 --> 11:40.000
was machen wir denn, wenn dem Ding so eine Art
11:40.000 --> 11:43.000
AngularJS2Angular bevorsteht?
11:43.000 --> 11:45.000
Irgendwie solche Migrationen.
11:45.000 --> 11:47.000
Und da gibt's ja im Prinzip auch zwei Strategien,
11:47.000 --> 11:49.000
wo man halt irgendwie sagen kann,
11:49.000 --> 11:52.000
entweder ist das jetzt nicht so kern oder nicht so wichtig,
11:52.000 --> 11:54.000
oder wir machen da irgendwie einen anderen Trade-Off,
11:54.000 --> 11:56.000
wo wir rausgehen, dass dieses Fronten so lange überlegt,
11:56.000 --> 11:58.000
dass man halt eben sagt, solche größeren Migrationsschritte,
11:58.000 --> 12:00.000
die ja im Prinzip von außen an uns herangetragende Arbeit sind,
12:00.000 --> 12:02.000
die wir nicht bestellt haben, die uns ja auch nicht weiterbringt,
12:02.000 --> 12:04.000
die gehen wir nicht mit oder die gehen wir mit.
12:04.000 --> 12:07.000
Das sind, glaube ich, eigentlich die interessanteren Dimensionen,
12:07.000 --> 12:10.000
worauf man diese Framework-Frage diskutieren muss,
12:10.000 --> 12:13.000
als irgendwie errendert jetzt irgendwie React oder Angular
12:13.000 --> 12:15.000
das Ding irgendwie eine halbe Millisekunde schneller.
12:15.000 --> 12:17.000
Ich glaube, das ist wirklich fast immer egal.
12:17.000 --> 12:19.000
Ja, ist es auch.
12:19.000 --> 12:21.000
Genau, für das andere, was du gesagt hast,
12:21.000 --> 12:23.000
da kann man vielleicht schauen,
12:23.000 --> 12:28.000
dass man es schafft, sein Framework für vielleicht eben da
12:28.000 --> 12:30.000
nur einzusetzen, wo es wirklich nötig ist,
12:30.000 --> 12:35.000
dass man vielleicht irgendwie Business-Logic in JavaScript-Modulen hat,
12:35.000 --> 12:40.000
die man theoretisch sowohl in React rein importieren kann,
12:40.000 --> 12:44.000
wie auch in Angular Business-Logic.
12:44.000 --> 12:47.000
Und dass du nach vorn raus, möglicherweise, dann sagst du, okay,
12:47.000 --> 12:51.000
ich nutze Web-Components, die kann ich auch wieder andocken
12:51.000 --> 12:54.000
an so eine Middleware, egal welche das ist, also ob das,
12:54.000 --> 12:57.000
also egal welche das ist, geht natürlich bei React jetzt,
12:57.000 --> 12:59.000
glaube ich, nicht.
12:59.000 --> 13:01.000
Ja, ich wollte gerade auch.
13:01.000 --> 13:04.000
Genau, aber an Preact kannst du das ja andocken.
13:04.000 --> 13:08.000
Was ja, was ein Ersatz sein könnte für React,
13:08.000 --> 13:11.000
aber im Grunde, also trotzdem gilt das ja,
13:11.000 --> 13:14.000
also du kannst es an so ziemlich alles andocken.
13:14.000 --> 13:16.000
Das gilt, aber there's no free lunch, das ist halt das Ding.
13:16.000 --> 13:19.000
Das ist halt schon Aufwand, den du halt irgendwie rechtfertigen musst.
13:19.000 --> 13:23.000
Ja, ja, aber wenn du dich wappnen willst,
13:23.000 --> 13:26.000
und ich glaube, das passiert ja immer, also ich meine,
13:26.000 --> 13:30.000
Vanessa hat erzählt, dass ihr habt dann von View2 auf View3
13:30.000 --> 13:33.000
migriert, also irgendwie so kramert man ja ständig.
13:33.000 --> 13:38.000
Und ich glaube, die mehr man da auf irgendwelche Web-Standards
13:38.000 --> 13:44.000
auslagert, die bleiben ja stabil oder stabil leer
13:44.000 --> 13:48.000
und also desto weniger muss man dann migrieren.
13:48.000 --> 13:51.000
Ja, aber dafür machst du dir halt dann den Alltag kaputt.
13:51.000 --> 13:54.000
Also wenn du jetzt wirklich Web-Components auf dem Stand von heute nimmst
13:54.000 --> 13:57.000
und die schmeißt du in deinen React TypeScript rein,
13:57.000 --> 14:01.000
dann hast du extrem viel mehr Aufwand für wenig wirklich spürbaren Zugewinnen,
14:01.000 --> 14:04.000
weil ja im Prinzip an dieser Web-Component-Boundary,
14:04.000 --> 14:08.000
wo ja im Prinzip du sprichst halt im wesentlichen HTML,
14:08.000 --> 14:09.000
du sprichst im wesentlichen String,
14:09.000 --> 14:12.000
da geht dir ja im Prinzip sämtlicher TypeScript-Vorteil flöten.
14:12.000 --> 14:15.000
Und du hast halt ein komplett anderes Entwicklungsparadigma,
14:15.000 --> 14:18.000
du musst halt irgendwie eine komische Klasse schreiben und du hast ja auch das Konzept
14:18.000 --> 14:21.000
von irgendwelchen Life-Cycles, aber funktioniert dann alles einfach komplett anders
14:21.000 --> 14:24.000
und du hast halt gewaltigen mentalen Overload.
14:24.000 --> 14:29.000
Ja, aber nur weil du den, wenn du die anderen Frameworks gewohnt bist, oder?
14:29.000 --> 14:33.000
Und mir ist TypeScript übrigens wurscht, weil ich es ja nicht benutze.
14:33.000 --> 14:37.000
Das ist ja auch völlig valide, aber das ist halt so,
14:37.000 --> 14:39.000
zumindest wenn du ja zum Beispiel von Angular redest,
14:39.000 --> 14:42.000
wo das ja im Prinzip de facto der Standard ist,
14:42.000 --> 14:45.000
und auch bei React gibt es das relativ häufig.
14:45.000 --> 14:47.000
Okay, lassen wir den TypeScript-Faktor raus.
14:47.000 --> 14:51.000
Es ist trotzdem so, du hast halt immer noch, ja, es ist halt mehr auffand.
14:51.000 --> 14:54.000
Und diesen mehr auffand könntest du dir sozusagen ersparen,
14:54.000 --> 14:58.000
indem du einfach so sagst, ach komm, wird schon nicht schief gehen.
14:58.000 --> 15:00.000
Wir nehmen jetzt einfach hier die React-Komponente,
15:00.000 --> 15:03.000
die das schon irgendwie macht mit irgendwelchem Krams,
15:03.000 --> 15:04.000
und dann passt das schon.
15:04.000 --> 15:06.000
Also zumindest ist das jetzt meine Erfahrung,
15:06.000 --> 15:09.000
wo ich letztens das ganze Jahr im Prinzip damit gerungen habe,
15:09.000 --> 15:13.000
irgendwie CodeMirror in einer selbst gebastelten Art und Weise
15:13.000 --> 15:16.000
in eine React-Aplikation zu integrieren mit TypeScript on top.
15:16.000 --> 15:19.000
Und das war ausgesprochen unintuitiv und sehr viel Arbeit.
15:19.000 --> 15:21.000
Und ich hätte es sehr viel leichter haben können,
15:21.000 --> 15:25.000
aber dann hätte ich halt nicht Business-Logik von dem ganzen Kern isoliert.
15:25.000 --> 15:28.000
Und das wollte ich in dem Fall haben, aber hätte ich es nicht gemacht,
15:28.000 --> 15:31.000
hätte ich mir wirklich viele, viele Wochen des Rumgewirges ersparen können.
15:31.000 --> 15:34.000
Jetzt nicht Vollzeitarbeit, aber halt so,
15:34.000 --> 15:36.000
wo man halt am Feierabend nochmal dran schraubt,
15:36.000 --> 15:38.000
da hätte ich viele Wochen was anderes schrauben können.
15:38.000 --> 15:41.000
Ja, ich habe da die identische Erfahrung gemacht.
15:41.000 --> 15:46.000
Also das ist, ich sage auch die Argumente und ich bringe auch die Argumente ein,
15:46.000 --> 15:50.000
wie maintainable ist das Ganze, dann müssten wir das alles mal migrieren und etc.
15:50.000 --> 15:53.000
Dennoch ist es genau dieser Alltag.
15:53.000 --> 15:58.000
Das merke ich jetzt immer, wenn man immer so seit 2, 3 Jahren eine Codebase hat
15:58.000 --> 16:03.000
und dann aber irgendwie für einen Side-Projekt oder für was auch immer,
16:03.000 --> 16:07.000
für eine Demo, einfach mal wieder das Neuste hernimmt
16:07.000 --> 16:11.000
und da zum Beispiel sind die Seiten laden schon automatisch,
16:11.000 --> 16:15.000
haben da schon so ein Ladebalken drin, die Error-Cases werden schon automatisch für dich.
16:15.000 --> 16:18.000
Irgendwie, da kommt es schon eine ganze Notification bei dem Framework dabei
16:18.000 --> 16:21.000
oder bei Umstellungen auf Webpack zu Vite,
16:21.000 --> 16:25.000
wenn man einmal damit Vite eine Applikation installiert hat,
16:25.000 --> 16:29.000
dann will man da eigentlich nicht wieder sein Webpack-Projekt starten.
16:29.000 --> 16:33.000
Und das ist der Alltag, um schnell Features zu liefern
16:33.000 --> 16:38.000
und schnell Sachen zu ändern und mit dem CSS-Framework der eigenen Wahl,
16:38.000 --> 16:41.000
was auch immer die Design jetzt sei, schnell zu sein
16:41.000 --> 16:46.000
und mehrere User damit glücklich zu machen.
16:46.000 --> 16:49.000
Versus ich brauche halt jeden Tag ein bisschen länger,
16:49.000 --> 16:52.000
weil da muss ich Tesla machen und da muss ich hier noch machen,
16:52.000 --> 16:55.000
weil ich möchte das jetzt halt gerade nicht migrieren.
16:55.000 --> 16:57.000
Ich glaube, Testing ist da auch ein gutes Beispiel,
16:57.000 --> 17:02.000
weil vielleicht auch nur in meiner Welt aber Testing am unliebsten migriert wird.
17:02.000 --> 17:07.000
Unliefer als jetzt irgendwie das Front-and-App-Code-Framework-Per-See
17:07.000 --> 17:12.000
und dann handiert man eben da noch mit dem Framework vom letzten Jahr noch herum
17:12.000 --> 17:14.000
und weiß, dass man eben da Stolpersteine hat.
17:14.000 --> 17:17.000
Und dann ist halt die Frage, wie man damit umgeht.
17:17.000 --> 17:21.000
Ich glaube, das Wichtige ist, so feste Entscheidungen zu treffen und zu sagen.
17:21.000 --> 17:24.000
Also, das wird migriert, das wird nicht migriert,
17:24.000 --> 17:27.000
aber wir versuchen vielleicht im Konzept des besseren Frameworks
17:27.000 --> 17:30.000
gerade dem Konzept einfach zu folgen
17:30.000 --> 17:32.000
und haben eben noch die andere Sonntags.
17:32.000 --> 17:38.000
Die Frage, die ich mich nur generell stelle, ist schon,
17:38.000 --> 17:42.000
warum haben wir denn zu viele Auswahlmöglichkeiten?
17:42.000 --> 17:46.000
Also, es gab ja die Zeit, da hatten wir, hatte im L&J Query gefühlt.
17:46.000 --> 17:50.000
Und plötzlich kamen andere Screensizes
17:50.000 --> 17:52.000
und plötzlich gab es andere Geräte
17:52.000 --> 17:54.000
und wir müssen alles für alles optimieren,
17:54.000 --> 17:58.000
für iPhone XS Größe zu ultra-wide-screen
17:58.000 --> 18:01.000
und wir brauchen das alles sehr performant,
18:01.000 --> 18:03.000
weil wir jetzt so viel Logik auch im Frontend haben.
18:03.000 --> 18:07.000
Und da habe ich gesehen, da kamen unfassbar viele Libraries
18:07.000 --> 18:11.000
und unfassbar viele so kleine Helfer-Line mit raus,
18:11.000 --> 18:15.000
ob das jetzt Gulp ist oder Browser-Refy oder dann eben Webpack war.
18:15.000 --> 18:18.000
Aber ich habe auch das Gefühl, das hört einfach nicht auf.
18:18.000 --> 18:22.000
Und da frage ich mich schon, gibt es nicht irgendwann
18:22.000 --> 18:29.000
nur noch Framework X, Rendering Framework Y,
18:29.000 --> 18:33.000
CSS-Modul von mir aus A und B.
18:33.000 --> 18:37.000
Oder bewegen wir uns wirklich in diesem Ökosystem,
18:37.000 --> 18:41.000
wo wir immer 20 verschiedene Frameworks benutzen könnten
18:41.000 --> 18:45.000
und ein Survey haben, wo 20 Frameworks aufgelistet werden,
18:45.000 --> 18:47.000
über die wir lieber im Podcast nicht genau darüber gehen,
18:47.000 --> 18:50.000
weil sonst müsste ich bei 90 Prozent davon sagen,
18:50.000 --> 18:52.000
ja, schon mal gehört, keine Ahnung, schon mal gehört,
18:52.000 --> 18:55.000
keine Ahnung, schon mal gehört, keine Ahnung.
18:55.000 --> 18:58.000
Ich würde auf letzteres Tippen einfach nur,
18:58.000 --> 19:02.000
weil der Problemkreis, den du im Prinzip mit Frontend erschlagen willst,
19:02.000 --> 19:05.000
derart umfangreich ist, dass sich da, glaube ich,
19:05.000 --> 19:09.000
nicht einfach Formfaktor rausbilden wird, der irgendwie so die Lösung ist.
19:09.000 --> 19:12.000
Wo dann es irgendwie so zwei, drei Varianten gibt,
19:12.000 --> 19:14.000
aber letztlich sind es ja alle die gleichen.
19:14.000 --> 19:16.000
Also irgendwie, weiß ich, Personenkraftwagen.
19:16.000 --> 19:18.000
Das ist halt im Prinzip ein ausentwickeltes, gelöstes Problem.
19:18.000 --> 19:20.000
Die sind alle ungefähr gleich groß.
19:20.000 --> 19:22.000
Sie machen alle ungefähr das Gleiche.
19:22.000 --> 19:25.000
Und ich glaube, irgendwie Frontend-Framework ist mehr so Computing-Device,
19:25.000 --> 19:29.000
wo du halt so von deinem Server-Rack bis zu deinem Desktop-Rechner,
19:29.000 --> 19:32.000
zu deinem Laptop, zu deinem Telefon irgendwie all so kramas,
19:32.000 --> 19:34.000
die alle komplett unterschiedliche Sachen wollen,
19:34.000 --> 19:37.000
die unterschiedliche Prioritäten bedienen.
19:37.000 --> 19:40.000
Ich glaube nicht, dass es da irgendwie das eine Framework gibt,
19:40.000 --> 19:42.000
sie alle zu knechten.
19:42.000 --> 19:46.000
Ich meine, selbst in homogenerem, besser designten, sagen wir mal, Räumen,
19:46.000 --> 19:49.000
wenn ich jetzt mal irgendwie mir so, keine Ahnung,
19:49.000 --> 19:51.000
das Java-Universum hernehme.
19:51.000 --> 19:54.000
Selbst da hat sich ja nicht irgendwann mal so ein Equilibrium eingestellt,
19:54.000 --> 19:56.000
dass es so den einen Weg gibt, das alles zu machen,
19:56.000 --> 19:59.000
sondern auch da gibt es halt diverse Möglichkeiten,
19:59.000 --> 20:01.000
Dinge umzusetzen.
20:01.000 --> 20:03.000
Weniger, weil ich halt einfach glaube, dass das einfach,
20:03.000 --> 20:05.000
weil es sich irgendwer mal überlegt hat und nicht so,
20:05.000 --> 20:07.000
wie das Wett mehr oder minder passiert ist,
20:07.000 --> 20:10.000
wo es einfach sehr viel aufgeräumter ist als hier,
20:10.000 --> 20:13.000
aber hier bei dem Chaos, da können, ich glaube, das bleibt so.
20:13.000 --> 20:15.000
Das ist mein Take.
20:15.000 --> 20:21.000
Kann ich jetzt, also ich finde, was der Peter sagt, eindeutend.
20:21.000 --> 20:24.000
Vielleicht ist es bei Java auch so, dass es da weniger Lösungen gibt,
20:24.000 --> 20:28.000
weil jetzt da, weil das Ziel weniger beweglich ist, also so.
20:28.000 --> 20:33.000
Aber das spricht ja auch nur für Peters These.
20:33.000 --> 20:37.000
Ja, also man möchte eben so viele auf einmal abdecken.
20:37.000 --> 20:41.000
Es ist bei Android und iOS Geräten genauso.
20:41.000 --> 20:44.000
Also ich weiß, es gibt jetzt eben Objective C
20:44.000 --> 20:48.000
und es gibt Swift und es gibt Java und es gibt Kotlin.
20:48.000 --> 20:53.000
Aber ich habe nicht das Gefühl, dass es da jetzt noch so 10
20:53.000 --> 20:55.000
Verschiedenes Date Management Tools gibt,
20:55.000 --> 21:00.000
sondern vielleicht zwei oder drei.
21:00.000 --> 21:03.000
Ja, das kann sein, aber die müssen halt eben auch nicht
21:03.000 --> 21:06.000
potenziell auf irgendeinem Server in der Cloud existieren.
21:06.000 --> 21:10.000
Sondern das ist halt einfach ein sehr viel abgegrenzteres,
21:10.000 --> 21:12.000
sehr viel abgegrenzterer Problembereich, würde ich behaupten.
21:12.000 --> 21:17.000
Dann meistens gewinnen doch da auch die, sagen wir mal,
21:17.000 --> 21:20.000
Frameworks und Lösungen, die die Hersteller dieser
21:20.000 --> 21:23.000
Ökosysteme selbst anbieten oder entwickeln.
21:23.000 --> 21:28.000
Also weil die einfach gut integriert sind und dann sagt man halt so,
21:28.000 --> 21:32.000
also dann, also ich mein Kotlin wurde zwar nicht von Google
21:32.000 --> 21:36.000
erfunden, aber von Google sozusagen auf den Thron gehoben.
21:36.000 --> 21:40.000
Dann, ich glaube, so Firebase wird ja auch viel verwendet
21:40.000 --> 21:45.000
im Android-Umfeld. Also ich würde sagen...
21:45.000 --> 21:48.000
Hat das was damit zu tun, dass das die Hersteller sind
21:48.000 --> 21:51.000
oder hat das damit zu tun, dass das gewaltig große Firmen sind,
21:51.000 --> 21:54.000
die sich leisten können, in die Entwicklung von solchen
21:54.000 --> 21:56.000
Sachen einfach enorme Summen reinzuprobieren?
21:56.000 --> 22:01.000
Auch, aber ich meine, es könnte ja auch ein Amazon-Framework sein
22:01.000 --> 22:03.000
oder sowas, aber ist es nicht.
22:03.000 --> 22:06.000
Es gibt ja ein sehr, sehr erfolgreiches Facebook-Framework
22:06.000 --> 22:10.000
und diesen kein Hersteller von irgendwas.
22:10.000 --> 22:13.000
Trotzdem nutzt das irgendwie jeder und sein Hund,
22:13.000 --> 22:17.000
weil ich glaube tatsächlich, dass das, was da auch so ein bisschen
22:17.000 --> 22:20.000
mit so einem Framework industriell im Komplex irgendwie zu tun haben,
22:20.000 --> 22:23.000
wo man das halt eben einfach so...
22:23.000 --> 22:25.000
Ich meine, es ist halt einfach riesig aufwendig.
22:25.000 --> 22:27.000
Und auch deshalb wird es halt immer ewig viele Dinger geben,
22:27.000 --> 22:29.000
weil halt immer irgendein Entwickler sagen wird,
22:29.000 --> 22:31.000
Boah, das ist mir jetzt so anstrengend
22:31.000 --> 22:33.000
und ich mache jetzt mal was Neues.
22:33.000 --> 22:35.000
Und das ist leicht gewichtig und schön.
22:35.000 --> 22:37.000
Das ist wirklich der ganze Zirkus von vorne los.
22:37.000 --> 22:39.000
Das ist einfach auch unglaublich schwierig,
22:39.000 --> 22:41.000
da was Rundes, Performance oder sonst wie,
22:41.000 --> 22:42.000
irgendwie hinzukriegen.
22:42.000 --> 22:43.000
Also, ne?
22:43.000 --> 22:44.000
Auf der einen Seite irgendwie dieses...
22:44.000 --> 22:46.000
Da nehmen wir hier irgendwie mal React her,
22:46.000 --> 22:49.000
wo halt irgendwie ja wirklich massiv viel Gehirnpower
22:49.000 --> 22:51.000
von sehr schlauen Leuten reinläuft.
22:51.000 --> 22:53.000
Und selbst wenn man halt davon wirklich so ein leichtgewichtigen
22:53.000 --> 22:56.000
Abzug baut, sowas wie Preact,
22:56.000 --> 22:58.000
die hatten wir ja in der Sendung mehr als einmal,
22:58.000 --> 23:01.000
wo die ja auch äußerst anspruchsvolles Zeug machen,
23:01.000 --> 23:03.000
um ihr Ziel umzusetzen.
23:03.000 --> 23:05.000
Ich glaube nicht, dass du wirklich was mit den Herstellern zu tun hast,
23:05.000 --> 23:07.000
sondern wirklich bis eine direkte Funktion davon,
23:07.000 --> 23:09.000
wie viel Energie und Kapital du da reinpumst,
23:09.000 --> 23:12.000
um halt Entwicklung und Propaganda zu befeuern.
23:12.000 --> 23:14.000
Genau, ich meinte aber also so,
23:14.000 --> 23:16.000
weil Vanessa die Frage gestellt hat,
23:16.000 --> 23:19.000
wie das eben auf mobilen Plattformen ist,
23:19.000 --> 23:22.000
also Android und Apple.
23:22.000 --> 23:24.000
Und die haben halt so...
23:24.000 --> 23:26.000
Die haben halt ihre eigenen Lösungen
23:26.000 --> 23:28.000
und die werden eben gepusht
23:28.000 --> 23:30.000
und werden besonders gut integriert
23:30.000 --> 23:32.000
und supportet und dokumentiert.
23:32.000 --> 23:34.000
Und dann liegt das ja auf der Hand,
23:34.000 --> 23:37.000
dass man diese Lösungen nimmt und nicht was anderes.
23:37.000 --> 23:39.000
Ja, es kann schon auch sein,
23:39.000 --> 23:41.000
weil einfach die Problembereiche ein bisschen kleiner sind.
23:41.000 --> 23:43.000
iOS muss dann zumindest...
23:43.000 --> 23:47.000
oder Swift muss dann zumindest nur auf iOS-Geräten laufen.
23:47.000 --> 23:49.000
Ich glaube, bin mir jetzt nicht 100% nicht sicher,
23:49.000 --> 23:51.000
aber ich bin mir...
23:51.000 --> 23:54.000
ob Swift jetzt sowohl auf MacOS, iPadOS oder wie das heißt.
23:54.000 --> 23:56.000
Und iOS läuft.
23:56.000 --> 23:59.000
Während ja JavaScript muss halt überall laufen.
23:59.000 --> 24:03.000
Das muss im Endeffekt sogar auf der Apple Watch noch laufen.
24:03.000 --> 24:07.000
Und auf Android und auf iOS-Geräten
24:07.000 --> 24:11.000
und auf Nintendo Switch-Geräten und auf der PlayStation.
24:11.000 --> 24:14.000
Und auf SpaceX.
24:14.000 --> 24:16.000
Und das auch noch.
24:16.000 --> 24:18.000
Die Frage ist nur,
24:18.000 --> 24:20.000
wir hatten jetzt schon mehrfach darüber gesprochen,
24:20.000 --> 24:22.000
wie entscheidet man sich jetzt so ein bisschen dafür
24:22.000 --> 24:24.000
und wir haben schon durchhören lassen.
24:24.000 --> 24:27.000
Es ist halt auch von dem Team abhängig,
24:27.000 --> 24:29.000
welche Personen da drin sind
24:29.000 --> 24:32.000
und was hat man gerade schon am Maintainen
24:32.000 --> 24:34.000
und wie viel mehr möchte man...
24:34.000 --> 24:37.000
Also wo entscheidet man sich jetzt dafür?
24:37.000 --> 24:41.000
Ich möchte hier das richtige Problem mit der richtigen Lösung erschlagen
24:41.000 --> 24:43.000
oder ich möchte...
24:43.000 --> 24:45.000
Wir haben schon zwei, drei verschiedene Frameworks,
24:45.000 --> 24:47.000
mit denen kriegen wir das auch gelöst,
24:47.000 --> 24:49.000
also entscheiden wir uns für eins der bisherigen.
24:49.000 --> 24:51.000
Was wir jetzt noch nicht besprochen hatte,
24:51.000 --> 24:54.000
sind die Menschen, die das dann im Endeffekt benutzen.
24:54.000 --> 24:58.000
Die Endkunden, die End-User.
24:58.000 --> 25:00.000
Haben wir dazu...
25:00.000 --> 25:03.000
Habt ihr dazu Performance-Grunden oder eben anderes,
25:03.000 --> 25:05.000
dass ihr euch mal sagt,
25:05.000 --> 25:08.000
wir benutzen hierfür jetzt Quick,
25:08.000 --> 25:13.000
weil da, da, da besser für unsere Endkunden und Kundinnen?
25:13.000 --> 25:16.000
Ich glaube, das kommt darauf an,
25:16.000 --> 25:18.000
wie du das selber gewichtest.
25:18.000 --> 25:21.000
Also ein paar der Frameworks sind bestimmt entstanden
25:21.000 --> 25:25.000
wegen der Google Web-Vitals, die es ja jetzt seit ein paar Jahren gibt,
25:25.000 --> 25:30.000
die dann eben vor allem im Bereich total Blocking-Time,
25:30.000 --> 25:33.000
Time-to-Interaction und so Zeugs
25:33.000 --> 25:36.000
die ganze Zeit sich ausheulen,
25:36.000 --> 25:39.000
immer wenn man eben eines dieser klassischen JavaScript-Frameworks
25:39.000 --> 25:41.000
einen Start gebracht hat.
25:41.000 --> 25:45.000
Und viele der neuen Lösungen,
25:45.000 --> 25:48.000
die verkaufen sich ja als entweder,
25:48.000 --> 25:52.000
hey, du arbeitest mit React, aber wir schippen nichts,
25:52.000 --> 25:59.000
oder du arbeitest mit deinem Lieblings-Templating-Engine
25:59.000 --> 26:03.000
und wir hydraten und machen lebendig,
26:03.000 --> 26:07.000
also nur einzelne Teile deines gesamten Frontends.
26:07.000 --> 26:09.000
Und damit lösen wir dein,
26:09.000 --> 26:15.000
das Problem, das du eben bei den Core Web-Vitals hast.
26:15.000 --> 26:18.000
Gleicher Geschmack, aber 0% Zucker.
26:18.000 --> 26:24.000
Genau. Die Frage ist halt, ob das für deine Userin und Userrelevant ist.
26:24.000 --> 26:27.000
Also es gibt ja quasi, das ist ja erstmal ein Laborwerte,
26:27.000 --> 26:31.000
die du messen kannst und dann hast du ja über den Chrome Experience,
26:31.000 --> 26:35.000
Chrome User Experience Report, hast du ja dann quasi deine,
26:35.000 --> 26:38.000
die echten Daten, die also,
26:38.000 --> 26:40.000
ist denn bei deinen Usern das so,
26:40.000 --> 26:42.000
dass der Mainstread viel zu lange blockiert wird,
26:42.000 --> 26:46.000
weil was Google im Lab misst, ist ja so ein Low-End-Device,
26:46.000 --> 26:50.000
mit das langsam ist und das auch langsam angebunden ist
26:50.000 --> 26:53.000
und das sieht ja immer ganz schlimm aus.
26:53.000 --> 26:56.000
Und wenn man dann den Report kriegt von den echten Besuchern,
26:56.000 --> 26:59.000
dann ist es ja meistens gar nicht so dramatisch.
26:59.000 --> 27:02.000
Und ich glaube, das hängt dann wirklich davon ab,
27:02.000 --> 27:04.000
was ist denn deine Zielgruppe?
27:04.000 --> 27:07.000
Sind das nur so reiche US-Amerikaner und Europäer,
27:07.000 --> 27:10.000
dann ist das vielleicht alles nicht so wild.
27:10.000 --> 27:12.000
Und wenn du den globalen Markt bedienst
27:12.000 --> 27:15.000
und vielleicht auch so emerging markets,
27:15.000 --> 27:17.000
dann ist das vielleicht wichtiger.
27:17.000 --> 27:20.000
Oder du hast irgendwelche reichen Leute zwar,
27:20.000 --> 27:22.000
aber die arbeiten für dich als Sachbearbeiter
27:22.000 --> 27:24.000
und sind deswegen egal, die nehmen die Software,
27:24.000 --> 27:26.000
fertig ist die Geschichte.
27:26.000 --> 27:28.000
Ja, aber es ist sehr interessant, Schepp,
27:28.000 --> 27:31.000
weil du bist sofort auf die Schiene gesprungen
27:31.000 --> 27:33.000
von der Performance,
27:33.000 --> 27:35.000
wie solltet man jetzt den Framework benutzen,
27:35.000 --> 27:37.000
was eben nicht so viele Kilobytes ausdiefert
27:37.000 --> 27:41.000
und irgendwas lazy loaded oder diese ganzen klugen Sachen macht,
27:41.000 --> 27:45.000
damit man im Endeffekt eine bessere Performance hat.
27:45.000 --> 27:48.000
Gut, ich stimmt, ich habe da vorher Performance gesagt.
27:48.000 --> 27:52.000
Aber was wären denn noch für unsere User wichtige Sachen?
27:52.000 --> 27:55.000
Weil da frage ich mich schon bei so Rendering Frameworks.
27:55.000 --> 27:57.000
Wäre das nicht sogar gut,
27:57.000 --> 27:59.000
so wie dann nach dem Motto wie vor zehn Jahren
27:59.000 --> 28:01.000
yet another bootstrap Webseite zu haben,
28:01.000 --> 28:04.000
wäre das nicht gut, wenn wir alle die gleiche UI benutzen
28:04.000 --> 28:08.000
für Fehlermeldungen oder für Notifications.
28:08.000 --> 28:12.000
Also ich glaube, man erkennt immer ganz gut eine Rails-Website,
28:12.000 --> 28:14.000
wenn da oben so ein Banner kommt.
28:14.000 --> 28:17.000
Ich glaube, jeder hat den gleichen Hex-Coder drinnen
28:17.000 --> 28:20.000
und die gleiche Schreibweise von Error-Messages.
28:20.000 --> 28:22.000
Aber müssen wir immer wieder von vorne
28:22.000 --> 28:24.000
alle das Rad neu erfinden,
28:24.000 --> 28:26.000
wie jetzt unsere Fehlermeldung ausschaut
28:26.000 --> 28:28.000
oder wie unser Loading-State ausschaut
28:28.000 --> 28:31.000
und eigentlich haben wir wahrscheinlich alle vor fünf Jahren
28:31.000 --> 28:34.000
bereits gelernt, dass man in den ersten,
28:34.000 --> 28:36.000
das heißt jetzt mal 300 Millisekunden
28:36.000 --> 28:38.000
oder wie viel auch immer,
28:38.000 --> 28:40.000
noch gar kein Loading-State anzeigen sollte,
28:40.000 --> 28:42.000
weil das dann nur so für unser Menschen,
28:42.000 --> 28:44.000
für unser langsames Menschen-Auge nur so kurz aufflickert
28:44.000 --> 28:46.000
und eher ablenkend wirkt.
28:46.000 --> 28:48.000
Also eigentlich hätten wir diese Probleme schon gelöst,
28:48.000 --> 28:51.000
aber irgendwie müssen wir doch wieder alle von vorne schreiben,
28:51.000 --> 28:57.000
Time-out, 300 Millisekunden und dann machen wir dieses und jenes.
28:57.000 --> 29:01.000
Naja, einmal ist es natürlich auch so, du willst das ja
29:01.000 --> 29:03.000
gerne selber auch lernen
29:03.000 --> 29:06.000
und deswegen gehst du manchmal durch diese ganzen Sachen durch
29:06.000 --> 29:08.000
und erst wenn du es dann alles kapiert hast,
29:08.000 --> 29:10.000
dann sagst du dann, kommt mir meistens zu dem Schluss,
29:10.000 --> 29:14.000
eigentlich ist das ja blöd, wenn wir das immer alle machen müssen.
29:14.000 --> 29:18.000
Also danach ist so, ja, jetzt weiß ich wie es geht, bitte,
29:18.000 --> 29:21.000
aber jetzt möchte ich es nicht wieder machen, 5.000-mal.
29:21.000 --> 29:23.000
Ich glaube, das ist so der eine Antrieb,
29:23.000 --> 29:27.000
dass jeder das irgendwie oder jedes nochmal machen möchte
29:27.000 --> 29:29.000
und auch die Framework-Macher vielleicht alle nochmal so,
29:29.000 --> 29:31.000
ich weiß es besser ist.
29:31.000 --> 29:34.000
Da sind nicht 300 Millisekunden, weil am optimalsten sind 200.
29:34.000 --> 29:37.000
Und genau, aber eigentlich macht das Sinn
29:37.000 --> 29:39.000
und wir machen das ja auch, wenn wir jetzt ein Auto kaufen,
29:39.000 --> 29:41.000
ist das ja auch nichts anderes.
29:41.000 --> 29:43.000
Also es ist ja immer gleich.
29:43.000 --> 29:46.000
Da wird nur im CSS halt die Custom Property
29:46.000 --> 29:49.000
für die Autolackierung einmal die Farbe geändert
29:49.000 --> 29:51.000
und dann habe ich einen Schaltknopf oder nicht
29:51.000 --> 29:55.000
und es habe ich weißes Leder drin oder irgendwie dunkles Plüsch.
29:55.000 --> 29:58.000
Und da, das interessiert ja auch keinen.
29:58.000 --> 30:00.000
Also da ist jetzt ja keiner, der sich darüber beschwert,
30:00.000 --> 30:03.000
dass der, also mein Golf sieht ja echt fast aus wie dein Golf.
30:03.000 --> 30:05.000
Das ist ja echt total nervig.
30:05.000 --> 30:07.000
Ich wollte mal was irgendwie zu mir besser passt.
30:07.000 --> 30:09.000
Ah, Moment.
30:09.000 --> 30:12.000
Schreibt jetzt wieder beim Kraftfahrzeug,
30:12.000 --> 30:14.000
wo ich wieder behaupten würde,
30:14.000 --> 30:17.000
viel kleinerer Problembereiche als Webfrontend,
30:17.000 --> 30:19.000
wo einfach dem Inherent ist,
30:19.000 --> 30:22.000
dass man irgendwie viel genauer justieren will.
30:22.000 --> 30:25.000
Speziell, wo die theoretische Möglichkeit ja definitiv besteht.
30:25.000 --> 30:27.000
Damit man wie du ja vorhin mal sagt,
30:27.000 --> 30:29.000
dass die Motorhaube bei Bedarf aufmachen kann
30:29.000 --> 30:31.000
und man wirklich was customisen oder hacken muss,
30:31.000 --> 30:33.000
kann wo es mal wirklich nötig ist.
30:33.000 --> 30:35.000
Und das besteht die Möglichkeit
30:35.000 --> 30:37.000
und man kann sich dann individuell abgrenzen
30:37.000 --> 30:39.000
und es gibt da möglicherweise valide Use Cases
30:39.000 --> 30:41.000
für wegen einfach der unglaublichen Vielfalt
30:41.000 --> 30:43.000
der Art von Frontend, die du da machen kannst.
30:43.000 --> 30:46.000
Desktop, Rechner, Telefon oder irgendwie Anzeige, Bildschirm im ICE.
30:46.000 --> 30:48.000
Das ist ja alles Webfrontend.
30:48.000 --> 30:50.000
Ja, das gibt es ja dann, da kannst du ja dann SUV
30:50.000 --> 30:52.000
oder Kleinwagen kaufen.
30:52.000 --> 30:54.000
Das sitzen am Ende trotzdem auf der gleichen Plattform
30:54.000 --> 30:56.000
und sehen nur anders aus.
30:56.000 --> 30:58.000
Das ist wirklich viel, viel, glaube ich, standardisierbar.
30:58.000 --> 31:00.000
Aber das ist ja das, was Vanessa sagt.
31:00.000 --> 31:02.000
Also, dass sie einfach bestimmte Dinge,
31:02.000 --> 31:04.000
die sich etabliert haben.
31:04.000 --> 31:06.000
Also, wenn du jetzt irgendwie vor 20 Jahren
31:06.000 --> 31:08.000
noch ein Citroen gekauft hast,
31:08.000 --> 31:10.000
dann hat er noch so diese Pistolen-Schaltung
31:10.000 --> 31:12.000
oder vielleicht vor 30, 40 Jahren,
31:12.000 --> 31:14.000
dann hatte er seine Pistolen-Schaltung.
31:14.000 --> 31:16.000
Genau, die gibt es halt nicht mehr.
31:16.000 --> 31:18.000
Die Franzosen, die waren eigentlich,
31:18.000 --> 31:20.000
ja, die haben wirklich
31:20.000 --> 31:22.000
abgefahrene Ideen gehabt,
31:22.000 --> 31:24.000
aber auch die haben dann irgendwann gesagt,
31:24.000 --> 31:26.000
so, ja, komm, die hatten dann ihre Hupel links
31:26.000 --> 31:28.000
in so einem Hebel am Lenkrad.
31:28.000 --> 31:30.000
Warum?
31:30.000 --> 31:32.000
Weiß kein Mensch?
31:32.000 --> 31:34.000
Also, so ein bisschen ist das jetzt ja bei uns auch so.
31:34.000 --> 31:36.000
Ja.
31:36.000 --> 31:38.000
Also, und am Ende sind halt alle so,
31:38.000 --> 31:40.000
hey, so dieses Bedienkonzept,
31:40.000 --> 31:42.000
so, das versteht jeder,
31:42.000 --> 31:44.000
das ist etabliert, das ist intuitiv
31:44.000 --> 31:46.000
und darum
31:46.000 --> 31:48.000
fügen wir uns
31:48.000 --> 31:50.000
und machen das alle so.
31:50.000 --> 31:52.000
Und toben uns vielleicht eher bei
31:52.000 --> 31:54.000
in Details aus noch.
31:54.000 --> 31:56.000
Ja, bin ich mir nicht so sicher.
31:56.000 --> 31:58.000
Also speziell,
31:58.000 --> 32:00.000
weil, sagen wir mal so,
32:00.000 --> 32:02.000
der kleinste potenzielle Widerstreit
32:02.000 --> 32:04.000
wäre ja zum Beispiel
32:04.000 --> 32:06.000
ein großer Bildschirm, ein kleiner Bildschirm.
32:06.000 --> 32:08.000
So. Und es ist ja notwendigerweise so,
32:08.000 --> 32:10.000
dass wenn du eine Lösung haben willst,
32:10.000 --> 32:12.000
sie alle zu knechten, jede Lösung
32:12.000 --> 32:14.000
für entweder den großen oder den kleinen,
32:14.000 --> 32:16.000
wenn sie auch potenziell das jeweils andere bespielen kann,
32:16.000 --> 32:18.000
notwendigerweise irgendwelche Trade-offs
32:18.000 --> 32:20.000
macht, damit es beides machen kann.
32:20.000 --> 32:22.000
Aber wenn du hingegen sagst, ich bin jetzt sowieso gerade mal
32:22.000 --> 32:24.000
nur hier der aktuell mega gehypte
32:24.000 --> 32:26.000
Mobilanwendungsfall
32:26.000 --> 32:28.000
und große Bildschirme existieren für mich gar nicht,
32:28.000 --> 32:30.000
dann ist das ja suboptimal.
32:30.000 --> 32:32.000
Oder wenn du umgekehrt sagst, ich bin jetzt hier
32:32.000 --> 32:34.000
ein firm, internes Tool,
32:34.000 --> 32:36.000
das ausschließlich auf den
32:36.000 --> 32:38.000
mir genau bekannten Laptop meiner Sachbearbeiter
32:38.000 --> 32:40.000
stattfindet, da machst du kein Mobil-Ui.
32:40.000 --> 32:42.000
Warum würdest du dann irgendwas in deinem Code haben?
32:42.000 --> 32:44.000
Auch nur eine Zeile, die eine
32:44.000 --> 32:46.000
Konzession an das Mobil-Ui, dass du unter keinen
32:46.000 --> 32:48.000
Umständen jemals haben wirst.
32:50.000 --> 32:52.000
Genau, okay, das
32:52.000 --> 32:54.000
ja schon, aber
32:56.000 --> 32:58.000
ich weiß nicht, ob das so häufig vorkommt.
32:58.000 --> 33:00.000
Also,
33:00.000 --> 33:02.000
der Standard-Use-Case
33:02.000 --> 33:04.000
ist ja schon, dass man
33:04.000 --> 33:06.000
einfach viele Geräte abdecken will.
33:06.000 --> 33:08.000
Und vielleicht ist es ja so, dass man vielleicht am
33:08.000 --> 33:10.000
Zeitpunkt in dieser Firma,
33:10.000 --> 33:12.000
aber dann kommt irgendwann der Schepp an und sagt,
33:12.000 --> 33:14.000
warum kann ich eigentlich dieses Ding nicht
33:14.000 --> 33:16.000
von unterwegsem Handy bedienen?
33:16.000 --> 33:18.000
Macht das mal, dass das geht und dann denkst du dir,
33:18.000 --> 33:20.000
ja, jetzt ist das natürlich
33:20.000 --> 33:22.000
blöd, weil wir haben quasi unter
33:22.000 --> 33:24.000
der Prämisse, dass wir nur
33:24.000 --> 33:26.000
Desktop-Systeme bedienen, ein Framework
33:26.000 --> 33:28.000
ausgewählt, das darauf optimiert ist.
33:28.000 --> 33:30.000
Und jetzt kommt der Typ an
33:30.000 --> 33:32.000
oder die Typ hin und will,
33:32.000 --> 33:34.000
dass das jetzt auf einmal doch auch
33:34.000 --> 33:36.000
auf dem Smartphone geht.
33:36.000 --> 33:38.000
Ich bin das kleinste Nerd-Zahnrad
33:38.000 --> 33:40.000
im Keller des riesigen Hochhauses
33:40.000 --> 33:42.000
und mir wird gesagt, entwickle jetzt mal
33:42.000 --> 33:44.000
dieses Ding für unsere
33:44.000 --> 33:46.000
Sachbearbeiter auf deren Laptops.
33:46.000 --> 33:48.000
Da gehe ich doch nicht hin
33:48.000 --> 33:50.000
und fange da irgendwie an,
33:50.000 --> 33:52.000
eine argumentative
33:52.000 --> 33:54.000
Kampfesleistung anzustrengen, nach oben
33:54.000 --> 33:56.000
gerichtet, um zu sagen, ja, aber was ist,
33:56.000 --> 33:58.000
wenn ihr eines Tages noch Telefone haben wollt?
33:58.000 --> 34:00.000
Da kann man sicherlich,
34:00.000 --> 34:02.000
sicherlich wäre das manchmal richtig,
34:02.000 --> 34:04.000
aber man kann doch nicht im allgemeinen Fall von den Menschen verlangen,
34:04.000 --> 34:06.000
die sich nehmen.
34:06.000 --> 34:08.000
Aber dann ist es dir doch auch egal,
34:08.000 --> 34:10.000
wenn da Anpassungen auch für mobile drin sind.
34:10.000 --> 34:12.000
Also wenn du die Person bist,
34:12.000 --> 34:14.000
dann sagst du halt einfach,
34:14.000 --> 34:16.000
ich nehme das halt so und gut ist.
34:16.000 --> 34:18.000
Ja, Moment. Aber du musst dann ja auch
34:18.000 --> 34:20.000
die Angebotsseite betrachten.
34:20.000 --> 34:22.000
Dann ist es halt eben auch so die Frage,
34:22.000 --> 34:24.000
das Framework, das dann jemand benutzen wird
34:24.000 --> 34:26.000
aus dem einen oder anderen Grund, muss
34:26.000 --> 34:28.000
erst mal von irgendwem auch sozusagen
34:28.000 --> 34:30.000
angeboten werden, möglicherweise sogar
34:30.000 --> 34:32.000
vercheckt werden für irgendwie Euros oder Dollars
34:32.000 --> 34:34.000
produziert, beworben und so weiter werden
34:34.000 --> 34:36.000
mit dem ganzen Aufwand, der da reingeht.
34:36.000 --> 34:38.000
Also ich glaube, egal wie man das da so
34:38.000 --> 34:40.000
versucht irgendwie zu normieren,
34:40.000 --> 34:42.000
ich kann mir nicht vorstellen,
34:42.000 --> 34:44.000
dass das funktioniert.
34:44.000 --> 34:46.000
Ja, aber ich glaube also
34:46.000 --> 34:48.000
an dem, was Vanessa sagt, ist schon was dran.
34:48.000 --> 34:50.000
Also im Grunde könntest du alles
34:50.000 --> 34:52.000
mit Bootstrap machen, aber irgendwie
34:52.000 --> 34:54.000
ist also in
34:54.000 --> 34:56.000
dem Bereich ertragen
34:56.000 --> 34:58.000
ist die Leute einfach nicht
34:58.000 --> 35:00.000
nicht so ihren eigenen
35:00.000 --> 35:02.000
Spinnen zu haben für bestimmte Dinge.
35:02.000 --> 35:04.000
Also das ist eine Formularfelder und
35:04.000 --> 35:06.000
Buttons und
35:06.000 --> 35:08.000
daran scheitert es halt meistens.
35:08.000 --> 35:10.000
Und ich würde damit nur sagen, bei den Autos
35:10.000 --> 35:12.000
ist es auch so,
35:12.000 --> 35:14.000
dass man eben nur begrenzt
35:14.000 --> 35:16.000
seinen eigenen Spin reinbringen kann.
35:16.000 --> 35:18.000
Also du kannst natürlich danach noch irgendwie
35:18.000 --> 35:20.000
bei West Coast Customs dein Auto
35:20.000 --> 35:22.000
durchlackieren lassen und hier noch eine
35:22.000 --> 35:24.000
Kaffeemaschine in die Mittelkonsole
35:24.000 --> 35:26.000
bauen lassen. Aber im Grunde
35:26.000 --> 35:28.000
sind die halt alle ähnlich
35:28.000 --> 35:30.000
diese Anpassungsfähigkeit
35:30.000 --> 35:32.000
die ist halt sehr gering.
35:32.000 --> 35:34.000
Und damit sind aber trotzdem alle Leute zufrieden
35:34.000 --> 35:36.000
und man kotzt nicht die ganze Zeit im Strahl,
35:36.000 --> 35:38.000
wenn außen so, hey, da ist ja auch wieder
35:38.000 --> 35:40.000
so ein Golf wie meiner und da fährt der wieder,
35:40.000 --> 35:42.000
der hat ja auch die gleiche Farbe wie ich,
35:42.000 --> 35:44.000
super ätzend, wie soll man mich hier so erkennen.
35:44.000 --> 35:46.000
Das ist unswurscht.
35:46.000 --> 35:48.000
Bei Webseiten
35:48.000 --> 35:50.000
nicht, also bei Webseiten müssen die immer,
35:50.000 --> 35:52.000
die müssen immer, die darfst
35:52.000 --> 35:54.000
nirgendwo noch mal so geben.
35:54.000 --> 35:56.000
Auf keinen Fall. Ja, sagen wir mal so,
35:56.000 --> 35:58.000
Vanessa hat natürlich recht damit, dass das so sein könnte.
35:58.000 --> 36:00.000
Ich bin jetzt sozusagen
36:00.000 --> 36:02.000
nur der Kultur-Pessimist, der sagt,
36:02.000 --> 36:04.000
das wird sich niemals manifestieren.
36:04.000 --> 36:06.000
Aber also technisch und inhaltlich
36:06.000 --> 36:08.000
stimmt das? Dem widerspreche ich nicht.
36:08.000 --> 36:10.000
Ich hieße auch nur nicht dran. Okay, dann sind wir uns ja
36:10.000 --> 36:12.000
im Prinzip einig. Genau.
36:12.000 --> 36:14.000
Ich finde nur, dass das auf jeden Fall Sinn macht.
36:14.000 --> 36:16.000
Also eben weil das
36:16.000 --> 36:18.000
weil da viel Zeit
36:18.000 --> 36:20.000
verschwendet wird, Dinge immer wieder neu
36:20.000 --> 36:22.000
zu erfinden. Nur weil man,
36:22.000 --> 36:24.000
also genauso wie man eben
36:24.000 --> 36:26.000
die Elemente, also
36:26.000 --> 36:28.000
die müssen gestylt, also der Selekte
36:28.000 --> 36:30.000
darf nicht so sein, wie er ist.
36:30.000 --> 36:32.000
Natürlich ist er nicht schön, aber
36:32.000 --> 36:34.000
er ist eigentlich
36:34.000 --> 36:36.000
funktional schon ganz in Ordnung.
36:36.000 --> 36:38.000
Aber also jetzt mal abgesehen
36:38.000 --> 36:40.000
von so kombo-box-funktionalen Militäten, sorry.
36:40.000 --> 36:42.000
Das Licht weißen.
36:42.000 --> 36:44.000
Weil du hast gerade gemeint, oh, das stört mich jetzt,
36:44.000 --> 36:46.000
dass das schon wieder meine gleiche Autofahrung
36:46.000 --> 36:48.000
fährt und so was. Aber das, wir da sind
36:48.000 --> 36:50.000
wir in dem Beispiel, ja, die End-User.
36:50.000 --> 36:52.000
Die Leute, die dieses Auto kaufen
36:52.000 --> 36:54.000
mit rumfahren. Aber
36:54.000 --> 36:56.000
das wäre ja so,
36:56.000 --> 36:58.000
wie wenn ich jetzt als
36:58.000 --> 37:00.000
Mensch auf irgendeine Webseite gehe
37:00.000 --> 37:02.000
und mir denke, Mai, die schaut ja genauso
37:02.000 --> 37:04.000
aus wie der andere Webshop.
37:04.000 --> 37:06.000
Aber wir reden ja gerade aus der
37:06.000 --> 37:08.000
Hersteller, Hersteller in der Sicht.
37:08.000 --> 37:10.000
Also unstört es ja, wenn unsere Webseite,
37:10.000 --> 37:12.000
die wir bauen, nicht selber
37:12.000 --> 37:14.000
benutzen, nur die, die wir bauen, genauso
37:14.000 --> 37:16.000
ausschaut wie eine andere. Und ich weiß auch nicht,
37:16.000 --> 37:18.000
ob uns das genau stört, sondern
37:18.000 --> 37:20.000
unstört wahrscheinlich eher, dass wir die
37:20.000 --> 37:22.000
Resultiven dieser Thematik drin sind,
37:22.000 --> 37:24.000
dass wir genau die Fehler dieser anderen
37:24.000 --> 37:26.000
Webseiten kennen. Und die wollen
37:26.000 --> 37:28.000
wir unserer Meinung nach eben
37:28.000 --> 37:30.000
besser machen und besser lösen.
37:30.000 --> 37:32.000
Und ja, vielleicht
37:32.000 --> 37:34.000
auf einer Landing-Webseite will man sich noch
37:34.000 --> 37:36.000
so ein bisschen hervorheben.
37:36.000 --> 37:38.000
Aber ob das jetzt wirklich
37:38.000 --> 37:40.000
die User im Endeffekt interessiert,
37:40.000 --> 37:42.000
ob das jetzt ein einzigartiges Design
37:42.000 --> 37:44.000
ist, weiß ich nicht.
37:44.000 --> 37:46.000
Also möglicherweise schon.
37:46.000 --> 37:48.000
Ich finde es immer ganz gut, wenn es eher
37:48.000 --> 37:50.000
gleich ist. Das heißt, ich weiß, welchen
37:50.000 --> 37:52.000
Weg ich gehen muss. Ich weiß, was ich drücken muss.
37:52.000 --> 37:54.000
Und ich will nicht wieder eine andere UI haben.
37:54.000 --> 37:56.000
Und am allerschlimmsten ist, wenn mir jemand
37:56.000 --> 37:58.000
mein Scroll-Behavior ändert, hört doch bitte
37:58.000 --> 38:00.000
auf, mein Scroll-Behavior zu ändern.
38:00.000 --> 38:02.000
Aber es gibt ja zum einen, also du hast ja
38:02.000 --> 38:04.000
bei den Autoherstellern auch, dass quasi
38:04.000 --> 38:06.000
der, weiß ich nicht, Golf 8
38:06.000 --> 38:08.000
irgendwie weiterentwickelt ist gegenüber
38:08.000 --> 38:10.000
dem Sieben. Da sind ja schon,
38:10.000 --> 38:12.000
fließt ja dann Learnings wieder rein.
38:12.000 --> 38:14.000
Also es gibt ja schon sozusagen
38:14.000 --> 38:16.000
Verbesserung. Aber wenn man die dann
38:16.000 --> 38:18.000
rollt, man die erstmal für alles aus.
38:18.000 --> 38:20.000
Also so, so würde ich das sehen.
38:20.000 --> 38:22.000
Und dann ist es ja auch so, dass die,
38:22.000 --> 38:24.000
dass sich die Autos zum Beispiel die,
38:24.000 --> 38:26.000
also auch über Hersteller hinweg
38:26.000 --> 38:28.000
die Knöpfe und den ganzen Kram
38:28.000 --> 38:30.000
ja teilen. Das heißt, wenn du in den Golf
38:30.000 --> 38:32.000
einsteigst und in einen Tiguan, dann guckst
38:32.000 --> 38:34.000
du am Ende auf die gleichen Sachen.
38:34.000 --> 38:36.000
Weil die einfach gut genug sind
38:36.000 --> 38:38.000
und etabliert und du einfach nicht
38:38.000 --> 38:40.000
für jedes Auto dann quasi
38:40.000 --> 38:42.000
eigene Knopfform
38:42.000 --> 38:44.000
erfinden musst.
38:44.000 --> 38:46.000
Aber auch das Gefühl, da gibt es ganz andere
38:46.000 --> 38:48.000
Schmerzgrenzen. Also von Webseiten generell
38:48.000 --> 38:50.000
wird immer schon erwartet, da wir brauchen
38:50.000 --> 38:52.000
die perfekte UX. Es muss bedienbar sein.
38:52.000 --> 38:54.000
Und wenn es irgendwie was nicht funktioniert,
38:54.000 --> 38:56.000
dann sind wir die Hersteller dran schuld,
38:56.000 --> 38:58.000
dass wir das nicht gut genug gemacht
38:58.000 --> 39:00.000
haben. Und bei allen anderen Sachen
39:00.000 --> 39:02.000
kommt es mir eher so vor, wenn ich jetzt nicht
39:02.000 --> 39:04.000
damit umgehen kann, weil ich das entkunden,
39:04.000 --> 39:06.000
dann bin ich halt ein bisschen zu doof.
39:06.000 --> 39:08.000
Und gerade bei Autos, die,
39:08.000 --> 39:10.000
keine Ahnung, bei Opel musste runter drücken,
39:10.000 --> 39:12.000
den Scheitknüppel, damit dann
39:12.000 --> 39:14.000
die hoch drücken. Und bei VW
39:14.000 --> 39:16.000
musste runter drücken, dann hat es einmal
39:16.000 --> 39:18.000
6 Gänge, dann hat es einmal 5 Gänge,
39:18.000 --> 39:20.000
die andere Frage ist, warum
39:20.000 --> 39:22.000
schalten wir überhaupt noch? Es gibt Automatik-Autos,
39:22.000 --> 39:24.000
also wenn ich nicht schon längst Automatik
39:24.000 --> 39:26.000
haben könnte. Und dann kommt das nächste
39:26.000 --> 39:28.000
Extrem von Tesla, wo du nur noch
39:28.000 --> 39:30.000
Bildschirme hast und hoffen musst,
39:30.000 --> 39:32.000
dass die Bremse funktioniert und dass du den
39:32.000 --> 39:34.000
Hupenknopf findest auf deinem Bildschirm,
39:34.000 --> 39:36.000
weil es keine Knöpfe mehr gibt. Also auch da
39:36.000 --> 39:38.000
ist eine große Entwicklung.
39:38.000 --> 39:40.000
Ja, da haben wir nur unsere Witzhitschübe,
39:40.000 --> 39:42.000
keine Ahnung, dass die Hardware braucht
39:42.000 --> 39:44.000
erst mal 6 Jahre, bis sie dann normal in
39:44.000 --> 39:46.000
Auto ausgeliefert wird. Das heißt, jede Hardware
39:46.000 --> 39:48.000
da drücken ist wahrscheinlich schon 6 Jahre alt.
39:48.000 --> 39:50.000
Und dann soll man sich heutzutage noch entscheiden,
39:50.000 --> 39:52.000
ob man denn wirklich auch dieses Bluetooth
39:52.000 --> 39:54.000
braucht. Ja, freilich braucht. Dieses Bluetooth
39:54.000 --> 39:56.000
gibt mir halt einfach das g |