WEBVTT

00:00:00.000 --> 00:00:02.280
Ja, hallo liebe Hörerinnen und Hörer, willkommen beim Python-Podcast.

00:00:02.900 --> 00:00:03.980
Episode 62 heute.

00:00:05.220 --> 00:00:05.920
Hi Jochen.

00:00:06.360 --> 00:00:09.800
Ja, hallo Dominik, herzlich willkommen und hallo Johannes.

00:00:09.940 --> 00:00:10.460
Hi Johannes.

00:00:10.660 --> 00:00:11.460
Hallo zusammen.

00:00:12.420 --> 00:00:13.160
Mal wieder, ja.

00:00:13.340 --> 00:00:13.800
Ja, mal wieder.

00:00:13.900 --> 00:00:16.980
Wir wollten heute wieder über ein weiteres Kapitel unseres wundervollen Buches sprechen.

00:00:17.620 --> 00:00:17.820
Ja.

00:00:18.580 --> 00:00:21.320
Und ja, mal wieder, wir sind tatsächlich ein bisschen spät dran in diesem Jahr.

00:00:21.520 --> 00:00:25.020
Ja, wir wollten eigentlich auch noch andere Dinge machen, das hat nicht so richtig funktioniert.

00:00:25.160 --> 00:00:28.380
Wir hatten eine Pause, kreative Pause.

00:00:28.380 --> 00:00:32.420
Ja, und da sind noch andere Episoden noch in der Warner-Akt.

00:00:32.660 --> 00:00:36.320
Die kommt aber, die kommt wahrscheinlich tatsächlich vorher, denke ich mal.

00:00:36.420 --> 00:00:37.420
Ja, die ist vorher erschienen?

00:00:37.840 --> 00:00:38.100
Nein.

00:00:39.120 --> 00:00:40.480
Wir werden sehen.

00:00:41.480 --> 00:00:41.720
Ja.

00:00:43.020 --> 00:00:45.640
Ja, was ist denn das Kapitel heute?

00:00:46.740 --> 00:00:48.300
Johannes hat es ganz gelesen, habe ich gehört.

00:00:48.420 --> 00:00:50.340
Ich habe es gelesen, ja, extra heute Mittag noch.

00:00:50.600 --> 00:00:51.180
Ja, gut.

00:00:51.660 --> 00:00:52.940
Also ich meine, vor Wochen schon.

00:00:54.600 --> 00:00:56.380
Ja, wollen wir vielleicht ein bisschen News machen oder so?

00:00:56.380 --> 00:00:57.480
Wir haben noch so ein paar.

00:00:57.760 --> 00:00:58.360
Aber ich wollte kurz sagen.

00:00:58.380 --> 00:00:59.500
Was es heute geht.

00:00:59.720 --> 00:01:00.020
Ja, okay.

00:01:00.140 --> 00:01:00.320
Ach so.

00:01:00.660 --> 00:01:02.320
Ja, dann muss der Johannes es wohl sagen.

00:01:02.900 --> 00:01:04.180
Es geht um Bytes und Strings.

00:01:05.300 --> 00:01:05.960
Okay, cool.

00:01:06.160 --> 00:01:06.300
Cool.

00:01:06.300 --> 00:01:07.400
Alle Datentypen ein bisschen.

00:01:07.700 --> 00:01:09.120
Und wie heißt das Buch?

00:01:09.700 --> 00:01:10.100
Fluent.

00:01:10.520 --> 00:01:11.900
Das ist Fluent Python.

00:01:11.920 --> 00:01:12.780
Fluent Python, genau.

00:01:13.180 --> 00:01:13.300
Ja.

00:01:14.120 --> 00:01:18.040
Meine Kinder sind immer beeindruckt, wenn ich ihnen das dicke Buch zeige, wie viel da drin

00:01:18.040 --> 00:01:18.520
steht muss.

00:01:19.020 --> 00:01:19.260
Ja.

00:01:19.460 --> 00:01:21.660
Dass man so große und lange Bücher überhaupt lesen kann.

00:01:22.140 --> 00:01:24.400
Ja, das ist auch schon die dritte Episode über dieses Buch, die wir machen.

00:01:24.520 --> 00:01:25.340
Das ist das Premiere.

00:01:25.660 --> 00:01:27.860
In diesem Buch, da stecken auch noch ein paar Episoden drin.

00:01:27.860 --> 00:01:28.220
Ja, aber so viel.

00:01:28.220 --> 00:01:28.240
Ja.

00:01:28.380 --> 00:01:30.220
Von jetzt haben wir noch das Fernbuch gezogen bisher.

00:01:30.660 --> 00:01:30.840
Ja.

00:01:31.620 --> 00:01:32.240
Also von her.

00:01:32.240 --> 00:01:33.400
Ich habe hier noch ein paar andere dicke Bücher.

00:01:33.660 --> 00:01:34.920
Es sind auch Python in a nutshell.

00:01:35.780 --> 00:01:37.060
Und ja.

00:01:37.520 --> 00:01:38.780
Wie dick ist Python in a nutshell?

00:01:39.440 --> 00:01:42.140
Nicht ganz so dick wie Fluent Python, aber ähnlich.

00:01:43.760 --> 00:01:45.820
Aber dann ist es eine sehr große Nussschale.

00:01:45.960 --> 00:01:46.200
Ja.

00:01:46.720 --> 00:01:47.560
Eine Walnuss.

00:01:47.720 --> 00:01:50.360
Ist mehr so der Öltanker unter den Nussschalen.

00:01:50.580 --> 00:01:50.880
Das ist.

00:01:51.840 --> 00:01:54.160
Es gibt auch noch dieses schöne neue Tangebuch.

00:01:54.440 --> 00:01:55.180
Tango 5.

00:01:55.520 --> 00:01:56.260
Die ist das.

00:01:57.200 --> 00:01:58.300
Tango 5 by example.

00:01:58.300 --> 00:01:58.360
Tango 5.

00:01:58.380 --> 00:02:00.520
Ich habe nur noch E-Books.

00:02:00.720 --> 00:02:04.200
Und das ist perfekt, weil die liegen nicht so vorwurfsvoll rum auf dem Schreibtisch.

00:02:04.820 --> 00:02:05.820
Das ist natürlich ein Vorteil.

00:02:05.920 --> 00:02:08.180
Aber der Nachteil ist, also ich habe auch ganz viele E-Books.

00:02:08.300 --> 00:02:11.600
Der Nachteil ist so ein bisschen, also ich gucke tatsächlich in die physischen Bücher

00:02:11.600 --> 00:02:12.600
häufiger rein als in meine E-Books.

00:02:12.600 --> 00:02:13.120
Ja, also E-Books.

00:02:13.300 --> 00:02:16.340
Also tatsächlich, dann hast du irgendeine Sammlung, die vergammelt in irgendeinem Ordner.

00:02:16.480 --> 00:02:16.680
Und dann?

00:02:17.520 --> 00:02:18.380
Also so als Nachschlagewerk.

00:02:19.060 --> 00:02:19.400
Einer noch.

00:02:19.820 --> 00:02:22.500
Also es gibt ganz wenige Bücher, die ich als Nachschlagewerk benutze.

00:02:22.560 --> 00:02:25.380
Ansonsten tatsächlich Buch aus dem Regal holen, aufschlagen, reingucken.

00:02:26.060 --> 00:02:27.700
Ja, du bist halt analog.

00:02:27.700 --> 00:02:27.820
Okay.

00:02:27.820 --> 00:02:28.220
Okay.

00:02:28.220 --> 00:02:28.260
Okay.

00:02:28.260 --> 00:02:28.280
Okay.

00:02:28.280 --> 00:02:29.580
Jetzt hast du dich datiert, Dominik.

00:02:29.720 --> 00:02:31.140
Jetzt wissen wir alle, dass du alt bist.

00:02:31.160 --> 00:02:32.240
Ja, bei Musik ist das auch so.

00:02:32.300 --> 00:02:33.200
Da mache ich auch analog Zeug.

00:02:34.020 --> 00:02:34.340
Ja.

00:02:35.060 --> 00:02:35.640
Kein Computer?

00:02:36.240 --> 00:02:37.140
Ja, manchmal auch.

00:02:37.500 --> 00:02:39.100
Also ich bin ja auch manchmal modern.

00:02:39.580 --> 00:02:41.800
Oder so beides gleich, den Wechsel oder Sample oder so, ja.

00:02:43.220 --> 00:02:43.420
Ah.

00:02:43.800 --> 00:02:45.920
Aber schon analoge Sims, das ist schon nice.

00:02:46.780 --> 00:02:48.120
Ja, aber wir schweifen ab.

00:02:48.740 --> 00:02:48.920
Ja.

00:02:50.100 --> 00:02:50.640
Ja, genau.

00:02:50.740 --> 00:02:52.960
Aber vielleicht wollen wir jetzt erst mal ein bisschen, ich könnte jetzt hier mal so

00:02:52.960 --> 00:02:54.400
eine Kapitelmarke für News einfügen.

00:02:55.000 --> 00:02:55.340
Ja.

00:02:55.340 --> 00:03:00.300
Ähm, und, ähm, jetzt hat es die Kapitelmarke hier an den Anfang gesetzt.

00:03:00.420 --> 00:03:00.800
Was ist denn das?

00:03:00.900 --> 00:03:01.840
Schon wieder alles kaputt hier.

00:03:02.460 --> 00:03:04.520
Ja, wir haben ein Problem mit der Software, Jochen.

00:03:04.740 --> 00:03:05.040
Ja, ja.

00:03:05.160 --> 00:03:06.880
62 Episoden sind wir ja immer noch.

00:03:07.480 --> 00:03:10.360
Ihr wisst wahrscheinlich, wie lange wir zwischendurch brauchen, um das Audio-Setup hinzubekommen.

00:03:10.400 --> 00:03:11.280
Ja, heute auch schon wieder.

00:03:11.640 --> 00:03:12.740
Das war jedes Mal.

00:03:13.020 --> 00:03:13.340
Ja.

00:03:13.540 --> 00:03:13.760
Ja.

00:03:14.040 --> 00:03:14.440
Jedes Mal.

00:03:14.800 --> 00:03:18.380
Jedes Mal mit neuen, tollen Dingen, die wir rausfinden über das Audio-Setup.

00:03:18.980 --> 00:03:19.200
Ja.

00:03:19.540 --> 00:03:21.400
Und wir machen noch jedenfalls bei eigenem, was die Musik kann.

00:03:21.700 --> 00:03:22.520
Heute hatten wir ein Echo.

00:03:22.940 --> 00:03:25.280
Vielleicht hat er, dann mischt wohl einfach zu viele Kanäle, Jochen.

00:03:25.340 --> 00:03:25.580
Ja.

00:03:26.700 --> 00:03:27.840
Ja, aber diesmal war ich es ja.

00:03:27.860 --> 00:03:29.160
Diesmal bin ich ja schuld, wenigstens.

00:03:29.240 --> 00:03:30.680
Ja, du, das war wieder was Neues.

00:03:32.280 --> 00:03:32.520
Ja.

00:03:32.520 --> 00:03:34.720
Also, wenn man ein Echo hört, ist Johannes schuld.

00:03:34.780 --> 00:03:38.080
Ja, weil wenn man viele Kanäle hat und viele Rechner und viele Personen, dann hat man irgendwie

00:03:38.080 --> 00:03:43.760
eine kombinatorische Explosion von vieler Quellen und das, dann treten halt auch immer

00:03:43.760 --> 00:03:45.180
mal wieder neue, lustige Sachen auf.

00:03:45.820 --> 00:03:46.380
So ist es halt.

00:03:46.500 --> 00:03:47.500
Du könntest vielleicht ein Echo.

00:03:47.640 --> 00:03:50.460
Das ist ja fast schon die Überleitung zur Softwareentwicklung, Jochen.

00:03:50.620 --> 00:03:50.680
Ja, klar.

00:03:50.680 --> 00:03:53.840
Du könntest auch so ein Federhall-Modul da reinbauen, dass das auch so wirklich so nach

00:03:53.840 --> 00:03:54.320
Ja.

00:03:54.320 --> 00:03:54.360
Ja.

00:03:54.440 --> 00:03:55.320
Da kann man dann unterscheiden.

00:03:55.340 --> 00:03:55.880
Können wir auch.

00:03:56.220 --> 00:03:57.320
Wir können auch noch ein paar hinzufügen.

00:03:57.500 --> 00:03:57.680
Das geht.

00:03:58.660 --> 00:03:59.320
Das ist immer.

00:03:59.600 --> 00:04:00.420
Trick nicht, Jochen.

00:04:00.480 --> 00:04:00.860
Tiss nicht.

00:04:02.320 --> 00:04:02.520
Ja.

00:04:03.040 --> 00:04:03.280
Genau.

00:04:03.440 --> 00:04:04.480
Also, richtig.

00:04:04.680 --> 00:04:05.080
Ah, der News.

00:04:05.300 --> 00:04:05.960
News, genau.

00:04:06.300 --> 00:04:07.900
Es ist für mich tatsächlich einiges passiert.

00:04:09.220 --> 00:04:14.380
Es ist halt immer die Frage, letztes Mal, die News sind so ein bisschen legal.

00:04:14.540 --> 00:04:15.440
Seit über zwei Monaten.

00:04:16.760 --> 00:04:17.680
Aber tatsächlich.

00:04:17.840 --> 00:04:19.760
Ja, aber News haben doch die Eigenschaft, dass sie neu sind.

00:04:19.900 --> 00:04:20.700
Also kannst du nichts von.

00:04:22.020 --> 00:04:23.440
Es bezieht sich nur auf die letzten zwei Wochen.

00:04:23.440 --> 00:04:24.120
Ja, genau.

00:04:24.260 --> 00:04:25.200
Also, so ganz uralte Sachen.

00:04:25.200 --> 00:04:25.860
Werd ich jetzt auch nicht nehmen.

00:04:25.960 --> 00:04:28.400
Aber ich denke, es gibt so ein paar Sachen, die sollte man vielleicht schon mal erwähnt

00:04:28.400 --> 00:04:28.580
haben.

00:04:28.720 --> 00:04:31.860
Also, zum Beispiel, ich weiß nicht, Tailwind 4 ist raus.

00:04:32.060 --> 00:04:32.200
Ja.

00:04:32.300 --> 00:04:32.720
Ja.

00:04:32.960 --> 00:04:33.100
Genau.

00:04:33.280 --> 00:04:33.820
Das ist vielleicht ein.

00:04:34.240 --> 00:04:34.660
Das ist super.

00:04:35.180 --> 00:04:35.340
Ja.

00:04:35.820 --> 00:04:36.060
Ja.

00:04:38.180 --> 00:04:39.200
Also, ich wollte jetzt keine.

00:04:39.580 --> 00:04:40.140
Ach so, okay.

00:04:40.340 --> 00:04:40.500
Von Tailwind.

00:04:41.320 --> 00:04:42.520
Ich sag's jetzt ganz einfach.

00:04:42.680 --> 00:04:43.800
Ich bin kein Freund von Tailwind.

00:04:43.840 --> 00:04:45.140
Ja, du machst auch.

00:04:45.220 --> 00:04:45.680
Was war das?

00:04:46.260 --> 00:04:46.740
Als CSS.

00:04:47.360 --> 00:04:48.040
Ich wollte jetzt nichts sagen.

00:04:48.040 --> 00:04:48.840
Ein semantisches CSS.

00:04:49.000 --> 00:04:50.240
Sogenanntes semantisches CSS.

00:04:51.180 --> 00:04:52.440
Ach, das machst du auch.

00:04:52.960 --> 00:04:54.980
Ich verstehe den Vorteil von Tailwind nicht.

00:04:55.080 --> 00:04:55.160
Wobei.

00:04:55.160 --> 00:04:55.180
Ja.

00:04:55.200 --> 00:04:59.200
Wo man eine CSS-Deklaration von Color Red durch eine Klasse Color Red ersetzt.

00:05:00.340 --> 00:05:01.220
Dafür brauche ich kein CSS.

00:05:01.260 --> 00:05:01.900
Der ist der Vorteil.

00:05:01.980 --> 00:05:03.100
Das bringt überhaupt gar nichts.

00:05:03.340 --> 00:05:03.600
Doch.

00:05:03.800 --> 00:05:07.000
Also, ich meine, der Vorteil ist natürlich schon irgendwie, dass du, du kannst halt irgendwie

00:05:07.000 --> 00:05:07.860
ins Internet gehen.

00:05:08.420 --> 00:05:13.920
So, wenn man so alt ist wie wir, mit einer Krücke und dann einfach per Copy und Paste

00:05:13.920 --> 00:05:18.120
irgendwelche Sachen in dein eigenes HTML pasten und es funktioniert einfach so.

00:05:19.220 --> 00:05:19.680
Das ist der Vorteil.

00:05:19.700 --> 00:05:21.260
Aber es ist nicht besser als Inline-Styles.

00:05:21.700 --> 00:05:22.100
Ja, doch.

00:05:22.280 --> 00:05:22.640
Ja, doch.

00:05:22.640 --> 00:05:24.080
Die ganzen Vorteile von CSS sind weg.

00:05:24.600 --> 00:05:25.000
Nach.

00:05:25.000 --> 00:05:25.060
Nach.

00:05:25.300 --> 00:05:32.260
Nach Cascading hast, dass du sie ändern kannst, dass du sie semantisch benennst, dass du sie

00:05:32.260 --> 00:05:35.640
nicht wissen musst, was der Style ist, was der bedeutet.

00:05:35.840 --> 00:05:36.620
Das ist alles weg.

00:05:36.880 --> 00:05:41.720
Aber ich habe so eine schöne Utility-Sicht auf kleine Komponenten, die lesbar sind, die

00:05:41.720 --> 00:05:43.120
genau das machen, was sie sollen.

00:05:43.720 --> 00:05:46.160
Und das ist viel, viel hübscher als Inline-Styles.

00:05:46.820 --> 00:05:47.860
Nee, ist genau das Gleiche.

00:05:47.940 --> 00:05:48.840
Nee, ist das gar nicht.

00:05:48.940 --> 00:05:49.660
Inline-Styles sind total.

00:05:49.780 --> 00:05:50.360
Wir driften schon wieder ab.

00:05:50.540 --> 00:05:51.180
Wir driften schon wieder.

00:05:51.200 --> 00:05:51.520
Ja, ja.

00:05:52.880 --> 00:05:54.880
Ich starte hiermit eine Umfrage unter den Zugang.

00:05:55.000 --> 00:05:57.740
Zuhören, ob sie wissen wollen, was wir von Tailwind halten.

00:05:57.960 --> 00:05:58.420
Und dann machen wir eine erste.

00:05:58.420 --> 00:06:01.920
Wollen wir das nicht dann machen, wenn wir mit dem Frontend-Podcast, den wir irgendwann

00:06:01.920 --> 00:06:03.420
mal treffen wollten, das gemeinsam tun?

00:06:03.620 --> 00:06:04.460
Ja, das können wir auch gerne machen.

00:06:04.460 --> 00:06:05.540
Das hätte wahrscheinlich höhere Chancen.

00:06:05.880 --> 00:06:06.540
Das ist ja gut.

00:06:06.600 --> 00:06:07.460
Dann sollen die sich mal erklären.

00:06:07.460 --> 00:06:11.920
Da wird die Wahrscheinlichkeit auch größer, dass das dann tatsächlich irgendwie um die

00:06:11.920 --> 00:06:14.080
Bioktellerand herum passiert.

00:06:14.100 --> 00:06:15.740
Da war es ja was mit Tailwind CSS.

00:06:16.100 --> 00:06:16.200
Ja.

00:06:17.440 --> 00:06:17.800
Genau.

00:06:17.940 --> 00:06:18.440
Aber ja.

00:06:18.600 --> 00:06:23.380
Also ich bin auch eher momentan auf der semantischen CSS-Seite unterwegs.

00:06:24.380 --> 00:06:24.740
Ja.

00:06:24.740 --> 00:06:25.420
Aber genau.

00:06:26.140 --> 00:06:27.280
Vielleicht können wir da auch gleich nochmal.

00:06:28.340 --> 00:06:28.740
Ja, okay.

00:06:28.820 --> 00:06:29.660
Aber es ist auf jeden Fall da.

00:06:29.800 --> 00:06:30.920
Und das macht einige Dinge besser.

00:06:31.040 --> 00:06:31.140
Okay.

00:06:31.460 --> 00:06:31.900
Was haben wir noch?

00:06:32.080 --> 00:06:33.160
Wir hatten noch.

00:06:33.560 --> 00:06:33.820
Ah, genau.

00:06:33.920 --> 00:06:36.660
Was halt, wo ich finde, das muss man halt schon mal irgendwie erwähnen.

00:06:37.160 --> 00:06:39.020
Und ich höre das auch mal in anderen Podcasts.

00:06:39.220 --> 00:06:40.200
Und ich höre da immer so viel Mist.

00:06:40.620 --> 00:06:44.560
Da dachte ich, na gut, da muss man auch mal was zu sagen, dass das irgendwie, was da wirklich

00:06:44.560 --> 00:06:45.060
passiert ist.

00:06:45.220 --> 00:06:47.240
Irgendwie DeepSeek zum Beispiel ist irgendwie.

00:06:48.460 --> 00:06:49.040
Sprachmodelle, ja.

00:06:49.500 --> 00:06:49.700
Ja.

00:06:50.280 --> 00:06:50.600
NLMs.

00:06:51.580 --> 00:06:52.560
Was ist das denn, Joch?

00:06:52.580 --> 00:06:53.480
Was ist denn DeepSeek?

00:06:53.480 --> 00:06:53.960
Ja.

00:06:54.740 --> 00:06:56.760
Das ist halt irgendwie so ein Modell.

00:06:56.880 --> 00:07:00.520
Oder Gewichte sind herausgefallen aus einem chinesischen.

00:07:00.660 --> 00:07:02.000
Die haben die alle selber generiert.

00:07:02.140 --> 00:07:02.520
Hitschfond.

00:07:03.140 --> 00:07:03.760
Gewichte, ja.

00:07:04.920 --> 00:07:05.400
Wahrscheinlich.

00:07:05.720 --> 00:07:06.900
Aber genau.

00:07:07.080 --> 00:07:08.900
Und zwar sehr lustig irgendwie.

00:07:09.660 --> 00:07:13.560
Also das Foundation-Model ist halt, haben sie veröffentlicht am 24.

00:07:13.800 --> 00:07:15.440
Dezember 2024.

00:07:16.140 --> 00:07:17.100
Ein Weihnachtsgeschenk.

00:07:17.260 --> 00:07:17.460
Ja.

00:07:17.820 --> 00:07:18.880
Und zwar völlig kommentarlos.

00:07:19.720 --> 00:07:24.520
Und das hat tatsächlich relativ viel Aufsehen erregt, weil es halt schon, es ist ein sehr,

00:07:24.520 --> 00:07:24.600
sehr guter Modell.

00:07:24.600 --> 00:07:24.720
Es ist ein sehr, sehr guter Modell.

00:07:24.740 --> 00:07:25.640
Das muss man sagen.

00:07:25.860 --> 00:07:27.400
Also wirklich, wirklich gut.

00:07:28.000 --> 00:07:29.040
Und es war auch sehr billig.

00:07:29.500 --> 00:07:29.940
Und es ist schnell.

00:07:30.120 --> 00:07:31.260
Ja, aber da, da, genau.

00:07:31.340 --> 00:07:35.800
Da würde ich dann halt eher, eher so mal nochmal, also, weil das hört man immer.

00:07:36.040 --> 00:07:41.560
Aber da, oder ich weiß nicht, wie, wie, wie, oder wo ist die Quelle dafür, dass das besonders

00:07:41.560 --> 00:07:41.960
billig ist?

00:07:42.720 --> 00:07:43.700
Ja, DeepSeek selber.

00:07:43.900 --> 00:07:44.440
Die haben diese.

00:07:44.660 --> 00:07:45.020
Ja, ja.

00:07:45.020 --> 00:07:47.060
Die haben gesagt, es ist nur 5 Millionen dabei.

00:07:47.120 --> 00:07:47.400
Ja, ja.

00:07:48.120 --> 00:07:48.680
Ja gut.

00:07:48.780 --> 00:07:51.780
Aber ich meine, die haben natürlich unter Umständen auch eine gewisse Motivation zu

00:07:51.780 --> 00:07:52.480
sagen, was sie sagen.

00:07:52.680 --> 00:07:53.080
Insofern.

00:07:53.080 --> 00:07:54.660
Die haben die falschen, geklauten Sachen.

00:07:54.740 --> 00:07:55.140
Die haben die falschen geklaut.

00:07:55.220 --> 00:07:55.720
Das ist ja wöchentlich.

00:07:56.300 --> 00:07:59.700
Ja, das fand ich ja das Allerlustigste, dass sich dann OpenAI darüber aufgeregt hat, dass

00:07:59.700 --> 00:08:01.200
sie das, dass sie die Modelle verändert haben.

00:08:01.540 --> 00:08:01.760
Ja.

00:08:02.260 --> 00:08:05.040
Da hat jemand Daten genommen, die ihm nicht zugestanden sind.

00:08:05.300 --> 00:08:07.740
Ah, das ist zum ersten Mal in der Geschichte von LLMs passiert.

00:08:08.740 --> 00:08:09.940
Ja, das ist, das ist lustig, ne?

00:08:09.980 --> 00:08:14.600
Also irgendwie, dass das OpenAI macht, ist ja im Grunde irgendwie so dicke Bücher nehmen,

00:08:14.680 --> 00:08:15.800
so wie Fluent Python oder sowas.

00:08:16.320 --> 00:08:18.080
Das runterdestillieren in ein Modell.

00:08:18.100 --> 00:08:18.920
Ohne Lizenz.

00:08:19.420 --> 00:08:22.520
Modellgewichte destillieren und jetzt beschweren sie sich darüber, dass jemand anderes ihre

00:08:22.740 --> 00:08:24.360
Modellgewichte genommen hat und die destilliert hat.

00:08:24.500 --> 00:08:24.560
Ja.

00:08:24.560 --> 00:08:24.580
Ja.

00:08:24.580 --> 00:08:24.600
Ja.

00:08:24.600 --> 00:08:24.620
Ja.

00:08:24.620 --> 00:08:25.060
Ein anderes Modell.

00:08:25.260 --> 00:08:25.720
Geht gar nicht.

00:08:25.840 --> 00:08:26.840
Das geht natürlich auch gar nicht.

00:08:26.900 --> 00:08:29.520
Also als Dieb bei einem anderen Dieb klauen geht halt einfach nicht.

00:08:29.820 --> 00:08:30.000
Ja.

00:08:30.300 --> 00:08:30.860
Keine Ehre mehr.

00:08:30.860 --> 00:08:32.620
Keine Ehre unter Verbrechern.

00:08:34.360 --> 00:08:34.720
Ja.

00:08:35.420 --> 00:08:40.940
Wobei man jetzt sagen muss, also diese, diese, diesen Zungenschlag finde ich auch immer komisch,

00:08:40.980 --> 00:08:42.800
wenn man jetzt sagt, das ist irgendwie alles geklaut.

00:08:43.220 --> 00:08:47.760
Ich mir denke so, ja, aber irgendwie, wie kann man das dann damit, also ich, also ich

00:08:47.760 --> 00:08:48.560
finde, man muss sich entscheiden.

00:08:48.560 --> 00:08:51.900
Also entweder man fand diese Coffee-Rite-Geschichte ja schon immer irgendwie scheiße.

00:08:52.080 --> 00:08:53.800
Also so fand ich schon immer Kacke.

00:08:54.000 --> 00:08:54.240
Ja.

00:08:54.240 --> 00:08:54.260
Ja.

00:08:54.260 --> 00:08:54.280
Ja.

00:08:54.280 --> 00:08:54.300
Ja.

00:08:54.300 --> 00:08:54.320
Ja.

00:08:54.320 --> 00:08:54.340
Ja.

00:08:54.340 --> 00:08:54.360
Ja.

00:08:54.360 --> 00:08:54.380
Ja.

00:08:54.380 --> 00:08:54.400
Ja.

00:08:54.400 --> 00:08:54.420
Ja.

00:08:54.420 --> 00:08:54.440
Ja.

00:08:54.620 --> 00:08:54.640
Ja.

00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:54.640


00:08:54.640 --> 00:08:56.280
ist einfach totaler Müll, ja, also

00:08:56.280 --> 00:08:58.000
was zur Hölle? Und

00:08:58.000 --> 00:09:00.580
ja, also Informationen will halt

00:09:00.580 --> 00:09:02.540
irgendwie frei sein und irgendwie jeder soll

00:09:02.540 --> 00:09:04.720
sich auf den Quellen irgendwie unabhängig

00:09:04.720 --> 00:09:06.640
informieren können, ja, das sollte eigentlich schon

00:09:06.640 --> 00:09:08.500
gehen. Es gab doch mal diese T-Shirts,

00:09:08.580 --> 00:09:10.580
das ist das Swat-Thing, you wouldn't understand.

00:09:11.840 --> 00:09:11.960
Ja.

00:09:13.240 --> 00:09:14.380
You wouldn't download a car.

00:09:15.920 --> 00:09:16.620
Jetzt ging es um

00:09:16.620 --> 00:09:17.800
die J-Store.

00:09:18.580 --> 00:09:20.220
Ach, die Geschichte, ja, mit

00:09:20.220 --> 00:09:22.040
Aaron Schwartz, ja, das ist halt...

00:09:22.040 --> 00:09:24.300
Ja, aber auch vorher schon mit Pirate Bay und mit

00:09:24.300 --> 00:09:26.420
Filmen runterladen und Musik runterladen

00:09:26.420 --> 00:09:27.040
und so weiter, ja klar.

00:09:28.800 --> 00:09:29.780
Johann, das, also

00:09:29.780 --> 00:09:31.600
für mich erklärt sich das durch,

00:09:32.420 --> 00:09:33.920
ich bin auch so ein, ja, ich bin auch so ein,

00:09:34.000 --> 00:09:36.400
Information muss frei sein und wenn man eine offene Lizenz

00:09:36.400 --> 00:09:37.500
dran machen kann, umso besser.

00:09:38.240 --> 00:09:40.420
Und ich kenne auch einige Leute aus der Szene und das

00:09:40.420 --> 00:09:41.140
ist generell so. Ja, aber ich meine,

00:09:41.140 --> 00:09:43.240
das macht man ja nur deswegen,

00:09:43.380 --> 00:09:45.180
weil es ein Ball, irgendwie die Welt

00:09:45.180 --> 00:09:47.140
so verrückt ist, ja, und das ist ja nicht deswegen, weil man Lizenzen

00:09:47.140 --> 00:09:47.760
so geil findet.

00:09:48.700 --> 00:09:50.240
Ja, aber Lizenzen sind doch...

00:09:50.240 --> 00:09:53.100
Aber das Problem

00:09:53.100 --> 00:09:54.200
ist doch, oder das

00:09:54.200 --> 00:09:56.180
Schöne, das Ironische an der Sache ist doch,

00:09:57.020 --> 00:09:59.180
dass es ja eigentlich die multinationalen

00:09:59.180 --> 00:10:00.820
Konzerne sind, die sich immer für

00:10:00.820 --> 00:10:03.300
Copyright regeln und je drakonischer,

00:10:03.400 --> 00:10:04.580
desto besser ausgesprochen haben.

00:10:04.720 --> 00:10:06.880
Und jetzt machen sie genau das Gleiche.

00:10:07.400 --> 00:10:08.980
Ja, weil sie entdeckt haben, dass ihr

00:10:08.980 --> 00:10:11.120
Geschäftsmodell daran hängt, dass man damit Geld verdienen kann.

00:10:11.440 --> 00:10:12.920
Das ist so ein bisschen das Open-Source-Problem, ne?

00:10:12.960 --> 00:10:15.240
Ich meine, tolle Sachen machen und die für alle veröffentlichen

00:10:15.240 --> 00:10:16.720
und aber dann dafür nicht bezahlt werden,

00:10:17.020 --> 00:10:18.820
können sich halt nur Leute leisten, die eigentlich

00:10:18.820 --> 00:10:20.880
eh schon guten Nuxubüsen privilegiert

00:10:20.880 --> 00:10:21.040
sind.

00:10:23.440 --> 00:10:23.760
Ja,

00:10:24.200 --> 00:10:26.760
also ich finde halt, was mir halt

00:10:26.760 --> 00:10:28.580
nicht gefällt, ist, dass diese

00:10:28.580 --> 00:10:30.280
Argumentation aus der Ecke immer inkonsistent ist.

00:10:30.540 --> 00:10:32.760
Das gefällt mir einfach ästhetisch nicht. Ich weiß jetzt nicht,

00:10:32.840 --> 00:10:34.960
ob es auch ethisch schlimm ist, aber ästhetisch

00:10:34.960 --> 00:10:36.820
finde ich, geht das nicht, weil man kann

00:10:36.820 --> 00:10:37.860
nicht auf der einen Seite sagen,

00:10:39.160 --> 00:10:40.740
irgendwie man soll sich,

00:10:41.200 --> 00:10:42.280
man darf sich halt aus

00:10:42.280 --> 00:10:44.760
freizugehörigen Fällen informieren können

00:10:44.760 --> 00:10:46.600
und dann auf der anderen Seite sagen, ja, aber du darfst jetzt

00:10:46.600 --> 00:10:47.500
meine

00:10:47.500 --> 00:10:50.840
Daten nicht benutzen, um dein Modell zu trainieren.

00:10:50.840 --> 00:10:52.340
Das ist einfach ein Widerspruch, das geht nicht.

00:10:53.020 --> 00:10:54.020
Und vor allen Dingen,

00:10:54.200 --> 00:10:56.280
mit der gleichen Argumentation könntest du auch Google

00:10:56.280 --> 00:10:58.240
verbieten, seine Webseiten zu indizieren.

00:10:58.620 --> 00:11:00.460
Ja, kann man versuchen,

00:11:00.560 --> 00:11:02.440
aber das ist ja aus meiner Sicht, das ist ja offensichtlich

00:11:02.440 --> 00:11:03.140
absurd, ja.

00:11:03.460 --> 00:11:05.920
Ja, aber die Zeitungen?

00:11:06.860 --> 00:11:08.480
Ja, gut, das machen Leute ja auch, das kann man auch

00:11:08.480 --> 00:11:10.080
tun, also wenn ich jetzt hingehe und sage, okay,

00:11:10.280 --> 00:11:12.240
wenn ich da irgendeinen

00:11:12.240 --> 00:11:14.480
LLM-Crawler von so einer

00:11:14.480 --> 00:11:15.960
Firma sehe, dann sage ich dem halt, nö,

00:11:16.120 --> 00:11:18.440
kriegst du hier nichts, oder was auch Leute ja machen

00:11:18.440 --> 00:11:20.020
ist, dass sie dann halt so

00:11:20.020 --> 00:11:22.400
quasi so Endlostrom

00:11:22.400 --> 00:11:24.040
von sinnlosen Tokens irgendwie

00:11:24.040 --> 00:11:26.020
erzeugen, um da Rechenzeit zu verbrennen, auf der

00:11:26.020 --> 00:11:27.080
anderen Seite. Und möglichst langsam.

00:11:28.420 --> 00:11:29.920
Dass der wirklich lange da festhängt.

00:11:30.320 --> 00:11:31.400
Die moderne Variante der

00:11:31.400 --> 00:11:32.980
guten alten Teergrube.

00:11:35.600 --> 00:11:36.360
Ja, aber...

00:11:36.360 --> 00:11:37.520
Das ist halt so ein bisschen die Frage, ne?

00:11:38.180 --> 00:11:39.860
Es gibt ja, vielleicht der frühe Urheberrecht

00:11:39.860 --> 00:11:41.820
sagen so, ja, da kommt jemand in meinen Laden

00:11:41.820 --> 00:11:43.820
rein, macht überall Fotos und

00:11:43.820 --> 00:11:45.900
nimmt alles mit nach draußen und das ist eigentlich

00:11:45.900 --> 00:11:47.740
meins und dass der meinen Laden betreten hat,

00:11:48.000 --> 00:11:49.860
der ist ja einfach durch die Tür gegangen.

00:11:50.300 --> 00:11:51.820
Ich würde eher sagen, das ist sowas wie, da

00:11:51.820 --> 00:11:54.020
stellt sich jemand auf den Marktplatz und schreit,

00:11:54.040 --> 00:11:56.140
irgendwie so laut, wie er kann, allen Leuten

00:11:56.140 --> 00:11:57.580
ins Gesicht, was er da macht und dann

00:11:57.580 --> 00:11:59.680
hat das halt jemand gehört. Genau.

00:12:00.240 --> 00:12:01.480
Und ja, das ist der Punkt.

00:12:01.480 --> 00:12:03.860
Da kannst du mit dem Urheberrecht halt nichts machen, denke ich.

00:12:04.180 --> 00:12:06.020
Ja, genau. Das ist der entscheidende Unterschied.

00:12:06.020 --> 00:12:07.840
Das Urheberrecht schützt ja die drei Vs irgendwie so

00:12:07.840 --> 00:12:09.900
für vielfältigen Verändern, Verbreiten,

00:12:10.020 --> 00:12:12.020
aber nichts davon ist betroffen, wenn ich

00:12:12.020 --> 00:12:13.580
jetzt halt irgendwie den Text von irgendeiner

00:12:13.580 --> 00:12:15.640
Wesserte nehme und dann ein Modell drauf trainiere.

00:12:15.900 --> 00:12:17.840
Ja, also die Frage ist halt, was zum Beispiel mit

00:12:17.840 --> 00:12:19.720
wissenschaftlichen Veröffentlichungen ist, sind die schon

00:12:19.720 --> 00:12:21.880
allgemein recht oder nicht?

00:12:22.040 --> 00:12:23.240
Nein, aber

00:12:23.240 --> 00:12:23.420
aber

00:12:24.040 --> 00:12:25.880
wenn ich jetzt die lese, also

00:12:25.880 --> 00:12:28.020
nochmal, also ich meine im Grunde dein

00:12:28.020 --> 00:12:29.960
neuronales Netz und Gehirn ist ja auch sowas.

00:12:30.480 --> 00:12:32.100
Ja, du dürftest das ja, also durch

00:12:32.100 --> 00:12:34.120
Lesen kann man keine Urheberrechtsverletzung begehen.

00:12:34.800 --> 00:12:36.180
Aus meiner, in meinem

00:12:36.180 --> 00:12:38.100
Verständnis halt. Das geht einfach. Oh Jochen, jetzt hast du

00:12:38.100 --> 00:12:39.880
aber eine schlimme Dose aufgemacht, weil jetzt

00:12:39.880 --> 00:12:42.040
die Rechteinhaber drauf, dass wenn du das in dein

00:12:42.040 --> 00:12:43.120
Gehirn einliest, hast du es

00:12:43.120 --> 00:12:45.460
vervielfältigt.

00:12:45.580 --> 00:12:48.620
Ja, aber das ist ja offensichtlich

00:12:48.620 --> 00:12:50.140
absurd. Das kann man doch nicht vertreten,

00:12:50.220 --> 00:12:52.020
sowas. Und was mich ärgert, ist halt,

00:12:52.020 --> 00:12:53.240
dass Leute quasi auch so

00:12:53.240 --> 00:12:55.880
Leute, von denen ich dachte, dass es meine

00:12:55.880 --> 00:12:57.840
Freunde wären, jetzt online irgendwie

00:12:57.840 --> 00:12:59.940
offenbar diese

00:12:59.940 --> 00:13:01.820
Ansicht vertreten, dass halt irgendwie

00:13:01.820 --> 00:13:03.980
Dinge lesen eine Urheberrechtsverletzung

00:13:03.980 --> 00:13:05.020
ist, was totaler Quatsch ist.

00:13:07.060 --> 00:13:08.220
Das ärgert mich immer so ein bisschen.

00:13:08.880 --> 00:13:10.280
Das ist zwar eine schöne Unterhaltung,

00:13:10.380 --> 00:13:11.940
aber ich habe das Gefühl, wir driften schon wie

00:13:11.940 --> 00:13:13.060
so ein kleines bisschen ab.

00:13:13.520 --> 00:13:15.040
Ist das in diesem Podcast schon mal vorgekommen?

00:13:15.840 --> 00:13:17.240
Nein, aus einer anderen Weise.

00:13:17.660 --> 00:13:19.860
Ich glaube, in Episode 3 ist es mal vorgekommen.

00:13:19.860 --> 00:13:20.700
Ja, ist das echt?

00:13:21.760 --> 00:13:23.200
Gut, dann ist ja nicht so schlimm, wenn das nicht so ist.

00:13:23.240 --> 00:13:25.800
Ist es trotzdem interessant.

00:13:26.620 --> 00:13:27.980
Ja, aber genau.

00:13:28.140 --> 00:13:28.860
Also ich finde es halt,

00:13:29.460 --> 00:13:31.760
ja klar, natürlich ist es irgendwie absurd, wenn sich

00:13:31.760 --> 00:13:33.320
jetzt OpenAI über DeepSync beschwert.

00:13:33.620 --> 00:13:35.760
Also ich glaube, die Frage ist, natürlich hat jeder Konzern

00:13:35.760 --> 00:13:37.740
Interesse daran, so viel Geld wie möglich zu verdienen mit

00:13:37.740 --> 00:13:39.640
irgendwas, was er denkt, was er kontrollieren kann. Was aber

00:13:39.640 --> 00:13:41.420
die andere Seite der Medaille ist, ist,

00:13:41.740 --> 00:13:43.840
ob es ein öffentliches Interesse gibt an so etwas

00:13:43.840 --> 00:13:45.740
wie einem allgemein verfügbaren Sprachmodell.

00:13:45.800 --> 00:13:48.040
Einfach weil diese, ich sag mal, Schöpfungshöhe

00:13:48.040 --> 00:13:50.000
von diesen Dingern doch schon so massiv ist

00:13:50.000 --> 00:13:52.280
und die so einen, also für mich

00:13:52.280 --> 00:13:53.220
Value bereitstellen können.

00:13:53.240 --> 00:13:55.200
Also die Schöpfungshöhe sogar.

00:13:55.600 --> 00:13:57.320
Aber Jochen, die viel wichtigere

00:13:57.320 --> 00:13:59.460
Frage ist doch, ist das Modell wirklich besser

00:13:59.460 --> 00:14:01.040
und billiger? Nein, es ist gut.

00:14:01.720 --> 00:14:03.540
Also genau. Hast du es denn ausprobiert?

00:14:04.060 --> 00:14:05.140
Ja, also naja,

00:14:05.260 --> 00:14:07.740
ich habe es momentan

00:14:07.740 --> 00:14:09.240
nicht geschafft. Mit meiner Hardware kriege ich es

00:14:09.240 --> 00:14:10.020
nicht hin, gerade so.

00:14:11.220 --> 00:14:13.240
Aber es gibt ja AP-Zugang. Ja, genau.

00:14:13.480 --> 00:14:14.600
Da habe ich es natürlich schon ausprobiert.

00:14:15.300 --> 00:14:17.300
Und das ist tatsächlich gut, ja. Ja, ist das okay.

00:14:18.460 --> 00:14:19.580
Und die

00:14:19.580 --> 00:14:21.240
Empfehlung, die ich gehört habe, die ja auch den

00:14:22.460 --> 00:14:22.860
Aktienmarkt

00:14:22.860 --> 00:14:24.480
irritiert hat, um es mal so zu sagen,

00:14:25.060 --> 00:14:26.500
ist ja, dass man sich keine

00:14:26.500 --> 00:14:29.300
Grafikkarte kaufen soll, sondern lieber AMD-Prozessoren.

00:14:29.380 --> 00:14:30.640
Was natürlich eine sehr schöne

00:14:30.640 --> 00:14:31.800
Ironie ist.

00:14:33.240 --> 00:14:35.020
Die AMD-Prozessoren sind, die man

00:14:35.020 --> 00:14:35.620
sich kaufen soll.

00:14:36.900 --> 00:14:38.100
Ja, die AMD-Prozessoren, gut.

00:14:38.920 --> 00:14:40.880
Ja, also natürlich Hauptspeicher ist

00:14:40.880 --> 00:14:42.780
für die Dinger, wenn du die halt komplett laufen

00:14:42.780 --> 00:14:43.980
hast, brauchst du halt viel Hauptspeicher.

00:14:45.900 --> 00:14:46.920
Und auf einem

00:14:46.920 --> 00:14:48.900
ordentlichen, also ich habe so verschiedene Artikel

00:14:48.900 --> 00:14:50.660
gesehen, wo sich die Leute Rechner zusammenbauen,

00:14:50.660 --> 00:14:52.160
zwischen 2.000 und 6.000 Dollar.

00:14:52.860 --> 00:14:54.380
Was ja nicht viel ist für so ein System.

00:14:54.720 --> 00:14:57.280
Und dann kriegst du irgendwo zwischen 3 und 5 Token pro Sekunde.

00:14:57.400 --> 00:14:58.200
Was auch nicht viel ist.

00:14:59.300 --> 00:14:59.660
Aber

00:14:59.660 --> 00:15:01.620
auch nicht schlecht.

00:15:01.800 --> 00:15:04.780
Du kannst das Ding wohl,

00:15:05.200 --> 00:15:06.420
also das Original

00:15:06.420 --> 00:15:08.520
Ding kriegst du

00:15:08.520 --> 00:15:10.900
mit ein bisschen Trickserei und

00:15:10.900 --> 00:15:12.700
Quantisierung kriegst du das, glaube ich, auf einem

00:15:12.700 --> 00:15:14.820
Mac-Studio mit 192 GB RAM

00:15:14.820 --> 00:15:16.900
zum Laufen. Und da kriegst du

00:15:16.900 --> 00:15:18.500
mehr als 4 bis 5 Tokens pro Sekunde.

00:15:18.500 --> 00:15:19.340
Da kriegst du halt ordentlich.

00:15:20.220 --> 00:15:22.780
Das liegt ja daran, dass die Macs so eine spezielle

00:15:22.780 --> 00:15:24.640
Speicherarchitektur haben, die kannst du ja auch GPU benutzen.

00:15:25.020 --> 00:15:26.660
Aber, also ich meine, das Problem ist doch,

00:15:26.760 --> 00:15:28.520
dass du den Macs nur bis 192 GB

00:15:28.520 --> 00:15:29.140
kaufen kannst.

00:15:29.260 --> 00:15:30.880
Ja, das ist auch eine halbe Zahl.

00:15:30.880 --> 00:15:32.240
Und das ist irgendwie eine Verzillade kostet.

00:15:32.440 --> 00:15:32.920
Ja, genau.

00:15:35.760 --> 00:15:37.100
Exponentialkurve und SD-Karte

00:15:37.100 --> 00:15:38.820
kriegst du für einen Terabyte, kriegst du für einen Apple-9.

00:15:39.340 --> 00:15:40.180
Genau. Und

00:15:40.180 --> 00:15:42.680
so ein AMD-Prozessor mit

00:15:42.680 --> 00:15:44.220
vier

00:15:44.220 --> 00:15:46.680
Prozessorsockeln

00:15:46.680 --> 00:15:48.500
drin, da kannst du ja einen Terabyte-Speicher

00:15:48.500 --> 00:15:50.500
reintun für den gleichen Preis.

00:15:51.020 --> 00:15:52.380
Und da hast du dann gewisse

00:15:52.380 --> 00:15:53.620
Limitationen einfach nicht mehr.

00:15:54.020 --> 00:15:55.920
Ja, das ist schon richtig. Ich habe auch heute

00:15:55.920 --> 00:15:58.420
gesehen auf einem Postgres-Newsletter

00:15:58.420 --> 00:16:00.460
so, was machen wir jetzt eigentlich mit den Monster-Rechnern,

00:16:00.520 --> 00:16:02.220
die wir bauen können? Da hatte jemand auch so, es gibt

00:16:02.220 --> 00:16:04.400
irgendwie diese Epic-AMD-Dinger,

00:16:04.820 --> 00:16:06.400
da hast du halt irgendwie 768

00:16:06.400 --> 00:16:08.380
Threads irgendwie auf zwei Sockeln

00:16:08.380 --> 00:16:09.840
und 10 Terabyte Hauptprecher

00:16:09.840 --> 00:16:12.260
für gar nicht mehr so wahnsinnig viel Geld.

00:16:12.700 --> 00:16:13.980
Und das ist wirklich absurd,

00:16:14.160 --> 00:16:15.380
was da gerade geht.

00:16:16.380 --> 00:16:16.960
Aber ja.

00:16:18.360 --> 00:16:18.940
Ach ja.

00:16:19.180 --> 00:16:20.280
Aber manche Leute brauchen das halt.

00:16:20.400 --> 00:16:22.360
Es ist doch schön, dass es das gibt.

00:16:22.380 --> 00:16:22.880
Ja.

00:16:23.440 --> 00:16:24.420
Es ist doch schön, dass das geht.

00:16:25.060 --> 00:16:26.600
Genau. Also nee, das Ding ist gut.

00:16:27.020 --> 00:16:30.420
Aber jetzt diese ganzen Gerüchte, die da so im Umlauf

00:16:30.420 --> 00:16:32.080
sind, also einmal,

00:16:32.280 --> 00:16:34.420
ich würde sagen, dass das jetzt billiger

00:16:34.420 --> 00:16:36.140
ist oder so, das sagt jetzt irgendwie diebsig,

00:16:36.300 --> 00:16:38.480
aber ich kann das nicht

00:16:38.480 --> 00:16:40.380
unabhängig, also ich habe nichts gesehen, wo ich

00:16:40.380 --> 00:16:42.000
sagen würde, da hat das jemand unabhängig überprüft.

00:16:42.300 --> 00:16:43.580
Wenn die Leute fragen, die sich auskennen, sagen die,

00:16:43.760 --> 00:16:45.820
das liegt genau auf den Scaling-Kurven drauf.

00:16:46.140 --> 00:16:48.220
Das ist überhaupt kein Stück billiger

00:16:48.220 --> 00:16:49.020
als irgendwas anderes.

00:16:50.020 --> 00:16:51.520
Das sind auch sicherlich

00:16:51.520 --> 00:16:52.360
die geschönte Zahlen.

00:16:52.380 --> 00:16:53.340
Das kann ein Teil sein, dass du sagst,

00:16:53.480 --> 00:16:56.360
die Zahl ist richtig,

00:16:56.560 --> 00:16:58.320
aber wenn man sich anguckt,

00:16:58.460 --> 00:17:00.240
womit würde man rechnen,

00:17:00.320 --> 00:17:02.180
wie viel man ausgeben muss jetzt sozusagen,

00:17:02.940 --> 00:17:04.360
dann liegt das genau

00:17:04.360 --> 00:17:06.140
da drauf. Das ist nicht irgendwie billiger.

00:17:06.940 --> 00:17:07.200
Ja, okay.

00:17:08.200 --> 00:17:10.240
Anthropic hat tatsächlich

00:17:10.240 --> 00:17:11.560
Zahlen dazu veröffentlicht,

00:17:12.020 --> 00:17:14.000
also der Chef von Anthropic,

00:17:14.280 --> 00:17:16.140
Dario Amodei oder so,

00:17:16.360 --> 00:17:17.640
der hat auch tatsächlich veröffentlicht,

00:17:18.080 --> 00:17:20.160
wie viel es gekostet hat.

00:17:21.000 --> 00:17:22.360
Sonnet 3.5, glaube ich,

00:17:22.380 --> 00:17:24.580
zu trainieren

00:17:24.580 --> 00:17:26.020
in einem Blogpost, um halt

00:17:26.020 --> 00:17:28.400
klarzumachen, ja, das ist nicht billiger.

00:17:28.680 --> 00:17:30.340
Also das jetzt ist nicht billiger gewesen

00:17:30.340 --> 00:17:31.380
als das, was sie gemacht haben.

00:17:31.940 --> 00:17:33.580
Sie haben irgendwie 35 Millionen bezahlt,

00:17:33.720 --> 00:17:35.660
aber der Witz ist halt, das war irgendwie

00:17:35.660 --> 00:17:38.580
zehn Monate her oder so und in der Zeit

00:17:38.580 --> 00:17:39.680
sind die Preise eben so gefallen,

00:17:39.960 --> 00:17:40.940
dass es jetzt halt billiger ist.

00:17:42.620 --> 00:17:44.600
Eine schöne Ironie

00:17:44.600 --> 00:17:46.320
finde ich an der ganzen

00:17:46.320 --> 00:17:48.160
Geschichte, dass diese

00:17:48.160 --> 00:17:50.440
Firma DeepSeek sehr viel Engineering

00:17:50.440 --> 00:17:51.940
da reingesteckt hat, um die,

00:17:52.380 --> 00:17:53.540
billigere Hardware,

00:17:53.720 --> 00:17:56.260
weil sie die nicht importieren dürfen.

00:17:56.700 --> 00:17:57.820
Weil die Amerikaner gesagt haben,

00:17:57.820 --> 00:18:00.020
das geht nicht, dass man da solche Dinge betreibt

00:18:00.020 --> 00:18:01.740
und deshalb dürfen die das nicht und deshalb können die nicht.

00:18:02.180 --> 00:18:03.740
Und dann haben sie gesagt, wir machen es trotzdem

00:18:03.740 --> 00:18:05.980
und das hat geklappt. Und es ist auch keine Überraschung

00:18:05.980 --> 00:18:07.940
für jemanden, der sich da fünf Minuten damit

00:18:07.940 --> 00:18:09.540
beschäftigt. Ja, also es gibt da diesen

00:18:09.540 --> 00:18:11.760
Technical Report, den sie da veröffentlicht haben

00:18:11.760 --> 00:18:13.840
und da sind einige wirklich gute Tricks dabei und so.

00:18:13.960 --> 00:18:16.020
Also das ist wirklich solides

00:18:16.020 --> 00:18:17.920
Engineering, also kann man sich

00:18:17.920 --> 00:18:19.580
nicht beschränken. Einfach um die

00:18:19.580 --> 00:18:21.400
Exportbeschränkung rum. Top.

00:18:22.000 --> 00:18:22.300
Alle.

00:18:22.380 --> 00:18:22.980
Erste Klasse.

00:18:23.980 --> 00:18:26.100
Ja, aber jetzt, genau,

00:18:26.240 --> 00:18:27.740
also das erste Modell, das wir veröffentlicht haben,

00:18:27.740 --> 00:18:29.500
also das war sozusagen halt

00:18:29.500 --> 00:18:31.080
in der Fachwelt,

00:18:31.300 --> 00:18:33.740
sag ich mal, durchaus sehr viel

00:18:33.740 --> 00:18:35.740
Aufmerksamkeit erregt und

00:18:35.740 --> 00:18:37.340
da war dann nach ein paar Wochen auch klar,

00:18:37.520 --> 00:18:39.100
das ist wirklich, wirklich gut, das Modell.

00:18:40.020 --> 00:18:41.700
Und dann kam ja jetzt irgendwann

00:18:41.700 --> 00:18:42.360
so Ende,

00:18:43.300 --> 00:18:45.240
Mitte bis Ende Januar, ich weiß gar nicht mehr wann,

00:18:45.780 --> 00:18:47.180
kam halt irgendwie

00:18:47.180 --> 00:18:49.760
R1, wo sie dann so ein Marketing

00:18:49.760 --> 00:18:50.920
Bus drum gemacht haben.

00:18:50.920 --> 00:18:52.780
Das ist aber wirklich,

00:18:53.040 --> 00:18:54.820
also das ist jetzt keine Kunst,

00:18:55.160 --> 00:18:57.020
also von einem guten Foundation-Modell

00:18:57.020 --> 00:18:58.680
Ein guter Marketing-Bus machen ist schon

00:18:58.680 --> 00:18:59.960
eine schöne Sache.

00:19:00.520 --> 00:19:02.980
Aber das Modell war jetzt kein, das Modell selber war nicht,

00:19:03.480 --> 00:19:04.960
das war nicht aufsehenderregend eigentlich.

00:19:06.160 --> 00:19:06.640
Aber

00:19:06.640 --> 00:19:08.600
das Marketing schon,

00:19:09.360 --> 00:19:10.700
also sie wussten halt, okay,

00:19:11.200 --> 00:19:13.040
irgendwie, wir haben ein Modell,

00:19:13.120 --> 00:19:14.940
das nicht gut ist und jetzt

00:19:14.940 --> 00:19:16.740
haben sie halt dann draußen halt

00:19:16.740 --> 00:19:18.680
eine Geschichte gemacht, die halt dann auch irgendwie durch

00:19:18.680 --> 00:19:20.760
alle Nachrichten gegangen ist und

00:19:20.760 --> 00:19:22.980
Nvidia hat irgendwie so und so

00:19:22.980 --> 00:19:24.980
viele Milliarden an Aktienwert verloren.

00:19:25.080 --> 00:19:26.760
Also ja, man könnte natürlich jetzt vermuten, dass

00:19:26.760 --> 00:19:29.200
irgendjemand, möglicherweise,

00:19:29.800 --> 00:19:31.340
dass er ein bisschen

00:19:31.340 --> 00:19:32.940
reingedreht hat oder viel Geld verdient hat.

00:19:33.160 --> 00:19:34.540
Wer denn? Ja, ich weiß auch nicht.

00:19:34.760 --> 00:19:36.780
Ich würde jetzt erwarten, es könnte irgendwie so ein Hedgefonds sein,

00:19:36.840 --> 00:19:37.760
zum Beispiel. Weiß nicht.

00:19:38.660 --> 00:19:40.480
Aber shorten die irgendwelche?

00:19:40.740 --> 00:19:42.700
Ja, was machen die da?

00:19:42.800 --> 00:19:43.040
Was machen die?

00:19:43.040 --> 00:19:43.820
Das klingt so riskant.

00:19:44.180 --> 00:19:44.460
Nein.

00:19:47.000 --> 00:19:47.980
Also ich weiß es nicht.

00:19:48.660 --> 00:19:50.740
Auf jeden Fall ist das natürlich schon so ein bisschen,

00:19:50.760 --> 00:19:52.500
ein bisschen verdächtig und

00:19:52.500 --> 00:19:54.780
ja, auch wenn man

00:19:54.780 --> 00:19:56.820
auch da wieder, wenn man Leute fragt,

00:19:56.880 --> 00:19:58.260
die haben die Ausgangsweise, die so, warum

00:19:58.260 --> 00:20:00.720
fällt eigentlich der Nvidia-Aktienkurs?

00:20:01.080 --> 00:20:02.740
Also ich meine, klar, natürlich, es ist eine Blase.

00:20:02.880 --> 00:20:04.280
Ja, das ist auch, muss auch irgendwie

00:20:04.280 --> 00:20:06.660
Was? Du hast doch nicht ernsthaft

00:20:06.660 --> 00:20:08.980
angenommen, dass das da irgendeinen Fundamentaldaten

00:20:08.980 --> 00:20:10.140
Zusammenhang gäbe.

00:20:10.340 --> 00:20:12.000
Ja, natürlich nicht. Also insofern,

00:20:12.740 --> 00:20:14.520
dass das eine Blase ist, ist schon richtig

00:20:14.520 --> 00:20:16.520
und dass man dadurch natürlich irgendwie

00:20:16.520 --> 00:20:18.500
dann eine Chance sieht, da irgendwie Luft auf dieser Blase zu lassen,

00:20:18.500 --> 00:20:20.560
okay. Ja, das ist ja auch irgendwie,

00:20:20.560 --> 00:20:22.440
ein wenig überraschend, aber tatsächlich

00:20:22.440 --> 00:20:26.440
der Bedarf an Compute,

00:20:26.620 --> 00:20:28.060
wenn man jetzt quasi

00:20:28.060 --> 00:20:29.840
aus dieser ganzen Geschichte mitnimmt,

00:20:30.260 --> 00:20:32.440
es ist einfacher, als wir dachten, irgendwie solche Modelle

00:20:32.440 --> 00:20:34.360
zu bauen und es ist

00:20:34.360 --> 00:20:36.360
irgendwie einfacher, sie zu betreiben, es ist einfacher, sie zu

00:20:36.360 --> 00:20:38.620
trainieren und

00:20:38.620 --> 00:20:40.300
dann ist die Konsequenz

00:20:40.300 --> 00:20:42.400
eigentlich nicht, wir brauchen

00:20:42.400 --> 00:20:44.460
weniger, also

00:20:44.460 --> 00:20:46.440
wir verkaufen jetzt

00:20:46.440 --> 00:20:48.280
weniger Chips, sondern die Konsequenz ist

00:20:48.280 --> 00:20:50.540
natürlich, wenn man jetzt das aus so einer ökonomischen

00:20:50.540 --> 00:20:52.220
Perspektive betrachtet, dann werden

00:20:52.220 --> 00:20:53.360
natürlich viel mehr Chips verkauft.

00:20:54.700 --> 00:20:56.240
Ja, aber von wem, Jochen, das ist doch

00:20:56.240 --> 00:20:58.260
die Frage. Die müssen jetzt nicht mehr unbedingt die teuren

00:20:58.260 --> 00:20:59.020
von Nvidia sein.

00:21:00.420 --> 00:21:02.440
Ja, weiß ich nicht,

00:21:02.560 --> 00:21:04.320
aber für Nvidia ist das auf jeden Fall auch gut.

00:21:04.540 --> 00:21:06.460
Also sagen wir mal so, aus ökonomischer Sicht macht das keinen Sinn,

00:21:06.520 --> 00:21:08.120
dass der Aktienkurs von Nvidia

00:21:08.120 --> 00:21:09.420
fällt, wenn

00:21:09.420 --> 00:21:12.280
irgendwie man jetzt sieht, dass man mit

00:21:12.280 --> 00:21:13.700
Computer, dass man mit halt

00:21:13.700 --> 00:21:16.140
irgendwie Chips mehr machen kann. Aber Jochen, du glaubst doch nicht, dass

00:21:16.140 --> 00:21:18.260
das Rauschen eines Wahls irgendwas mit

00:21:18.260 --> 00:21:20.080
ökonomischen Ratio zu tun hätte?

00:21:20.080 --> 00:21:20.440
Nee,

00:21:20.540 --> 00:21:21.140
natürlich nicht.

00:21:21.640 --> 00:21:23.760
Hast du welche gekauft, Jochen? Hast du Nvidia gekauft?

00:21:24.220 --> 00:21:24.440
Ah!

00:21:26.080 --> 00:21:27.020
Hast du die getauscht?

00:21:27.160 --> 00:21:30.260
Ich kann nicht genug Marketing-Buzz generieren, um da irgendwas

00:21:30.260 --> 00:21:32.380
Nee, keine

00:21:32.380 --> 00:21:33.880
Diese Podcast-Episode, die

00:21:33.880 --> 00:21:36.160
Keine Aktienempfehlungen von

00:21:36.160 --> 00:21:38.300
Podcastern bitte irgendwie

00:21:38.300 --> 00:21:40.380
Nee, ich

00:21:40.380 --> 00:21:42.140
hab da nichts gekauft und nichts verkauft,

00:21:42.200 --> 00:21:44.340
das ist auch vielleicht doof, ja, also das müsste man

00:21:44.340 --> 00:21:46.380
vielleicht eigentlich machen. Ja, bei den Steuern, die man jetzt zahlen muss,

00:21:46.420 --> 00:21:46.560
ja.

00:21:46.560 --> 00:21:48.580
Ja, aber also

00:21:48.580 --> 00:21:49.680
genau, also irgendwie

00:21:49.680 --> 00:21:50.460
Also

00:21:50.540 --> 00:21:52.600
du glaubst nicht, dass Nvidia mehr wert ist, als

00:21:52.600 --> 00:21:53.980
die gesamte deutsche Wirtschaft zusammen?

00:21:54.840 --> 00:21:56.620
Ja, finde ich irgendwie komisch.

00:21:56.960 --> 00:21:57.380
Glaubst du nicht?

00:21:57.680 --> 00:21:57.820
Nee.

00:21:58.200 --> 00:21:59.380
Ja, ich glaub's auch nicht.

00:22:00.220 --> 00:22:02.420
Ja, aber interessanter Weg jetzt aus

00:22:02.420 --> 00:22:04.380
diesem Wissen irgendwie Geld zu machen, das hat

00:22:04.380 --> 00:22:05.740
Diebsig irgendwie geschafft und

00:22:05.740 --> 00:22:08.140
ja, ich meine, das haben sie wirklich gut gemacht.

00:22:08.300 --> 00:22:10.160
Also man muss mal anerkennend sagen, ist irgendwie

00:22:10.160 --> 00:22:12.200
eine... Und ich hab... Ah, und dann hat jemand auf

00:22:12.200 --> 00:22:14.300
Mastodon oder so, hat jemand eine ganz interessante

00:22:14.300 --> 00:22:16.140
Geschichte gepostet und das fand ich auch

00:22:16.140 --> 00:22:17.800
total super. Er meinte so, okay,

00:22:17.800 --> 00:22:20.480
also Diebsig hat das ja ganz gut

00:22:20.480 --> 00:22:22.240
gemacht. Lass mal überlegen,

00:22:22.360 --> 00:22:24.320
gibt's vielleicht noch irgendwelche anderen

00:22:24.320 --> 00:22:26.600
Firmen, die halt auch total

00:22:26.600 --> 00:22:28.720
überbewertet sind oder wo es eine Blase

00:22:28.720 --> 00:22:30.320
ist? Nein. Und man vielleicht sowas

00:22:30.320 --> 00:22:32.280
ähnliches machen könnte? Zum Beispiel,

00:22:32.400 --> 00:22:34.180
was ja auch immer so ein Problem ist, hatten wir

00:22:34.180 --> 00:22:35.820
gerade schon von Open Source,

00:22:35.960 --> 00:22:38.440
schwer, schwer ein Geschäft

00:22:38.440 --> 00:22:40.160
zu... Also wie kann man damit Geld verdienen?

00:22:41.000 --> 00:22:42.240
Hm, vielleicht so. Also wenn man sich jetzt

00:22:42.240 --> 00:22:43.820
sowas überlegt wie SAP

00:22:43.820 --> 00:22:46.280
verdient einen Haufen Geld für

00:22:46.280 --> 00:22:48.220
ja, was eigentlich genau, ist ein bisschen

00:22:48.220 --> 00:22:50.360
unklar, aber irgendwie so

00:22:50.360 --> 00:22:52.020
wirklich... Ja, ich mein, okay,

00:22:52.180 --> 00:22:54.180
das ist jetzt grob vereinfacht. Ich hab ehrlich gesagt

00:22:54.180 --> 00:22:56.020
keine Ahnung von SAP, aber ich würd sagen, das ist halt eine

00:22:56.020 --> 00:22:57.980
relationelle Datenbank und ein bisschen Frontend drumrum.

00:22:58.120 --> 00:23:00.240
Ja, aber so viel mehr ist da nicht. Und vieles

00:23:00.240 --> 00:23:01.360
davon ist wahrscheinlich auch gar nicht so gut.

00:23:02.140 --> 00:23:04.140
Und wie wäre es denn,

00:23:04.240 --> 00:23:05.500
wenn jetzt ein Hedgefonds hingehen würde

00:23:05.500 --> 00:23:08.340
und würde mich dafür bezahlen,

00:23:09.200 --> 00:23:10.180
doch mal sowas zu

00:23:10.180 --> 00:23:11.300
bauen, was ich... Nicht spezifisch, okay.

00:23:11.520 --> 00:23:13.340
Ja, eigentlich ein Trick an der Geschichte.

00:23:13.920 --> 00:23:14.080
Ja.

00:23:15.740 --> 00:23:17.780
Oder sonst irgendwen.

00:23:18.100 --> 00:23:18.640
Keine Ahnung.

00:23:18.640 --> 00:23:20.160
Keine Ahnung, was ich dafür bezahlen muss, wie gesagt.

00:23:20.360 --> 00:23:22.100
Würde jemand für dich gut bezahlen.

00:23:22.220 --> 00:23:23.560
Das halt in Open Source nachzubauen.

00:23:24.240 --> 00:23:25.880
Und dann Weihnachten 2025

00:23:25.880 --> 00:23:27.660
wirft man halt das Ding irgendwie raus.

00:23:28.400 --> 00:23:29.400
Ja, sagt er aber vorher.

00:23:29.620 --> 00:23:32.100
Natürlich müsste man irgendwie so ein paar Leerverkäufe machen,

00:23:32.240 --> 00:23:33.260
so Tättingen, und dann

00:23:33.260 --> 00:23:35.800
hier so SAP-Kunden, ihr habt den Ding,

00:23:35.920 --> 00:23:38.320
das macht ihr auch gleich und ihr müsst die ganzen Lizenzgebühren

00:23:38.320 --> 00:23:39.960
nicht bezahlen. Das Problem

00:23:39.960 --> 00:23:42.360
ist halt, dass das so krasse meistens

00:23:42.360 --> 00:23:43.960
an die ganzen Schnittstellen...

00:23:43.960 --> 00:23:45.420
Dominik, du und deine Realität.

00:23:46.200 --> 00:23:48.080
Ja, okay. Also ich... Ja, natürlich.

00:23:48.080 --> 00:23:50.080
Lass mir von deiner Realität nicht die Wirklichkeit

00:23:50.360 --> 00:23:52.140
verderben. So einfach ist es wahrscheinlich

00:23:52.140 --> 00:23:53.400
natürlich nicht alles, klar.

00:23:53.880 --> 00:23:55.900
Aber also...

00:23:55.900 --> 00:23:58.400
Ich glaube, der einzige Verkaufsfaktor ist,

00:23:58.580 --> 00:24:00.020
dass die ganzen...

00:24:00.020 --> 00:24:01.280
Was sind das?

00:24:01.380 --> 00:24:04.140
Der ganzen Matrix-Konzerne

00:24:04.140 --> 00:24:05.960
von Finance, VHA,

00:24:06.120 --> 00:24:08.140
oder was auch immer, alle ihr eigenes Modul

00:24:08.140 --> 00:24:09.700
haben, um ihre Kostenrechnung

00:24:09.700 --> 00:24:11.400
ganz wundervoll

00:24:11.400 --> 00:24:14.040
auf irgendwelchen Charts ausgeben zu lassen.

00:24:14.920 --> 00:24:15.960
Ja, und es hat nur wenige

00:24:15.960 --> 00:24:17.500
Millionen gekostet. Genau.

00:24:17.500 --> 00:24:17.880
Ja.

00:24:19.320 --> 00:24:19.840
Okay.

00:24:20.360 --> 00:24:21.060
Ja, mighty.

00:24:21.200 --> 00:24:23.440
Nochmal zurück zum Thema News. Das kann man aber schon

00:24:23.440 --> 00:24:24.000
nachbauen.

00:24:25.080 --> 00:24:27.000
Glaube ich. Ja, ich glaube auch.

00:24:27.080 --> 00:24:27.500
Hast du Lust?

00:24:29.320 --> 00:24:31.480
Es gibt einen Grund, warum du

00:24:31.480 --> 00:24:32.680
da nicht viel mit zu tun haben willst.

00:24:33.000 --> 00:24:35.800
Ja, klar. Es ist halt auch irgendwie langweilig, aber...

00:24:35.800 --> 00:24:37.420
Der Jochen hat halt noch nicht die richtigen Investoren

00:24:37.420 --> 00:24:39.540
gefunden. Genau. Ich meine, natürlich Langeweile...

00:24:39.540 --> 00:24:40.840
35 Millionen geben dafür.

00:24:40.980 --> 00:24:43.180
Das geht besser, wenn

00:24:43.180 --> 00:24:45.200
man sich das Glas Wasser dann

00:24:45.200 --> 00:24:46.360
irgendwie in einem goldenen Wasserhahn

00:24:46.360 --> 00:24:48.740
holt. Das macht dann...

00:24:48.740 --> 00:24:50.220
Ich weiß es nicht. Keine Ahnung.

00:24:50.360 --> 00:24:50.680
Ich...

00:24:50.680 --> 00:24:53.320
Ja, aber ich fand die Idee auf jeden Fall interessant.

00:24:53.540 --> 00:24:54.740
Und dann dachte ich so, ach, das musste man ja

00:24:54.740 --> 00:24:55.860
machen hier.

00:24:56.980 --> 00:24:58.560
Ja. Genau. News.

00:24:59.620 --> 00:25:00.860
Das war diese Liebste-Geschichte.

00:25:01.000 --> 00:25:02.260
Also ja, es ist interessant.

00:25:03.280 --> 00:25:04.600
Insgesamt ist es natürlich auch eine tolle

00:25:04.600 --> 00:25:07.880
Geschichte, dass das halt irgendwie...

00:25:07.880 --> 00:25:08.600
Also ich meine, ich glaube,

00:25:08.760 --> 00:25:10.960
diese Vorhersage von Jan Lekun,

00:25:11.720 --> 00:25:12.000
der

00:25:12.000 --> 00:25:13.620
jetzt bei Meta

00:25:13.620 --> 00:25:16.860
Dinge macht oder so, dass er sagt, auf lange Sicht

00:25:16.860 --> 00:25:18.640
werden die Open-Source-Geschichten gewinnen, ist richtig.

00:25:19.240 --> 00:25:20.340
Jetzt natürlich, wie lieb es dir ist,

00:25:20.360 --> 00:25:21.640
das Modell, das ist kein Open-Source.

00:25:21.760 --> 00:25:23.460
Das hat alles überhaupt gar nichts mit Open-Source zu tun.

00:25:23.740 --> 00:25:25.820
Also in den Medien hört man immer so,

00:25:25.860 --> 00:25:27.500
oh, ein Open-Source-Modell. Nein, natürlich nicht.

00:25:27.880 --> 00:25:30.040
Alles Quatsch. Ja, Trading-Supply sind nicht Open-Source.

00:25:30.140 --> 00:25:32.400
Die Algorithmen, der ganze Kram ist alles nicht Open-Source.

00:25:32.520 --> 00:25:34.180
Aber man kann jetzt natürlich dieses

00:25:34.180 --> 00:25:36.280
Modell in Open-Source-Software

00:25:36.280 --> 00:25:38.160
verwenden. Ja, und man konnte es halt

00:25:38.160 --> 00:25:39.880
auch benutzen. Es war halt frei

00:25:39.880 --> 00:25:42.320
verfügbar einfach. Also es war nicht nur per Schnittstelle

00:25:42.320 --> 00:25:43.960
über so... Keine komische Lizenz, ja.

00:25:44.100 --> 00:25:46.200
Also Lama hat ja immer noch diese eigenartige Lizenz.

00:25:46.580 --> 00:25:48.120
Du darfst es verwenden. Es sei denn, du bist Google.

00:25:48.120 --> 00:25:49.640
Dann nicht. Aber...

00:25:49.640 --> 00:25:52.240
Ja, aber das hat mich jetzt noch nie gestört

00:25:52.240 --> 00:25:53.680
an der Lama-Lizenz-Vereinbarung.

00:25:54.860 --> 00:25:56.160
Bist du nicht Google? Da bin ich weit davon

00:25:56.160 --> 00:25:58.160
entfernt von den 700

00:25:58.160 --> 00:25:58.960
Millionen-Maus.

00:26:00.360 --> 00:26:00.580
Ja.

00:26:02.720 --> 00:26:03.400
Genau. Wie auch immer.

00:26:03.700 --> 00:26:06.060
Ja, wie auch immer. Genau, das...

00:26:06.060 --> 00:26:08.120
Ja, das war so die eine Geschichte.

00:26:08.540 --> 00:26:09.600
Oh ja, dann, also überhaupt,

00:26:10.240 --> 00:26:12.120
ich meine, das wird jetzt...

00:26:12.660 --> 00:26:13.820
Es gibt da noch so ein paar

00:26:13.820 --> 00:26:16.180
Geschichten. Also OpenAI

00:26:16.180 --> 00:26:18.120
verliert irgendwie beständig Leute.

00:26:19.240 --> 00:26:19.200
Also,

00:26:19.640 --> 00:26:21.880
das ist auch irgendwie etwas, was ich irgendwie

00:26:21.880 --> 00:26:23.040
interessant finde.

00:26:24.140 --> 00:26:25.660
Also irgendwie...

00:26:25.660 --> 00:26:27.540
Also Sam Altman...

00:26:27.540 --> 00:26:28.420
Also, ich meine...

00:26:28.420 --> 00:26:29.400
Sam Altman verloren?

00:26:29.720 --> 00:26:30.140
Nein, nein.

00:26:31.160 --> 00:26:31.480
Fast.

00:26:32.360 --> 00:26:34.200
Er hat doch mal Glück gehabt, dass das nicht passiert ist.

00:26:34.200 --> 00:26:35.940
Ja, fast. Er hat einen Elonist auch gekriegt.

00:26:36.720 --> 00:26:36.880
Ja.

00:26:37.740 --> 00:26:38.100
Also,

00:26:38.360 --> 00:26:41.640
ja, also Alec Redford ist jetzt auch weg.

00:26:43.080 --> 00:26:43.240
Und

00:26:43.240 --> 00:26:45.800
die Leute, also es haben schon mal...

00:26:45.800 --> 00:26:47.020
Also die ersten, also

00:26:47.020 --> 00:26:49.540
die Leute, die Anthropic gegründet haben,

00:26:49.640 --> 00:26:50.760
oder halt Dario,

00:26:51.260 --> 00:26:53.400
hat halt irgendwie versucht...

00:26:53.400 --> 00:26:54.140
Die waren doch auch...

00:26:54.140 --> 00:26:55.160
Die kommen doch auch von OpenAI.

00:26:55.560 --> 00:26:56.820
Ja, die kommen auch alle von OpenAI.

00:26:57.000 --> 00:26:59.060
Das sind die Leute, die Chachapity ursprünglich mal gebaut haben.

00:27:00.540 --> 00:27:02.720
Und die haben aber auch schon mal versucht,

00:27:02.780 --> 00:27:04.000
Sam Altman feuern zu lassen.

00:27:04.960 --> 00:27:06.540
Das hat nicht geklappt, dann mussten sie alle gehen.

00:27:07.240 --> 00:27:09.320
Und, ja, dann haben das

00:27:09.320 --> 00:27:10.220
nochmal wieder Leute versucht.

00:27:10.320 --> 00:27:12.240
Das hat auch wieder nicht geklappt, dann mussten sie alle gehen.

00:27:13.000 --> 00:27:15.200
Und es gehen immer noch irgendwie Leute.

00:27:17.200 --> 00:27:18.220
Ist ein Modell, kann man machen.

00:27:18.400 --> 00:27:18.540
Ja.

00:27:18.540 --> 00:27:18.600
Ja.

00:27:19.640 --> 00:27:22.440
Was ich gut finde, ist halt, dass es wirklich irgendwie

00:27:22.440 --> 00:27:25.040
ganz ordentlichen Wettbewerb gibt.

00:27:25.400 --> 00:27:26.640
Also, ich muss auch sagen,

00:27:26.700 --> 00:27:28.880
die Anthropic-Geschichten zum Programmieren,

00:27:28.980 --> 00:27:30.900
finde ich, ist so nicht so das beste Modell

00:27:30.900 --> 00:27:31.600
momentan.

00:27:32.460 --> 00:27:34.100
Und, ja, es funktioniert alles super.

00:27:35.820 --> 00:27:37.200
Genau, dann aber auch interessant,

00:27:37.560 --> 00:27:38.760
die neuen

00:27:38.760 --> 00:27:39.820
OpenAI-Modelle

00:27:39.820 --> 00:27:42.700
OO3 oder so,

00:27:43.780 --> 00:27:45.140
da gab es große Erfolge

00:27:45.140 --> 00:27:46.760
bei irgendwie

00:27:48.260 --> 00:27:49.140
AGI und

00:27:49.140 --> 00:27:51.380
Frontier-Math-Benchmarks

00:27:51.380 --> 00:27:53.740
und so. Also, das ist schon...

00:27:53.740 --> 00:27:55.540
Ja, also, ich glaube, der Trick ist halt

00:27:55.540 --> 00:27:57.420
tatsächlich, dass man das so

00:27:57.420 --> 00:27:59.700
verknüpft mit so einer Art persistenter Datenbank,

00:28:00.840 --> 00:28:01.580
auf die das

00:28:01.580 --> 00:28:02.800
zugreifen kann, das Ding.

00:28:04.580 --> 00:28:05.300
Persistenter Datenbank?

00:28:05.500 --> 00:28:07.320
Ja. Also, keine Ahnung, so ein

00:28:07.320 --> 00:28:09.440
Sprachmodell darf bei dir auf die Datenbank zugreifen

00:28:09.440 --> 00:28:11.340
und sich daran erinnern, was das in der letzten oder vorletzten

00:28:11.340 --> 00:28:12.740
Session da abgelegt hat.

00:28:13.520 --> 00:28:15.680
Und so eine Transaktion da machen

00:28:15.680 --> 00:28:17.380
und von da weitermachen.

00:28:17.540 --> 00:28:18.380
Also, das ist quasi das,

00:28:19.140 --> 00:28:21.400
was Consciousness gesatied werden kann,

00:28:21.560 --> 00:28:23.340
was es da hat. Und die Frage, was halt dann

00:28:23.340 --> 00:28:25.160
Consciousness dann heißt und was davon

00:28:25.160 --> 00:28:26.580
Memory ist und was

00:28:26.580 --> 00:28:29.480
an Prozessen

00:28:29.480 --> 00:28:31.100
drumherum notwendig ist,

00:28:31.680 --> 00:28:33.340
um das zu einem Consciousness zu machen.

00:28:33.580 --> 00:28:35.480
Also, sowas wie Reasoning

00:28:35.480 --> 00:28:36.960
über Zusammenhänge, die man hat oder

00:28:36.960 --> 00:28:39.180
Neubilden von Informationen anhand der

00:28:39.180 --> 00:28:40.820
Informationen, die man dann schon gespeichert hat.

00:28:41.200 --> 00:28:42.940
Außer einem, ich sag mal, Dialoggespräch.

00:28:43.040 --> 00:28:45.220
Und ich würde sagen, jedes Dialoggespräch ist eine eigene

00:28:45.220 --> 00:28:47.540
Entität. Das ist so ein bisschen

00:28:47.540 --> 00:28:48.020
wie

00:28:48.020 --> 00:28:48.300
ähm,

00:28:49.140 --> 00:28:51.500
wenn man mit sich selber einen inneren Dialog hält.

00:28:53.220 --> 00:28:53.780
Ja, gut.

00:28:53.900 --> 00:28:55.380
Die Anfänge von so einer Subjekt-Objekt-Beziehung.

00:28:55.460 --> 00:28:57.040
Und ich finde, das geht schon sehr in die Richtung,

00:28:57.340 --> 00:28:58.440
wo man was draus bauen kann.

00:28:59.120 --> 00:29:01.680
Und so eine Initialzündung von...

00:29:01.680 --> 00:29:03.020
Okay, ich finde, das sind so zwei Aspekte.

00:29:03.120 --> 00:29:04.600
Also, der eine wäre sowas wie dieses

00:29:04.600 --> 00:29:07.060
Model-Context-Protokoll von Anthropic,

00:29:07.780 --> 00:29:09.200
wo du halt sozusagen dem Modell

00:29:09.200 --> 00:29:10.180
irgendwie Dinge geben kannst.

00:29:11.260 --> 00:29:13.120
Oder halt, du kannst ihm auch Zugriff auf deinen Rechner geben

00:29:13.120 --> 00:29:14.800
oder was auch immer. Und auf deine Daten.

00:29:15.640 --> 00:29:16.880
Du kannst eine Datenbank anbinden.

00:29:16.880 --> 00:29:17.260
Mhm.

00:29:19.140 --> 00:29:21.440
Das ist halt nicht immer dieses

00:29:21.440 --> 00:29:23.060
Retrieval-Augmented-Generation machen musst,

00:29:23.200 --> 00:29:25.300
sondern dass du halt dem Modell sagen kannst,

00:29:25.400 --> 00:29:27.600
also hier ist eine Datenbank, die kannst du fragen

00:29:27.600 --> 00:29:28.760
und hier ist irgendwie sonst was.

00:29:29.720 --> 00:29:31.200
Okay, gut, aber die Spiele-Fälle sind ja überhaupt

00:29:31.200 --> 00:29:32.680
das Rack machst oder nicht.

00:29:33.260 --> 00:29:33.440
Ja.

00:29:33.540 --> 00:29:36.600
Ja, genau. Also macht

00:29:36.600 --> 00:29:38.960
inhaltlich keinen großen Unterschied. Das andere,

00:29:39.380 --> 00:29:41.500
diese Reasoning-Modelle,

00:29:41.960 --> 00:29:43.400
das ist halt irgendwie, das ist halt

00:29:43.400 --> 00:29:45.420
so eine Kombination von irgendwie

00:29:45.420 --> 00:29:47.300
dem, ja,

00:29:47.660 --> 00:29:49.120
Token generieren, was halt,

00:29:49.140 --> 00:29:51.160
alle Modelle da irgendwie machen.

00:29:51.380 --> 00:29:53.000
Das musst du aber erklären, was du damit meinst?

00:29:53.620 --> 00:29:54.580
Naja, dass du halt einfach

00:29:54.580 --> 00:29:55.980
Next-Token-Prediction machst.

00:29:56.820 --> 00:29:58.320
Das machen wir alle. Aber

00:29:58.320 --> 00:30:01.280
der Unterschied jetzt zu den Reasoning-Modellen ist halt,

00:30:01.340 --> 00:30:02.260
dass man jetzt sagt, okay, man

00:30:02.260 --> 00:30:03.240
generiert

00:30:03.240 --> 00:30:04.480
out,

00:30:06.520 --> 00:30:08.920
generiert halt so Chains of Thought

00:30:08.920 --> 00:30:11.200
und zwar jede Menge und wählt dann halt

00:30:11.200 --> 00:30:13.200
die, die irgendwie in sich konsistent aussehen

00:30:13.200 --> 00:30:15.160
aus, als das könnte die Antwort sein.

00:30:15.820 --> 00:30:17.040
Ja. Das heißt, man kombiniert irgendwie

00:30:17.040 --> 00:30:18.780
so eine Art Suche, also

00:30:18.780 --> 00:30:21.120
irgendwas, wie wir im Schach irgendwie

00:30:21.120 --> 00:30:22.380
mal halt auch Varianten suchen.

00:30:22.400 --> 00:30:24.820
Jetzt sind wir nämlich in einem Graph drin und diese Graphen haben

00:30:24.820 --> 00:30:27.120
quasi ja auch States, die irgendwas

00:30:27.120 --> 00:30:29.000
machen und jetzt kann man vielleicht

00:30:29.000 --> 00:30:30.800
hingehen und kann das

00:30:30.800 --> 00:30:33.100
kuratiert hardcoden

00:30:33.100 --> 00:30:35.040
in verschiedenen Szenarien, das nicht

00:30:35.040 --> 00:30:37.080
durch das LLM machen lassen, sondern so verschiedene

00:30:37.080 --> 00:30:38.740
kuratierte Szenarien vorgeben,

00:30:39.280 --> 00:30:41.120
die ein State sind und zwischen denen man

00:30:41.120 --> 00:30:42.880
sich hin und her bewegen kann und

00:30:42.880 --> 00:30:44.620
dann kommt man wieder auf

00:30:44.620 --> 00:30:45.880
noch einen Schritt weiter.

00:30:46.620 --> 00:30:48.760
Ja, keine Ahnung. Also ich würde sagen, man kann jetzt,

00:30:48.780 --> 00:30:50.260
halt irgendwie traden zwischen,

00:30:51.460 --> 00:30:52.840
sich jetzt überlegen, wo

00:30:52.840 --> 00:30:54.660
man die, wo man Computer

00:30:54.660 --> 00:30:56.640
ausgeben möchte, zu Inference-Time oder

00:30:56.640 --> 00:30:58.380
bei Trainingszeit und

00:30:58.380 --> 00:31:00.620
für ein optimales Ergebnis muss man halt irgendwie

00:31:00.620 --> 00:31:01.620
wahrscheinlich ein bisschen mehr

00:31:01.620 --> 00:31:04.460
Computer in Inference-Zeit

00:31:04.460 --> 00:31:06.780
verlagern und halt ein bisschen mehr Suche

00:31:06.780 --> 00:31:08.140
machen. Ja.

00:31:08.720 --> 00:31:10.580
Aber dass das so gut funktioniert, ist

00:31:10.580 --> 00:31:12.780
halt eine Überraschung. Also das war halt auch nicht klar, dass das geht

00:31:12.780 --> 00:31:13.920
und ja,

00:31:14.760 --> 00:31:16.320
es macht aber einen riesen Unterschied

00:31:16.320 --> 00:31:18.460
und ich meine, der Arc

00:31:18.460 --> 00:31:18.760
AG

00:31:18.780 --> 00:31:20.460
I Benchmark ist halt komisch benannt,

00:31:20.600 --> 00:31:22.260
weil er hat nichts mit AGI zu tun, aber

00:31:22.260 --> 00:31:24.500
ja, das ist da,

00:31:24.580 --> 00:31:25.740
kriegen Leute auch mal einen falschen Hals.

00:31:26.540 --> 00:31:28.180
Und ja,

00:31:28.460 --> 00:31:30.500
Frontier Mass ist aber auch, ja, oder

00:31:30.500 --> 00:31:32.320
auch super interessant, wie heißt das Ding?

00:31:34.740 --> 00:31:36.100
Dieser Coding Benchmark.

00:31:39.420 --> 00:31:40.340
Ah, ich hab's vergessen.

00:31:41.580 --> 00:31:42.720
Aber das sind auf jeden Fall

00:31:42.720 --> 00:31:44.380
irgendwie, sie haben echte Pull-Requests

00:31:44.380 --> 00:31:46.420
genommen, gegen Projekte wie zum Beispiel

00:31:46.420 --> 00:31:48.500
Django ist da halt auch mit drin, aber halt auch noch

00:31:48.500 --> 00:31:49.020
so ein paar andere.

00:31:49.540 --> 00:31:50.420
Cycle Learn ist auch drin.

00:31:51.400 --> 00:31:53.300
Und haben dann geguckt, wie viele von den

00:31:53.300 --> 00:31:55.840
offenen Pull-Requests würde sozusagen

00:31:55.840 --> 00:31:58.320
ein LLM halt

00:31:58.320 --> 00:31:59.880
lösen.

00:32:00.700 --> 00:32:02.160
Und da kommen die guten,

00:32:02.160 --> 00:32:04.040
also es gab immer schon spezialisierte Modelle, die

00:32:04.040 --> 00:32:05.640
ganz gut abschneiden, aber das ist halt irgendwie,

00:32:06.320 --> 00:32:08.060
ja, das ist halt auch nicht so einfach,

00:32:08.140 --> 00:32:09.600
die irgendwie laufen zu lassen.

00:32:10.960 --> 00:32:11.540
Aber die

00:32:11.540 --> 00:32:14.120
normalen LLMs waren halt da nie so

00:32:14.120 --> 00:32:16.140
wirklich gut, bis jetzt auch die Reasing-Modelle,

00:32:16.280 --> 00:32:18.180
die sind alle auch super. Also die kommen auch schon da auf fast

00:32:18.180 --> 00:32:19.340
50% oder sowas.

00:32:19.920 --> 00:32:21.800
Und das ist natürlich schon krass. Also irgendwie,

00:32:22.580 --> 00:32:22.840
ja.

00:32:24.600 --> 00:32:25.580
Das fand ich schon schlecht.

00:32:26.900 --> 00:32:27.100
Ja.

00:32:28.540 --> 00:32:28.900
Genau.

00:32:30.220 --> 00:32:31.280
Oh, dann was wir,

00:32:31.960 --> 00:32:33.340
dann haben wir eine Mail gekriegt.

00:32:33.940 --> 00:32:35.420
Das reicht auch gerade noch so.

00:32:36.960 --> 00:32:38.080
PyCon Austria

00:32:38.080 --> 00:32:39.000
ist jetzt irgendwie.

00:32:39.940 --> 00:32:41.800
Oh ja, wir sollen das. Und wir sollen das ankündigen.

00:32:41.960 --> 00:32:44.020
Das ist am 6. und 7. April

00:32:44.020 --> 00:32:45.740
2025.

00:32:45.740 --> 00:32:45.860
20.

00:32:45.860 --> 00:32:49.220
Hochschule Burgenland in Eisenstadt.

00:32:50.780 --> 00:32:51.600
Ja, genau.

00:32:52.180 --> 00:32:53.340
Kann man sich mal ansehen.

00:32:56.120 --> 00:32:56.940
Was haben wir noch?

00:32:59.580 --> 00:33:01.520
Wir müssen mal eine ganze LLM-Folge mal wieder machen.

00:33:01.620 --> 00:33:03.420
Ja, ja, ja. Ich habe mir da auch schon so ein paar Sachen

00:33:03.420 --> 00:33:05.480
aufgeschrieben. Genau, da brauchen wir halt noch irgendeinen Gast.

00:33:05.760 --> 00:33:07.320
Ja, wenn sich da irgendjemand berufen fühlt oder so.

00:33:07.860 --> 00:33:09.520
Genau, wir suchen da jemanden.

00:33:09.540 --> 00:33:10.240
Oder jemanden kennt.

00:33:11.160 --> 00:33:12.720
Den man mal fragen könnte, dann

00:33:12.720 --> 00:33:14.400
wäre das wahrscheinlich ganz nett.

00:33:14.700 --> 00:33:15.840
Da gibt es auch so viele Tools und Dinge.

00:33:15.840 --> 00:33:16.980
Über die man mal reden müsste.

00:33:17.460 --> 00:33:18.480
Also gerade dieses ganze Thema

00:33:18.480 --> 00:33:21.460
Programmieren mit LLMs finde ich halt sehr interessant.

00:33:21.600 --> 00:33:22.520
Ich mache das ja auch viel.

00:33:24.600 --> 00:33:25.280
Und ja,

00:33:26.100 --> 00:33:27.500
da kann man auch unterschiedliche Arten

00:33:27.500 --> 00:33:27.980
tun.

00:33:29.540 --> 00:33:31.520
Genau, da kann man auch mal die ganzen Tools

00:33:31.520 --> 00:33:32.320
angucken und sowas.

00:33:33.440 --> 00:33:35.760
Ich habe noch zwei News-Items, die allerdings in eine ganz

00:33:35.760 --> 00:33:36.360
andere Richtung gehen.

00:33:38.160 --> 00:33:39.700
Das erste Item

00:33:39.700 --> 00:33:41.580
ist, dass Microsoft

00:33:41.580 --> 00:33:43.640
bei Nature eine Veröffentlichung

00:33:43.640 --> 00:33:44.380
eingereicht hat,

00:33:44.960 --> 00:33:45.820
wo sie,

00:33:45.840 --> 00:33:47.860
die sagen, sie haben

00:33:47.860 --> 00:33:48.840
einen

00:33:48.840 --> 00:33:51.660
Quantencomputer mit topologischen

00:33:51.660 --> 00:33:52.180
Qubits

00:33:52.180 --> 00:33:54.040
erfunden.

00:33:56.160 --> 00:33:57.820
Das ist wohl

00:33:57.820 --> 00:33:59.420
eine andere Art, Qubits zu machen,

00:33:59.700 --> 00:34:01.080
die stabiler ist.

00:34:02.420 --> 00:34:03.380
Also da ist sehr viel,

00:34:03.520 --> 00:34:06.160
sehr viele

00:34:06.160 --> 00:34:07.820
Worte drin, die man sich mal von einem LLM

00:34:07.820 --> 00:34:10.020
erklären lassen müsste.

00:34:10.720 --> 00:34:11.700
Special kind of

00:34:11.700 --> 00:34:13.660
Qubit built using non-abelian

00:34:13.660 --> 00:34:15.540
anions, which are excitation

00:34:15.540 --> 00:34:17.660
set can exist in a two-dimensional medium.

00:34:19.360 --> 00:34:21.360
Würdest du kurz was dazu sagen, bitte, lieber Johannes?

00:34:21.940 --> 00:34:23.540
Nee, ich kann da gar nichts dazu sagen.

00:34:23.540 --> 00:34:24.480
Was sind denn überhaupt

00:34:24.480 --> 00:34:26.360
typologische Quanten?

00:34:26.500 --> 00:34:29.040
Keine Ahnung. Es war einfach nur in der Veröffentlichung,

00:34:29.200 --> 00:34:31.420
dass es einen Durchbruch gab in dieser Art

00:34:31.420 --> 00:34:32.220
Quantencomputer.

00:34:32.420 --> 00:34:35.780
Das hat auch einige Bällen erzeugt.

00:34:36.040 --> 00:34:37.460
Ja, also Quantencomputer wäre schon voll cool,

00:34:37.600 --> 00:34:39.460
aber alle bisherigen

00:34:39.460 --> 00:34:41.600
Durchbrüche waren nicht so richtig

00:34:41.600 --> 00:34:42.900
Durchbrüche, ehrlich gesagt.

00:34:42.920 --> 00:34:44.840
Sind noch nicht so weit gekommen.

00:34:45.540 --> 00:34:47.400
Aber es wird Zeit, dass man zu

00:34:47.400 --> 00:34:49.720
Postquanten-Kryptografie wechselt.

00:34:49.720 --> 00:34:51.840
Ja, das hat auch einen tollen Namen,

00:34:51.980 --> 00:34:53.420
dieser Chip, der heißt Majorana.

00:34:53.600 --> 00:34:54.980
Majorana. Ja, das

00:34:54.980 --> 00:34:56.760
liegt daran, dass das

00:34:56.760 --> 00:34:59.380
tatsächlich

00:34:59.380 --> 00:35:01.500
irgendein Autor, der

00:35:01.500 --> 00:35:03.020
Das hätte jemand zu viel gekifft.

00:35:03.720 --> 00:35:05.420
Majorana Zero Modus.

00:35:06.180 --> 00:35:06.460
Egal.

00:35:07.240 --> 00:35:09.480
Das zweite News-Item ist tatsächlich wesentlich

00:35:09.480 --> 00:35:11.580
spezifischer für Python

00:35:11.580 --> 00:35:13.500
und ist auch erst zwei Wochen

00:35:13.500 --> 00:35:14.120
alt, ungefähr.

00:35:15.540 --> 00:35:18.040
Und zwar gibt es

00:35:18.040 --> 00:35:19.800
einen PR, der jetzt gerade

00:35:19.800 --> 00:35:21.940
durch die Review geht

00:35:21.940 --> 00:35:24.200
und da wird ein

00:35:24.200 --> 00:35:25.520
Tailcalling-Interpreter

00:35:25.520 --> 00:35:27.980
umgesetzt. Ja, das ist cool.

00:35:28.560 --> 00:35:30.240
Was das genau ist, spielt auch keine

00:35:30.240 --> 00:35:32.060
richtig große Rolle. Tailcall-Optimization

00:35:32.060 --> 00:35:34.100
ist so eine Möglichkeit, um

00:35:34.100 --> 00:35:36.180
Stackframes zu eliminieren, wenn man weiß,

00:35:36.240 --> 00:35:37.320
dass man nicht mehr dahin zurückkehrt.

00:35:37.880 --> 00:35:39.020
Das Wichtige daran ist,

00:35:39.980 --> 00:35:41.800
9 bis 15 Prozent

00:35:43.800 --> 00:35:44.280
Geschwindigkeitsimprovement.

00:35:44.380 --> 00:35:45.200
Das ist schon,

00:35:45.540 --> 00:35:46.920
Das ist schon massiv.

00:35:47.840 --> 00:35:49.960
John Haberman war das, oder Josh Haberman?

00:35:50.580 --> 00:35:51.400
Ken Jin

00:35:51.400 --> 00:35:52.500
war das.

00:35:54.300 --> 00:35:56.260
Und es ist

00:35:56.260 --> 00:35:57.300
jetzt schon gemerged und

00:35:57.300 --> 00:35:59.360
wird in 3.14 veröffentlicht.

00:35:59.820 --> 00:36:02.120
Noch nicht in den Default-Sachen.

00:36:02.320 --> 00:36:02.860
Also man muss das

00:36:02.860 --> 00:36:05.800
beim Konfigurieren, beim Compilen

00:36:05.800 --> 00:36:07.920
gibt es dann einen Schalter, den man

00:36:07.920 --> 00:36:09.740
Und das funktioniert irgendwie auch nur bei

00:36:09.740 --> 00:36:11.960
neuen Compilern. Das ist auch leider der Grund, warum sie es

00:36:11.960 --> 00:36:14.180
nicht per Default

00:36:14.180 --> 00:36:15.400
anmachen, weil du brauchst halt

00:36:15.540 --> 00:36:16.400
neue Compilern.

00:36:16.400 --> 00:36:17.320
Bei LLVM.

00:36:18.080 --> 00:36:20.480
Weil der C-Standard, in dem C-Standard

00:36:20.480 --> 00:36:21.640
gibt es so Sachen, die das nicht

00:36:21.640 --> 00:36:23.220
können.

00:36:24.420 --> 00:36:26.420
Der C-Standard, der braucht

00:36:26.420 --> 00:36:27.920
immer Register bei so einem

00:36:27.920 --> 00:36:29.520
Funktionsaufruf und

00:36:29.520 --> 00:36:32.380
deshalb wurde das auf Ebene von der LLVM

00:36:32.380 --> 00:36:34.040
IL, also diese

00:36:34.040 --> 00:36:36.440
Intermediate Representation gemacht.

00:36:36.780 --> 00:36:38.500
Und da kann man das nämlich wegeliminieren.

00:36:38.620 --> 00:36:40.360
Da gibt es so ein Flag, das heißt Must Tail.

00:36:42.080 --> 00:36:42.560
Das sind alles

00:36:42.560 --> 00:36:44.320
technische Details. Das Interessante ist, dass da

00:36:44.320 --> 00:36:45.240
wirklich einfach,

00:36:45.540 --> 00:36:48.000
mit einer neuen Umsetzung einfach

00:36:48.000 --> 00:36:49.800
10%, 10, 15% mehr

00:36:49.800 --> 00:36:51.240
Performance rauskommen. Und das ist schon

00:36:51.240 --> 00:36:52.680
fantastisch.

00:36:52.980 --> 00:36:55.880
Ja, voll gut. Stimmt.

00:36:58.780 --> 00:37:00.100
Ja, ansonsten,

00:37:00.200 --> 00:37:00.600
genau.

00:37:01.740 --> 00:37:03.800
Habe ich jetzt, glaube ich, gar nicht. Ich muss mir nur scrollen,

00:37:03.860 --> 00:37:04.720
dass du viel zeugst.

00:37:06.460 --> 00:37:07.880
Das Alter ist

00:37:07.880 --> 00:37:09.140
schon vorbei. Ist nicht mehr nötig.

00:37:09.640 --> 00:37:11.320
Ja, also wir haben auch, das sollte

00:37:11.320 --> 00:37:13.120
vielleicht auch einfach was zu sagen.

00:37:14.420 --> 00:37:15.460
Wir hatten mal aufgerufen,

00:37:15.540 --> 00:37:17.040
ob Leute

00:37:17.040 --> 00:37:19.020
sich melden könnten, die Interesse daran haben,

00:37:19.120 --> 00:37:20.340
irgendwie so ein Hörertreffen mal zu suchen.

00:37:20.340 --> 00:37:23.580
Und da gab es relativ viel Feedback tatsächlich.

00:37:23.980 --> 00:37:25.240
Und da so, sagen wir mal so,

00:37:25.300 --> 00:37:27.300
ausreichend genug, dass wir jetzt wohl tatsächlich

00:37:27.300 --> 00:37:28.500
ernsthaft ins Auge fassen müssen.

00:37:29.220 --> 00:37:30.060
Keine Ausrede mehr.

00:37:30.960 --> 00:37:32.680
Ja, aber es ist ja leider nicht in Süddeutschland.

00:37:33.000 --> 00:37:34.760
Es ist eigentlich auch egal, ob man das macht.

00:37:35.020 --> 00:37:36.560
Du kommst einfach mit, Johannes.

00:37:37.080 --> 00:37:38.220
Du hast eingeflogen.

00:37:39.380 --> 00:37:41.360
Wir können ja mal gucken. Also ich würde denken,

00:37:41.460 --> 00:37:43.160
dass es gut wäre, das irgendwann zu machen, wenn es

00:37:43.160 --> 00:37:45.240
ein bisschen wärmer ist, dass man auch irgendwo draus gehen kann,

00:37:45.240 --> 00:37:47.120
wo es irgendwie schön ist.

00:37:47.320 --> 00:37:47.760
So Mai, Jun.

00:37:48.220 --> 00:37:49.360
Irgendwie so, genau, genau.

00:37:50.980 --> 00:37:52.700
Und dann

00:37:52.700 --> 00:37:55.060
brauchen wir noch eine Location

00:37:55.060 --> 00:37:57.140
irgendwie und dann müssen wir den Johannes irgendwie

00:37:57.140 --> 00:37:58.580
von Heim.

00:37:58.620 --> 00:38:00.660
Also ich würde eher so Erwachsenenzeit

00:38:00.660 --> 00:38:02.520
irgendwie so mittags anfangen.

00:38:02.740 --> 00:38:03.280
Ah, okay.

00:38:04.200 --> 00:38:05.400
Dieser hat Erwachsenenzeit.

00:38:06.900 --> 00:38:09.100
Ja, und dann kann man sich doch

00:38:09.100 --> 00:38:10.980
irgendwie ein schönes, was Grünes raussuchen, oder?

00:38:11.080 --> 00:38:12.020
Muss ja nicht jetzt so...

00:38:12.020 --> 00:38:12.160
Ja.

00:38:13.720 --> 00:38:14.800
Klingt voll gut.

00:38:15.240 --> 00:38:16.200
Ja, aber...

00:38:16.200 --> 00:38:18.000
Und wir können auch schon mal sagen, es wird wahrscheinlich eher so

00:38:18.000 --> 00:38:20.300
Rheinland, das heißt Köln-Düsseldorf.

00:38:20.360 --> 00:38:20.860
Ah, Düsseldorf.

00:38:23.600 --> 00:38:24.300
Kleiner Spoiler.

00:38:24.740 --> 00:38:25.020
Ja, okay.

00:38:25.660 --> 00:38:27.880
Ja, aber es waren viele Leute, die hier sagten, die kommen hier von Rheinland.

00:38:27.960 --> 00:38:29.020
Deswegen machen wir das einfach hier.

00:38:29.720 --> 00:38:29.840
Ja.

00:38:32.000 --> 00:38:32.360
Genau.

00:38:33.500 --> 00:38:35.860
Ja, also aber dann, das waren dann auch schon alle News,

00:38:35.920 --> 00:38:36.820
die ich so hatte, glaube ich.

00:38:38.840 --> 00:38:39.200
Ja.

00:38:39.400 --> 00:38:40.380
Ja, einiges.

00:38:40.380 --> 00:38:42.620
Wolltest du nicht noch irgendwas erzählen von der

00:38:42.620 --> 00:38:43.960
Forstkontakt?

00:38:43.960 --> 00:38:45.080
Ach, Forstem. Ja, genau.

00:38:45.240 --> 00:38:47.360
Ja, könnte ich.

00:38:47.720 --> 00:38:48.120
Genau, auch.

00:38:48.540 --> 00:38:50.260
Ja, und...

00:38:50.260 --> 00:38:53.160
Ja, warte, dann mache ich am besten mal eine Kapitelmarke und sage hier mal...

00:38:53.160 --> 00:38:54.340
Ja, Peck und Wepfer auch, ne?

00:38:54.860 --> 00:38:56.680
Ach so, genau, da kannst du ja mal was erzählen.

00:38:56.780 --> 00:38:59.200
Dann nenne ich die Kapitelmarke einfach Konferenzen nachher.

00:38:59.780 --> 00:39:02.040
Ja, so viel kann ich dazu eigentlich gar nicht erzählen.

00:39:03.100 --> 00:39:03.760
War interessant.

00:39:03.980 --> 00:39:04.360
War interessant?

00:39:04.460 --> 00:39:04.580
Ja.

00:39:05.000 --> 00:39:06.200
Okay, wie viele Leute waren denn ungefähr da?

00:39:08.380 --> 00:39:09.420
Boah, schwer zu sagen.

00:39:09.480 --> 00:39:09.780
200?

00:39:10.860 --> 00:39:11.080
Okay.

00:39:11.720 --> 00:39:13.480
Also waren nicht so riesig groß.

00:39:13.480 --> 00:39:14.920
Wo fand das denn statt?

00:39:15.240 --> 00:39:15.600
In Berlin?

00:39:15.700 --> 00:39:16.040
In Berlin.

00:39:16.620 --> 00:39:16.900
Ach so.

00:39:18.480 --> 00:39:19.780
CC, irgendwie so ein Center.

00:39:19.900 --> 00:39:22.480
Das war relativ draußen in...

00:39:22.480 --> 00:39:22.940
Wie heißt das da?

00:39:23.920 --> 00:39:24.360
Viertel.

00:39:24.960 --> 00:39:26.100
Moment, ich muss mal kurz schauen.

00:39:27.000 --> 00:39:27.860
Ja, in irgendeinem Viertel in Berlin.

00:39:27.860 --> 00:39:28.800
Chebchow oder so, ja.

00:39:29.760 --> 00:39:30.580
Okay, ja.

00:39:30.620 --> 00:39:33.600
Also genau, irgendein Haus in irgendeinem Viertel in Berlin.

00:39:34.620 --> 00:39:35.900
Also war nicht so groß wie...

00:39:35.900 --> 00:39:36.980
Das ist ja eine genaue Beschreibung.

00:39:37.580 --> 00:39:38.720
Ja, genau.

00:39:39.320 --> 00:39:42.040
Ja, wir können die Konferenz einfach verlinken, dann kann man da nachgucken.

00:39:42.340 --> 00:39:42.440
Ja.

00:39:43.240 --> 00:39:43.540
Okay.

00:39:43.540 --> 00:39:44.500
Da waren interessante Sachen dabei.

00:39:44.800 --> 00:39:44.940
Mhm.

00:39:44.940 --> 00:39:45.780
Fand ich ganz gut.

00:39:46.340 --> 00:39:47.500
Aber wie war so die Atmosphäre?

00:39:47.620 --> 00:39:52.060
Ich meine, PyCon Web klingt für mich jetzt nach Webentwicklung und da gab es da irgendwelche

00:39:52.060 --> 00:39:52.940
interessanten...

00:39:52.940 --> 00:39:54.220
Also ich meine, klar, also...

00:39:54.220 --> 00:39:56.380
Ich habe ja viel über UUIDs gelernt.

00:39:56.960 --> 00:39:57.360
Ah, okay.

00:39:57.640 --> 00:39:57.780
Hm.

00:39:58.080 --> 00:39:58.200
Ja.

00:39:58.720 --> 00:39:59.220
Das finde ich gut.

00:39:59.540 --> 00:40:00.280
Über die neuen, oder?

00:40:01.760 --> 00:40:02.720
Sieben oder acht, ja.

00:40:03.480 --> 00:40:04.260
Ja, das sind die neuen.

00:40:04.980 --> 00:40:05.340
Ah, okay.

00:40:05.400 --> 00:40:08.000
Ich habe immer noch nicht so richtig verstanden, wofür man die unbedingt braucht, aber gut.

00:40:08.720 --> 00:40:10.460
Ja, dann, wenn du den Talk hast, dann...

00:40:10.460 --> 00:40:11.340
Ja, auf die PyCon Web gehen.

00:40:11.860 --> 00:40:12.500
Okay, gut.

00:40:12.500 --> 00:40:13.700
Dann, genau.

00:40:13.840 --> 00:40:14.900
Dann muss ich mir den mal angucken.

00:40:14.940 --> 00:40:19.400
Ja, ich habe es tatsächlich umgestellt in Dango auch jetzt auf sieben, glaube ich, ja.

00:40:20.440 --> 00:40:20.620
Ja.

00:40:20.840 --> 00:40:22.740
Ist leider eine extra Lib und man muss so ein klein...

00:40:22.740 --> 00:40:26.860
Bei Dango geht es nicht einfach so, aber man kann das quasi dann mit einem anderen Import

00:40:26.860 --> 00:40:31.200
versehen und dann funktioniert es als sieben und die sind auch dann geordnet und so.

00:40:31.300 --> 00:40:32.080
Das ist sehr, sehr schön.

00:40:33.060 --> 00:40:33.260
Ah.

00:40:34.700 --> 00:40:35.820
Ja, genau.

00:40:35.920 --> 00:40:41.920
Ich war jetzt Anfang Februar auf der FOSDEM in Brüssel und ja, nee, das war auch ziemlich

00:40:41.920 --> 00:40:42.780
cool irgendwie.

00:40:42.780 --> 00:40:44.020
Das war riesig.

00:40:44.020 --> 00:40:47.900
Ja, das ist immer so ein bisschen...

00:40:47.900 --> 00:40:48.640
Also es ist einfach...

00:40:48.640 --> 00:40:49.800
Es ist irgendwie zu viel.

00:40:50.020 --> 00:40:50.900
Also man...

00:40:50.900 --> 00:40:51.840
Es sind einfach wahnsinnig viele Leute.

00:40:51.900 --> 00:40:55.380
Ich weiß nicht, wie viele da waren, aber es könnten so 10.000 gewesen sein ungefähr.

00:40:56.340 --> 00:41:02.180
Und das findet halt statt immer auf diesem Campus der Freien Universität Brüssel irgendwie.

00:41:02.680 --> 00:41:04.440
Und der ist halt auch dann komplett voll.

00:41:04.840 --> 00:41:06.420
Und es gibt halt, ich weiß nicht, wie viele Tracks.

00:41:07.020 --> 00:41:07.680
Keine Ahnung.

00:41:07.960 --> 00:41:08.200
Viele.

00:41:08.760 --> 00:41:09.620
30 oder so?

00:41:09.660 --> 00:41:10.020
Ja.

00:41:10.560 --> 00:41:10.760
Gefühlt.

00:41:11.860 --> 00:41:13.020
Es ist halt...

00:41:13.020 --> 00:41:13.360
Also...

00:41:13.360 --> 00:41:13.360


00:41:13.360 --> 00:41:13.380
Es ist halt...

00:41:13.380 --> 00:41:13.440
Es ist halt...

00:41:13.440 --> 00:41:13.480
Es ist halt...

00:41:13.480 --> 00:41:13.540
Es ist halt...

00:41:13.540 --> 00:41:13.560
Es ist halt...

00:41:13.560 --> 00:41:13.600
Es ist halt...

00:41:13.600 --> 00:41:13.860
Es ist halt...

00:41:13.860 --> 00:41:13.860


00:41:13.860 --> 00:41:13.960
Es ist halt...

00:41:14.020 --> 00:41:16.920
Das Programm anzugucken ist halt schon ein Ding der Unmöglichkeit.

00:41:17.880 --> 00:41:18.200
Weil...

00:41:18.200 --> 00:41:18.920
Das ist irgendwie...

00:41:18.920 --> 00:41:19.220
Zu viel.

00:41:19.720 --> 00:41:24.140
Sobald man einmal durch alle Talks durchgescrollt hat für den Tag und immer geguckt hat, sind

00:41:24.140 --> 00:41:26.040
die Talks, die man sich angucken wollte, schon vorbei.

00:41:26.160 --> 00:41:26.960
Weil es dauert einfach zu lange.

00:41:27.780 --> 00:41:28.100
Und...

00:41:28.100 --> 00:41:29.300
Hast du ein Sitzplatz bekommen irgendwo?

00:41:29.480 --> 00:41:29.880
Ja, ja.

00:41:30.020 --> 00:41:30.180
Doch.

00:41:30.420 --> 00:41:30.840
Also klar.

00:41:31.140 --> 00:41:32.120
Es war schon auch sehr voll.

00:41:32.380 --> 00:41:33.800
Also das ist...

00:41:33.800 --> 00:41:39.640
Aber gerade bei den großen Serien kam man eigentlich meistens dann doch noch irgendwie rein.

00:41:39.640 --> 00:41:41.260
Manchmal musste man ein bisschen früher da sein.

00:41:42.280 --> 00:41:42.460
Ja.

00:41:42.720 --> 00:41:43.040
Ja.

00:41:43.040 --> 00:41:43.220
Ja.

00:41:43.220 --> 00:41:43.960
Es war wahnsinnig voll.

00:41:44.020 --> 00:41:45.740
Aber es war auf der anderen Seite auch wieder gut zu sehen,

00:41:45.880 --> 00:41:48.840
dass halt irgendwie, also oft hatte man ja jetzt das Gefühl,

00:41:48.920 --> 00:41:54.900
auch gerade nach Covid, dass einfach Sachen irgendwie leerer waren.

00:41:55.800 --> 00:41:58.220
Dass nicht mehr so viele Leute zu irgendwelchen Veranstaltungen gehen

00:41:58.220 --> 00:41:59.540
und das alles irgendwie so ein bisschen,

00:42:00.520 --> 00:42:03.780
also bei der Subscriber war das zum Beispiel auch so,

00:42:03.860 --> 00:42:05.600
dass man sagt, ja, es sind gerade so viele Leute,

00:42:05.720 --> 00:42:07.260
dass sich das halt irgendwie so halbwegs lohnt.

00:42:07.260 --> 00:42:11.080
Aber es sind deutlich weniger als bei der letzten Konferenz vor Covid.

00:42:11.480 --> 00:42:12.900
Und bei Meetups hört man das auch immer.

00:42:12.900 --> 00:42:13.960
So viele haben auch zugemacht.

00:42:14.140 --> 00:42:15.740
Oder bei manchen ist es halt so, naja,

00:42:15.860 --> 00:42:17.620
da kommen jetzt ein bisschen weniger als vor Covid,

00:42:17.760 --> 00:42:18.580
aber es kommen wieder welche.

00:42:19.380 --> 00:42:20.680
Und jetzt bei der Fostel war das halt so,

00:42:21.140 --> 00:42:26.920
so einfach, man geht da hin und dann stehen einem Leute auf den Füßen,

00:42:27.020 --> 00:42:27.740
weil es halt so voll ist.

00:42:27.920 --> 00:42:30.080
Also es war einfach, und man kommt in die Serne nicht rein,

00:42:30.180 --> 00:42:32.440
weil es halt irgendwie aber da Riesenschlangen davor sind.

00:42:32.860 --> 00:42:33.920
Also da geht wieder einiges.

00:42:34.240 --> 00:42:37.460
Also das war richtig, da war richtig was los.

00:42:38.000 --> 00:42:39.720
Den Python-Devroom hat Marc-André gemacht, oder?

00:42:40.380 --> 00:42:41.180
Genau, ja.

00:42:41.480 --> 00:42:42.880
Das war am Sonntag.

00:42:42.900 --> 00:42:45.060
Das war halt am Wochenende, Samstag, Sonntag.

00:42:45.100 --> 00:42:48.900
Sonntag war Python-Devroom in so einem Hörsaal da.

00:42:49.600 --> 00:42:51.920
Und da waren einige sehr coole Talks dabei.

00:42:52.800 --> 00:42:54.020
Ich habe da nicht alle gesehen.

00:42:54.360 --> 00:42:57.520
Also gerade morgens war ich halt noch irgendwie nicht da.

00:42:58.200 --> 00:42:58.820
Sehr richtig.

00:42:59.360 --> 00:43:00.680
Nicht da, ja.

00:43:01.420 --> 00:43:04.240
Und dann so ab mittags habe ich so drei, vier gesehen, glaube ich.

00:43:05.360 --> 00:43:06.020
War das auch Hybrid?

00:43:06.180 --> 00:43:07.480
Also das finde ich ja zum Beispiel bei den großen,

00:43:07.680 --> 00:43:08.960
Europice und FNC ist immer toll.

00:43:09.060 --> 00:43:11.960
Da konnte man dann, während man einen Talk gerade,

00:43:11.960 --> 00:43:13.960
auf dem Telefon weiterguckt,

00:43:14.040 --> 00:43:15.220
auf dem Nachhauseweg ins Hotelzimmer,

00:43:15.320 --> 00:43:17.220
auf dem Hotelfernseher zu Ende gucken,

00:43:17.380 --> 00:43:18.500
dann kurz in die Sauna gehen

00:43:18.500 --> 00:43:20.960
und dann zum Talk auf dem Gang wieder dabei sein drüben.

00:43:21.320 --> 00:43:23.160
Ja, das geht da schon.

00:43:23.340 --> 00:43:23.780
Das geht da auch.

00:43:23.880 --> 00:43:27.820
Also es gibt einen Stream von allen Tracks sozusagen.

00:43:28.120 --> 00:43:28.560
Ja, genau.

00:43:28.660 --> 00:43:28.980
Das ist cool.

00:43:29.500 --> 00:43:29.860
Genau.

00:43:30.120 --> 00:43:32.280
Also aber das ist alles sehr weitläufig da.

00:43:32.420 --> 00:43:33.140
Das heißt, man kann da nicht.

00:43:33.220 --> 00:43:34.480
Also das habe ich auf der Karte.

00:43:34.740 --> 00:43:37.080
Brüssel ist irgendwie viel weitläufiger,

00:43:37.160 --> 00:43:38.060
als ich jetzt gedacht hätte.

00:43:38.560 --> 00:43:39.880
Brüssel, auch keine so riesige Stadt.

00:43:40.260 --> 00:43:41.900
Bisschen größer als Düsseldorf vielleicht.

00:43:42.000 --> 00:43:43.220
Aber nicht so wahnsinnig viel größer.

00:43:43.500 --> 00:43:44.360
Und Düsseldorf ist ja so eine Stadt,

00:43:44.440 --> 00:43:46.760
da kann man einfach mal so in einer Dreiviertelstunde

00:43:46.760 --> 00:43:50.020
so von Osten nach Westen oder Süden nach Norden durchlaufen.

00:43:50.580 --> 00:43:50.900
Was?

00:43:51.360 --> 00:43:51.580
Ja.

00:43:52.120 --> 00:43:52.860
Also durch den Kahn.

00:43:53.600 --> 00:43:55.240
Also du wohnst ja halt auch im Zentrum.

00:43:55.580 --> 00:43:56.660
Das ist ja in jede Richtung einmal.

00:43:56.720 --> 00:43:57.640
Das ist dann schon anderthalb.

00:43:57.720 --> 00:43:58.180
Aber ja, okay.

00:43:58.360 --> 00:43:58.680
Ja, okay.

00:43:58.780 --> 00:43:59.340
Also ich meine jetzt,

00:43:59.440 --> 00:44:01.380
also wenn man eine Achse durchläuft,

00:44:01.560 --> 00:44:02.820
dann das dauert gar nicht so lang.

00:44:02.960 --> 00:44:03.940
Das sind halt drei, vier Kilometer.

00:44:04.120 --> 00:44:04.400
Mehr nicht.

00:44:04.540 --> 00:44:05.340
Naja, also ich brauche,

00:44:05.400 --> 00:44:06.740
wenn ich auf die andere Reihenseite brauche,

00:44:06.740 --> 00:44:07.460
brauche ich anderthalb Stunden.

00:44:07.840 --> 00:44:08.540
Nee, das brauche ich nicht.

00:44:08.540 --> 00:44:09.740
Doch, von mir aus schon.

00:44:09.800 --> 00:44:10.620
Ach so, ja gut, okay.

00:44:10.900 --> 00:44:11.700
Okay, ja, ja, okay.

00:44:11.740 --> 00:44:13.360
Aber du bist ja noch nicht am...

00:44:13.360 --> 00:44:13.940
Ja, okay.

00:44:14.320 --> 00:44:15.220
Ich bin nicht mal im Ostrand.

00:44:15.320 --> 00:44:17.040
Ich kann damals zu Johannes hochlaufen.

00:44:17.120 --> 00:44:18.680
Hat doch mal eine anderthalb Stunden gedauert.

00:44:19.400 --> 00:44:20.400
Ja, okay.

00:44:21.020 --> 00:44:22.680
Ja gut, es hängt dann auch noch ein bisschen davon ab.

00:44:22.720 --> 00:44:23.320
Aber sowas so.

00:44:23.420 --> 00:44:25.480
Also mein Gefühl für Städte,

00:44:25.560 --> 00:44:26.740
die ungefähr so groß sind wie Düsseldorf,

00:44:26.800 --> 00:44:27.320
sagt mir halt,

00:44:27.680 --> 00:44:28.820
ich kann da irgendwie hinlaufen,

00:44:28.900 --> 00:44:30.460
wenn ich da irgendwo in der Nähe wohne.

00:44:30.800 --> 00:44:31.760
Das sollte kein Problem sein.

00:44:31.900 --> 00:44:32.120
Ja.

00:44:32.380 --> 00:44:34.120
Und das ist in Brüssel aber falsch.

00:44:34.420 --> 00:44:35.660
Also das war auf der Karte auch so,

00:44:35.660 --> 00:44:37.160
irgendwie das ist da genau in der Nähe.

00:44:37.540 --> 00:44:38.460
Und dann war das halt aber zuvorderlich.

00:44:38.540 --> 00:44:39.260
Du bist 40 Minuten.

00:44:40.220 --> 00:44:40.720
Und das war...

00:44:40.720 --> 00:44:40.960
Das geht ja noch.

00:44:41.220 --> 00:44:42.600
Ja, aber...

00:44:42.600 --> 00:44:45.000
In Berlin musste ich tatsächlich 40 Minuten mit der S-Bahn fahren.

00:44:45.980 --> 00:44:46.180
Ja.

00:44:47.120 --> 00:44:48.320
Also genau, klar.

00:44:48.440 --> 00:44:49.140
In Berlin ist natürlich...

00:44:49.140 --> 00:44:50.180
Berlin ist auch riesig...

00:44:50.180 --> 00:44:51.740
Aber das wäre mir klar gewesen.

00:44:51.860 --> 00:44:53.600
Dass Berlin sehr weitläufig ist, das weiß ich.

00:44:53.720 --> 00:44:55.440
Aber Brüssel war mir jetzt nicht so...

00:44:55.440 --> 00:44:58.000
Und das Öffentlich-Verkehrssystem in Brüssel

00:44:58.000 --> 00:45:00.600
ist auch irgendwie so ein bisschen komisch.

00:45:00.900 --> 00:45:03.320
Aber ja, und man braucht auch sehr lange da.

00:45:03.760 --> 00:45:04.540
Aber genau,

00:45:04.540 --> 00:45:06.920
also da kann man nicht einfach irgendwie mal kurz ins Hotel

00:45:06.920 --> 00:45:07.540
oder in die Sauna

00:45:07.540 --> 00:45:08.540
und dann wieder zurücklaufen.

00:45:08.540 --> 00:45:11.320
Oder hat man einfach ein falsches Hotel ausgesucht.

00:45:11.860 --> 00:45:11.980
Ja.

00:45:12.060 --> 00:45:12.860
Ja gut.

00:45:13.380 --> 00:45:13.640
Vielleicht.

00:45:14.740 --> 00:45:15.560
Ja, aber genau.

00:45:15.760 --> 00:45:21.260
Also ich habe da auch einen Talk gehalten

00:45:21.260 --> 00:45:25.700
über mein Resümee-Side-Projekt.

00:45:25.760 --> 00:45:26.680
Jungle Resümees.

00:45:26.800 --> 00:45:27.520
Jungle Resümee.

00:45:28.220 --> 00:45:29.860
Ja, wir machen gerade unsere TV's schick.

00:45:30.600 --> 00:45:30.880
Genau.

00:45:31.260 --> 00:45:32.620
Weil das muss man ja so ab und zu machen.

00:45:32.920 --> 00:45:35.680
Oder so, wenn...

00:45:35.680 --> 00:45:37.160
Kann man schon mit Voucher-Token

00:45:37.160 --> 00:45:38.460
direkt einmal aufrufen,

00:45:38.460 --> 00:45:38.520
wenn man das nicht will.

00:45:38.540 --> 00:45:39.700
Dann ist das eine Woche gültig.

00:45:39.760 --> 00:45:40.820
Dann kann man sich das alles schon angucken,

00:45:40.900 --> 00:45:42.180
wie das ganze Projekt ist und sowas, ja?

00:45:42.440 --> 00:45:43.680
Ja, genau, genau.

00:45:43.800 --> 00:45:44.540
Das ist auch drin.

00:45:44.660 --> 00:45:46.840
Aber im Wesentlichen ist es halt irgendwie so

00:45:46.840 --> 00:45:47.940
ein JSON-Field,

00:45:48.040 --> 00:45:49.200
wo der ganze Kram halt drinsteht.

00:45:49.360 --> 00:45:50.800
Die Lochen schreibt sogar die ganzen Token

00:45:50.800 --> 00:45:51.660
mit ins JSON-Field rein.

00:45:51.720 --> 00:45:53.040
Da steht einfach alles in dem JSON-Field drin.

00:45:53.440 --> 00:45:54.520
Das ist jetzt gar nicht so erwartet.

00:45:55.020 --> 00:45:55.160
Ja.

00:45:55.460 --> 00:45:56.980
Alle Plugins, einfach ein JSON-Field,

00:45:57.040 --> 00:45:57.340
alles rein.

00:45:57.520 --> 00:45:57.720
Papp.

00:45:58.160 --> 00:45:58.280
Ja.

00:45:58.820 --> 00:45:59.520
Fand ich ein bisschen seltsam.

00:45:59.980 --> 00:46:01.580
Postgres als MongoDB verwenden.

00:46:01.700 --> 00:46:02.480
Ja, genau.

00:46:02.980 --> 00:46:05.220
Aber also die Idee ist sozusagen...

00:46:05.220 --> 00:46:05.620
Das ist schneller.

00:46:06.760 --> 00:46:06.960
Ja.

00:46:06.960 --> 00:46:07.240
Genau.

00:46:09.260 --> 00:46:11.960
Und man macht halt immer nur eine Curry pro...

00:46:12.960 --> 00:46:13.920
Wenn man eine Webseite rendert.

00:46:14.380 --> 00:46:15.400
Man muss immer nur dieses eine Ding

00:46:15.400 --> 00:46:16.500
aus der Datenbank holen.

00:46:16.600 --> 00:46:16.880
Fertig.

00:46:18.200 --> 00:46:19.260
Ja, aber der eigentliche Grund,

00:46:19.400 --> 00:46:20.880
warum ich das an der Stelle so gemacht habe

00:46:20.880 --> 00:46:24.720
und nicht irgendwie quasi so in Normalform

00:46:24.720 --> 00:46:29.100
so normalisiert irgendwie in der Datenbank schreibe,

00:46:29.160 --> 00:46:30.400
wie man das vielleicht normalerweise tun würde,

00:46:30.520 --> 00:46:32.020
ist, dass ich gern hätte,

00:46:32.180 --> 00:46:33.740
dass man das durch Plugins erweitern kann.

00:46:33.840 --> 00:46:36.320
Und wenn man jetzt ein Plugin schreibt,

00:46:36.320 --> 00:46:36.880
das halt...

00:46:36.880 --> 00:46:38.240
eigene Tabellen mitbringt und so,

00:46:38.640 --> 00:46:40.200
dann wird es schnell sehr eklig.

00:46:40.300 --> 00:46:41.060
Weil da muss man sich überlegen,

00:46:41.160 --> 00:46:42.900
okay, jetzt müssen die Daten ja da irgendwie

00:46:42.900 --> 00:46:44.140
aus den Tabellen rausgeholt werden.

00:46:44.240 --> 00:46:46.000
Jetzt muss irgendwie das Hauptding irgendwie wissen,

00:46:46.080 --> 00:46:46.940
wie all diese Tabellen sind.

00:46:47.060 --> 00:46:48.660
Oder den muss man halt irgendwie...

00:46:48.660 --> 00:46:50.860
Dann muss man dagegen joinen oder...

00:46:50.860 --> 00:46:51.980
Das wird alles sehr komisch.

00:46:52.000 --> 00:46:53.240
Ja, aber da muss man halt auch eine Liste pflegen

00:46:53.240 --> 00:46:55.420
mit offiziell supporteten Plugins,

00:46:55.480 --> 00:46:57.300
sodass die alle auch identische Keys nicht haben,

00:46:57.380 --> 00:46:58.080
sondern dass die...

00:46:58.080 --> 00:46:59.260
Ja, das muss man vielleicht nicht.

00:46:59.540 --> 00:47:01.780
Aber so kann man wahrscheinlich auch irgendwie automatisch machen.

00:47:01.860 --> 00:47:03.520
Aber das ist halt dann schwierig.

00:47:04.600 --> 00:47:05.900
Während dann halt man sagt,

00:47:06.240 --> 00:47:06.240


00:47:06.880 --> 00:47:08.200
wenn du Plugins schreibst,

00:47:08.200 --> 00:47:10.460
dann ist sozusagen die Anforderung,

00:47:10.580 --> 00:47:11.540
dass das etwas sein...

00:47:11.540 --> 00:47:12.920
Die Daten müssen halt etwas sein,

00:47:12.980 --> 00:47:15.080
was man nach JSON serialisieren kann.

00:47:15.440 --> 00:47:16.660
Und wieder...

00:47:16.660 --> 00:47:17.580
Ja, so.

00:47:17.820 --> 00:47:20.220
Dann reicht das eigentlich schon.

00:47:21.060 --> 00:47:23.620
Und ja, dann muss man halt sonst nichts machen

00:47:23.620 --> 00:47:25.920
und kann einfach den Namen des Plugins nehmen

00:47:25.920 --> 00:47:27.700
und darunter halt die ganzen Daten speichern.

00:47:28.200 --> 00:47:28.600
Ich sag ja nichts.

00:47:28.660 --> 00:47:29.240
In Name Collision,

00:47:29.340 --> 00:47:31.080
zweimal das gleiche Plugin gleich nennt.

00:47:31.100 --> 00:47:32.180
Ja, das geht natürlich nicht.

00:47:32.400 --> 00:47:34.320
Aber das ist...

00:47:34.320 --> 00:47:35.280
Das Problem hast du ja immer.

00:47:35.640 --> 00:47:36.320
Kontrolle drüber,

00:47:36.320 --> 00:47:36.720
wenn du...

00:47:36.720 --> 00:47:38.020
Wenn du das halt verwendest,

00:47:38.440 --> 00:47:40.240
wenn du dann zwei Plugins mit dem gleichen Namen nimmst,

00:47:40.320 --> 00:47:41.960
okay, dann hast du halt einen Fuß geschossen.

00:47:42.720 --> 00:47:44.360
Aber ja, genau.

00:47:44.480 --> 00:47:44.980
Das ist so.

00:47:45.620 --> 00:47:45.760
Ja.

00:47:46.280 --> 00:47:48.220
Und es macht halt so HTMX-Zeugs

00:47:48.220 --> 00:47:49.880
und solche Dinge.

00:47:52.480 --> 00:47:52.880
Genau.

00:47:52.940 --> 00:47:53.620
Und ich habe so ein bisschen...

00:47:53.620 --> 00:47:55.480
Ich habe eine Demo gemacht mit

00:47:55.480 --> 00:47:58.880
so Code-Generierungen über LLMs.

00:48:01.020 --> 00:48:02.700
Und genau.

00:48:02.800 --> 00:48:03.740
Die hat auch so halb funktioniert.

00:48:03.860 --> 00:48:05.000
Insofern eigentlich ganz gut.

00:48:06.720 --> 00:48:08.740
Wo ich einfach so Few-Shot-Learning mache.

00:48:08.860 --> 00:48:11.300
Also ich packe halt quasi die Plugins,

00:48:11.360 --> 00:48:11.760
die es gibt,

00:48:12.300 --> 00:48:13.380
in den Kontext von einem LLM

00:48:13.380 --> 00:48:14.720
und sag dann...

00:48:14.720 --> 00:48:15.380
Gib mal ein neues Plugin.

00:48:15.560 --> 00:48:17.520
Gib mal ein neues Plugin für ein neues Prompt.

00:48:18.880 --> 00:48:23.520
Und dann kommt da halt irgendwie Kram von einem LLM zurück

00:48:23.520 --> 00:48:26.080
und den schreibe ich dann halt auch in eine Datenbank

00:48:26.080 --> 00:48:28.020
und kann das aber auch live direkt testen,

00:48:28.900 --> 00:48:29.640
wie es halt so aussieht.

00:48:29.900 --> 00:48:31.240
Und ja, das hat eigentlich ganz gut funktioniert.

00:48:31.360 --> 00:48:32.560
Ja, ich fand das Projekt interessant.

00:48:32.720 --> 00:48:34.120
Das hat so verschiedene Aspekte gleichzeitig.

00:48:34.120 --> 00:48:36.380
Also dieses Plugin-System hat auch so ein Auto-Crud und so.

00:48:36.720 --> 00:48:39.980
Und ja, das war bei...

00:48:39.980 --> 00:48:41.200
Also in der Technik...

00:48:41.200 --> 00:48:42.480
Ich fand es nicht so einfach zu benutzen.

00:48:43.040 --> 00:48:43.980
Vielleicht bin ich auch zu doof dafür.

00:48:44.540 --> 00:48:45.380
Ja, ist es auch nicht.

00:48:45.400 --> 00:48:46.580
Es ist alles immer experimentell.

00:48:46.800 --> 00:48:48.980
Also ich meine, man kann ja mal einfach drauf gucken,

00:48:49.040 --> 00:48:49.540
das ausprobieren.

00:48:49.700 --> 00:48:50.860
Ich habe überlegt, ob ich es forken soll

00:48:50.860 --> 00:48:52.520
und dann habe ich es anders implementiert.

00:48:53.180 --> 00:48:55.060
Ja, ist ja auch okay.

00:48:55.380 --> 00:48:55.560
Genau.

00:48:55.720 --> 00:48:56.900
Dann hat mir irgendjemand gesagt,

00:48:56.960 --> 00:49:01.840
es gibt so ein Standard-JSON-Schema für Resumes.

00:49:02.260 --> 00:49:02.420
Aha.

00:49:03.080 --> 00:49:03.940
Das würde ich auch gerne kennen.

00:49:04.060 --> 00:49:04.380
Genau.

00:49:04.600 --> 00:49:06.280
Da muss ich mal gucken,

00:49:06.360 --> 00:49:06.560
ob ich da nicht...

00:49:06.560 --> 00:49:06.620
Genau.

00:49:06.620 --> 00:49:06.640
Genau.

00:49:06.640 --> 00:49:06.660
Genau.

00:49:06.660 --> 00:49:06.700
Genau.

00:49:06.700 --> 00:49:06.700


00:49:06.700 --> 00:49:06.700


00:49:06.700 --> 00:49:06.700


00:49:06.700 --> 00:49:06.700


00:49:06.700 --> 00:49:06.700


00:49:06.700 --> 00:49:06.700


00:49:06.700 --> 00:49:06.700


00:49:06.700 --> 00:49:09.260
Wenn ich dann Import oder Export dahin irgendwie auch reinbaue,

00:49:09.340 --> 00:49:10.540
weil das wäre natürlich vielleicht auch interessant.

00:49:10.660 --> 00:49:12.700
Da gibt es auch dann schon jede Menge fertige Templates,

00:49:13.360 --> 00:49:14.760
um das halt irgendwie aussehen zu lassen.

00:49:15.560 --> 00:49:15.780
Hm.

00:49:15.960 --> 00:49:16.560
Muss ich mal gucken.

00:49:16.660 --> 00:49:17.500
Oder ob ich das irgendwie einbaue,

00:49:17.620 --> 00:49:18.740
das weiß ich noch nicht.

00:49:19.800 --> 00:49:22.160
Das würde sich aber mit deiner Plugin-Architektur jetzt beißen.

00:49:22.960 --> 00:49:24.540
Nö, das könnte man ja auch so machen.

00:49:24.540 --> 00:49:25.800
Als Subkeys von dem...

00:49:25.800 --> 00:49:26.080
Ja, okay.

00:49:26.160 --> 00:49:26.380
Verstehe.

00:49:26.540 --> 00:49:27.500
Ein Plugin dafür machen.

00:49:27.680 --> 00:49:27.920
Genau.

00:49:28.420 --> 00:49:28.660
Ja.

00:49:28.940 --> 00:49:29.240
Mhm.

00:49:29.920 --> 00:49:30.480
Ja, okay.

00:49:31.360 --> 00:49:32.260
Ja, mal schauen.

00:49:33.220 --> 00:49:33.480
Genau.

00:49:33.480 --> 00:49:35.740
Das war eigentlich...

00:49:35.740 --> 00:49:36.600
Das ist doch jetzt...

00:49:36.600 --> 00:49:37.760
Tatsächlich der perfekte Zeitpunkt,

00:49:37.860 --> 00:49:39.600
so den Mietaufruf zu bringen wieder, ne?

00:49:40.060 --> 00:49:40.420
Miet?

00:49:40.560 --> 00:49:41.880
Den Mietaufruf.

00:49:42.040 --> 00:49:43.260
Man kann uns gerade mieten.

00:49:43.340 --> 00:49:44.980
Ja, sollten wir auf jeden Fall an der Stelle machen.

00:49:45.160 --> 00:49:45.940
Uns kann man mieten.

00:49:46.040 --> 00:49:46.920
Den Jochen kann man mieten.

00:49:47.080 --> 00:49:48.100
Und den Dominik kann man mieten.

00:49:48.220 --> 00:49:48.340
Ja.

00:49:49.000 --> 00:49:50.380
Dominik, dich kann man inzwischen auch mieten.

00:49:50.580 --> 00:49:51.440
Ja, ich kann auch mieten.

00:49:51.640 --> 00:49:51.720
Wieder.

00:49:51.840 --> 00:49:52.580
Ja, das ist ja richtig.

00:49:52.760 --> 00:49:54.680
Das konnten wir bisher ja gar nicht announcen,

00:49:54.740 --> 00:49:54.940
aber jetzt...

00:49:54.940 --> 00:49:55.620
Ja, doch.

00:49:55.780 --> 00:49:57.160
Man konnte mich ja auch schon vorher ein bisschen mieten,

00:49:57.260 --> 00:49:57.920
aber jetzt auch wieder richtig.

00:49:58.920 --> 00:50:00.260
Und den Johannes kann man auch mieten.

00:50:00.440 --> 00:50:00.660
Ja.

00:50:01.180 --> 00:50:02.000
Wir sind alle mietbar.

00:50:02.540 --> 00:50:03.440
Und ich habe sogar noch mehr Leute,

00:50:03.440 --> 00:50:03.960
die man mieten kann.

00:50:03.960 --> 00:50:06.400
Wir sind sogar eine richtig große Mietbilde.

00:50:07.400 --> 00:50:09.960
Ist das quasi eine WG?

00:50:11.260 --> 00:50:12.020
Ja, also ich würde schon sagen,

00:50:12.100 --> 00:50:12.780
das ist ein gutes Projecting,

00:50:12.880 --> 00:50:15.180
was ordentlich Dampf jetzt auch mal draufkriegt

00:50:15.180 --> 00:50:17.600
und halt nicht nur so ein paar kleine Männchen,

00:50:17.720 --> 00:50:18.340
sondern ordentlich.

00:50:18.820 --> 00:50:19.140
Sehr schön.

00:50:19.360 --> 00:50:19.440
Ja.

00:50:19.720 --> 00:50:21.580
Also wenn ihr, liebe Zuhörer,

00:50:21.640 --> 00:50:22.160
ein Projekt habt,

00:50:22.400 --> 00:50:24.980
dann mietet uns.

00:50:26.160 --> 00:50:26.520
Genau.

00:50:27.640 --> 00:50:29.300
Ja, ansonsten, genau,

00:50:29.400 --> 00:50:31.380
was ich da noch gesehen habe an Vorträgen,

00:50:31.380 --> 00:50:33.180
da gab es einen von Thibaut Collin

00:50:33.180 --> 00:50:33.380
über...

00:50:33.960 --> 00:50:35.460
Die Zukunft von Django.

00:50:35.620 --> 00:50:35.960
Ich wollte gerade sagen,

00:50:36.000 --> 00:50:36.640
das ist doch der Mensch,

00:50:36.740 --> 00:50:37.240
der ist in Django,

00:50:37.420 --> 00:50:38.920
die Presidency.

00:50:39.000 --> 00:50:39.840
Der ist jetzt, genau,

00:50:39.920 --> 00:50:41.220
Präsident der Django Software Foundation.

00:50:41.760 --> 00:50:42.540
Apropos Django,

00:50:43.120 --> 00:50:45.180
da gibt es doch jetzt auch bald wieder so eine Konferenz.

00:50:45.480 --> 00:50:46.380
Ja, genau.

00:50:46.620 --> 00:50:48.200
Die ist am Ende April.

00:50:48.400 --> 00:50:49.020
Ende April.

00:50:49.980 --> 00:50:51.620
Ist das ein inoffizielles Treffen?

00:50:52.280 --> 00:50:53.820
Ist die Woche nach Ostern.

00:50:54.300 --> 00:50:54.520
Ja.

00:50:55.320 --> 00:50:56.700
Also wir werden alle da sein.

00:50:57.820 --> 00:50:58.220
Daher...

00:50:58.220 --> 00:50:59.000
Ja, wünschen wir das.

00:50:59.020 --> 00:50:59.540
Könnte man.

00:50:59.740 --> 00:51:00.840
Das ist in Dublin.

00:51:01.240 --> 00:51:01.620
In Dublin.

00:51:01.620 --> 00:51:02.920
Oh ja, cool, cool, cool.

00:51:03.960 --> 00:51:04.120
Ja.

00:51:04.400 --> 00:51:05.220
Und ich darf kein Bier trinken.

00:51:05.660 --> 00:51:06.020
Fürchterlich.

00:51:06.580 --> 00:51:06.680
Ja.

00:51:08.220 --> 00:51:08.840
Aber in Dublin,

00:51:08.900 --> 00:51:09.880
gibt es in Dublin irgendein Bier,

00:51:09.940 --> 00:51:10.520
was man trinken müsste?

00:51:10.680 --> 00:51:12.320
Ja, ich habe kein Bier.

00:51:12.460 --> 00:51:12.900
Ich weiß nicht.

00:51:13.540 --> 00:51:14.600
Indischer Wein, habe ich gehört.

00:51:14.680 --> 00:51:15.940
Nein, du gehst in jeden Pub

00:51:15.940 --> 00:51:16.780
und da gibt es on tap

00:51:16.780 --> 00:51:17.760
einfach die leckersten Sachen

00:51:17.760 --> 00:51:18.800
und die ganzen Craft-Biere

00:51:18.800 --> 00:51:20.400
und alles fresh und...

00:51:20.400 --> 00:51:20.540
Ja.

00:51:20.700 --> 00:51:21.680
Ah ja, okay.

00:51:21.940 --> 00:51:22.280
Wundervoll.

00:51:22.380 --> 00:51:23.260
Ja, Cider kriegst du auch,

00:51:23.560 --> 00:51:25.360
aber Genusswein stehe ich nicht drauf,

00:51:25.400 --> 00:51:25.700
brauche ich nicht.

00:51:25.800 --> 00:51:27.300
Aber andere leckere on tap Sorten.

00:51:27.320 --> 00:51:28.300
Aber Django gibt es auch.

00:51:28.700 --> 00:51:29.300
Ja, und Django.

00:51:29.300 --> 00:51:30.020
Das ist der eigentliche Grund,

00:51:30.120 --> 00:51:30.620
warum wir da hingehen.

00:51:31.080 --> 00:51:31.400
Ja.

00:51:31.400 --> 00:51:33.680
Und die Natur ist so schön grün da.

00:51:33.780 --> 00:51:34.520
Das ist schon gutes Wetter.

00:51:35.140 --> 00:51:36.300
Das hört man zumindest.

00:51:37.280 --> 00:51:38.720
Ja, genau.

00:51:39.400 --> 00:51:43.740
Ist nicht auch die Europython

00:51:43.740 --> 00:51:46.080
zum gleichen Zeitpunkt?

00:51:46.160 --> 00:51:46.340
Nein.

00:51:46.480 --> 00:51:48.180
Nee, die Pycon.de

00:51:48.180 --> 00:51:49.740
ist leider zum gleichen Zeitpunkt.

00:51:49.760 --> 00:51:50.400
Pycon.de, genau.

00:51:50.460 --> 00:51:53.020
Und Pycon Data.

00:51:53.120 --> 00:51:54.400
Pycon.de und PyData.

00:51:55.600 --> 00:51:56.700
Genau, ist zum gleichen Zeitpunkt

00:51:56.700 --> 00:51:57.800
in Darmstadt.

00:51:57.900 --> 00:51:58.400
Darmstadt, genau.

00:51:58.780 --> 00:51:58.900
Ja.

00:51:58.900 --> 00:52:01.160
Ja, aber genau.

00:52:01.240 --> 00:52:01.380
Können wir...

00:52:01.380 --> 00:52:02.460
Aber wir können uns halt

00:52:02.460 --> 00:52:03.100
nicht zerreißen.

00:52:04.860 --> 00:52:05.060
Ja.

00:52:07.100 --> 00:52:07.620
Genau.

00:52:08.020 --> 00:52:09.800
Ja, also Zukunft Django

00:52:09.800 --> 00:52:11.240
war ganz interessant,

00:52:11.560 --> 00:52:13.200
weil

00:52:13.200 --> 00:52:15.560
ja, da war so halt,

00:52:15.700 --> 00:52:17.120
das waren hauptsächlich so Statistiken

00:52:17.120 --> 00:52:19.080
zu wie viele Leute verwenden das,

00:52:19.140 --> 00:52:19.820
was hätten sie gern,

00:52:20.180 --> 00:52:21.780
wie verlagert sich das irgendwie

00:52:21.780 --> 00:52:23.600
von irgendwie

00:52:23.600 --> 00:52:25.160
als von den Frameworkverwendenden

00:52:25.160 --> 00:52:26.520
zu API-Geschichten

00:52:26.520 --> 00:52:27.220
und so Dinge.

00:52:27.920 --> 00:52:30.060
Und ja, war ganz nett.

00:52:30.320 --> 00:52:31.180
Was man ja glaube ich sieht,

00:52:31.180 --> 00:52:33.000
ist, dass drüben über den Teich

00:52:33.000 --> 00:52:35.380
super viel mehr Menschen und Firmen

00:52:35.380 --> 00:52:36.980
auch Django einsetzen als hier.

00:52:37.480 --> 00:52:37.620
Ja.

00:52:37.720 --> 00:52:38.680
Dass man das vielleicht mal so

00:52:38.680 --> 00:52:41.080
da Aktivität machen könnte

00:52:41.080 --> 00:52:42.580
in der Richtung, was so Marketing angeht.

00:52:42.920 --> 00:52:44.240
Da hatte er auch mal

00:52:44.240 --> 00:52:45.920
einen Blogpost zu jetzt letztens.

00:52:46.040 --> 00:52:47.240
Das kam in dem Vortrag zwar nicht vor,

00:52:47.320 --> 00:52:48.320
aber das war dann ja auch sehr interessant,

00:52:48.820 --> 00:52:51.200
welche Regierungsseiten

00:52:51.200 --> 00:52:52.720
denn irgendwie Django verwenden und so.

00:52:53.460 --> 00:52:55.700
Und das war halt überall irgendwie

00:52:55.700 --> 00:52:56.420
relativ viel.

00:52:57.060 --> 00:52:57.740
Nur in einem

00:52:57.740 --> 00:53:01.020
analogen Dorf irgendwie,

00:53:01.020 --> 00:53:02.260
auf der Weltkarte halt nicht.

00:53:03.240 --> 00:53:06.680
Das globale Funkloch sozusagen.

00:53:07.280 --> 00:53:08.620
Ja, wo könnte das wohl sein?

00:53:09.240 --> 00:53:10.220
Ja, das war nämlich genau hier.

00:53:10.340 --> 00:53:11.560
Also hier gab es einfach gar keine,

00:53:11.640 --> 00:53:13.900
hier gibt es einfach keine Django-Projekte

00:53:13.900 --> 00:53:15.740
irgendwie in öffentlicher

00:53:15.740 --> 00:53:17.700
Hand oder so.

00:53:17.980 --> 00:53:18.180
Tja.

00:53:20.080 --> 00:53:21.280
Keine Ahnung, das liegt

00:53:21.280 --> 00:53:22.560
schon wieder im Quatsch.

00:53:23.940 --> 00:53:25.700
Aber irgendwie geht das hier.

00:53:25.780 --> 00:53:26.620
Wundert einen doch nicht, oder?

00:53:26.660 --> 00:53:28.040
Wenn man immer noch Fuck schicken muss

00:53:28.040 --> 00:53:28.640
für bestimmte Sachen.

00:53:29.900 --> 00:53:30.160
Naja.

00:53:31.020 --> 00:53:32.820
Aber hast du nicht mitgekriegt, Dominik,

00:53:32.920 --> 00:53:35.680
dass die Bundesbank jetzt keine Faxe mehr

00:53:35.680 --> 00:53:38.120
entgegennimmt seit 1.1.25?

00:53:39.040 --> 00:53:39.440
Nein.

00:53:39.660 --> 00:53:42.020
So weit ist es

00:53:42.020 --> 00:53:43.500
fortgeschritten mit der Digitalisierung.

00:53:43.700 --> 00:53:44.980
Wir haben ihr Fax abgeschaltet.

00:53:45.000 --> 00:53:46.860
Die Zukunft ist jetzt. Wir sind im Neuland angekommen.

00:53:47.340 --> 00:53:50.140
Ja, 2025 schon.

00:53:50.280 --> 00:53:51.920
Ja, doch gar nicht so schlecht.

00:53:52.380 --> 00:53:52.820
So langsam.

00:53:53.380 --> 00:53:54.340
Es ging durch die Presse.

00:53:54.840 --> 00:53:55.960
Tja, und jemand anders hat sich überlegt,

00:53:55.960 --> 00:53:57.900
dann macht der Faxgerät auf der anderen Seite einen Elementen.

00:53:58.000 --> 00:53:59.320
Dann kann man die Antworten ausdrucken.

00:54:00.320 --> 00:54:00.760
Yay.

00:54:01.020 --> 00:54:01.140
Ja.

00:54:02.920 --> 00:54:04.480
Genau. Ah, dann ein Vortrag,

00:54:04.560 --> 00:54:05.580
den ich richtig cool fand.

00:54:06.380 --> 00:54:08.040
Der war total super. Hätte ich gar nicht so erwartet.

00:54:08.160 --> 00:54:10.180
Ich saß da irgendwie nur, weil ich nicht rauskam, weil es so voll war.

00:54:10.820 --> 00:54:11.500
Aber...

00:54:11.500 --> 00:54:13.660
Wie ist das? Das ist immer das Bessere in Konferenzen.

00:54:13.960 --> 00:54:16.020
Die Talks, die sehen total toll aus von außen,

00:54:16.340 --> 00:54:17.280
sind aber total langweilig.

00:54:17.340 --> 00:54:19.580
Und dann sind die total spannend.

00:54:19.920 --> 00:54:20.980
Und alles dazwischen.

00:54:21.720 --> 00:54:23.920
Da hatte jemand irgendwie tatsächlich in PyScript

00:54:23.920 --> 00:54:25.440
irgendwie

00:54:25.440 --> 00:54:27.760
ja, so irgendwas

00:54:27.760 --> 00:54:30.060
sehr Excel-mäßiges nachgebaut.

00:54:30.660 --> 00:54:30.920
Aha.

00:54:31.020 --> 00:54:32.900
Und das hat tatsächlich richtig gut funktioniert.

00:54:33.320 --> 00:54:33.580
Und das war...

00:54:33.580 --> 00:54:34.500
Das sah auch gut aus.

00:54:34.660 --> 00:54:35.520
Das war auch gut aus.

00:54:35.780 --> 00:54:35.920
Okay.

00:54:36.500 --> 00:54:38.020
Das war total faszinierend.

00:54:38.120 --> 00:54:41.020
Also wirklich so komplette Spreadsheet-Geschichte im Browser.

00:54:41.160 --> 00:54:41.460
Okay, nice.

00:54:41.460 --> 00:54:41.900
Und es war schnell.

00:54:42.100 --> 00:54:42.380
PyScript.

00:54:42.660 --> 00:54:43.400
Und alles in Py...

00:54:43.400 --> 00:54:45.520
Also die ganze Logik war halt in Python geschrieben.

00:54:46.120 --> 00:54:50.020
Und dann halt sozusagen über PyScript irgendwie...

00:54:50.540 --> 00:54:50.720
Ja.

00:54:50.880 --> 00:54:52.640
Oder ich weiß es gar nicht mehr, ob es Pyodite war.

00:54:52.760 --> 00:54:54.200
Nee, ich glaube, es war PyScript tatsächlich.

00:54:55.500 --> 00:54:55.720
Ja.

00:54:56.120 --> 00:54:56.740
Not too bad.

00:54:57.560 --> 00:54:58.460
Also, ja, cool.

00:54:58.480 --> 00:54:59.760
Auf GD wäre ich jetzt auch noch nicht gekommen, ja.

00:55:00.040 --> 00:55:00.200
Ja.

00:55:01.020 --> 00:55:03.360
Ähm, genau.

00:55:03.860 --> 00:55:04.340
Ja, also,

00:55:04.440 --> 00:55:07.420
vorst dann war coole Konferenz hervoll.

00:55:08.280 --> 00:55:08.440
Ja.

00:55:10.060 --> 00:55:12.420
Hat da auch jemand dann irgendwann einen Post geschrieben,

00:55:12.480 --> 00:55:13.640
habe ich jetzt letztens...

00:55:13.640 --> 00:55:17.240
Ja, also, immer wenn jetzt gerade irgendwie aus aktuellem Anlass

00:55:17.240 --> 00:55:18.820
haben wir ja irgendwie so ein bisschen Schwankungen,

00:55:18.940 --> 00:55:20.220
was so die weltpolitische Lage angeht.

00:55:20.460 --> 00:55:23.840
Und da in Europa ist ja dann immer so,

00:55:24.040 --> 00:55:26.400
dass so, oh nein, irgendwie die...

00:55:26.400 --> 00:55:28.760
Wir sind ja auch, was Technologie angeht,

00:55:28.820 --> 00:55:30.340
und so total abgehängt und keine Ahnung.

00:55:30.480 --> 00:55:30.980
Und Hilfe, Hilfe.

00:55:31.020 --> 00:55:31.060
Ja.

00:55:31.860 --> 00:55:33.960
Dabei ist das ja irgendwie auch Quatsch, ja.

00:55:34.060 --> 00:55:35.740
Also, ich meine, klar, okay,

00:55:35.940 --> 00:55:40.000
was jetzt den Börsenwert von manchen Unternehmen angeht oder so, okay.

00:55:40.440 --> 00:55:41.840
Ja, klar, da kann man halt nicht mithalten.

00:55:41.940 --> 00:55:43.640
Aber auf der anderen Seite, na ja, also, ich meine,

00:55:43.680 --> 00:55:46.000
wie viel realer Wert ist denn da tatsächlich?

00:55:46.100 --> 00:55:46.960
Das ist auch ein bisschen unklar.

00:55:47.360 --> 00:55:48.540
Wenn man jetzt aber sich anguckt,

00:55:48.660 --> 00:55:51.540
wie sieht es denn aus, was jetzt Open-Source-Projekte angeht, ne?

00:55:51.540 --> 00:55:52.320
Was ist denn da...

00:55:52.320 --> 00:55:54.360
Also, wenn man jetzt auf so eine Veranstaltung wie die FOSDEM geht oder so,

00:55:54.640 --> 00:55:58.520
dann ist, also, ich meine, ein Großteil der Projekte sozusagen,

00:55:58.860 --> 00:56:00.240
die die Infrastruktur dafür bilden,

00:56:00.240 --> 00:56:03.340
was dann halt in Amerika halt diesen Riesenmarkt macht, ne,

00:56:04.340 --> 00:56:05.800
ist alles, das ist alles diese,

00:56:06.040 --> 00:56:08.240
es ist alles Open-Source-Infrastruktur-Software.

00:56:09.140 --> 00:56:11.140
Und da ist ein europäischer Entwickler,

00:56:11.320 --> 00:56:15.380
ist da halt, sind da halt irgendwie eigentlich sehr, sehr gut vertreten, ne?

00:56:15.460 --> 00:56:16.420
Also, das ist halt...

00:56:16.420 --> 00:56:18.240
Ja, nur das Problem ist halt, dass da keiner Geld für bezahlt.

00:56:18.780 --> 00:56:20.780
Ja, aber also, sag mal, das Potenzial wäre halt da.

00:56:20.940 --> 00:56:21.680
Also, es ist halt irgendwie...

00:56:21.680 --> 00:56:21.960
Ja, genau.

00:56:23.000 --> 00:56:24.700
Also, es ist nicht so, dass das hier nicht geht oder so,

00:56:24.740 --> 00:56:26.440
sondern es geht und es passiert.

00:56:27.040 --> 00:56:28.000
Es ist halt bloß nicht so,

00:56:28.080 --> 00:56:29.420
dass damit so wahnsinnig viel Geld verdient wird.

00:56:29.420 --> 00:56:29.780
Ja, genau.

00:56:30.240 --> 00:56:34.160
Die Leute nutzen das halt alle und sagen halt, ja...

00:56:34.160 --> 00:56:34.640
We first.

00:56:35.920 --> 00:56:36.080
Ja.

00:56:36.540 --> 00:56:36.740
Ja.

00:56:37.180 --> 00:56:38.200
Und das ist blöd.

00:56:39.440 --> 00:56:43.640
Ja, aber das sind alles Dinge, an denen man ja was machen könnte und so, ne?

00:56:43.700 --> 00:56:45.260
Also, das ist ja nichts, wo man jetzt...

00:56:45.260 --> 00:56:46.960
Also, wenn jetzt das in der Situation wäre,

00:56:47.060 --> 00:56:48.860
dass man halt gerne da mitspielen würde,

00:56:48.960 --> 00:56:51.080
aber man hat nicht mal einen Fuß in der Tür oder so,

00:56:51.760 --> 00:56:52.620
das wäre ganz schlecht,

00:56:52.700 --> 00:56:55.220
aber so hat man eigentlich schon beide Füße in der Tür.

00:56:55.680 --> 00:56:56.480
Eigentlich wäre es schöner, wenn es ein Gegenmodell gäbe, ne?

00:56:56.480 --> 00:56:57.480
Also, wenn es tatsächlich irgendwie...

00:56:58.320 --> 00:57:00.220
Tatsächlich öffentliche Institutionen,

00:57:00.240 --> 00:57:02.020
die das weitermachen würden

00:57:02.020 --> 00:57:04.400
und das halt nicht nur auf diesem kommerziellen...

00:57:04.400 --> 00:57:05.200
Wir machen das,

00:57:05.700 --> 00:57:07.780
dass nächstes Aktienunternehmen draus funktionieren würde.

00:57:09.100 --> 00:57:09.920
Ja, genau.

00:57:10.220 --> 00:57:11.040
Aber, genau.

00:57:11.320 --> 00:57:13.200
Also, es gibt auch den...

00:57:13.200 --> 00:57:17.260
Es gibt ja so Tech-Severanity-Funds oder sowas.

00:57:17.820 --> 00:57:20.860
Also, einer von denen bezahlt jetzt auch irgendwie Hugo von Kermenade.

00:57:21.120 --> 00:57:21.600
Von Kermenade.

00:57:22.740 --> 00:57:25.020
Als, also, europäischer...

00:57:25.020 --> 00:57:27.160
Ich glaube, es ist sogar deutscher irgendwie.

00:57:28.520 --> 00:57:29.760
Als Python-Entwickler.

00:57:30.240 --> 00:57:32.960
Also, sozusagen, der ist ja jetzt auch Release-Manager, glaube ich,

00:57:33.000 --> 00:57:34.620
für 3.14, 3.15.

00:57:35.840 --> 00:57:37.020
Das ist schon mal ganz gut.

00:57:37.780 --> 00:57:39.820
Es gibt ja jetzt, ja, keine Ahnung,

00:57:39.940 --> 00:57:41.360
in Frankreich passieren auch lustige Sachen.

00:57:42.300 --> 00:57:42.620
Naja.

00:57:43.540 --> 00:57:44.820
Ja, genau.

00:57:45.980 --> 00:57:46.160
Hm.

00:57:47.700 --> 00:57:49.040
Wir hatten auch noch ein Thema, glaube ich.

00:57:49.080 --> 00:57:49.920
Ja, wir hatten auch noch ein Thema.

00:57:50.840 --> 00:57:51.200
Was?

00:57:52.000 --> 00:57:52.180
Oh je.

00:57:52.280 --> 00:57:53.040
Oh, ich habe es vergessen.

00:57:53.780 --> 00:57:56.860
Moment, ich mache meine Kapitelmarke irgendwie Thema.

00:57:58.120 --> 00:58:00.160
Also, wir haben jetzt noch eine Minute.

00:58:00.240 --> 00:58:01.720
Wir können eine Stunde Off-Topic reden.

00:58:01.940 --> 00:58:02.560
Oh Gott.

00:58:02.580 --> 00:58:03.940
Dann haben wir die Stunde vorher Off-Topic.

00:58:04.520 --> 00:58:04.620
Ja.

00:58:05.220 --> 00:58:06.120
Ja, okay.

00:58:06.320 --> 00:58:06.940
Ah, gut.

00:58:07.120 --> 00:58:13.560
Aber dann, ja, Johannes, willst du vielleicht etwas erzählen über Strings und Beides?

00:58:13.560 --> 00:58:19.280
Ja, ich muss sagen, die ersten beiden Kapitel, die wir gelesen haben, die waren ja sehr voll.

00:58:19.580 --> 00:58:20.060
Ja.

00:58:20.740 --> 00:58:22.880
Und die waren auch sehr breit.

00:58:24.140 --> 00:58:28.120
Und im Vergleich dazu ist dieses Kapitel nicht so interessant.

00:58:30.240 --> 00:58:30.680
Ja.

00:58:31.320 --> 00:58:36.320
Und das ist sowohl gut als auch schlecht.

00:58:36.680 --> 00:58:41.600
Das ist sowohl gut als auch schlecht, weil dieses Thema sollte eigentlich langweilig sein.

00:58:41.920 --> 00:58:45.540
Eigentlich sollte man über dieses Thema gar nicht so viel sagen müssen.

00:58:45.960 --> 00:58:46.120
Hm.

00:58:47.260 --> 00:58:49.700
Weil eigentlich sollte das alles funktionieren.

00:58:49.700 --> 00:58:53.960
Und in Python 3, meiner Meinung nach, ist das auch so.

00:58:55.200 --> 00:58:56.320
Was ist denn nochmal das Thema?

00:58:56.320 --> 00:58:57.100
Da funktionieren Unico.

00:58:57.100 --> 00:58:58.800
Viele Sachen sehr gut.

00:58:59.580 --> 00:59:00.060
Genau.

00:59:00.240 --> 00:59:01.860
Es geht um Strings und Beides.

00:59:02.520 --> 00:59:07.940
Und das große Problem an Strings und Beides ist, dass die nicht das gleiche sind.

00:59:09.320 --> 00:59:13.960
Früher, in der guten alten Zeit, als es nur ASCII gab, da war das das gleiche.

00:59:14.020 --> 00:59:16.280
Da war ein String halt eine Abfolge von Beides.

00:59:17.840 --> 00:59:21.380
Ganz genau genommen ist ASCII ja nur 7-Bit breit.

00:59:21.700 --> 00:59:24.740
Also man hätte das dann sogar, also gab es dann diese Encodings mit 7-Bits.

00:59:24.740 --> 00:59:27.480
Das ist aber auch eine schreckliche Vorstellung.

00:59:28.320 --> 00:59:28.420
Äh.

00:59:28.420 --> 00:59:33.760
Aber wenn man nur ASCII verwendet, dann sind Beides und Strings das gleiche.

00:59:33.760 --> 00:59:37.240
Ja, weil ich einfach sagen kann, okay, also ein String ist halt eine Abfolge von Beides.

00:59:37.360 --> 00:59:38.960
Und alle Zeichen, die es gibt, die sind da drin.

00:59:39.740 --> 00:59:39.880
Ja.

00:59:40.720 --> 00:59:42.740
Jetzt stellt sich raus, die Welt ist größer als Amerika.

00:59:43.000 --> 00:59:44.440
Und nicht alle sprechen Englisch.

00:59:45.080 --> 00:59:48.360
Und selbst die, die Englisch sprechen, die haben manchmal Akzente in ihren Namen.

00:59:48.520 --> 00:59:51.560
Oder wollen Äs und Ös und Üs anzeigen.

00:59:51.720 --> 00:59:52.680
Oder scharfe Ässe.

00:59:52.940 --> 00:59:55.200
Oder C-Mit-C-D-I-E.

00:59:55.340 --> 00:59:56.840
Oder I mit und ohne Punkt.

00:59:57.060 --> 00:59:58.280
Oder dies und das.

00:59:58.280 --> 00:59:58.800
Und jenes.

00:59:59.660 --> 01:00:02.300
Ja, ich habe auch so einen Gleich-F6 in meinem Namen.

01:00:03.880 --> 01:00:04.600
Ja, stimmt.

01:00:06.180 --> 01:00:08.400
Ich habe extra nur einen ASCII-Namen.

01:00:08.520 --> 01:00:09.500
Da haben meine Eltern drauf geachtet.

01:00:09.580 --> 01:00:11.620
Ja, das sollte man schon machen.

01:00:14.860 --> 01:00:15.300
Genau.

01:00:16.560 --> 01:00:21.460
Und das Problem ist, aus historischer Sicht gab es halt die Computer in den USA.

01:00:21.760 --> 01:00:23.120
Und da gab es ASCII drauf.

01:00:23.860 --> 01:00:25.840
Und ASCII hat geschickterweise nur 7-Bit.

01:00:25.840 --> 01:00:28.220
Das heißt, da sind noch 128 Zeichen frei.

01:00:28.280 --> 01:00:28.340
Ja.

01:00:28.660 --> 01:00:30.280
Und die kann man dann halt irgendwie verwenden.

01:00:30.420 --> 01:00:32.360
Und dann haben sich die Leute Code-Pages ausgedacht.

01:00:33.200 --> 01:00:36.900
Die Menschen, die alt genug sind, die können sich noch an CP-850 erinnern.

01:00:37.000 --> 01:00:38.380
Oder an CP-437.

01:00:38.660 --> 01:00:42.680
Das man einstellen musste, damit der Norton-Commander richtig angezeigt wurde.

01:00:43.540 --> 01:00:44.320
Unter DOS.

01:00:46.460 --> 01:00:48.220
Und jetzt wissen alle Leute, wie alt ich bin.

01:00:50.340 --> 01:00:52.060
Und das war ganz schrecklich.

01:00:52.420 --> 01:00:55.480
Weil man musste immer darauf achten, dass man die richtige Code-Page hatte.

01:00:55.480 --> 01:00:56.480
Weil es halt einfach nur...

01:00:56.480 --> 01:01:02.540
Ja, 128 vorbelegte Zeichen und 128 Zeichen extra gab.

01:01:03.240 --> 01:01:07.780
Und um dem Ganzen ein Ende zu setzen, haben sich schlaue Menschen zusammengesetzt

01:01:07.780 --> 01:01:09.760
und haben sich das Unicode-Konsortium genannt.

01:01:10.140 --> 01:01:11.220
Und haben gesagt, wisst ihr was?

01:01:11.620 --> 01:01:12.480
Wir brauchen einfach mehr Zeichen.

01:01:13.600 --> 01:01:13.820
Alle.

01:01:14.020 --> 01:01:15.380
Nee, das heißt nicht...

01:01:15.380 --> 01:01:15.960
Achso, achso.

01:01:16.680 --> 01:01:17.860
Ich wollte gerade...

01:01:17.860 --> 01:01:21.020
An der Stelle macht immer irgendjemand diesen Witz.

01:01:21.300 --> 01:01:24.480
Nee, nee, es heißt nicht Unicode.

01:01:24.480 --> 01:01:24.600
Und...

01:01:24.600 --> 01:01:25.480
Sondern...

01:01:25.480 --> 01:01:26.100
Es heißt...

01:01:26.100 --> 01:01:28.300
Das heißt Unicodes Monster, oder?

01:01:31.660 --> 01:01:34.400
Ja, das Unicode-Konsortium hat dann das Monster gebaut.

01:01:34.600 --> 01:01:43.060
Und das Monster ist 1,15 Millionen Zeichen groß und verschlinkt alles, was es nur so finden kann.

01:01:43.600 --> 01:01:48.700
Das Ziel des Unicode-Konsortiums ist es, alle Schriftzeichen, die es in Verwendung gibt,

01:01:49.860 --> 01:01:50.740
abbildbar zu machen.

01:01:52.480 --> 01:01:55.960
Und sie machen das, indem sie sagen, jedes Schriftzeichen, was es gibt,

01:01:56.100 --> 01:01:57.820
es wird in eine große Tabelle reingeschrieben.

01:01:57.920 --> 01:02:03.700
Die Tabelle hat eben diese prinzipiell möglichen 1,1 Millionen Zeichen.

01:02:04.540 --> 01:02:08.680
Und da schreiben wir dann noch eine Beschreibung rein, was das ist und was das bedeutet

01:02:08.680 --> 01:02:12.940
und was für eine Sorte das ist, weil da tun sich dann ganz viele coole Probleme auf,

01:02:12.980 --> 01:02:13.740
die man da kriegen kann.

01:02:14.940 --> 01:02:17.060
Aber das ist schon mal gut, diese Tabelle zu haben.

01:02:17.380 --> 01:02:20.420
Das Problem ist jetzt, es sind mehr als 255.

01:02:20.540 --> 01:02:21.760
Das heißt, die passen nicht in einen Byte rein.

01:02:23.100 --> 01:02:25.540
Und da fangen die ganzen Probleme an.

01:02:25.540 --> 01:02:29.360
Weil das Problem ist, man muss die irgendwie, wenn man sie speichern möchte,

01:02:29.520 --> 01:02:31.720
Unicode-Zeichen in Bytes reinkriegen.

01:02:33.100 --> 01:02:39.020
Und da gibt es leider auch aus historischer Sicht viele, viele, viele verschiedene Möglichkeiten,

01:02:39.600 --> 01:02:40.760
die zu kodieren.

01:02:41.520 --> 01:02:44.660
Und die inzwischen am weitesten verbreitete heißt UTF-8.

01:02:46.100 --> 01:02:48.220
Ich weiß gar nicht, was das heißt.

01:02:48.820 --> 01:02:50.360
Aber das ist ein sehr schlauer Trick.

01:02:50.960 --> 01:02:51.860
Unicode-Text-Formatting?

01:02:53.860 --> 01:02:54.580
Das kann sein.

01:02:55.540 --> 01:02:58.120
Es gibt auch UTF-16.

01:02:58.480 --> 01:02:59.760
Es gibt auch UCS-2.

01:03:00.480 --> 01:03:02.740
Es gibt auch diverse Varianten davon.

01:03:03.340 --> 01:03:06.400
Und dann muss man auch wissen, ob die Little-Indian sind oder Big-Indian

01:03:06.400 --> 01:03:08.100
und ob die ein Byte-Order-Mark haben oder nicht.

01:03:09.500 --> 01:03:11.260
Und das ist alles ganz wundervoll.

01:03:11.500 --> 01:03:13.880
Und eigentlich will man sich damit gar nicht beschäftigen.

01:03:15.480 --> 01:03:17.040
Unicode-Transformation-Format.

01:03:18.580 --> 01:03:21.720
Es ist ganz interessant, sich anzusehen, wie es funktioniert.

01:03:22.080 --> 01:03:24.680
Da gibt es ein sehr interessantes Video von Numberphile,

01:03:24.680 --> 01:03:25.820
wie sie das erklären.

01:03:25.900 --> 01:03:26.920
Das ist so ein bisschen ein Hack.

01:03:27.580 --> 01:03:29.740
Da werden so Bits an der vorderen Stelle gesetzt,

01:03:29.840 --> 01:03:31.400
damit es mit ASCII-kompatibel ist

01:03:31.400 --> 01:03:33.560
und damit man mehrere haben kann.

01:03:34.180 --> 01:03:38.740
Und UTF-8 kann bis zu 4 Byte pro Zeichen verwenden.

01:03:39.400 --> 01:03:42.500
Und damit kriegt man dann die gesamten Unicode-Sachen abgedeckt.

01:03:43.160 --> 01:03:46.240
Und das ist alles sehr schön.

01:03:46.380 --> 01:03:49.500
Und das Fazit dieses ganzen Kapitels ist eigentlich,

01:03:50.660 --> 01:03:51.680
man sollte immer UTF-8 verwenden.

01:03:52.520 --> 01:03:52.840
Haha.

01:03:53.380 --> 01:03:53.680
Und?

01:03:54.680 --> 01:03:58.260
Äh, inzwischen ist es tatsächlich so,

01:03:58.340 --> 01:04:00.680
dass man fast überall UTF-8 verwenden kann.

01:04:00.900 --> 01:04:01.920
Auch chinesisch?

01:04:02.900 --> 01:04:04.760
Ja, auch für chinesisch und auch für japanisch

01:04:04.760 --> 01:04:08.060
und auch für koreanisch und auch für thailändisch

01:04:08.060 --> 01:04:09.640
und auch für klingonisch.

01:04:10.520 --> 01:04:10.800
Richtig.

01:04:11.080 --> 01:04:12.920
Wenn du den richtigen Font hast,

01:04:13.000 --> 01:04:14.840
kannst du klingonische Schriftzeichen haben.

01:04:15.220 --> 01:04:17.880
Du kannst die auf jeden Fall mit Unicode-Code-Points darstellen.

01:04:18.300 --> 01:04:21.500
Ein Unicode-Code-Point ist jetzt nicht mehr nur ein Byte,

01:04:22.120 --> 01:04:24.360
wo halt eine Zahl von 0 bis 255 drinsteht,

01:04:24.420 --> 01:04:24.520
sondern es ist auch ein Byte, der sich mit einem Byte verwendet.

01:04:24.520 --> 01:04:24.540
Und das ist auch ein Unicode-Code-Point.

01:04:24.540 --> 01:04:24.640
Und das ist auch ein Unicode-Code-Point.

01:04:24.640 --> 01:04:25.700
Und das ist eigentlich eine Zahl.

01:04:26.480 --> 01:04:28.600
Und die Zahl, die geht eben von 0,

01:04:28.960 --> 01:04:30.480
das ist das 0-Byte,

01:04:31.120 --> 01:04:33.060
bis, keine Ahnung, dort hinaus.

01:04:35.300 --> 01:04:36.580
Ich weiß jetzt nicht, wie weit es geht.

01:04:36.640 --> 01:04:37.620
Das ist eine komische Zahl,

01:04:37.760 --> 01:04:39.820
die mir nicht bekannt vorkommt,

01:04:39.920 --> 01:04:41.280
irgendwie 1,15 Millionen.

01:04:43.360 --> 01:04:44.240
Das bedeutet aber,

01:04:44.300 --> 01:04:45.660
dass ich diese Unicode-Code-Points

01:04:45.660 --> 01:04:46.640
nicht einfach so abspeichern kann,

01:04:46.700 --> 01:04:48.240
sondern wenn ich sie irgendwo in der Datei speichern will,

01:04:48.300 --> 01:04:49.420
muss ich sie irgendwie kodieren.

01:04:50.580 --> 01:04:53.460
Und Python 2 hat aber keine Unterscheidung gemacht

01:04:53.460 --> 01:04:54.500
zwischen Strings und Bytes.

01:04:54.500 --> 01:04:56.500
Und Python 2 hat keine Unterscheidung gemacht

01:04:56.500 --> 01:04:57.000
zwischen Strings und Bytes.

01:04:57.000 --> 01:04:58.280
Weil wenn man aus Amerika kommt,

01:04:59.000 --> 01:04:59.940
so wie Guido van Rossum,

01:05:00.180 --> 01:05:03.920
dann macht es halt keinen Unterschied,

01:05:04.040 --> 01:05:04.840
weil dann nimmt man nur ASCII

01:05:04.840 --> 01:05:06.140
und alles andere spielt keine Rolle.

01:05:08.300 --> 01:05:09.660
Und das war meiner Meinung nach

01:05:09.660 --> 01:05:14.000
eine der größten Unfeinheiten an Python 2,

01:05:14.440 --> 01:05:15.540
dass es keine Unterscheidung gibt

01:05:15.540 --> 01:05:16.440
zwischen Strings und Bytes.

01:05:16.980 --> 01:05:18.560
Es gab damals schon diese

01:05:18.560 --> 01:05:19.940
Encode- und Decode-Funktionen,

01:05:20.020 --> 01:05:21.600
aber die haben nicht den Datentyp verändert,

01:05:21.600 --> 01:05:23.700
sondern die haben nur die Bits verändert.

01:05:24.020 --> 01:05:24.120
Ja.

01:05:24.500 --> 01:05:27.820
Und das war meiner Meinung nach

01:05:27.820 --> 01:05:29.820
einfach nicht sehr sauber

01:05:29.820 --> 01:05:30.400
und nicht sehr fein.

01:05:30.560 --> 01:05:32.260
Und seit Python 3,

01:05:32.360 --> 01:05:34.180
seit den wenigen Jahren, die es Python 3 gibt,

01:05:35.000 --> 01:05:36.380
gibt es eine strikte Trennung

01:05:36.380 --> 01:05:37.880
zwischen Bytes und Strings.

01:05:37.980 --> 01:05:40.800
Und Bytes ist eben das, was in Dateien drin ist

01:05:40.800 --> 01:05:41.740
und im Speicher drin ist.

01:05:42.460 --> 01:05:44.380
Und Strings ist das,

01:05:45.040 --> 01:05:46.860
wo Zeichen drin sind.

01:05:47.660 --> 01:05:48.960
Es gibt noch einen dritten Datentyp,

01:05:49.040 --> 01:05:49.820
der heißt ByteArray.

01:05:50.260 --> 01:05:52.640
Bytes ist nicht mutable und ByteArray ist mutable.

01:05:53.120 --> 01:05:53.880
Wenn man das braucht,

01:05:53.980 --> 01:05:54.440
dann muss man halt,

01:05:54.440 --> 01:05:54.500
wenn man ein Datentyp hat,

01:05:54.500 --> 01:05:55.720
dann muss man halt ein Datentyp haben.

01:05:55.780 --> 01:05:58.760
Das ist tatsächlich ein Detail.

01:06:00.440 --> 01:06:01.300
Wichtig ist,

01:06:01.820 --> 01:06:03.740
es gibt eigentlich nur vier Sachen,

01:06:03.860 --> 01:06:04.900
die wichtig sind an dieser Stelle.

01:06:05.820 --> 01:06:06.420
Die vier Bytes?

01:06:07.120 --> 01:06:09.340
Nein, die vier Funktionen, die wichtig sind.

01:06:09.720 --> 01:06:11.340
Die erste heißt Encode.

01:06:12.920 --> 01:06:14.200
Und jetzt ist die Preisfrage,

01:06:15.180 --> 01:06:17.800
geht Encode von Unicode-CodePoints

01:06:17.800 --> 01:06:18.400
nach Bytes

01:06:18.400 --> 01:06:21.000
oder von Bytes nach Unicode-CodePoints?

01:06:22.360 --> 01:06:23.480
Weil es könnte eigentlich beides sein.

01:06:23.740 --> 01:06:24.420
Encode geht zu Beides.

01:06:24.440 --> 01:06:27.200
Encode geht zu Bytes.

01:06:27.340 --> 01:06:30.080
Also von Unicode, von Strings zu Bytes.

01:06:30.340 --> 01:06:31.560
Es könnte aber auch andersrum sein.

01:06:32.660 --> 01:06:32.840
Ja.

01:06:33.740 --> 01:06:35.880
Und Decode geht entsprechend andersrum.

01:06:35.960 --> 01:06:37.500
Das heißt, wenn ich einen String habe,

01:06:37.620 --> 01:06:39.220
wo Unicode-CodePoints drinstehen,

01:06:39.900 --> 01:06:41.300
dann kann ich Encode sagen

01:06:41.300 --> 01:06:43.100
und dann kriege ich da einen ByteString raus

01:06:43.100 --> 01:06:44.240
mit einem gewissen Encoding.

01:06:45.140 --> 01:06:46.840
Und umgekehrt, wenn ich Bytes habe,

01:06:46.940 --> 01:06:48.100
dann kann ich Decode sagen

01:06:48.100 --> 01:06:49.340
mit einem gewissen Encoding

01:06:49.340 --> 01:06:51.800
und dann kriege ich da einen Unicode-String raus.

01:06:51.800 --> 01:06:53.720
Wenn das funktioniert,

01:06:54.440 --> 01:06:56.300
weil diese Encodings,

01:06:56.440 --> 01:06:58.200
die sind frickelig und die sind fitzelig

01:06:58.200 --> 01:07:00.120
und manche funktionieren und manche funktionieren nicht.

01:07:00.900 --> 01:07:05.200
Und wenn man es mit dem falschen Encoding

01:07:05.200 --> 01:07:06.980
dekodiert,

01:07:07.780 --> 01:07:08.960
dann kann es sein,

01:07:09.040 --> 01:07:10.460
dass es funktioniert und es ist trotzdem falsch.

01:07:11.020 --> 01:07:13.880
Und das ist was ganz Schlimmes.

01:07:15.640 --> 01:07:15.860
Ja.

01:07:16.300 --> 01:07:17.180
Und das sorgt dann dafür,

01:07:17.360 --> 01:07:20.100
dass irgendwelche Fragezeichen

01:07:20.100 --> 01:07:21.180
in Namen drin sind

01:07:21.180 --> 01:07:22.600
oder irgendwelche...

01:07:22.600 --> 01:07:24.420
Ja, diese komische schwarze Raute mit dem Fragezeichen.

01:07:24.440 --> 01:07:25.000
Ja, genau.

01:07:25.480 --> 01:07:25.880
Genau.

01:07:26.180 --> 01:07:28.080
Oder bestimmte Sachen,

01:07:28.280 --> 01:07:30.440
die man, wenn man mit UTF-8 dekodiert,

01:07:31.680 --> 01:07:35.200
dann ist da so ein XAE drin

01:07:35.200 --> 01:07:36.080
oder irgendwie sowas.

01:07:36.340 --> 01:07:37.440
Das sind so diese Zeichenkombinationen.

01:07:39.380 --> 01:07:40.660
Ganz gemeine Leute tun die ja

01:07:40.660 --> 01:07:41.860
in ihren Benutzernamen rein.

01:07:42.740 --> 01:07:43.260
Einfach.

01:07:44.340 --> 01:07:46.460
Um die Entwickler auf Trab zu halten.

01:07:49.560 --> 01:07:51.020
Das sind die ersten beiden Funktionen,

01:07:51.060 --> 01:07:51.780
Encode und Decode.

01:07:52.160 --> 01:07:53.680
Und die gehen von Unicode-Strings

01:07:53.680 --> 01:07:54.420
in die Encode-String.

01:07:54.440 --> 01:07:55.700
Zu Bytes und zurück.

01:07:56.720 --> 01:07:58.140
Und da gibt es ganz viel Gefütze

01:07:58.140 --> 01:08:00.680
mit irgendwelchen Encodings

01:08:00.680 --> 01:08:01.680
und die müssen richtig sein.

01:08:01.960 --> 01:08:04.520
Und das eigentliche Fazit von diesem ganzen Kapitel ist

01:08:04.520 --> 01:08:06.280
UTF-8. Nehmt überall UTF-8.

01:08:06.540 --> 01:08:08.540
Wenn das möglich ist, einfach immer UTF-8 nehmen.

01:08:08.600 --> 01:08:09.460
Weil damit geht alles.

01:08:11.100 --> 01:08:13.140
Das ist nicht das optimale Encoding.

01:08:13.540 --> 01:08:14.460
Ja, das kann sein,

01:08:14.540 --> 01:08:15.820
dass man da mehr Platz verbraucht.

01:08:15.960 --> 01:08:18.200
Aber ganz ehrlich, für Textdaten heutzutage

01:08:18.200 --> 01:08:18.960
meistens ja.

01:08:19.480 --> 01:08:20.220
Ist doch wurscht.

01:08:20.640 --> 01:08:21.600
So ein bisschen wurscht.

01:08:22.420 --> 01:08:22.780
Ja.

01:08:23.480 --> 01:08:23.640
Ja.

01:08:24.440 --> 01:08:25.320
Ein bisschen wurscht ist das.

01:08:25.360 --> 01:08:27.160
Green IT sollte man ja auch bedenken.

01:08:27.220 --> 01:08:28.700
Da muss man natürlich Datensparsamkeit

01:08:28.700 --> 01:08:29.800
immer als ganz besonders suchen.

01:08:29.800 --> 01:08:30.460
Ja, das ist schon richtig.

01:08:31.020 --> 01:08:31.640
Das ist schon richtig.

01:08:31.820 --> 01:08:34.740
Aber Textdateien werden nicht

01:08:34.740 --> 01:08:36.160
den Großteil deiner

01:08:36.160 --> 01:08:37.860
Datengröße ausmachen.

01:08:38.080 --> 01:08:40.340
Das ist meiner Meinung nach.

01:08:40.880 --> 01:08:42.580
Wenn du in so einen Use Case kommst,

01:08:42.740 --> 01:08:44.620
dann musst du eh Experte werden auf diesem

01:08:44.620 --> 01:08:46.160
Gebiet und dann reicht es nicht,

01:08:46.720 --> 01:08:48.660
die 25 Seiten in Flutenpasten

01:08:48.660 --> 01:08:49.060
zu lesen.

01:08:49.360 --> 01:08:49.520
Ne.

01:08:51.380 --> 01:08:53.060
Die zweiten zwei Funktionen,

01:08:53.120 --> 01:08:54.420
die an dieser Stelle ganz wichtig sind,

01:08:54.440 --> 01:08:56.660
weil sie mit Strings und Bytes ganz natürlich

01:08:56.660 --> 01:08:57.400
zu tun haben,

01:08:57.980 --> 01:08:59.780
sind Read und Write.

01:09:00.280 --> 01:09:02.460
Also Open auf eine Datei

01:09:02.460 --> 01:09:04.360
mit Read-Modus und Open auf eine Datei

01:09:04.360 --> 01:09:05.000
mit Write-Modus.

01:09:06.600 --> 01:09:08.580
Und standardmäßig in Python ist es ja so,

01:09:08.640 --> 01:09:09.780
wenn ich ein Open sage,

01:09:10.220 --> 01:09:12.860
im R-Modus, also nicht im RB-Modus,

01:09:13.820 --> 01:09:14.860
sondern im R-Modus,

01:09:15.060 --> 01:09:16.520
dann bedeutet das, lies mir diese

01:09:16.520 --> 01:09:17.780
Datei bitte als

01:09:17.780 --> 01:09:20.560
UTF-8-kodierte Text

01:09:20.560 --> 01:09:21.580
ein.

01:09:22.580 --> 01:09:24.260
Und dann habe ich da auch diese ganzen

01:09:24.440 --> 01:09:26.380
Komfortfunktionen drauf, die ich da haben möchte.

01:09:26.580 --> 01:09:28.540
Also Readlines und Read und Readline

01:09:28.540 --> 01:09:30.620
und so weiter, die mir alle

01:09:30.620 --> 01:09:32.580
direkt Strings geben, die automatisch dieses

01:09:32.580 --> 01:09:34.660
Decoding machen. Und die auch

01:09:34.660 --> 01:09:36.200
das Byte-Order-Mark automatisch

01:09:36.200 --> 01:09:37.840
behandeln. Also wenn,

01:09:38.300 --> 01:09:39.440
das ist dann alles schon gemacht,

01:09:40.280 --> 01:09:42.080
wenn es eine UTF-8-Datei ist.

01:09:42.480 --> 01:09:44.420
Wenn ich eine Datei habe, die nicht UTF-8

01:09:44.420 --> 01:09:46.500
ist, dann

01:09:46.500 --> 01:09:48.560
komme ich wieder in Teufelsküche, weil dann muss ich wieder

01:09:48.560 --> 01:09:50.460
das Encoding wissen, dann muss ich wieder das richtige

01:09:50.460 --> 01:09:52.540
Encoding wählen und dann muss ich wieder mich mit solchen

01:09:52.540 --> 01:09:53.780
Decode-Errorn,

01:09:54.440 --> 01:09:55.420
rumschlagen.

01:09:56.060 --> 01:09:58.480
Die vierte Richtung ist jetzt das Schreiben von Dateien.

01:09:58.600 --> 01:10:00.400
Auch hier, wenn ich eine Datei öffne im

01:10:00.400 --> 01:10:02.600
W-Modus, nicht im WB-Modus.

01:10:03.560 --> 01:10:04.420
Im W-Modus,

01:10:04.920 --> 01:10:06.420
dann bedeutet das, dass es

01:10:06.420 --> 01:10:08.540
eine UTF-8-kodierte Textdatei

01:10:08.540 --> 01:10:09.740
ohne Byte-Order mag.

01:10:11.280 --> 01:10:12.380
Und das ist die

01:10:12.380 --> 01:10:14.360
richtige Wahl, ja, das ist das Richtige.

01:10:14.760 --> 01:10:16.020
In den allermeisten Fällen

01:10:16.020 --> 01:10:16.980
funktioniert das.

01:10:19.520 --> 01:10:20.420
Wenn ich

01:10:20.420 --> 01:10:22.340
eine Datei im RB- oder im

01:10:22.340 --> 01:10:24.240
WB-Modus öffne, dann ist das

01:10:24.240 --> 01:10:26.440
der sogenannte Binary-Mode, da kriege ich dann immer Bytes

01:10:26.440 --> 01:10:28.380
raus. Das heißt, wenn ich da drauf ein Read

01:10:28.380 --> 01:10:30.180
mache, dann kriege ich Bytes raus.

01:10:30.500 --> 01:10:32.420
Wenn ich ein Write mache, kriege ich auch Bytes raus.

01:10:33.840 --> 01:10:34.480
So, das

01:10:34.480 --> 01:10:36.440
sind die wichtigen Dinge, die man sich

01:10:36.440 --> 01:10:38.360
hier merken muss. Encode,

01:10:39.060 --> 01:10:40.600
um aus Strings

01:10:40.600 --> 01:10:42.560
Bytes zu machen, Decode, um aus Bytes

01:10:42.560 --> 01:10:44.480
Strings zu machen, mit allen Dingen, die da passieren

01:10:44.480 --> 01:10:46.440
können. Dateien lesen und Dateien

01:10:46.440 --> 01:10:47.840
schreiben mit den richtigen Encodings.

01:10:48.500 --> 01:10:50.220
Alles andere, was jetzt noch dazu kommt,

01:10:50.440 --> 01:10:51.580
sind irgendwelche,

01:10:52.740 --> 01:10:53.860
ich möchte jetzt keine starken,

01:10:54.240 --> 01:10:56.540
Worte wählen, aber das sind beschissene Legacy-Wartsen,

01:10:56.600 --> 01:10:57.700
die man da jetzt nicht reinholt.

01:10:59.240 --> 01:11:00.420
Weil man halt

01:11:00.420 --> 01:11:02.480
irgendwie das Encoding rausfinden

01:11:02.480 --> 01:11:04.240
muss. Dann gibt es eine Package, das heißt Chartered,

01:11:04.680 --> 01:11:06.400
der untersucht mit

01:11:06.400 --> 01:11:08.340
Heuristiken, welche Zeichen da drin sind,

01:11:09.520 --> 01:11:10.400
ob das,

01:11:10.720 --> 01:11:12.180
welches Encoding das sein könnte und das

01:11:12.180 --> 01:11:14.060
funktioniert manchmal, manchmal funktioniert es nicht.

01:11:14.660 --> 01:11:16.420
Und unter Windows

01:11:16.420 --> 01:11:18.280
ist alles ganz schrecklich,

01:11:18.400 --> 01:11:20.220
weil eins von den Encodings,

01:11:20.360 --> 01:11:22.220
das Konsolen-Encoding, ein anderes ist,

01:11:22.280 --> 01:11:24.220
als die ganzen anderen und es ist nicht UTF-

01:11:24.240 --> 01:11:24.500
8.

01:11:26.260 --> 01:11:28.360
Und das macht einen Unterschied, wenn man

01:11:28.360 --> 01:11:30.220
auf der Standardausgabe schreibt, ob die

01:11:30.220 --> 01:11:32.100
Standardausgabe auf die Konsole geht oder

01:11:32.100 --> 01:11:34.120
ob das in eine Datei umgeleitet wird und das ist

01:11:34.120 --> 01:11:35.280
alles ganz schrecklich.

01:11:35.960 --> 01:11:38.360
Und das eigentliche

01:11:38.360 --> 01:11:39.940
Fazit, was ich aus dem Kapitel ziehe, ist,

01:11:40.000 --> 01:11:42.180
ich bin heilfroh, dass ich ein Linux-Betriebssystem habe,

01:11:42.240 --> 01:11:43.880
weil da ist UTF-8 eingestellt und dann

01:11:43.880 --> 01:11:46.240
funktioniert UTF-8 und alles ist UTF-8

01:11:46.240 --> 01:11:47.180
und

01:11:47.180 --> 01:11:50.160
fertig. Das macht alles

01:11:50.160 --> 01:11:50.800
viel einfacher.

01:11:52.440 --> 01:11:52.680
Ja.

01:11:54.240 --> 01:11:54.640
Ja.

01:11:55.820 --> 01:11:56.260
I agree.

01:11:56.980 --> 01:11:57.160
Ja.

01:11:58.160 --> 01:12:00.460
Und das ist eigentlich das Fazit aus dem ganzen Kapitel.

01:12:00.580 --> 01:12:02.600
Einfach UTF-8 verwenden und das ist

01:12:02.600 --> 01:12:04.380
an fast allen Stellen möglich und wenn man es

01:12:04.380 --> 01:12:06.520
nicht verwenden kann, dann ist es halt blöd

01:12:06.520 --> 01:12:07.880
und man muss sich damit befassen.

01:12:08.580 --> 01:12:10.600
Warum sind denn nochmal so komische Skorpione

01:12:10.600 --> 01:12:11.400
immer an dem Buch?

01:12:12.060 --> 01:12:14.240
Das sind halt unterschiedliche

01:12:14.240 --> 01:12:15.460
Hinweise.

01:12:17.140 --> 01:12:18.560
Also Skorpion ist glaube ich das,

01:12:18.640 --> 01:12:19.640
was einen irgendwie beißen kann.

01:12:19.700 --> 01:12:20.760
Genau, das wollte ich gerade fragen.

01:12:20.760 --> 01:12:21.760
Ich gucke mal gerade hier.

01:12:22.780 --> 01:12:24.080
In dem Kapitel gibt es mehrere

01:12:24.080 --> 01:12:24.220
Skorpione.

01:12:24.240 --> 01:12:26.400
Das liegt halt einfach an dieser Geschichte,

01:12:26.880 --> 01:12:28.880
von der ich jetzt gerade einen Abriss gegeben habe

01:12:28.880 --> 01:12:30.820
mit 1000 verschiedenen Code-Pages

01:12:30.820 --> 01:12:32.900
und vielen verschiedenen

01:12:32.900 --> 01:12:34.240
Encodings und Mojibake

01:12:34.760 --> 01:12:35.500
und

01:12:35.500 --> 01:12:39.440
ganz vielen tollen Phänomenen.

01:12:39.540 --> 01:12:41.560
Also die Erklärung zu Skorpionen ist,

01:12:41.740 --> 01:12:42.940
this element indicates

01:12:42.940 --> 01:12:45.500
a warning or a caution.

01:12:46.160 --> 01:12:47.160
Genau, dann gibt es den Raben.

01:12:47.440 --> 01:12:48.240
This element signifies

01:12:48.980 --> 01:12:50.920
a general note und es gibt

01:12:50.920 --> 01:12:52.700
irgendwie ein Lemuren oder sowas.

01:12:52.700 --> 01:12:53.700
This element signifies

01:12:54.240 --> 01:12:55.680
a tip or suggestion.

01:12:56.320 --> 01:12:57.860
Es muss zum Gemankit.

01:12:58.720 --> 01:13:01.140
Dieses Kapitel ist voll mit Skorpionen.

01:13:01.360 --> 01:13:01.500
Ja.

01:13:02.500 --> 01:13:02.940
Vorsichtig.

01:13:02.940 --> 01:13:03.920
Ah, und dann die Karte.

01:13:04.040 --> 01:13:04.600
Oh, vorsichtig.

01:13:04.720 --> 01:13:06.620
Und hier, wenn du die Karte eingestellt hast.

01:13:06.740 --> 01:13:07.380
Oh, vorsichtig.

01:13:08.320 --> 01:13:11.760
Es gibt da tatsächlich so ein paar Dinge,

01:13:11.840 --> 01:13:13.080
die einen in den Stiefel kriechen können.

01:13:13.320 --> 01:13:17.800
Da gibt es ja so fiese Sachen

01:13:17.800 --> 01:13:18.540
wie zum Beispiel

01:13:18.540 --> 01:13:20.320
Unicode-Normalisierung.

01:13:20.960 --> 01:13:22.340
Oh ja, das ist auch ein ganz

01:13:22.340 --> 01:13:23.760
wundervolles Thema.

01:13:23.920 --> 01:13:24.080
Ja.

01:13:24.240 --> 01:13:25.540
Ein wundervolles Thema.

01:13:26.920 --> 01:13:27.940
Was ist das jetzt?

01:13:28.040 --> 01:13:28.880
Bin ich neugierig geworden.

01:13:29.540 --> 01:13:30.520
Jochen, willst du das erklären?

01:13:32.560 --> 01:13:33.540
Mach du mal, Jochen.

01:13:33.680 --> 01:13:36.120
Ich brauche eine kurze Pause, weil das halte ich sonst nicht aus.

01:13:36.580 --> 01:13:38.360
Naja, also es gibt halt unterschiedliche

01:13:38.360 --> 01:13:39.760
Arten,

01:13:40.160 --> 01:13:41.720
manche Zeichen zu schreiben.

01:13:42.660 --> 01:13:43.740
Und die sind,

01:13:44.260 --> 01:13:45.780
dann sehen genau gleich aus,

01:13:45.900 --> 01:13:47.780
aber die sind halt anders kodiert.

01:13:48.600 --> 01:13:50.240
Du meinst ein L und ein I

01:13:50.240 --> 01:13:51.260
und ein E?

01:13:51.920 --> 01:13:52.400
Ja.

01:13:53.400 --> 01:13:54.220
Ein E mit einem Akku.

01:13:54.240 --> 01:13:55.880
Ja, zum Beispiel sowas, genau.

01:13:57.760 --> 01:13:58.400
Ja, und

01:13:58.400 --> 01:14:00.580
dann ist halt die Frage...

01:14:00.580 --> 01:14:01.640
Was für Arten gibt es denn, Jochen?

01:14:01.680 --> 01:14:02.580
Wie kann man das denn darstellen?

01:14:04.200 --> 01:14:05.680
NKFD und N...

01:14:05.680 --> 01:14:06.920
Ich weiß es nicht mehr genau.

01:14:07.840 --> 01:14:10.000
Ja, okay, aber das ist ja nur diese

01:14:10.000 --> 01:14:10.900
Normalisierung.

01:14:11.580 --> 01:14:13.800
Das darunter liegende Problem ist, dass es

01:14:13.800 --> 01:14:15.960
zwei verschiedene Möglichkeiten, dieses E mit dem Akzent

01:14:15.960 --> 01:14:16.500
darzustellen.

01:14:16.600 --> 01:14:18.520
Es gibt es als Zeichen.

01:14:18.960 --> 01:14:21.000
Es gibt ein Zeichen, das heißt E mit Akzent.

01:14:21.000 --> 01:14:22.420
Was haben wir da drauf?

01:14:22.760 --> 01:14:24.000
Oder zwei Zeichen.

01:14:24.240 --> 01:14:27.000
Ja, und es gibt E und dann gibt es ein zweites Zeichen

01:14:27.000 --> 01:14:28.800
kombinierende Akzent mit dem

01:14:28.800 --> 01:14:30.960
davorgehenden Ding dazu.

01:14:31.400 --> 01:14:31.540
Genau.

01:14:31.920 --> 01:14:34.260
Und auch da gibt es natürlich Leute, die sich da eine große Freude

01:14:34.260 --> 01:14:36.720
draus gemacht haben und da gibt es ganz viele schöne

01:14:36.720 --> 01:14:38.860
Salgo-Textgeneratoren, die einfach

01:14:38.860 --> 01:14:40.880
sagen, hier, was passiert denn, wenn man

01:14:40.880 --> 01:14:42.760
drei von diesen Akzents drauf tut?

01:14:42.860 --> 01:14:44.580
Oder fünf oder zehn oder hundert?

01:14:46.080 --> 01:14:47.020
Und dann ist

01:14:47.020 --> 01:14:48.480
der Text kaum noch lesbar und

01:14:48.480 --> 01:14:49.800
der

01:14:49.800 --> 01:14:52.520
Abstieg in den Wahnsinn ist vollzogen.

01:14:53.640 --> 01:14:53.960
Ja.

01:14:54.240 --> 01:14:56.480
Ja, letztlich, genau.

01:14:56.900 --> 01:14:57.820
Also, ja.

01:14:58.160 --> 01:14:59.940
Das ist dann da, wo man immer landet halt.

01:15:01.000 --> 01:15:02.540
Die richtigen Hacker-Namen.

01:15:02.820 --> 01:15:04.720
Ja, genau. Da kann man nämlich

01:15:04.720 --> 01:15:05.440
auch viel

01:15:05.440 --> 01:15:08.600
wirklich auch security-relevanten

01:15:08.600 --> 01:15:10.420
Unsinn betreiben, wenn man jetzt zum Beispiel

01:15:10.420 --> 01:15:12.600
sich überlegt, dass man halt

01:15:12.600 --> 01:15:14.660
also, wann ist

01:15:14.660 --> 01:15:16.500
denn jetzt sowas, wann sind denn zwei Strings

01:15:16.500 --> 01:15:18.540
irgendwie gleich? Wenn ich jetzt auf irgendwie sowas checke, wie

01:15:18.540 --> 01:15:20.420
ist der Benutzername so und so

01:15:20.420 --> 01:15:22.560
oder ist das halt irgendwie diese oder jene

01:15:22.560 --> 01:15:24.160
Stadt oder irgendwie, wenn ich halt

01:15:24.160 --> 01:15:26.120
solche Vergleiche habe, dann

01:15:26.120 --> 01:15:28.360
kann ich ja eventuell, also

01:15:28.360 --> 01:15:29.840
da muss ich ja sicher gehen,

01:15:30.580 --> 01:15:32.060
dass das halt irgendwie,

01:15:32.480 --> 01:15:34.640
dass ich da nichts

01:15:34.640 --> 01:15:35.540
übersehe, sozusagen.

01:15:36.900 --> 01:15:38.480
Das heißt, wenn ich da nicht normalisierte

01:15:38.480 --> 01:15:40.440
Sachen miteinander vergleiche, dann können

01:15:40.440 --> 01:15:41.880
halt wilde Dinge passieren.

01:15:42.940 --> 01:15:44.540
Das heißt, bei all diesen Sachen,

01:15:44.680 --> 01:15:46.600
wo ich halt sicher sein muss, dass das halt

01:15:46.600 --> 01:15:48.740
klappt, muss ich halt auch nochmal zusätzlich

01:15:48.740 --> 01:15:50.500
zu irgendwie, ich muss es als

01:15:50.500 --> 01:15:52.080
Unicode-String haben, auch nochmal

01:15:52.080 --> 01:15:53.440
gucken, dass die,

01:15:54.160 --> 01:15:56.460
Normalisierung halt auf beiden Seiten

01:15:56.460 --> 01:15:59.040
gleich ist, weil ansonsten

01:15:59.040 --> 01:16:00.840
kann mir halt jemand

01:16:00.840 --> 01:16:02.520
ein U für ein O

01:16:02.520 --> 01:16:04.640
vormachen oder so und dann habe ich ein Problem

01:16:04.640 --> 01:16:05.340
unter Umständen.

01:16:06.800 --> 01:16:08.420
Ja, oder ein

01:16:08.420 --> 01:16:10.260
kyrillisches A für ein

01:16:10.260 --> 01:16:12.680
lateinisches A, das ist ja der Klassiker.

01:16:13.500 --> 01:16:13.680
Ja.

01:16:14.200 --> 01:16:16.400
Dass es da diese Zeichen gibt, die gleich

01:16:16.400 --> 01:16:17.740
aussehen, aber nicht gleich sind.

01:16:18.680 --> 01:16:20.340
Ja. Und da

01:16:20.340 --> 01:16:22.600
das ist echt sehr schwierig. Und noch schlimmer

01:16:22.600 --> 01:16:24.140
ist Sortieren. Ach, so.

01:16:24.160 --> 01:16:26.040
Sortieren, oh Gott. Ja, ja. Und Groß- und

01:16:26.040 --> 01:16:27.840
Kleinschreibung ist genauso schlimm,

01:16:28.080 --> 01:16:30.660
weil die hängen von der Lokal

01:16:30.660 --> 01:16:30.880
ab.

01:16:32.100 --> 01:16:33.660
Da gibt es das klassische Beispiel,

01:16:34.020 --> 01:16:36.020
Türkisch hat ein I mit einem Punkt und

01:16:36.020 --> 01:16:37.020
ein I ohne Punkt.

01:16:38.900 --> 01:16:40.200
Und entsprechend

01:16:40.200 --> 01:16:41.840
gibt es davon Klein- und Großvarianten.

01:16:42.480 --> 01:16:44.320
Das heißt, wenn ich einen Text habe, der ein kleines

01:16:44.320 --> 01:16:46.020
I mit einem Punkt oben drauf

01:16:46.020 --> 01:16:47.380
enthält, also ein normales I,

01:16:47.560 --> 01:16:48.980
aus unserer Perspektive,

01:16:50.060 --> 01:16:51.980
und ich möchte den in

01:16:51.980 --> 01:16:53.960
einen großgeschriebenen String umwandeln,

01:16:54.160 --> 01:16:56.280
dann würde ich als Deutscher

01:16:56.280 --> 01:16:58.320
würde da ein großgeschriebenes I

01:16:58.320 --> 01:17:00.060
ohne Punkt drüber

01:17:00.060 --> 01:17:01.020
hinmachen.

01:17:01.940 --> 01:17:04.300
Und es ist auf Türkisch aber falsch. Auf Türkisch

01:17:04.300 --> 01:17:05.960
ist es so, dass wenn ich

01:17:05.960 --> 01:17:08.060
ein kleines I mit einem Punkt habe, dann muss

01:17:08.060 --> 01:17:10.360
das ein großes I mit einem Punkt oben drauf werden.

01:17:11.340 --> 01:17:12.260
Und es gibt wohl tatsächlich

01:17:12.260 --> 01:17:13.900
so einen Fall, wo eine SMS

01:17:13.900 --> 01:17:15.880
übertragen wurde. Und SMS ist ja auch

01:17:15.880 --> 01:17:17.640
so ein Legacy-System mit

01:17:17.640 --> 01:17:20.420
Ecken und Kanten.

01:17:21.660 --> 01:17:22.280
Wo eben

01:17:22.280 --> 01:17:23.960
eine SMS übertragen wurde und offensichtlich

01:17:23.960 --> 01:17:25.860
durch ein System wegnormalisiert wurde,

01:17:26.140 --> 01:17:28.000
wo dann ein Mann

01:17:28.000 --> 01:17:29.840
an seine Frau geschrieben hat und die ist dann

01:17:29.840 --> 01:17:31.620
irgendwie ausgedeckt, weil er geschrieben hat, dass er

01:17:31.620 --> 01:17:33.540
bei einer anderen ist, anstatt dass er nach Hause kommt.

01:17:33.600 --> 01:17:35.520
Irgendwie sowas passiert da.

01:17:35.660 --> 01:17:37.620
Also es gibt tatsächlich Real-World-Auswirkungen.

01:17:37.660 --> 01:17:39.000
Die Katze war. Auch Sortierung.

01:17:39.240 --> 01:17:40.780
Und auch Sortierung ist genauso.

01:17:41.180 --> 01:17:42.800
Sortierung ist auch

01:17:42.800 --> 01:17:44.800
locale-abhängig. Also das

01:17:44.800 --> 01:17:46.920
kommt darauf an, wo ich bin, wie ich

01:17:46.920 --> 01:17:48.820
Zeichen sortiere. Zum Beispiel auf Deutsch

01:17:48.820 --> 01:17:51.000
wird das E traditionell

01:17:51.000 --> 01:17:52.300
nach dem A einsortiert.

01:17:53.960 --> 01:17:55.480
Auf Schwedisch

01:17:55.480 --> 01:17:58.600
werden die

01:17:58.600 --> 01:18:00.240
kanonisch nach dem Z einsortiert.

01:18:02.020 --> 01:18:02.500
Und

01:18:02.500 --> 01:18:04.120
das heißt, wenn ich

01:18:04.120 --> 01:18:06.400
sortieren und kleine Großschreibungen machen will,

01:18:07.280 --> 01:18:07.940
dann

01:18:07.940 --> 01:18:10.100
muss ich wissen, wo ich bin.

01:18:11.180 --> 01:18:11.340
Ja.

01:18:12.200 --> 01:18:14.440
Und es gibt noch mehr coole Sachen.

01:18:14.760 --> 01:18:16.140
Kann man das nicht auch noch irgendwie

01:18:16.140 --> 01:18:18.440
einen Weg finden, wie man das in der Zeitzone abhängig machen könnte?

01:18:18.640 --> 01:18:18.860
Oder so.

01:18:20.280 --> 01:18:21.640
Von der Bodenphase.

01:18:21.640 --> 01:18:22.520
Das ist ein Potenzial.

01:18:23.960 --> 01:18:24.780
Das ist kompliziert.

01:18:26.100 --> 01:18:28.380
Mal ganz davon abgesehen, dass es in vielen asiatischen

01:18:28.380 --> 01:18:30.020
Sprachen diesen Unterschied zwischen

01:18:30.020 --> 01:18:31.340
Groß- und Kleingeschriebenen gar nicht gibt.

01:18:31.520 --> 01:18:33.340
Da gibt es ja keine Groß- und Kleingeschriebenenzeichen.

01:18:34.080 --> 01:18:36.120
Aber Groß- und Kleingeschriebenenzeichen ist noch schlimmer, weil

01:18:36.120 --> 01:18:38.920
es gibt in manchen Sprachen

01:18:38.920 --> 01:18:40.500
auch abhängig von der

01:18:40.500 --> 01:18:42.840
Locale Strings, die kann ich

01:18:42.840 --> 01:18:44.640
nicht Upper und

01:18:44.640 --> 01:18:46.420
danach wieder Lower machen. Da kommt nicht der gleiche

01:18:46.420 --> 01:18:46.860
String raus.

01:18:48.180 --> 01:18:50.000
Deutsch ist zum Beispiel so eine Sprache und

01:18:50.000 --> 01:18:51.540
ist auch abhängig von der Locale.

01:18:51.740 --> 01:18:53.940
Je nachdem, ob ich in der Schweiz bin,

01:18:53.960 --> 01:18:55.920
oder in Deutschland, wird es

01:18:55.920 --> 01:18:57.760
unterschiedlich behandelt. Wenn ich einen String mit einem

01:18:57.760 --> 01:18:59.140
scharfen S groß mache,

01:18:59.420 --> 01:19:02.040
dann wird

01:19:02.040 --> 01:19:02.860
es ja ein Doppel-S.

01:19:03.200 --> 01:19:04.660
Es gibt doch mal ein großes scharfes S, oder?

01:19:05.020 --> 01:19:06.720
Es gibt ein großes scharfes S, ja.

01:19:07.520 --> 01:19:09.660
Das wäre meiner Meinung nach auch die richtige Lösung.

01:19:09.780 --> 01:19:11.580
Aber in der Schweiz wird

01:19:11.580 --> 01:19:13.720
kanonisch das Doppel-S verwendet. Auch wenn es das

01:19:13.720 --> 01:19:14.700
große scharfe S gibt.

01:19:15.660 --> 01:19:17.440
Und wenn du diesen String wieder klein machst,

01:19:18.240 --> 01:19:19.260
dann sind es zwei kleine S.

01:19:19.740 --> 01:19:21.400
Dann sind es zwei kleine S. Und dann

01:19:21.400 --> 01:19:23.340
kommt auch nicht das gleiche wieder raus.

01:19:23.960 --> 01:19:24.620
Semantisch Unterschied.

01:19:25.540 --> 01:19:28.180
Semantischer Unterschied, der sich aus dem Kontext ergibt.

01:19:28.260 --> 01:19:29.820
Das heißt, das kannst du gar nicht technisch lösen.

01:19:31.240 --> 01:19:31.980
Das heißt, mit

01:19:31.980 --> 01:19:33.960
Unicode und mit Unicode-Strings sind

01:19:33.960 --> 01:19:35.900
nicht alle Probleme gelöst, die

01:19:35.900 --> 01:19:36.400
Menschen haben.

01:19:37.400 --> 01:19:39.920
Die doofen Menschen, die haben halt Probleme, die sie

01:19:39.920 --> 01:19:40.980
nie in den Computer reintun lassen.

01:19:43.740 --> 01:19:45.940
Auch mit Unicode sind solche Probleme

01:19:45.940 --> 01:19:47.980
nicht gelöst. Und die Lösung

01:19:47.980 --> 01:19:49.980
dafür ist im Wesentlichen,

01:19:49.980 --> 01:19:50.840
ja, darfst du halt nicht machen.

01:19:52.880 --> 01:19:53.660
Kein Großstring.

01:19:53.960 --> 01:19:55.560
Wenn du ein Großstring machen willst, lieber nicht.

01:19:56.420 --> 01:19:56.620
Ja.

01:19:58.180 --> 01:20:00.080
Wenn du Roundtripping haben willst

01:20:00.080 --> 01:20:01.820
zwischen Upper und Lower, geht halt nicht.

01:20:01.880 --> 01:20:03.600
Kriegst du nicht wieder raus. Wenn du Strings

01:20:03.600 --> 01:20:05.140
vergleichen willst, musst du diese

01:20:05.140 --> 01:20:07.580
sagen wir mal

01:20:07.580 --> 01:20:09.760
mittelmäßig coolen Encodings

01:20:09.760 --> 01:20:11.600
verwenden. Da gibt es übrigens vier, Jochen, die auch

01:20:11.600 --> 01:20:12.980
ein Buch haben.

01:20:14.720 --> 01:20:15.520
NFC und

01:20:15.520 --> 01:20:16.340
NFD.

01:20:17.980 --> 01:20:19.800
Das heißt eigentlich Normalized

01:20:19.800 --> 01:20:21.980
Format C und Normalized Format D.

01:20:22.780 --> 01:20:23.920
Warum das jetzt ausgerechnet

01:20:23.920 --> 01:20:25.600
C und D sind, weiß ich nicht.

01:20:25.660 --> 01:20:27.840
In meinem Kopf ist das Compact und

01:20:27.840 --> 01:20:28.880
äh,

01:20:29.860 --> 01:20:30.100
die,

01:20:31.000 --> 01:20:31.880
die, die,

01:20:31.880 --> 01:20:33.120
das ist irgendwie so.

01:20:35.020 --> 01:20:36.220
Compact ist das Format,

01:20:36.320 --> 01:20:37.900
was möglichst wenige Zeichen

01:20:37.900 --> 01:20:39.880
erzeugt. Und D,

01:20:40.100 --> 01:20:42.220
also das Decomposed

01:20:42.220 --> 01:20:44.060
vielleicht, ist das Format,

01:20:44.220 --> 01:20:44.660
was möglichst

01:20:44.660 --> 01:20:48.260
atomare Zeichen erzeugt.

01:20:48.340 --> 01:20:50.000
Also da wäre dann halt das E mit dem Axon

01:20:50.000 --> 01:20:51.960
zwei Zeichen und in dem anderen wäre es halt

01:20:51.960 --> 01:20:52.500
mit einem Zeichen.

01:20:53.920 --> 01:20:56.400
Und dann gibt es noch normalisierende

01:20:56.400 --> 01:20:57.980
Varianten davon, wo dann solche

01:20:57.980 --> 01:20:59.080
coolen Spezialsachen

01:20:59.080 --> 01:21:01.880
weggemacht werden, wie das

01:21:01.880 --> 01:21:04.260
µ zum Beispiel. Das µ gibt es in zwei Varianten.

01:21:05.180 --> 01:21:06.160
Einmal als die

01:21:06.160 --> 01:21:08.040
SI-Einheit µ für Mikrometer

01:21:08.040 --> 01:21:09.880
und einmal als das Griechische, den

01:21:09.880 --> 01:21:11.800
Griechenbuchstaben µ. Und OM

01:21:11.800 --> 01:21:13.560
ist auch so ein Zeichen, also ein großes

01:21:13.560 --> 01:21:16.160
Omega. Und manche

01:21:16.160 --> 01:21:17.900
von den Varianten normalisieren das weg

01:21:17.900 --> 01:21:19.720
und manche von den Varianten normalisieren das nicht weg.

01:21:19.860 --> 01:21:20.580
Und das ist also

01:21:20.580 --> 01:21:21.860
die

01:21:21.860 --> 01:21:23.860
Lösung,

01:21:23.920 --> 01:21:25.700
für die das Problem ist. Das darfst du einfach nicht machen.

01:21:26.120 --> 01:21:26.860
Mach es einfach nicht.

01:21:27.180 --> 01:21:29.940
Ja, also ich erinnere mich an diese ganzen

01:21:29.940 --> 01:21:30.620
Details nicht mehr.

01:21:31.480 --> 01:21:33.860
Vor einem Jahr ungefähr habe ich das halt dann irgendwann mal

01:21:33.860 --> 01:21:35.980
eingebaut, weil es halt eine Relevanz

01:21:35.980 --> 01:21:37.560
hatte und da habe ich das dann auch getestet.

01:21:38.140 --> 01:21:39.460
Und beim

01:21:39.460 --> 01:21:41.500
Schreiben dieser Tests ist mir dann irgendwann so,

01:21:41.560 --> 01:21:43.680
dachte ich mir so, oh mein Gott, also eigentlich

01:21:43.680 --> 01:21:45.780
fallen mir jetzt noch 20 Situationen

01:21:45.780 --> 01:21:47.880
ein früher, wo ich das auch mal

01:21:47.880 --> 01:21:49.900
besser hätte testen sollen, wo ich es nicht

01:21:49.900 --> 01:21:51.780
getan habe. Schnell vergessen und verdrängen,

01:21:51.780 --> 01:21:53.780
sonst, aber da

01:21:53.920 --> 01:21:55.800
gibt es so viele komische Sachen, die

01:21:55.800 --> 01:21:56.780
passieren können. Also,

01:21:57.760 --> 01:21:58.000
ja.

01:21:58.920 --> 01:22:01.920
Ja, es gibt ein Repository auf GitHub,

01:22:02.080 --> 01:22:03.940
das heißt Big List of Naughty Strings.

01:22:06.280 --> 01:22:07.520
Ach ja.

01:22:09.200 --> 01:22:09.660
Eine neue

01:22:09.660 --> 01:22:10.000
Rame-Move.

01:22:11.660 --> 01:22:13.840
Darf man auch nicht auf seine Weihnachts-Runch-Liste schreiben.

01:22:15.320 --> 01:22:15.800
Ja,

01:22:16.040 --> 01:22:17.820
es sind erstaunlich viele und es sind erstaunlich

01:22:17.820 --> 01:22:19.240
üble Sachen drin. Und

01:22:19.240 --> 01:22:21.760
ich habe auch schon einen PR dagegen gestellt, aber

01:22:21.760 --> 01:22:23.520
der ist, glaube ich, unmaintained.

01:22:23.520 --> 01:22:23.840
Die Liste,

01:22:23.920 --> 01:22:25.840
weil mein schöner PR mit dem

01:22:25.840 --> 01:22:27.740
großen, scharfen S würde leider nicht

01:22:27.740 --> 01:22:28.940
genommen. Ja.

01:22:30.340 --> 01:22:31.860
Aber ein großes, scharfes S ist schon

01:22:31.860 --> 01:22:32.920
sehr naughty.

01:22:33.680 --> 01:22:35.740
Das ist sehr naughty, aber man muss

01:22:35.740 --> 01:22:36.820
umgehen können damit.

01:22:39.760 --> 01:22:39.920
Ja.

01:22:40.440 --> 01:22:40.960
Ja, ja.

01:22:42.160 --> 01:22:43.920
German character, sharp S,

01:22:44.160 --> 01:22:45.700
which becomes SS when uppercased.

01:22:45.820 --> 01:22:47.780
So, changes from one character to two ASCII

01:22:47.780 --> 01:22:48.220
characters.

01:22:50.380 --> 01:22:51.680
Ich glaube auch, der

01:22:51.680 --> 01:22:53.760
Grund, warum Python 2 das nicht

01:22:53.760 --> 01:22:55.360
konnte, also ich, weil

01:22:55.360 --> 01:22:57.900
ich meine nämlich, Java hatte von Anfang an

01:22:57.900 --> 01:22:59.800
ein ordentliches Unicode irgendwie.

01:23:00.820 --> 01:23:01.880
Der lag aber einfach

01:23:01.880 --> 01:23:04.060
Ja, aber hatten die nicht auch UCS2 am Anfang?

01:23:04.760 --> 01:23:05.220
Äh,

01:23:05.760 --> 01:23:07.800
das kann sein. UCS2, um das kurz,

01:23:07.900 --> 01:23:09.280
um kurz unsere Hörer abzuholen.

01:23:10.000 --> 01:23:11.180
UCS2 ist einfach

01:23:11.180 --> 01:23:13.560
ein Textzeichen

01:23:13.560 --> 01:23:14.640
wird zu zwei bald.

01:23:15.420 --> 01:23:16.600
Ja, und

01:23:16.600 --> 01:23:19.540
da muss man auch Big Engine und Little Engine

01:23:19.540 --> 01:23:20.620
sagen, okay, das ist ein Detail.

01:23:20.620 --> 01:23:22.520
Dann brauchen wir mal einen Marker vorne dran.

01:23:22.880 --> 01:23:23.420
Ja, genau.

01:23:23.760 --> 01:23:25.780
Die geneigten Zuhörer werden bemerken, dass

01:23:25.780 --> 01:23:28.460
zwei Byte, 16 Bit sind,

01:23:28.540 --> 01:23:30.220
das sind ungefähr 65.000 Zeichen,

01:23:30.340 --> 01:23:32.580
das ist weniger als 1,1

01:23:32.580 --> 01:23:34.200
Millionen. Ja. Das heißt,

01:23:35.240 --> 01:23:35.960
das ist so ein

01:23:35.960 --> 01:23:38.420
Fix, der nicht

01:23:38.420 --> 01:23:39.300
weit hilft.

01:23:39.920 --> 01:23:42.240
Ja. Und die ganze

01:23:42.240 --> 01:23:44.200
Windows-Welt, das war ja alles mit

01:23:44.200 --> 01:23:46.420
UCS2, da gibt es diese ganzen Windows-Funktionen,

01:23:46.460 --> 01:23:48.100
die gibt es in normal und in unterstrich

01:23:48.100 --> 01:23:49.200
W für wide.

01:23:50.320 --> 01:23:52.260
Oh, okay. Hilft aber alles nichts,

01:23:52.340 --> 01:23:53.720
weil es war halt UCS2 und

01:23:53.760 --> 01:23:54.140
das ist...

01:23:54.140 --> 01:23:57.680
Und dann hatten wir jede Menge Null-Bytes

01:23:57.680 --> 01:23:59.300
in seinen Dateien drin und das

01:23:59.300 --> 01:24:01.360
ist nicht so cool.

01:24:01.700 --> 01:24:03.440
Sehr gut. Kann man gut zippen.

01:24:04.720 --> 01:24:05.980
Ja. Okay, also auf jeden Fall,

01:24:06.140 --> 01:24:08.200
ich glaube, Java hat am Anfang auch UCS2,

01:24:08.340 --> 01:24:10.200
die sind inzwischen auch auf UTF-8 umgestiegen.

01:24:10.620 --> 01:24:11.820
Ja, aber sie hatten schon

01:24:11.820 --> 01:24:13.780
auf jeden Fall dieses quasi Konzept,

01:24:14.400 --> 01:24:16.120
dass sie intern Unicode

01:24:16.120 --> 01:24:17.600
hatten und dann nach außen irgendwie

01:24:17.600 --> 01:24:20.000
enkodieren, dekodieren. Aber ich

01:24:20.000 --> 01:24:21.620
meine, das hatten sie nur deswegen, weil

01:24:21.620 --> 01:24:23.640
Java halt ein Stück jünger ist.

01:24:23.760 --> 01:24:25.560
Als Python. Und vorher war das gar nicht

01:24:25.560 --> 01:24:26.920
standardisiert, sozusagen.

01:24:27.280 --> 01:24:29.640
Vier Jahre. Kurz nach der Standardisierung

01:24:29.640 --> 01:24:31.540
hat Java, ist Java damit

01:24:31.540 --> 01:24:33.660
halt dann, sozusagen

01:24:33.660 --> 01:24:35.580
konnte das direkt verwenden und Python halt noch nicht,

01:24:35.660 --> 01:24:37.400
weil es halt älter ist. Aber da müssen wir noch mal

01:24:37.400 --> 01:24:38.460
die Timeline...

01:24:38.460 --> 01:24:41.660
Python ist doch 91

01:24:41.660 --> 01:24:43.780
und Java ist 95 und Unicode

01:24:43.780 --> 01:24:44.480
ist 96.

01:24:45.900 --> 01:24:47.480
Das kann nicht in Java 1 drin gewesen sein.

01:24:47.560 --> 01:24:49.600
Vielleicht ist es seit Java 2. Ich meine, es gab ja

01:24:49.600 --> 01:24:51.580
da auch einen großen

01:24:51.580 --> 01:24:52.260
Versionssprung.

01:24:53.760 --> 01:24:56.020
Ich hatte ja mal

01:24:56.020 --> 01:24:57.920
meine erste

01:24:57.920 --> 01:24:59.920
Programmiersprache an der Uni, das war Java

01:24:59.920 --> 01:25:01.920
tatsächlich und wir haben da noch die...

01:25:02.680 --> 01:25:03.200
Mein Beileid.

01:25:03.400 --> 01:25:06.200
Ja, auch zwei sehr dicke Bücher.

01:25:06.360 --> 01:25:07.840
Da kommt also zwei

01:25:07.840 --> 01:25:09.940
Bücher von dem Format von Flo und

01:25:09.940 --> 01:25:11.660
Patton. Das war einmal

01:25:11.660 --> 01:25:13.760
irgendwie Java irgendwie

01:25:13.760 --> 01:25:15.320
von... Ich weiß gar nicht mehr.

01:25:15.520 --> 01:25:17.620
Java in der Nutshell. Nee, nicht in der Nutshell, sondern

01:25:17.620 --> 01:25:19.540
irgendwie The Language oder so was.

01:25:20.240 --> 01:25:22.220
Und dann die Sprachspezifikation,

01:25:22.520 --> 01:25:23.600
was halt im Wesentlichen,

01:25:23.600 --> 01:25:24.860
die Grammatik war.

01:25:25.780 --> 01:25:27.940
Ja, also 2000 Seitenbücher.

01:25:28.520 --> 01:25:29.580
Und das war,

01:25:29.720 --> 01:25:31.740
meine ich, das war schon Unicode.

01:25:34.220 --> 01:25:34.620
Aber...

01:25:34.620 --> 01:25:36.120
Ja, und das muss kurz nach...

01:25:36.120 --> 01:25:37.900
Na gut, du bist halt auch so ein junger Programmierer,

01:25:37.980 --> 01:25:38.940
der nur Unicode kennt.

01:25:39.000 --> 01:25:39.160
Ja.

01:25:41.940 --> 01:25:43.520
Also das mit dem Unicode war nicht so schlecht,

01:25:43.660 --> 01:25:45.560
aber ansonsten, da waren so einige Dinge,

01:25:45.720 --> 01:25:47.380
die ich so... Public Static Void Main

01:25:47.380 --> 01:25:48.740
Dings, das habe ich nie so richtig...

01:25:48.740 --> 01:25:51.180
Das fand ich eher so ein bisschen...

01:25:51.180 --> 01:25:52.100
Was ist denn da los?

01:25:52.100 --> 01:25:54.100
Ja, meine erste...

01:25:54.660 --> 01:25:56.280
Meine Uniprogrammiersprache war C.

01:25:56.400 --> 01:25:57.680
Wir haben direkt mit C angefangen.

01:25:57.820 --> 01:26:00.640
Das war nicht die ideale Sprache

01:26:00.640 --> 01:26:01.860
für Programmieranfänger.

01:26:03.300 --> 01:26:03.460
Ja.

01:26:04.160 --> 01:26:06.400
Hat für einen gewissen

01:26:06.400 --> 01:26:08.100
Ausfilterungseffekt

01:26:08.880 --> 01:26:10.380
gesorgt.

01:26:11.660 --> 01:26:12.280
Sehr schön.

01:26:13.420 --> 01:26:14.620
Aber dein echt schönes

01:26:14.620 --> 01:26:15.700
Depot, was du da geteilt hast,

01:26:16.360 --> 01:26:18.020
sowas wie Strings for Spanish Fools

01:26:18.020 --> 01:26:19.420
to use cat on a file,

01:26:20.120 --> 01:26:21.340
things with crash...

01:26:21.340 --> 01:26:22.080
The list of naughty strings.

01:26:22.100 --> 01:26:23.080
Ja, ja.

01:26:23.160 --> 01:26:24.380
Lesen Sie es in den Shownotes nach.

01:26:25.060 --> 01:26:27.260
My course on human to reinterpret worldview.

01:26:28.060 --> 01:26:28.340
Ja.

01:26:29.140 --> 01:26:31.400
Eine interessante Sache, die tatsächlich

01:26:31.400 --> 01:26:32.260
in dem Kapitel vorkommt,

01:26:33.100 --> 01:26:34.900
die so als Frage gestellt wird,

01:26:35.200 --> 01:26:36.760
als so ein bisschen so eine

01:26:36.760 --> 01:26:38.720
Sidebar, würde ich sagen.

01:26:40.100 --> 01:26:41.660
Wie stellt Python denn intern

01:26:41.660 --> 01:26:43.800
eigentlich diese Unicode Strings dar?

01:26:44.940 --> 01:26:45.860
Und die Antwort

01:26:45.860 --> 01:26:46.580
darauf ist,

01:26:47.400 --> 01:26:48.280
ja, brauchst du gar nicht wissen.

01:26:49.780 --> 01:26:50.260
Implementierungsdetail.

01:26:50.260 --> 01:26:50.900
Mhm.

01:26:52.100 --> 01:26:54.360
Das ist eigentlich die richtige Antwort.

01:26:54.960 --> 01:26:56.280
Es wird dann trotzdem erklärt,

01:26:56.400 --> 01:26:57.340
ja, das ist wie Integer

01:26:57.340 --> 01:27:00.220
und der wählt so eine optimierte Darstellung.

01:27:00.460 --> 01:27:00.880
Und wenn es

01:27:00.880 --> 01:27:04.160
nur solche Zeichen sind,

01:27:04.240 --> 01:27:05.140
dann ist es ein ByteString.

01:27:06.000 --> 01:27:07.420
Jedenfalls ist da Optimierung drin.

01:27:08.360 --> 01:27:10.060
Das Wichtige ist, man kann immer

01:27:10.060 --> 01:27:11.480
davon ausgehen, dass es einfach

01:27:11.480 --> 01:27:12.620
eine Zahl ist.

01:27:13.640 --> 01:27:15.620
Jedes Zeichen in einem String ist eigentlich

01:27:15.620 --> 01:27:17.380
eine Zahl zwischen 0 und...

01:27:17.380 --> 01:27:18.060
1,1 Millionen.

01:27:18.060 --> 01:27:19.540
Ja, irgendwie sowas.

01:27:19.540 --> 01:27:22.340
Und

01:27:22.340 --> 01:27:25.620
Python sorgt dafür, dass das so ist

01:27:25.620 --> 01:27:27.220
und optimiert es dann auch richtig schön

01:27:27.220 --> 01:27:27.600
innen drin.

01:27:28.740 --> 01:27:30.040
Ich finde das eigentlich sehr beruhigend.

01:27:31.200 --> 01:27:32.280
Es ist nicht so, wie man es sich

01:27:32.280 --> 01:27:34.380
vorstellt, dass du es halt hörst.

01:27:34.380 --> 01:27:35.960
Das ist so eine Abfolge von Bytes.

01:27:36.540 --> 01:27:37.620
Oder eine Abfolge von hier.

01:27:37.660 --> 01:27:38.520
Das ist ein Speicher so drin.

01:27:39.020 --> 01:27:40.520
Sondern es ist erstaunlich kompliziert.

01:27:40.640 --> 01:27:41.420
Es ist erstaunlich komplex.

01:27:43.820 --> 01:27:45.420
Aber zum Glück gibt es da die

01:27:45.420 --> 01:27:47.480
schlauen Python Core Maintainer,

01:27:47.480 --> 01:27:49.480
die das für uns machen, die auch diese ganzen

01:27:49.480 --> 01:27:50.300
Unicode-Listen

01:27:50.300 --> 01:27:52.980
sich zu Gemüte führen und

01:27:52.980 --> 01:27:55.100
einem sagen, was das

01:27:55.100 --> 01:27:56.340
für Zeichen sind.

01:27:57.980 --> 01:27:59.400
Eine weitere

01:27:59.400 --> 01:28:01.380
interessante Sache ist, dass es ein paar Module gibt,

01:28:01.520 --> 01:28:02.580
die können mit beidem umgehen.

01:28:03.460 --> 01:28:05.520
Die können mit Bytes umgehen und

01:28:05.520 --> 01:28:06.900
mit Strings.

01:28:07.660 --> 01:28:09.180
Und die zwei wichtigsten davon sind

01:28:09.180 --> 01:28:11.220
RE, also Regular Expressions.

01:28:11.280 --> 01:28:11.720
Ja, gut.

01:28:12.760 --> 01:28:15.440
Klar, genau. Manchmal musst du halt

01:28:15.440 --> 01:28:17.060
Regular Expressions haben, die

01:28:17.060 --> 01:28:18.920
funktionieren auch.

01:28:18.920 --> 01:28:20.500
Das Gesicht in einem Bild austauschen.

01:28:20.600 --> 01:28:20.900
Das geht auch.

01:28:22.920 --> 01:28:24.760
Ja, okay. Keine Ahnung.

01:28:28.760 --> 01:28:31.180
Die funktionieren anders, je nachdem, ob man Bytes reingibt

01:28:31.180 --> 01:28:33.180
oder Strings.

01:28:33.320 --> 01:28:35.440
Und auch die Regular Expressions,

01:28:35.500 --> 01:28:36.920
der Typ der Regular Expressions muss zum

01:28:36.920 --> 01:28:39.000
Typ des verarbeiteten Datentyps

01:28:39.000 --> 01:28:39.300
passen.

01:28:40.040 --> 01:28:42.720
Das zweite Modul,

01:28:42.820 --> 01:28:43.960
interessanterweise, ist OS.

01:28:44.960 --> 01:28:46.940
Und zwar alles, was mit Dateipfaden

01:28:46.940 --> 01:28:47.580
zu tun hat.

01:28:48.920 --> 01:28:51.400
Und das ist auch so eine interessante

01:28:51.400 --> 01:28:52.340
Legacy-Sache.

01:28:53.960 --> 01:28:55.480
Weil Dateipfade

01:28:55.480 --> 01:28:57.360
nicht unbedingt

01:28:57.360 --> 01:28:58.940
valides UTF-8 sein müssen.

01:29:01.720 --> 01:29:03.800
Auf modernen Betriebssystemen

01:29:03.800 --> 01:29:07.280
sollte das so sein.

01:29:08.420 --> 01:29:09.720
Wenn ich eine Datei

01:29:09.720 --> 01:29:11.800
schreibe, dann sollte die eine UTF-8-Dateinamen

01:29:11.800 --> 01:29:13.520
haben. Wenn ich in meinen

01:29:13.520 --> 01:29:15.520
Gnome Explorer,

01:29:15.620 --> 01:29:17.100
wie auch immer der heißen mag, Nautilus,

01:29:17.280 --> 01:29:18.780
Tuna oder keine Ahnung, was es gibt,

01:29:18.920 --> 01:29:21.340
eine Dateinamen eingebe,

01:29:21.400 --> 01:29:22.700
dann wird es ein UTF-8-String sein.

01:29:23.100 --> 01:29:25.380
Aber das Dateisystem garantiert

01:29:25.380 --> 01:29:25.760
es nicht.

01:29:27.340 --> 01:29:29.340
Und das heißt, es kann Dateinamen

01:29:29.340 --> 01:29:31.200
geben, die ich nicht in UTF-8,

01:29:31.260 --> 01:29:33.640
die ich nicht als UTF-8-kodierte

01:29:33.640 --> 01:29:34.840
Strings darstellen kann. Das heißt,

01:29:35.480 --> 01:29:36.980
wenn ich eine Datei aufmachen möchte,

01:29:37.600 --> 01:29:39.280
dann muss ich irgendwie da rankommen

01:29:39.280 --> 01:29:41.540
an diesen Dateinamen, der kein korrekter

01:29:41.540 --> 01:29:42.640
String sein muss.

01:29:44.260 --> 01:29:45.620
Und deshalb gibt es

01:29:45.620 --> 01:29:47.560
für diese Dateisachen

01:29:47.560 --> 01:29:48.840
alle, also

01:29:48.920 --> 01:29:51.480
alle Funktionen in zwei Varianten, als mit String und als mit Bytes.

01:29:52.180 --> 01:29:52.380
Und

01:29:52.380 --> 01:29:54.680
da kann man auch schöne Strings

01:29:54.680 --> 01:29:55.200
treffen.

01:29:55.440 --> 01:29:59.060
Das war am Anfang

01:29:59.060 --> 01:30:00.700
war das, glaube ich, in Python 3,

01:30:00.800 --> 01:30:02.620
also da war der Umstieg von

01:30:02.620 --> 01:30:04.960
2 auf 3, da war das am Anfang

01:30:04.960 --> 01:30:06.760
nicht so, da gab es das noch nicht.

01:30:07.020 --> 01:30:08.300
Und da haben Leute irgendwie,

01:30:08.520 --> 01:30:10.880
das war für einige Leute ein Grund, Python 3

01:30:10.880 --> 01:30:12.460
nicht zu verwenden, weil sie sagten, ja super,

01:30:12.640 --> 01:30:14.440
ich kann damit meine Dateien leider nicht

01:30:14.440 --> 01:30:15.580
irgendwie löschen.

01:30:16.440 --> 01:30:17.440
Es geht einfach nicht.

01:30:17.520 --> 01:30:18.660
Es gibt keine Möglichkeit, das zu tun.

01:30:18.920 --> 01:30:19.380
Kann ja wohl nicht sein.

01:30:20.460 --> 01:30:23.300
Und dann gab es auch noch diverse böse Sonderfälle

01:30:23.300 --> 01:30:25.280
mit irgendwie, naja, also eigentlich kann das

01:30:25.280 --> 01:30:27.220
Dateisystem aber halt nicht,

01:30:27.320 --> 01:30:29.020
wenn du irgendwas uraltes über NFS

01:30:29.020 --> 01:30:30.900
gemountet hast oder sowas, dann machen wir das nicht.

01:30:32.120 --> 01:30:32.440
Ja.

01:30:35.440 --> 01:30:36.060
Ja, ja.

01:30:36.260 --> 01:30:37.680
Ja, ja.

01:30:38.440 --> 01:30:40.640
Für mich, das Fazit des ganzen Kapitels ist,

01:30:41.360 --> 01:30:43.080
modernes Betriebssystem, UTF-8,

01:30:43.740 --> 01:30:44.020
fein.

01:30:45.340 --> 01:30:46.380
Also in der Situation

01:30:46.380 --> 01:30:48.500
möglichst vermeidlich. Genau, Python 2 und Python 3,

01:30:48.500 --> 01:30:49.700
wie alt ist Python 3 jetzt?

01:30:49.900 --> 01:30:51.240
Wann kam das raus? 2010?

01:30:51.740 --> 01:30:53.800
14 Jahre? Ja, so 2010

01:30:53.800 --> 01:30:55.660
ungefähr ist das irgendwie losgegangen.

01:30:55.860 --> 01:30:57.240
Also 15 Jahre fast. Ja.

01:30:58.780 --> 01:30:59.820
Also auch Legacy.

01:31:00.720 --> 01:31:02.440
Forget it. Aber da haben sich ja Leute

01:31:02.440 --> 01:31:04.540
gewehrt dagegen. Ja, da haben sich ja Leute gewehrt dagegen.

01:31:05.200 --> 01:31:06.280
Es gibt einen

01:31:06.280 --> 01:31:08.380
Programmierkurs von Seth Shaw,

01:31:08.580 --> 01:31:09.960
Learn Python the Hard Way.

01:31:10.140 --> 01:31:12.400
Ja, den kann ich sehr empfehlen, den habe ich durchgezogen.

01:31:13.040 --> 01:31:14.560
Und der hat sich sehr lange

01:31:14.560 --> 01:31:17.340
gewehrt,

01:31:17.340 --> 01:31:18.360
den auf Python 3.

01:31:18.500 --> 01:31:20.540
umzustellen, weil ihm die

01:31:20.540 --> 01:31:21.400
Trennung zwischen

01:31:21.400 --> 01:31:24.340
String und Bytes nicht logisch erschien.

01:31:26.200 --> 01:31:26.720
Und

01:31:26.720 --> 01:31:28.500
er hat da sehr lange, sehr viele

01:31:28.500 --> 01:31:29.940
Artikel darüber geschrieben und

01:31:29.940 --> 01:31:32.600
ich finde diese Trennung großartig. Das ist genau

01:31:32.600 --> 01:31:34.620
richtig. Es sind zwei unterschiedliche Dinge,

01:31:34.840 --> 01:31:36.340
zwei unterschiedliche Bedeutungen,

01:31:36.460 --> 01:31:38.080
die unterschiedliche Zwecke verfolgen.

01:31:38.740 --> 01:31:40.340
Und natürlich musste das auftreten. Natürlich

01:31:40.340 --> 01:31:41.940
musste die unterschiedlich behandelt werden.

01:31:42.860 --> 01:31:43.100
Und

01:31:43.100 --> 01:31:46.400
es gibt Leute, die sich da lange dagegen

01:31:46.400 --> 01:31:48.140
gewehrt haben. Ich weiß nicht, wie der

01:31:48.140 --> 01:31:49.800
Mr. Shaw das inzwischen sieht.

01:31:50.320 --> 01:31:52.320
Es ist mir auch egal, weil er hat damals kein

01:31:52.320 --> 01:31:52.780
Recht gehabt.

01:31:53.220 --> 01:31:56.460
Ja, ich kann das Buch auch

01:31:56.460 --> 01:31:56.920
versuchen.

01:31:57.860 --> 01:31:59.640
Der macht jetzt inzwischen auch ganz viel

01:31:59.640 --> 01:32:01.160
AI-Zeugs.

01:32:03.120 --> 01:32:04.360
Aber genau.

01:32:05.420 --> 01:32:06.400
Aber das habe ich

01:32:06.400 --> 01:32:06.880
auch nie verstanden.

01:32:09.980 --> 01:32:10.600
Ja, also

01:32:10.600 --> 01:32:11.740
das war damals schon ein Streitpunkt.

01:32:11.940 --> 01:32:13.540
Meiner Meinung nach ist das schon das Richtige.

01:32:13.540 --> 01:32:14.820
Das war die richtige Entscheidung.

01:32:15.280 --> 01:32:16.240
Ja, auf jeden Fall.

01:32:16.400 --> 01:32:18.100
Diese Trennung zu machen und auch sauber zu machen.

01:32:18.140 --> 01:32:20.680
Und viele von den Problemen,

01:32:20.760 --> 01:32:22.500
die man so haben kann, die gehen halt einfach weg.

01:32:24.840 --> 01:32:26.380
Auch wenn es auch noch mal andere Probleme

01:32:26.380 --> 01:32:27.580
mit NFC und NFT

01:32:27.580 --> 01:32:30.020
und Sortierung

01:32:30.020 --> 01:32:31.540
und dann halt

01:32:31.540 --> 01:32:33.760
und das auch.

01:32:34.160 --> 01:32:34.980
Kannst du einfach nicht mehr machen.

01:32:38.820 --> 01:32:40.360
Ja, cool.

01:32:41.920 --> 01:32:42.180
Genau.

01:32:43.320 --> 01:32:43.500
Ah,

01:32:43.940 --> 01:32:46.220
ich glaube, es gibt ja auch noch Dinge

01:32:46.220 --> 01:32:46.880
vor ASCII.

01:32:48.140 --> 01:32:50.960
Wir hatten ja eben auch schon Faxgeräte.

01:32:52.100 --> 01:32:52.520
Aber wenn man

01:32:52.520 --> 01:32:53.800
so hinguckt.

01:32:53.800 --> 01:32:55.640
Asien gibt es ganz inkompatible.

01:32:55.980 --> 01:32:57.900
Oder wenn man jetzt irgendwo hinfliegt oder so.

01:32:58.020 --> 01:32:58.840
Man sagt so, alles

01:32:58.840 --> 01:33:02.400
schrecklich.

01:33:02.480 --> 01:33:04.540
Macht es gut, ihr Trottel. Ich fliege jetzt einfach irgendwo anders hin.

01:33:04.700 --> 01:33:06.780
Und dann könnt ihr halt

01:33:06.780 --> 01:33:07.220
irgendwo bleiben.

01:33:07.900 --> 01:33:10.300
Dann das nicht funktioniert,

01:33:10.300 --> 01:33:12.300
weil man halt irgendwie auf dem Ticket

01:33:12.300 --> 01:33:14.520
hat man halt irgendwie zum Beispiel keine Umlaute oder sowas.

01:33:14.820 --> 01:33:16.460
Aber Jörg, es gibt auch ein Protokoll für Brieftauben.

01:33:16.600 --> 01:33:17.100
Wir kriegen die schon.

01:33:18.140 --> 01:33:21.080
Dann gibt es

01:33:21.080 --> 01:33:22.960
und das ist bei Überweisungen manchmal auch so oder so.

01:33:23.020 --> 01:33:25.160
Und das ist halt immer dann, wenn man es plötzlich nochmal mit so

01:33:25.160 --> 01:33:26.300
mit so richtigen

01:33:26.300 --> 01:33:28.440
Wobei wir ja jetzt in der Swift

01:33:28.440 --> 01:33:31.140
Wir sind ja jetzt in der Swift-Ära.

01:33:31.460 --> 01:33:31.840
In der

01:33:31.840 --> 01:33:34.880
Payment Services Directive 2-Ära, wo

01:33:34.880 --> 01:33:36.580
alles ordentliche Encodings hat.

01:33:36.820 --> 01:33:38.060
Zumindest definierte Encodings.

01:33:38.220 --> 01:33:39.440
Ach okay, das war mir jetzt gar nicht so, weil

01:33:39.440 --> 01:33:42.200
das war Überweisungen oder so, das ist ja auch manchmal so, dass ich da versuche

01:33:42.200 --> 01:33:43.740
irgendwie das einzugeben und so, hä, geht nicht.

01:33:44.260 --> 01:33:44.580
Komisch.

01:33:44.580 --> 01:33:46.280
Ja, das hat auf jeden Fall

01:33:46.280 --> 01:33:48.120
also das, diese Zeichensatzung,

01:33:48.160 --> 01:33:50.660
das da drin ist, ist komisch, aber der ist wenigstens genau definiert.

01:33:50.940 --> 01:33:52.080
Ah, okay, ja gut.

01:33:52.540 --> 01:33:53.160
Das kann natürlich sein.

01:33:54.440 --> 01:33:56.480
Früher, oder ich glaube bei Flukus-Systemen

01:33:56.480 --> 01:33:58.480
ist es immer noch so, dass es läuft alles immer noch über Suchbezeichner

01:33:58.480 --> 01:34:00.080
und das ist halt, die verwenden

01:34:00.080 --> 01:34:02.440
EBITIC oder so, ne? Das ist halt auch irgendwie

01:34:02.440 --> 01:34:05.980
ein 7-Bit-Monster-Ding.

01:34:06.760 --> 01:34:08.100
Was aber nicht kompatibel ist.

01:34:08.200 --> 01:34:09.160
Nein, gar nicht, natürlich.

01:34:11.040 --> 01:34:12.140
Und diese ganzen

01:34:12.140 --> 01:34:13.860
radiatischen Schreibsysteme, die

01:34:13.860 --> 01:34:15.540
mehrbeitig sind, sind aber auch

01:34:15.540 --> 01:34:17.900
nichts kompatibel und auch untereinander

01:34:17.900 --> 01:34:19.100
nicht kompatibel und ah.

01:34:19.840 --> 01:34:20.020
Ja.

01:34:21.460 --> 01:34:23.220
Ja, es ist großartig.

01:34:25.020 --> 01:34:25.420
So.

01:34:26.620 --> 01:34:26.820
Ja.

01:34:27.680 --> 01:34:29.500
Wie soll man das? Das muss man an einer Höhle malen.

01:34:31.240 --> 01:34:32.020
Machen wir doch wieder

01:34:32.020 --> 01:34:33.100
irgendwas mit Holz oder so.

01:34:33.280 --> 01:34:35.980
Ja, ich empfehle

01:34:35.980 --> 01:34:37.860
dieses Kapitel nicht zum Lesen. Es ist tatsächlich

01:34:37.860 --> 01:34:39.280
ein bisschen trocken und ein bisschen lang.

01:34:40.700 --> 01:34:41.880
Es ist ganz gut als

01:34:41.880 --> 01:34:43.720
Nachschlagewerk. Wenn man eben

01:34:43.720 --> 01:34:45.600
an diese Stelle kommt, wo man tatsächlich mit

01:34:45.600 --> 01:34:47.720
mit Bytes und mit Legacy-Datenbots

01:34:47.900 --> 01:34:49.820
dieses Thema arbeiten muss, da stehen ein paar interessante Sachen

01:34:49.820 --> 01:34:51.740
drin, aber zum Lesen fand ich es jetzt nicht so interessant.

01:34:52.580 --> 01:34:52.720
Ja.

01:34:54.480 --> 01:34:55.480
Ja, cool, cool, cool.

01:34:55.740 --> 01:34:57.740
Aber, ja. Also ich würde sagen, dann haben wir heute

01:34:57.740 --> 01:34:58.740
die Episode gefüllt, oder?

01:34:59.000 --> 01:35:01.100
Ja, ich glaube, wir machen irgendwann nochmal einen Mittag.

01:35:01.360 --> 01:35:03.740
Ja, genau. Aber wir könnten auch sowas wie Pics

01:35:03.740 --> 01:35:05.120
machen zum Beispiel. Können wir das?

01:35:05.460 --> 01:35:07.120
Könnten wir. Ja. Okay. Ja.

01:35:08.160 --> 01:35:09.140
Dann fang doch mal an. Wie

01:35:09.140 --> 01:35:11.960
vorhin schon angekündigt, habe ich sogar zwei Pics.

01:35:12.160 --> 01:35:13.760
Oha. Und einer davon

01:35:13.760 --> 01:35:15.780
ist sogar Python-relevant.

01:35:16.780 --> 01:35:17.180
Äh.

01:35:17.900 --> 01:35:19.500
Der erste Pic, den ich habe, der ist nicht

01:35:19.500 --> 01:35:20.780
Python-relevant.

01:35:21.560 --> 01:35:24.140
Das ist ein Paper auf Astroarchive.

01:35:25.820 --> 01:35:26.260
Gravitational

01:35:26.260 --> 01:35:28.100
Effects of a Small Primordial

01:35:28.100 --> 01:35:29.960
Black Hole Passing Through the Human Body.

01:35:31.820 --> 01:35:32.700
Da geht es

01:35:32.700 --> 01:35:34.000
um eine Klasse

01:35:34.000 --> 01:35:36.000
von schwarzen Löchtern,

01:35:36.200 --> 01:35:37.680
sogenannte Primordial Black Holes.

01:35:37.880 --> 01:35:39.960
Das ist so eine Vorstufe von einem schwarzen Loch.

01:35:40.040 --> 01:35:42.120
Das sind so schwarze Löcher, die dann sofort wieder wegverdunsten.

01:35:43.440 --> 01:35:46.200
so wie ich

01:35:46.200 --> 01:35:47.820
das verstanden habe, ich verstehe ja nichts davon.

01:35:47.900 --> 01:35:50.200
Aber ich habe Kommentare gelesen. Und so wie ich die Kommentare

01:35:50.200 --> 01:35:52.100
gelesen habe, ist dieses Paper interessant

01:35:52.100 --> 01:35:54.180
in dem Sinne, dass man

01:35:54.180 --> 01:35:56.280
nicht genau weiß, ob es diese schwarzen

01:35:56.280 --> 01:35:58.180
Löcher gibt und wie oft die vorkommen

01:35:58.180 --> 01:35:59.560
und wie viele es davon gibt.

01:36:00.460 --> 01:36:01.480
Und wie groß die sind.

01:36:02.500 --> 01:36:04.520
Und in diesem Paper hat man ausgerechnet,

01:36:04.900 --> 01:36:06.280
wenn ein solches schwarzes Loch

01:36:06.280 --> 01:36:07.660
durch einen Menschen durchfliegt,

01:36:08.060 --> 01:36:10.060
die sind extrem klein, dann

01:36:10.060 --> 01:36:12.000
hat es keinerlei Auswirkungen, wenn es

01:36:12.000 --> 01:36:13.980
kleiner ist als 1,4 mal

01:36:13.980 --> 01:36:15.600
10 hoch 17 Gramm.

01:36:15.600 --> 01:36:15.860
Mhm.

01:36:16.860 --> 01:36:17.020
Mhm.

01:36:17.900 --> 01:36:20.960
Das ist ungefähr so viel, wie die Pyramide

01:36:20.960 --> 01:36:21.960
von Giza wiegt.

01:36:23.020 --> 01:36:23.280
Aha.

01:36:23.940 --> 01:36:25.980
Die wiegt ungefähr 10 hoch 17 Gramm.

01:36:26.060 --> 01:36:28.600
Das heißt, wenn ein schwarzes Loch

01:36:28.600 --> 01:36:30.640
durch einen Menschen durchfliegt und dieses schwarze Loch

01:36:30.640 --> 01:36:32.680
hat eine Masse, die ist kleiner als die Pyramide

01:36:32.680 --> 01:36:34.020
von Giza, dann passiert gar nichts.

01:36:35.220 --> 01:36:36.480
Was heißt die Pyramide von Giza?

01:36:37.120 --> 01:36:38.820
Gizeh. Das ist die in Kairo da,

01:36:38.880 --> 01:36:40.220
diese riesengroße Pyramide.

01:36:40.300 --> 01:36:41.660
Die große Gizeh, nicht Giza.

01:36:41.940 --> 01:36:45.020
Ja, also sie ist 146,5 Meter hoch

01:36:45.020 --> 01:36:45.420
und

01:36:45.420 --> 01:36:47.860
wiegt ungefähr 1,5 Meter.

01:36:47.900 --> 01:36:49.780
Also wenn die durch dich durchfliegt,

01:36:49.840 --> 01:36:50.380
dann merkst du das.

01:36:51.180 --> 01:36:52.720
Ja, aber nicht als schwarzes Loch.

01:36:53.940 --> 01:36:55.900
Der Grund ist, dass dieses schwarze Loch

01:36:55.900 --> 01:36:57.680
zu klein ist. Das interagiert mit keinem

01:36:57.680 --> 01:36:59.620
deiner Moleküle.

01:37:00.140 --> 01:37:01.700
Achso, weil der Schwarzschildradius von dem Ding

01:37:01.700 --> 01:37:02.840
ist so gewünscht, dass das...

01:37:02.840 --> 01:37:05.580
Der ist kleiner als ein Atomkern und deshalb

01:37:05.580 --> 01:37:07.440
kriegst du nichts ab.

01:37:08.100 --> 01:37:08.540
Ja, okay.

01:37:09.600 --> 01:37:11.640
Der Event Horizon ist klein genug,

01:37:11.740 --> 01:37:12.940
dass du überhaupt gar nichts bemerkst.

01:37:14.260 --> 01:37:15.600
Wenn eins davon größer ist,

01:37:15.600 --> 01:37:17.700
also die Sprache in diesem Artikel ist sehr,

01:37:17.900 --> 01:37:19.480
äh, technisch.

01:37:20.640 --> 01:37:21.800
Ich würde sagen,

01:37:22.260 --> 01:37:23.000
wenn ein

01:37:23.000 --> 01:37:25.660
schwarzes Loch durch einen

01:37:25.660 --> 01:37:26.860
menschlichen Körper durchfliegt,

01:37:27.500 --> 01:37:29.780
was eine größere Masse hat, dann hätte es

01:37:29.780 --> 01:37:31.660
messbare Auswirkungen.

01:37:31.740 --> 01:37:32.340
So ist es, glaube ich.

01:37:33.180 --> 01:37:34.920
Okay, das klingt unangenehm.

01:37:35.780 --> 01:37:37.660
Genau. Die Tatsache, dass es

01:37:37.660 --> 01:37:40.040
keine bekannten Fälle gibt von solchen

01:37:40.040 --> 01:37:42.240
seltsamen

01:37:42.240 --> 01:37:43.780
Verwundungen,

01:37:44.060 --> 01:37:44.980
die einfach so passieren,

01:37:44.980 --> 01:37:46.900
ist eine Indikation dafür,

01:37:46.900 --> 01:37:50.540
dass es diese Primordial Black Holes

01:37:50.540 --> 01:37:52.660
nicht gibt oder dass die nicht in genügend

01:37:52.660 --> 01:37:53.880
großer Menge auftreten,

01:37:54.580 --> 01:37:57.080
dass sie von der gesamten Menschheit messbar sind.

01:37:57.200 --> 01:37:58.840
Und das ist das Interessante an diesem

01:37:58.840 --> 01:38:00.680
Paper da drin. Also sehr weit

01:38:00.680 --> 01:38:02.800
außenrum ausgeholt, um dann hinterher zu

01:38:02.800 --> 01:38:03.900
sagen, ja, und deshalb

01:38:03.900 --> 01:38:06.600
kann es nicht so viele davon geben.

01:38:07.320 --> 01:38:07.680
Fand ich nicht.

01:38:09.180 --> 01:38:10.500
Mein zweiter Pick

01:38:10.500 --> 01:38:12.860
ist

01:38:12.860 --> 01:38:13.740
wesentlich weniger

01:38:13.740 --> 01:38:15.620
physikalisch.

01:38:15.620 --> 01:38:16.260
Äh,

01:38:16.900 --> 01:38:17.520
ein Artikel

01:38:17.520 --> 01:38:19.500
mit dem Titel

01:38:19.500 --> 01:38:22.280
A Year of UV, Pros, Cons and Should You Migrate?

01:38:22.980 --> 01:38:23.200
Ah.

01:38:23.920 --> 01:38:26.240
Das heißt, jemand hat seine Erfahrungen

01:38:26.240 --> 01:38:27.020
aufgeschrieben

01:38:27.020 --> 01:38:29.220
mit UV,

01:38:29.620 --> 01:38:31.340
dem Python

01:38:31.340 --> 01:38:34.080
Package Management Tool,

01:38:34.180 --> 01:38:35.300
Project Management Tool.

01:38:38.040 --> 01:38:38.620
Und

01:38:38.620 --> 01:38:40.140
es ist sehr interessant

01:38:40.140 --> 01:38:42.020
zu lesen, weil es gibt natürlich viele

01:38:42.020 --> 01:38:44.160
gute Dinge zu sagen

01:38:44.160 --> 01:38:45.980
und viele Dinge zu sagen,

01:38:46.200 --> 01:38:46.760
die anders sind.

01:38:46.900 --> 01:38:48.940
Und es gibt erstaunlich wenige Dinge

01:38:48.940 --> 01:38:51.100
zu sagen, die nicht so gut sind.

01:38:52.540 --> 01:38:53.500
Und im Wesentlichen

01:38:53.500 --> 01:38:55.240
der einzige Grund, warum man

01:38:55.240 --> 01:38:56.980
UV nicht verwenden sollte,

01:38:57.080 --> 01:38:58.940
laut dieses Artikels, ist, wenn man irgendwelche

01:38:58.940 --> 01:39:00.940
Legacy-Anwendungen hat, die man damit

01:39:00.940 --> 01:39:02.200
halt nicht auflösen kann.

01:39:02.460 --> 01:39:04.500
Weil die Dependency Resolution anders ist.

01:39:05.240 --> 01:39:05.440
Und

01:39:05.440 --> 01:39:08.820
wenn es nicht geht, ja, dann kannst du

01:39:08.820 --> 01:39:10.700
entweder den Aufwand reinstecken, dafür zu sorgen,

01:39:10.780 --> 01:39:12.460
dass es geht, oder du kannst halt bei Pip bleiben.

01:39:12.580 --> 01:39:13.440
Oder bei was auch immer es ist.

01:39:14.920 --> 01:39:16.500
Und es ist ein sehr langer Artikel.

01:39:16.900 --> 01:39:17.480
Und der

01:39:17.480 --> 01:39:20.660
beschreibt diese Situation sehr genau.

01:39:20.760 --> 01:39:22.000
Und ich fand ihn sehr interessant zu lesen.

01:39:22.100 --> 01:39:23.580
Und deshalb ist es mein Pick für diese Woche.

01:39:23.680 --> 01:39:25.600
Mein zweiter Pick neben den schwarzen Löchern.

01:39:26.500 --> 01:39:27.920
Sehr cool. Es gibt da auch ein

01:39:27.920 --> 01:39:30.260
Video von Hüneck.

01:39:32.000 --> 01:39:32.660
Der hat vor

01:39:32.660 --> 01:39:34.760
Anfang 2024 oder so

01:39:34.760 --> 01:39:36.240
irgendwie ein Video gemacht, wo er sagt,

01:39:36.300 --> 01:39:38.380
ist das wirklich die

01:39:38.380 --> 01:39:40.660
Zukunft von Packaging

01:39:40.660 --> 01:39:42.540
in Python? Und dann hat er irgendwann

01:39:42.540 --> 01:39:43.540
im August oder September

01:39:43.540 --> 01:39:46.560
das Titel hat,

01:39:46.560 --> 01:39:48.300
ja, es ist die Zukunft von

01:39:48.300 --> 01:39:49.480
Packaging in Python.

01:39:50.580 --> 01:39:52.600
Ja, das kommt auch in dem Artikel rüber.

01:39:52.820 --> 01:39:54.720
Einer der Gründe, warum die Empfehlung

01:39:54.720 --> 01:39:56.400
so mehr oder weniger unangeschränkt ist, ist, dass

01:39:56.400 --> 01:39:58.680
dieses Team einfach ungeheuer

01:39:58.680 --> 01:39:59.620
viel drin arbeitet.

01:40:01.160 --> 01:40:02.560
Und die machen einfach,

01:40:02.720 --> 01:40:04.480
also, wenn man sich den Bugtracker

01:40:04.480 --> 01:40:06.340
anschaut von

01:40:06.340 --> 01:40:07.080
UV,

01:40:08.240 --> 01:40:10.240
dann hat es eine

01:40:10.240 --> 01:40:11.800
extrem große Anzahl Tickets.

01:40:12.520 --> 01:40:13.580
Ich mach's gerade auf.

01:40:15.900 --> 01:40:16.380
Wir

01:40:16.380 --> 01:40:17.440
sind jetzt bei Ticketnummer

01:40:17.440 --> 01:40:19.780
11.679.

01:40:20.760 --> 01:40:21.200
Wow.

01:40:22.140 --> 01:40:24.480
Und offen sind aber nur 1.200.

01:40:24.720 --> 01:40:25.720
Nur 1.200.

01:40:27.020 --> 01:40:28.520
Das heißt, die arbeiten

01:40:28.520 --> 01:40:30.220
einfach alles ab, was

01:40:30.220 --> 01:40:31.140
in den Weg kommt.

01:40:32.280 --> 01:40:34.240
Diese Sachen, die da drin sind, scheinen alle

01:40:34.240 --> 01:40:36.560
sehr gut von der Architektur zu sein.

01:40:36.640 --> 01:40:38.560
Die sind alle sehr performant. Die sind alle sehr

01:40:38.560 --> 01:40:40.340
gut ausgedacht,

01:40:40.520 --> 01:40:42.280
was auch die Oberfläche angeht. Also es

01:40:42.280 --> 01:40:43.600
scheint so zu sein, dass

01:40:43.600 --> 01:40:44.460
das einfach gut von der

01:40:44.460 --> 01:40:44.460


01:40:44.460 --> 01:40:46.280
Das ist einfach gut.

01:40:46.380 --> 01:40:48.320
Ja, so ein paar Kinderkrankheiten am Anfang sind alle

01:40:48.320 --> 01:40:50.260
weg und es ist sehr viel cooler.

01:40:51.040 --> 01:40:52.000
Ja, ich hab das auch.

01:40:52.300 --> 01:40:53.900
Und ich bin inzwischen auch überall hinmigriert.

01:40:54.120 --> 01:40:55.820
Es gibt auch ein

01:40:55.820 --> 01:40:58.060
Python-Package, das heißt

01:40:58.060 --> 01:40:58.940
Migrate to UV.

01:41:00.560 --> 01:41:02.620
Das hab ich einfach mal auf alle meine Sachen angewendet

01:41:02.620 --> 01:41:04.340
und jetzt sind die alle UV-visiert.

01:41:04.900 --> 01:41:06.440
Es gibt noch UV-Secure

01:41:06.440 --> 01:41:08.340
und so, da kann man so einen Pipeline testen und so was.

01:41:08.960 --> 01:41:10.280
Ja, es ist sehr nice, ja.

01:41:11.760 --> 01:41:12.000
Ja.

01:41:12.000 --> 01:41:12.060
Ja.

01:41:14.260 --> 01:41:14.540
Cool.

01:41:15.540 --> 01:41:16.300
Ich pick da mal.

01:41:17.000 --> 01:41:17.220
Ja.

01:41:17.420 --> 01:41:19.500
Ich weiß gar nicht mehr, wo ich das herhabe. Vielleicht hab ich es bei einem von euch gefunden.

01:41:19.660 --> 01:41:20.900
Es heißt Sketch a Day.

01:41:22.000 --> 01:41:23.840
Da wird eine visuelle Idee

01:41:23.840 --> 01:41:26.140
jeden Tag gecodet.

01:41:26.240 --> 01:41:27.860
Und zwar in Python. Finde ich sehr nice.

01:41:27.940 --> 01:41:29.120
Das ist so eine Blog-Serie

01:41:29.120 --> 01:41:31.540
von Alexandre Bivilares.

01:41:32.380 --> 01:41:33.960
Sehr, sehr schick, weil man da irgendwie so

01:41:33.960 --> 01:41:35.560
Visualisierung mit Python kriegt.

01:41:35.640 --> 01:41:38.180
So ganz viele verschiedene unterschiedliche Ideen. Da ist immer so das Skript dabei.

01:41:38.860 --> 01:41:40.040
Und der macht das schon eine ganze Weile

01:41:40.040 --> 01:41:41.980
und da sind ziemlich nette Sachen dabei,

01:41:42.120 --> 01:41:43.080
wie man sich das angucken kann.

01:41:45.540 --> 01:41:46.180
Also super.

01:41:46.380 --> 01:41:48.520
Und spannend, wenn man mal Grafik mit Python machen will

01:41:48.520 --> 01:41:49.500
oder generieren will

01:41:49.500 --> 01:41:52.100
und sich mal angucken möchte, wie das denn alles da aussehen kann.

01:41:52.960 --> 01:41:53.980
Kann ich sehr empfehlen.

01:41:54.080 --> 01:41:54.540
Verlinken wir.

01:41:55.880 --> 01:41:57.840
Da kann man echt schicke Sachen mit rendern.

01:41:57.840 --> 01:41:57.920
Ja.

01:42:00.160 --> 01:42:00.920
Traktate und sowas.

01:42:02.060 --> 01:42:02.920
Sehr coole Sache.

01:42:03.300 --> 01:42:03.440
Ja.

01:42:05.420 --> 01:42:06.200
Was hab ich da?

01:42:06.520 --> 01:42:09.960
Also ich mach mal keinen Python-Pick.

01:42:11.500 --> 01:42:11.900
Sondern

01:42:11.900 --> 01:42:13.300
ich pick mal eine Shell.

01:42:13.400 --> 01:42:15.000
Da gab es nämlich jetzt auch irgendwie

01:42:15.000 --> 01:42:16.280
vor nicht allzu langer Zeit.

01:42:16.280 --> 01:42:16.300
Ja.

01:42:16.300 --> 01:42:16.360
Ja.

01:42:16.380 --> 01:42:17.280
Das hat ein neuer Release.

01:42:18.060 --> 01:42:18.760
Also ich

01:42:18.760 --> 01:42:21.960
verwende dann

01:42:21.960 --> 01:42:22.520
Phish.

01:42:23.160 --> 01:42:26.040
Und Phish gibt es jetzt auch in der Version 4.

01:42:26.200 --> 01:42:26.560
Wow.

01:42:26.920 --> 01:42:30.540
Und sie haben da auch einen Großteil in Rust neu geschrieben.

01:42:30.940 --> 01:42:31.360
Oh cool.

01:42:32.420 --> 01:42:34.300
Ich mag Phish eigentlich sehr gerne.

01:42:34.500 --> 01:42:36.480
Vor allem wegen dem Fuzzy-Ding. Das ist alles sehr nice

01:42:36.480 --> 01:42:38.060
und completionist war immer sehr nett.

01:42:38.620 --> 01:42:40.440
Aber was echt nervt ist,

01:42:40.620 --> 01:42:42.160
dass Skripte nicht so

01:42:42.160 --> 01:42:44.200
kompatibel sind. Die Skript-Sprache finde ich

01:42:44.200 --> 01:42:46.100
anstrengend. Das bricht halt

01:42:46.100 --> 01:42:48.340
wenn man das irgendwo anders ausführen will, immer alles durch.

01:42:49.500 --> 01:42:50.740
Der Grund, warum ich es nicht mehr

01:42:50.740 --> 01:42:52.540
auf allen Servern einsetze. Ich hatte es zwischendurch

01:42:52.540 --> 01:42:54.160
auf allen Pod-Servern drauf.

01:42:54.380 --> 01:42:55.600
Ja, mach ich auch.

01:42:56.440 --> 01:42:58.400
Aber ja, klar. Also manche Sachen kannst du halt

01:42:58.400 --> 01:43:00.020
einfach nicht verwenden in der Phish-Shell.

01:43:00.640 --> 01:43:00.760
Genau.

01:43:01.540 --> 01:43:03.400
Gut, aber ich mach dann halt, ich hab dann zum Beispiel

01:43:03.400 --> 01:43:06.160
so Deployment-Skripten oder so, dann nehm ich halt eine Bash.

01:43:06.340 --> 01:43:06.720
Ja, genau.

01:43:07.140 --> 01:43:09.260
Und führe das dann damit aus. Das geht halt auch.

01:43:09.580 --> 01:43:11.880
Ja, weil auch die Konfigurationen sind halt nicht Portable und so.

01:43:11.880 --> 01:43:13.060
Das ist alles so ein bisschen nervig.

01:43:13.960 --> 01:43:16.020
Da gab es doch auch einen sehr langen Artikel, Jochen.

01:43:16.020 --> 01:43:18.440
Darüber, wie sie das gemacht haben und wie sie das

01:43:18.440 --> 01:43:19.400
hingekriegt haben.

01:43:19.780 --> 01:43:20.980
Fish of Theseus.

01:43:21.500 --> 01:43:22.380
Ja, genau.

01:43:24.180 --> 01:43:25.480
Erklär dir die Anspielung?

01:43:26.240 --> 01:43:28.060
Ja, natürlich. Aber erklär sie uns trotzdem doch.

01:43:28.060 --> 01:43:30.300
Okay, der Ship of Theseus ist halt

01:43:30.300 --> 01:43:32.340
so ein Ding aus der Philosophie,

01:43:33.080 --> 01:43:34.220
dass wenn man jetzt

01:43:34.220 --> 01:43:35.740
irgendwie so ein altes

01:43:35.740 --> 01:43:38.080
Schiff ausgräbt irgendwie

01:43:38.080 --> 01:43:39.260
und

01:43:39.260 --> 01:43:41.480
naja, man

01:43:41.480 --> 01:43:44.220
möchte es halt sozusagen

01:43:44.220 --> 01:43:45.300
äh

01:43:45.300 --> 01:43:45.500
äh

01:43:45.500 --> 01:43:45.620
äh

01:43:46.020 --> 01:43:47.740
reparieren und man tauscht jetzt

01:43:47.740 --> 01:43:49.400
äh quasi

01:43:49.400 --> 01:43:52.280
äh die ganzen alten und vergammelten

01:43:52.280 --> 01:43:53.200
Teile aus durch neue.

01:43:54.520 --> 01:43:55.600
Äh, dann...

01:43:55.600 --> 01:43:56.120
Durch identische.

01:43:56.300 --> 01:43:57.380
Durch identische, genau.

01:43:58.860 --> 01:44:00.040
Dann hat man ja im Grunde halt

01:44:00.040 --> 01:44:00.660
zwei Schiffe.

01:44:05.600 --> 01:44:06.700
Welches ist denn jetzt das richtige?

01:44:08.440 --> 01:44:09.700
Ich glaube, du hast irgendwas kaputt gemacht.

01:44:10.000 --> 01:44:10.640
Oh, Moment.

01:44:11.780 --> 01:44:13.880
Das bricht gleich in Flammen auf.

01:44:15.040 --> 01:44:15.660
Ich glaube,

01:44:15.660 --> 01:44:17.380
das war der, äh,

01:44:17.480 --> 01:44:18.240
das war's für Sonntag.

01:44:18.320 --> 01:44:19.640
Mit unseren digitalen Audioproblemen

01:44:19.640 --> 01:44:21.780
kommen jetzt auch noch analoge Audioprobleme.

01:44:21.780 --> 01:44:24.040
Äh, Kabel...

01:44:24.040 --> 01:44:25.480
Gleich geht's in Flammen auf, Jochen.

01:44:26.440 --> 01:44:27.600
Jetzt, wunderbar.

01:44:27.940 --> 01:44:28.680
Keiner hat's gehört.

01:44:29.000 --> 01:44:31.460
Irgendwie ist das Kabel tatsächlich nicht mehr so ganz in Ordnung.

01:44:31.680 --> 01:44:33.360
Liebe Hörer, das sind die Probleme,

01:44:33.480 --> 01:44:34.840
mit denen wir uns rumschlagen müssen,

01:44:35.000 --> 01:44:36.900
um euch diese Episoden zu bringen.

01:44:37.420 --> 01:44:39.020
Hauptschleim nochmal irgendwie so

01:44:39.020 --> 01:44:40.780
das eine Bein über das andere und

01:44:40.780 --> 01:44:43.000
rupft kräftig an dem Kabelbaum

01:44:43.000 --> 01:44:45.460
schon raus und kracht es überall.

01:44:45.660 --> 01:44:47.340
Das ist ein Kreuz, ja.

01:44:48.200 --> 01:44:50.200
Es ist mehr so ein Kabel...

01:44:50.200 --> 01:44:51.540
Kabelstrauch, oder?

01:44:51.660 --> 01:44:52.480
Als ein Kabelbaum.

01:44:52.760 --> 01:44:54.860
Aber Baum impliziert eine gewisse Ordnung.

01:44:55.640 --> 01:44:56.960
Ja, das ist falsch.

01:44:56.960 --> 01:44:58.580
Das ist ein Kabelgebüsch.

01:45:00.920 --> 01:45:01.840
Ja, ein Kabelbüsch.

01:45:01.840 --> 01:45:03.160
Ja, also das Schiff des Tesois.

01:45:03.980 --> 01:45:05.940
Da gibt's auch ganz viele Varianten davon.

01:45:06.520 --> 01:45:08.280
Der Tesois fährt mit seinem

01:45:08.280 --> 01:45:09.960
mit seinem Schiff

01:45:09.960 --> 01:45:12.260
auf seine Abenteuerfahrt

01:45:12.260 --> 01:45:13.980
und hat aber genügend Ersatzteile dabei.

01:45:14.140 --> 01:45:14.960
Und während der Fahrt,

01:45:15.660 --> 01:45:17.060
tauscht er kaputte Planken aus.

01:45:17.160 --> 01:45:18.180
Und am Ende, wenn er ankommt,

01:45:18.880 --> 01:45:20.420
hat er alle Planken einmal ausgetauscht,

01:45:20.500 --> 01:45:22.340
ist er jetzt immer noch in dem gleichen Schiff,

01:45:22.580 --> 01:45:23.620
mit dem er losgefahren ist.

01:45:24.060 --> 01:45:26.240
Und seine Feinde, die fahren hinter ihm her

01:45:26.240 --> 01:45:28.220
und sammeln diese Teile aus, die er austauscht

01:45:28.220 --> 01:45:29.880
und bauen die dann in ihr eigenes Schiff ein.

01:45:30.540 --> 01:45:32.120
Und am Ende haben sie alle Teile

01:45:32.120 --> 01:45:33.960
in ihrem eigenen Schiff ausgetauscht,

01:45:34.020 --> 01:45:36.320
durch die Teile, die der Tesois hinten runtergeschmissen hat.

01:45:37.460 --> 01:45:38.920
Sind die jetzt noch in ihrem eigenen Schiff?

01:45:39.000 --> 01:45:39.980
Oder sind die jetzt in dem Schiff,

01:45:40.100 --> 01:45:41.460
mit dem Tesois losgefahren ist?

01:45:43.080 --> 01:45:45.380
Was ist da eigentlich passiert?

01:45:45.480 --> 01:45:45.640
Und was ist da eigentlich passiert?

01:45:45.640 --> 01:45:46.040
Ja.

01:45:46.740 --> 01:45:48.580
Diese Anspielung ist eben, was passiert,

01:45:48.660 --> 01:45:50.580
wenn du alle Teile von einer Shell austauscht,

01:45:50.740 --> 01:45:52.140
dann ist es noch die gleiche Shell.

01:45:52.680 --> 01:45:52.920
Genau.

01:45:53.540 --> 01:45:55.500
Wenn sie nicht alle Teile ausgetauscht haben,

01:45:55.520 --> 01:45:56.120
wenn ich es richtig verstanden habe.

01:45:56.440 --> 01:45:59.200
Ja, aber auch ein sehr interessantes Problem.

01:46:00.680 --> 01:46:02.540
Das passiert ja tatsächlich bei Menschen auch,

01:46:02.820 --> 01:46:04.960
wenn man Dinge isst und wieder ausscheidet.

01:46:05.620 --> 01:46:07.180
Man tauscht ja auch zum Beispiel,

01:46:07.300 --> 01:46:08.700
also so durchschnittlich glaube ich,

01:46:08.720 --> 01:46:10.460
alle sieben Jahre alle Atome aus,

01:46:10.600 --> 01:46:11.420
aus denen man besteht.

01:46:11.420 --> 01:46:12.320
Ja, aber das glaube ich nicht.

01:46:12.380 --> 01:46:14.420
In den Knochen sind Atome drin, die bleiben da drin.

01:46:14.560 --> 01:46:15.000
Ja, okay.

01:46:15.000 --> 01:46:16.120
Also im Schnitt halt.

01:46:16.400 --> 01:46:17.000
Das ist gelettet.

01:46:17.240 --> 01:46:17.940
Natürlich, klar.

01:46:18.420 --> 01:46:19.740
Natürlich wirst du nicht alle austauschen,

01:46:19.860 --> 01:46:21.980
aber und auch nicht die, ja, okay.

01:46:22.620 --> 01:46:23.680
Aber noch, also ich meine,

01:46:23.860 --> 01:46:25.460
noch viel kürzer zusammengefasst ist ja,

01:46:25.800 --> 01:46:28.320
you can never step twice in the same river.

01:46:28.440 --> 01:46:31.040
Du kannst niemals zweimal in den gleichen Fluss reinsteigen,

01:46:31.100 --> 01:46:33.480
weil jede Sekunde verändert er sich so weit,

01:46:33.540 --> 01:46:34.280
dass es nicht mehr der gleiche ist.

01:46:34.300 --> 01:46:35.740
Wir sind aber immer auf der gleichen Welt.

01:46:36.540 --> 01:46:39.020
Ja, und genau die Auflösung

01:46:39.020 --> 01:46:43.120
oder die philosophische Schlussfolgerung ist halt,

01:46:43.120 --> 01:46:44.800
dass bei manchen Sachen,

01:46:44.800 --> 01:46:47.040
zählt die Kontinuität mehr,

01:46:47.140 --> 01:46:50.900
die Kontinuität der Existenz mehr als die Bauteile.

01:46:51.300 --> 01:46:52.520
Und ja, also ich meine,

01:46:52.560 --> 01:46:53.740
die Philosophie ist ja dieselbe,

01:46:53.880 --> 01:46:55.020
die Syntax ist dieselbe,

01:46:55.160 --> 01:46:56.480
die Skriptsprache ist dieselbe,

01:46:56.840 --> 01:46:57.980
das Interface ist dieselbe,

01:46:58.080 --> 01:46:59.300
die API ist dieselbe.

01:46:59.360 --> 01:46:59.680
Ja, aber die Fax sind andere.

01:47:01.080 --> 01:47:02.320
Aber die Frage wäre halt,

01:47:02.680 --> 01:47:03.760
die Frage wäre halt,

01:47:03.800 --> 01:47:04.440
wie kann das denn,

01:47:04.540 --> 01:47:06.020
wenn ich jetzt das ganze Material auswähle,

01:47:06.080 --> 01:47:06.680
wie kann es denn sein,

01:47:06.760 --> 01:47:08.020
dass es immer noch das Gleiche ist sozusagen?

01:47:08.380 --> 01:47:09.480
Also wie kann ich denn zum Beispiel,

01:47:09.900 --> 01:47:10.800
oder wie kann ich bei Menschen,

01:47:10.800 --> 01:47:13.260
wenn da ja alle Teile ausgetauscht werden

01:47:13.260 --> 01:47:14.540
und auch jetzt ansonsten,

01:47:14.540 --> 01:47:17.480
das Schwierige ist mit der Kontinuität,

01:47:17.580 --> 01:47:19.580
weil es ja auch unterschiedliche Lebensphasen,

01:47:19.600 --> 01:47:20.520
aber ich kann den gleichen Menschen

01:47:20.520 --> 01:47:22.600
immer noch erkennen als Kind oder als Kreis,

01:47:22.680 --> 01:47:23.380
wie kann denn das sein?

01:47:23.480 --> 01:47:25.180
Was ist das, was ich da erkenne?

01:47:25.220 --> 01:47:25.920
An den Contract gehalten,

01:47:26.040 --> 01:47:26.520
an die Closure,

01:47:26.680 --> 01:47:27.360
an das Protokoll,

01:47:28.040 --> 01:47:28.660
an das GEMA,

01:47:28.940 --> 01:47:29.560
an das Modell.

01:47:30.420 --> 01:47:31.100
Das ist doch scheißegal.

01:47:31.740 --> 01:47:32.920
Das regt mich auch so ein bisschen auf

01:47:32.920 --> 01:47:35.500
an dieser Beamen-Debatte,

01:47:35.980 --> 01:47:36.520
wo du sagst,

01:47:36.620 --> 01:47:40.660
wenn du jemanden mit dem Star Trek-Transporter-Mechanismus

01:47:40.660 --> 01:47:41.520
irgendwo hin beamst,

01:47:41.660 --> 01:47:43.240
dann nimmst du die ganzen Moleküle

01:47:43.240 --> 01:47:44.240
und zaubertest,

01:47:44.540 --> 01:47:45.720
taust sie und auf der anderen Seite

01:47:45.720 --> 01:47:47.220
machst du neue Moleküle.

01:47:48.620 --> 01:47:49.980
Eigentlich ist es ja kein Mensch,

01:47:50.120 --> 01:47:52.180
sondern das ist Mord und Klonen.

01:47:53.060 --> 01:47:56.780
Aber es hat mich nie überzeugt,

01:47:56.860 --> 01:47:57.440
dieses Argument.

01:47:58.460 --> 01:47:59.800
Weil du beim Beamen immer nach dem Beamen

01:47:59.800 --> 01:48:00.760
immer noch genau der gleiche bist.

01:48:01.960 --> 01:48:03.760
Ja, weil wir das ja sowieso die ganze Zeit machen.

01:48:04.480 --> 01:48:05.620
Jedes Mal, wenn ich das mache,

01:48:05.700 --> 01:48:06.960
bin ich immer noch der gleiche.

01:48:08.440 --> 01:48:09.340
Ja, und wir wissen ja auch nicht,

01:48:09.340 --> 01:48:10.740
ob Zeit nicht quantisiert ist

01:48:10.740 --> 01:48:12.280
und ob wir überhaupt eine Kontinuität haben.

01:48:12.460 --> 01:48:14.400
Aber das geht jetzt,

01:48:14.540 --> 01:48:17.500
vielleicht zu weit für den Programmier-Podcast.

01:48:18.460 --> 01:48:20.160
Ja, aber liebe Hörer,

01:48:20.240 --> 01:48:21.220
folgen Sie uns auf

01:48:21.220 --> 01:48:23.440
Philosophie für Anfänger.

01:48:23.840 --> 01:48:25.100
Ja, ich kann aber auch mal

01:48:25.100 --> 01:48:27.440
einen Pick, den ich dazu

01:48:27.440 --> 01:48:29.060
in Stellung bringen könnte,

01:48:29.200 --> 01:48:30.660
wäre, wenn Sie sich mal die Sachen von

01:48:30.660 --> 01:48:33.280
Joscha Bach anhören.

01:48:33.380 --> 01:48:35.000
Der hat jetzt auf dem letzten Zitze-Tekung

01:48:35.000 --> 01:48:37.280
auch wieder einen interessanten...

01:48:37.280 --> 01:48:39.200
Sehr kontrovers wahrgenommenen...

01:48:39.960 --> 01:48:40.220
Ja?

01:48:41.220 --> 01:48:42.580
Okay, das habe ich gar nicht so kontrovers.

01:48:42.700 --> 01:48:44.520
Ja, es gibt mittlerweile Leute, die finden alles komisch.

01:48:44.540 --> 01:48:45.020
Ja.

01:48:46.420 --> 01:48:48.540
Also, es gab da diesen Essay

01:48:49.120 --> 01:48:50.680
auch von dem Antophag-Typen,

01:48:51.720 --> 01:48:52.400
den man auch mal

01:48:52.400 --> 01:48:54.400
in einer LLM-Folge besprechen sollte.

01:48:56.320 --> 01:48:59.040
Der Titel von dem Essay ist

01:48:59.040 --> 01:49:00.660
Machines of Loving Grace.

01:49:01.180 --> 01:49:02.380
Ja, aber du liest auch

01:49:02.380 --> 01:49:04.340
wie die Wurst, da waren noch viele Leute sehr empört.

01:49:04.540 --> 01:49:05.780
Ja, die haben es gar nicht so mitgekriegt.

01:49:06.840 --> 01:49:07.320
Und

01:49:07.320 --> 01:49:10.660
ja, genau, er hat einen Vortrag gehalten

01:49:10.660 --> 01:49:12.840
mit dem Titel Self-Models of Loving Grace

01:49:12.840 --> 01:49:13.720
und

01:49:14.540 --> 01:49:15.220
ich fand den gut, den Talk.

01:49:15.460 --> 01:49:18.640
Ich fand den auch ziemlich gut, wo er halt sagt,

01:49:18.720 --> 01:49:20.440
naja, also was ist eigentlich existieren?

01:49:20.680 --> 01:49:22.060
Existieren könnte ja auch bedeuten,

01:49:22.720 --> 01:49:23.480
also sozusagen

01:49:23.480 --> 01:49:26.720
existieren ist halt

01:49:26.720 --> 01:49:28.300
sozusagen

01:49:28.300 --> 01:49:30.060
immer davon abhängig,

01:49:31.080 --> 01:49:32.480
wie...

01:49:32.480 --> 01:49:34.500
Also, man existiert

01:49:34.500 --> 01:49:36.240
in dem Maß, in dem man implementiert ist,

01:49:36.440 --> 01:49:38.080
sozusagen. Und dann

01:49:38.080 --> 01:49:40.540
gehen viele der Probleme weg, wenn man das so...

01:49:41.220 --> 01:49:42.320
Wenn man das aus dem Blickwinkel...

01:49:42.320 --> 01:49:44.520
Wenn man das jetzt kombiniert mit diesem Attention is all you need,

01:49:44.540 --> 01:49:45.520
Ding, dann

01:49:45.520 --> 01:49:48.540
wird da auch philosophisch etwas draus,

01:49:48.600 --> 01:49:49.740
weil man tatsächlich wahrscheinlich

01:49:49.740 --> 01:49:52.660
in diesen Quantentheorien immer durch die jeweilige

01:49:52.660 --> 01:49:54.360
Aufmerksamkeit die Dinge erst

01:49:54.360 --> 01:49:56.700
verwirklicht. Spannend.

01:49:59.600 --> 01:50:00.580
Jetzt sind wir alle

01:50:00.580 --> 01:50:02.440
sprachlos. Ich finde, das ist das perfekte Ende

01:50:02.440 --> 01:50:04.580
für unsere heutige Episode.

01:50:05.160 --> 01:50:06.120
Also bleibt uns doch gewogen.

01:50:06.720 --> 01:50:08.340
Feedback, hallo, at peisenpodcast.de

01:50:08.340 --> 01:50:10.660
Schreibt, ob ihr uns irgendwo treffen wollt, ob ihr vorbeikommt.

01:50:10.780 --> 01:50:12.220
Gerne. Wir möchten gerne

01:50:12.220 --> 01:50:13.420
eure...

01:50:13.420 --> 01:50:14.020
Ideen für die Location?

01:50:14.540 --> 01:50:16.100
Ja, die machen wir. Das machen wir schon.

01:50:16.160 --> 01:50:17.220
Machen wir? Ja, ja, das machen wir schon.

01:50:17.880 --> 01:50:20.280
Und wir organisieren das irgendwie, dann schreiben wir euch

01:50:20.280 --> 01:50:22.100
irgendwie und freuen uns auf euch und

01:50:22.100 --> 01:50:23.660
würde sagen, dann

01:50:23.660 --> 01:50:26.420
hört uns vor mehr Zeit. Guten Morgen und Abend, gute Nacht.

01:50:27.160 --> 01:50:28.340
Viel Spaß. Bleibt uns gewogen.

01:50:29.020 --> 01:50:29.760
Schaltet wieder rein.

01:50:30.360 --> 01:50:32.100
Bis bald. Und bis zum nächsten Mal. Tschüss.

01:50:32.220 --> 01:50:32.760
Ciao, ciao.
