WEBVTT 00:00:05.290 --> 00:00:18.343 36C3 Vorspannmusik 00:00:18.343 --> 00:00:24.530 Herald: Hallo, na? Willkommen auf der Wikipaka-Bühne im Esszimmer! Es ist 21 00:00:24.530 --> 00:00:31.450 Uhr, Primetime, wir sind live, mit Übersetzung, und bleeptrack und blinry 00:00:31.450 --> 00:00:38.300 sind da und haben die inzwischen dritte Version von Operation Mindfuck, und es 00:00:38.300 --> 00:00:41.762 wird sehr lustig. Viel Spaß! 00:00:41.762 --> 00:00:48.220 Applaus 00:00:48.220 --> 00:00:51.110 bleeptrack: Von uns auch nochmal einen schönen guten Abend, wir freuen uns riesig 00:00:51.110 --> 00:00:54.620 dass ihr alle da seid, hallo in den Stream, hallo auch ins Wikipaka- 00:00:54.620 --> 00:00:58.090 Wohnzimmer, wo vielleicht auch noch ein paar sitzen, der Raum ist relativ voll, 00:00:58.090 --> 00:01:02.870 und mich freut dass ihr euch jetzt alle schön zusammen gekuschelt habt. Wir haben 00:01:02.870 --> 00:01:06.439 heute Abend Kunst, Computer und Kuriositäten dabei, wir werden uns immer 00:01:06.439 --> 00:01:10.500 so ein bisschen abwechseln und spannende Sachen vorstellen, und zum Start übergebe 00:01:10.500 --> 00:01:18.140 ich direkt mal an blinry. blinry: Jo, danke! Ich fange an mit 00:01:18.140 --> 00:01:24.130 Schachvarianten. Ich war vor ein paar Monaten auf der MRMCD in Darmstadt. Und da 00:01:24.130 --> 00:01:28.140 gab’s einen Vortrag über mittelalterliche Brettspiele, und eines der Spiele, das 00:01:28.140 --> 00:01:32.320 gezeigt wurde, war dies. Das ist irgendwie, es hat spanische Wurzeln, ich 00:01:32.320 --> 00:01:36.650 kann kein mittelalterliches Spanisch, aber vielleicht spricht man es so ähnlich wie 00:01:36.650 --> 00:01:40.990 „Grant Acedrex“, bedeutet „großes Schach“, und ihr seht, wenn ihr Standard-Schach von 00:01:40.990 --> 00:01:44.171 heute kennt, dass das auf einem größeren Feld gespielt wird. Das ist ein 00:01:44.171 --> 00:01:47.430 12×12-Feld, und auch die Figuren sehen so ein bisschen komisch aus, also da gibt’s 00:01:47.430 --> 00:01:53.200 irgendwie so die Giraffe, und ich glaube dieses Ding hier neben dem König ist der 00:01:53.200 --> 00:01:57.130 Elefantenvogel zum Beispiel, und die haben halt sehr ungewöhnliche Bewegungsmuster, 00:01:57.130 --> 00:02:00.680 die wir heute so bei unseren Standard- Schachfiguren nicht kennen. Die Giraffe 00:02:00.680 --> 00:02:04.860 zum Beispiel geht glaube ich 2 Felder diagonal und dann noch 1 gerade, das ist 00:02:04.860 --> 00:02:07.671 quasi so eine große – Moment, genau 3 Felder diagonal und 1 gerade, das ist die 00:02:07.671 --> 00:02:11.481 große Variante von dem Springer, den wir heute hätten, und man steigt so über alle 00:02:11.481 --> 00:02:16.099 anderen Figuren drüber. Oder der Elefantenvogel geht 1 Feld diagonal und 00:02:16.099 --> 00:02:19.999 slidet dann noch beliebig weit irgendwie durch die Gegend was auch super weird ist, 00:02:19.999 --> 00:02:23.959 irgendwie, wenn ihr mal Schach gespielt habt. Und es stellt sich raus, es gibt 00:02:23.959 --> 00:02:28.540 tatsächlich eine ganze Community hinter solchen Schachvarianten, die „fairy chess 00:02:28.540 --> 00:02:32.600 pieces“ beinhalten, also es gibt irgendwie Listen darüber, wo Leute sich so was 00:02:32.600 --> 00:02:35.900 ausdenken und sammeln und irgendwie lustig zusammenwürfeln und dann irgendwie sich 00:02:35.900 --> 00:02:42.150 neue Schachvarianten ausdenken, das fand ich beeindruckend. Dieses Spiel, hm, also 00:02:42.150 --> 00:02:45.879 die Bauern zum Beispiel ziehen normal, unten die Seihe ist halt irgendwie – sind 00:02:45.879 --> 00:02:50.139 sehr ungewöhnliche Figuren, und damit man ein bisschen beschleunigt irgendwie den 00:02:50.139 --> 00:02:53.709 Ablauf dieses Spiels, gab es auch die Regel, dass man einen zusätzlichen Würfel 00:02:53.709 --> 00:02:58.670 hatte, der bestimmt, mit welcher Art von Figuren man dann als nächstes ziehen darf. 00:02:58.670 --> 00:03:03.549 Na gut. Eine andere Schachvariante, die es gibt, ist losing chess. Da geht es darum, 00:03:03.549 --> 00:03:09.669 dass man möglichst schnell alle eigenen Figuren verlieren möchte. Es gibt außerdem 00:03:09.669 --> 00:03:13.379 Schlagzwang, das heißt, wenn man eine Figur schlagen kann, muss man das tun, 00:03:13.379 --> 00:03:17.779 wenn man mehrere schlagen kann, kann man sich aussuchen, welche, immerhin. Und der 00:03:17.779 --> 00:03:20.999 König hat keinen Sonderstatus, ist eine ganz normale Figur wir alle anderen auch, 00:03:20.999 --> 00:03:24.090 kann sich normal bewegen, kann geschlagen werden, es gibt kein Schach oder kein 00:03:24.090 --> 00:03:30.659 Schachmatt, aber wird zuerst alle Figuren verliert, gewinnt das Spiel. Und das hat 00:03:30.659 --> 00:03:34.589 so ein paar komische Effekte, wo manchmal, wenn man einen Zug macht, es sehr krasse 00:03:34.589 --> 00:03:38.450 Kettenreaktion gibt, wo einfach beide Spieler die ganze Zeit irgendwie Figuren 00:03:38.450 --> 00:03:43.329 schlagen müssen und das nicht mehr stoppen können. Und in diesem GIF, das die ganze 00:03:43.329 --> 00:03:49.750 Zeit spielt, wird zuerst ein Bauer bewegt, ich glaube, genau, D3 ist der Zug, und das 00:03:49.750 --> 00:03:53.150 ist ein sehr schlechter Zug, weil dann Schwarz, stellt sich heraus, immer 00:03:53.150 --> 00:03:57.199 gewinnen kann. Haben Leute irgendwie mal Modelle aufgestellt und durchgerechnet und 00:03:57.199 --> 00:04:01.611 so, es gibt dann eine Folge für Schwarz, die auf jeden Fall erzwingt, dass Schwarz 00:04:01.611 --> 00:04:06.781 alle Figuren verliert. Insofern gibt es so ein paar Eröffnungsvarianten, die offenbar 00:04:06.781 --> 00:04:15.640 für Weiß keine gute Idee sind. „Infinite Chess“ hat Standardfiguren in 00:04:15.640 --> 00:04:19.799 Standardanordnung, aber das Brett ist unendlich groß, das ist eher so ein 00:04:19.799 --> 00:04:23.000 theoretisches Modell, ich glaube – ich weiß nicht, ob Leute das wirklich spielen, 00:04:23.000 --> 00:04:26.940 das ist in der echten Welt ein bisschen schwierig, aber Leute machen sich darüber 00:04:26.940 --> 00:04:31.230 Gedanken und probieren irgendwie mal aus, ob man da Dinge darüber herausfinden kann. 00:04:31.230 --> 00:04:35.910 Also eine sehr merkwürdige Situation, wo irgendwie man mit der Dame oder sowas eine 00:04:35.910 --> 00:04:40.130 Million Felder irgendwie nach oben ziehen kann, und dann brauchen Bauern erst mal so 00:04:40.130 --> 00:04:44.570 ein bisschen, bis sie da hinterherkommen. Und dadurch ist es komisch zu analysieren, 00:04:44.570 --> 00:04:48.140 es gibt irgendwie Leute, die haben sich das mal angeguckt und haben rausgefunden, dass 00:04:48.140 --> 00:04:53.480 es, also, gegeben eine Anordnung dieser Figuren und eine Zahl n kann man 00:04:53.480 --> 00:04:57.500 herausfinden, ob es eine Möglichkeit gibt, für den aktuellen Spieler, der dran ist, 00:04:57.500 --> 00:05:02.040 zu gewinnen in n Zügen. So. Das ist ein ganz cooles Ergebnis, ist aber nicht so 00:05:02.040 --> 00:05:06.220 super hilfreich, irgendwie, um das zu analysieren oder KIs zu schreiben oder so, 00:05:06.220 --> 00:05:09.530 denn eigentlich was man ja machen möchte ist aus einer bestimmten Position heraus 00:05:09.530 --> 00:05:12.691 vielleicht herausfinden, ob die Person, die gerade dran ist, gewinnen kann 00:05:12.691 --> 00:05:17.470 überhaupt. Wenn man weiß, irgendwie, in 10 Zügen kann sie gewinnen, hat das begrenzte 00:05:17.470 --> 00:05:19.950 Aussagekraft wenn man dann irgendwie mit der Dame wie gesagt eine Million Felder 00:05:19.950 --> 00:05:23.040 nach oben macht oder sowas, und dann kann es ganz lange dauern, irgendwie, bis dann 00:05:23.040 --> 00:05:32.931 mehr Sachen passieren. Genau, insofern, ja – theoretische Schachvariante. Es gibt 00:05:32.931 --> 00:05:37.520 „Blind Chess“, das is zu unterscheiden – also, ihr kennt vielleicht „Blindfolded 00:05:37.520 --> 00:05:43.260 Chess“, wo Leute sich die Augen verbinden und dann angesagt bekommen, welche Züge 00:05:43.260 --> 00:05:46.070 passieren, und dann irgendwie im Kopf behalten müssen, wie die Figuren gerade 00:05:46.070 --> 00:05:50.080 stehen und was sie machen wollen. „Blind Chess“ ist noch ein bisschen anders, da 00:05:50.080 --> 00:05:55.610 sitzen beide Spieler irgendwie vor einem Brett jeweils, sehen die Figuren der 00:05:55.610 --> 00:05:59.300 anderen Farbe nicht, sehen nur ihre eigenen Figuren, und kriegen auch nicht 00:05:59.300 --> 00:06:02.221 angesagt was passiert oder sowas, das müssen sie erstmal herausfinden, so 00:06:02.221 --> 00:06:06.010 irgendwie durch ein bisschen vorsichtiges Vorziehen der eigenen Figuren, das können 00:06:06.010 --> 00:06:09.380 sie ausprobieren, und denen wird dann gesagt, wenn es ein ungültiger Zug war, 00:06:09.380 --> 00:06:12.530 und dann dürfen sie noch was anderes probieren. Also kann man sich so langsam 00:06:12.530 --> 00:06:15.980 vortasten, und mal gucken, wie die Position des anderen Spielers ist 00:06:15.980 --> 00:06:19.240 irgendwie, darüber Rückschlüsse zu ziehen und ne eigene gute Strategie zu finden. 00:06:19.240 --> 00:06:22.440 Das heißt, man braucht da irgendwie eine dritte Person, die zwischen den beiden 00:06:22.440 --> 00:06:28.080 hin- und herkommuniziert und aufpasst, dass da nichts Illegales passiert. Ich hab 00:06:28.080 --> 00:06:32.640 mal geguckt, es gibt da irgendwie einen sehr definierten Satz von Wörtern, die 00:06:32.640 --> 00:06:37.930 diese dritte Person sagen kann, zum Beispiel „no“, wenn es ein nicht gültiger 00:06:37.930 --> 00:06:41.270 Zug ist, wenn man gerade irgendwie versucht, über eine fremde Figur zu gehen 00:06:41.270 --> 00:06:46.440 oder so was, und wenn man einen Zug macht, der unabhängig von den Figuren des anderen 00:06:46.440 --> 00:06:54.620 Spielers nicht möglich wäre, sagt die Person „hell no“, das gefiel mir irgendwie. 00:06:54.620 --> 00:06:57.890 Genau, das ist noch so eine kleine Webseite, oh ja, da muss jetzt 00:06:57.890 --> 00:07:03.650 tatsächlich auch mal rausklicken, gucken, schauen wir uns mal an, das hat 00:07:03.650 --> 00:07:08.140 geschrieben irgendwie ein Mensch, Pippin Barr, der auch sonst total interessante 00:07:08.140 --> 00:07:12.090 Spielprototypen baut, und in dem Fall sind es halt auch tatsächlich mal 00:07:12.090 --> 00:07:18.500 ausprobierbare Schachvarianten. Was ich zum Beispiel sehr gerne mag, ist sowas wie 00:07:18.500 --> 00:07:22.470 „Quantum Chess“. Man kriegt nicht erklärt, was die Regeln sind, man muss das durch 00:07:22.470 --> 00:07:27.770 Ausprobieren herausfinden. Wir machen mal irgendwie einen Zug, einen Bauern, so – da 00:07:27.770 --> 00:07:33.300 haben wir zwei Bauern auf einmal. Jetzt ist Schwarz dran – es gibt da leider keine 00:07:33.300 --> 00:07:36.170 KIs oder so, man kann halt mit zwei Menschen gegeneinander spielen, aber 00:07:36.170 --> 00:07:39.870 dieses System achtet dann schon auf Einhaltung der Regeln. Also in dieser 00:07:39.870 --> 00:07:42.860 „Quantum Chess“-Variante ist es so, dass, wenn man einen Zug macht, dann geht die 00:07:42.860 --> 00:07:47.420 Figur auf alle möglichen Positionen, die gehen. Wenn wir jetzt hier irgendwie mit 00:07:47.420 --> 00:07:50.930 der Dame einen Zug machen, haben wir auf einmal sehr sehr viele Damen, was 00:07:50.930 --> 00:07:55.360 vielleicht praktisch ist, vielleicht ist es aber auch irgendwie störend. „Quantum 00:07:55.360 --> 00:08:01.498 Chess“. Dann wollte ich euch noch zeigen… „Gravity Chess“ zum Beispiel… 00:08:01.498 --> 00:08:05.790 Können auch versuchen, einen Zug zu machen – Gelächter im Publikum 00:08:05.790 --> 00:08:15.240 blinry: ihr lacht schon! Genau. Und so weiter. Und dann rucken irgendwie alle 00:08:15.240 --> 00:08:18.770 Figuren immer nach. Und auch das ist tatsächlich spielbar, es gibt irgendwie 00:08:18.770 --> 00:08:21.400 Leute, also, diese Person hat das vertwittert und andere Leute haben das 00:08:21.400 --> 00:08:25.120 gespielt, und haben dann so irgendwie Endsituationen dieses Spiels gezeigt, 00:08:25.120 --> 00:08:29.050 irgendwie, wo nur noch sehr wenig geht und dann irgendwie auch Personen schachmatt 00:08:29.050 --> 00:08:38.933 gesetzt werden. Find ich cool. So, und als Letztes wollte ich euch noch zeigen: 00:08:38.933 --> 00:08:43.174 Schachboxen! Vielleicht habt ihr davon mal gehört. Das ist ein ernstzunehmender 00:08:43.174 --> 00:08:48.870 Sport, ursprünglich startete das mal als Kunstprojekt, wo sich jemand dachte, ha, 00:08:48.870 --> 00:08:52.029 wäre irgendwie lustig wenn Leute abwechseln Schach spielen und boxen, das 00:08:52.029 --> 00:08:55.559 war dann aber so beliebt dass das irgendwie richtig populär wurde und es 00:08:55.559 --> 00:08:58.269 gibt jetzt ganz viele Schachbox-Vereine, die irgendwie Wettkämpfe darin 00:08:58.269 --> 00:09:03.079 organisieren und so, es funktioniert so: es ist in Runden aufgeteilt, man spielt 00:09:03.079 --> 00:09:07.730 drei Minuten Schach und dann boxt man für drei Minuten, jeweils abwechselnd. Und man 00:09:07.730 --> 00:09:11.100 kann gewinnen entweder durch, dass man den Gegner K.O. schlägt, oder dass man ihn 00:09:11.100 --> 00:09:15.269 schachmatt setzt. Außerdem sagen die Regeln, dass man aufgeben kann, und das 00:09:15.269 --> 00:09:18.100 ist explizit hervorgehoben, dass man das sowohl in dem Schachteil als auch im 00:09:18.100 --> 00:09:29.960 Boxteil tun kann. Find ich gut. Alles klar. Dann leite ich über an Bine. 00:09:29.960 --> 00:09:33.650 bleeptrack: Eine Sache, die mich in letzter Zeit öfter beschäftigt hat, sind 00:09:33.650 --> 00:09:37.550 Twitter-Bots, im Speziellen so künstlerisch angehauchte Twitter-Bots. 00:09:37.550 --> 00:09:41.399 Unter Twitter-Bot versteht man eigentlich einfach einen Twitter-Account, hinter dem 00:09:41.399 --> 00:09:45.850 irgendwie ein Programm hängt, das autonom Sachen postet, oft so einmal am Tag, 00:09:45.850 --> 00:09:48.920 einmal die Woche, mehrmals am Tag, und dann aber auch ganz unterschiedliche 00:09:48.920 --> 00:09:53.519 Sachen, und ich hab euch mal eine kleine Reihe meiner Lieblings-Twitter-Bots 00:09:53.519 --> 00:09:59.759 mitgebracht. Einer, der ist ganz einfach, der heißt „endless screaming“ und postet 00:09:59.759 --> 00:10:03.331 einfach immer nur „aaaah!“ in unterschiedlicher Länge (das ist ganz 00:10:03.331 --> 00:10:10.339 wichtig). Ein anderer ist „Big Ben Clock“, der ist so ähnlich, der schreibt einfach 00:10:10.339 --> 00:10:15.980 immer nur die Glockenschläge der Londoner Uhr aus, aber natürlich auch immer 00:10:15.980 --> 00:10:22.160 zeitlich passend. Nächster, der ist auch sehr schön, der heißt „choose to accept“ 00:10:22.160 --> 00:10:26.819 und er gibt einem immer Geheimmissionen, die er zufällig generiert. Eine ist zum 00:10:26.819 --> 00:10:30.899 Beispiel: „Your mission, should you choose to accept it, is to sneak into the casino 00:10:30.899 --> 00:10:36.600 of Colin the Hairstylist. There, you must steal the Horn of Plenty, Melvin the rent- 00:10:36.600 --> 00:10:42.629 a-mab, inflate Colin, and finally escape using a secret tunnel.“ Die sind oft sehr, 00:10:42.629 --> 00:10:46.930 naja, wirr, und werden einfach zufällig aus so einer Grammatik und aus 00:10:46.930 --> 00:10:52.399 Satzbausteinen generiert. Dann gibt's noch den Cocktail-Bot, da seh ich jetzt gerade, 00:10:52.399 --> 00:10:56.680 dass leider in dem Beispielbild kein schönes Beispiel dabei steht, aber der 00:10:56.680 --> 00:11:03.080 baut sich auch aus zufälligen Zutaten witzige Cocktails zusammen, und man kann 00:11:03.080 --> 00:11:05.790 den antwittern, also der ist interaktiv, also man kann dem irgendwie schreiben 00:11:05.790 --> 00:11:09.149 „misch mir einen…“ und dann denkt man sich einen schönen Cocktailnamen aus und dann 00:11:09.149 --> 00:11:12.829 denkt der sich halt rückwirkend aus, was denn das so für ein Cocktail sein könnte. 00:11:12.829 --> 00:11:16.759 Und da sind dann halt auch oft die absurdesten Zutaten drin – und wir möchten 00:11:16.759 --> 00:11:22.290 Linux gerade nicht updaten – und was jetzt noch ein neues Feature bei dem Bot ist, 00:11:22.290 --> 00:11:26.620 ist, dass man noch sagen kann „surprise me!“ und dann baut er sich eben einen ganz 00:11:26.620 --> 00:11:32.089 zufälligen Cocktail und twittert den zurück. Dann gibt es noch den „Amazing 00:11:32.089 --> 00:11:36.649 Bot“ oder den „Mazing Bot“, der macht Labyrinthe die er zufällig generiert, und 00:11:36.649 --> 00:11:40.540 man kann da spielen, das ist sehr schön, das sieht dann zum Beispiel so aus, dass 00:11:40.540 --> 00:11:43.569 wäre die Startposition, man kann dann unter dem Tweet antworten mit einer 00:11:43.569 --> 00:11:49.430 Richtung – in dem Fall macht jetzt nur „up“ und „down“ irgendwie großartig Sinn – 00:11:49.430 --> 00:11:53.220 und wenn man den angetwittert hat, dann postet er da drunter wieder ein neues Bild 00:11:53.220 --> 00:11:58.699 mit dem neuen Zustand, das heißt man kann praktisch kollaborativ so ein kleines 00:11:58.699 --> 00:12:04.060 Labyrinth lösen. Dann ist noch einer, der gefällt mir besonders gut, das ist der 00:12:04.060 --> 00:12:08.629 „Nixie Bot“, da hat sich jemand – steht das hier sogar drin, wem er gehört? glaube 00:12:08.629 --> 00:12:13.870 leider nicht – da hat sich jemand so eine Nixie-Tube-Uhr oder so einen Nixie-Tube- 00:12:13.870 --> 00:12:23.790 Aufbau gebaut, und man kann den Bot dann antwittern mit einem… oh nein, probieren 00:12:23.790 --> 00:12:27.509 wir mal nochmal, ja, sehr schön – mit einem Text, und das wird dann 00:12:27.509 --> 00:12:31.079 eingeblendet, da steht eine RasPi-Cam davor, die filmt das ab oder macht ein 00:12:31.079 --> 00:12:34.840 Foto, je nachdem, was man dem Bot schickt, und man bekommt es zurückgetwittert. Es 00:12:34.840 --> 00:12:37.930 dauert oft ein paar Minuten und es ist halt – also ich find's super witzig 00:12:37.930 --> 00:12:44.110 anzusehen, weil der Herr oder die Person, muss kein Herr sein, die Person die den 00:12:44.110 --> 00:12:47.970 Twitter-Bot hat, die sieht man schon, die dekoriert auch ab und zu diese Nixie-Tube 00:12:47.970 --> 00:12:50.529 mal ein bisschen um, und man sieht halt auch immer die Tageszeit, die da halt 00:12:50.529 --> 00:12:52.749 gerade herrscht, mal ist der Raum irgendwie dunkel wenn es mitten in der 00:12:52.749 --> 00:12:56.829 nacht ist oder halt mal leuchtet, wenn es gerade Tag ist, und das ist halt irgendwie 00:12:56.829 --> 00:13:00.600 sehr lebendig und der Bot postet auch immer noch einen so’n Tagesrückblick, also 00:13:00.600 --> 00:13:05.329 alles, was pro Tag an diesen Bot geschickt wurde, wird dann noch mal zu so einer Art 00:13:05.329 --> 00:13:09.810 Zusammenfassungsvideo verarbeitet und noch einmal pro Tag gepostet, und den kann ich 00:13:09.810 --> 00:13:12.949 sehr empfehlen, also twittert den mal an, wenn ihr schon immer euren Nickname in 00:13:12.949 --> 00:13:19.510 Nixie-Tubes geschrieben haben wolltet, dann ist der wirklich sehr nett. 00:13:19.510 --> 00:13:24.629 Zum Schluss möchte ich euch noch auf einen meiner Bots aufmerksam machen, den ich mal 00:13:24.629 --> 00:13:29.779 gebaut habe, der lebt nicht auf Twitter in dem Fall, sondern auf Mastodon, das ist 00:13:29.779 --> 00:13:34.269 der Touritafel-Bot. Touritafel, kurz für „touristische Unterrichtungstafel“, das 00:13:34.269 --> 00:13:37.249 sind diese Tafeln, die ihr wahrscheinlich von der Autobahn kennt, die da immer so an 00:13:37.249 --> 00:13:40.970 der Seite stehen und oft auch so ein bisschen obskur sind und irgendwie darauf 00:13:40.970 --> 00:13:45.370 hinweisen, für was diese Region oder diese Stadt gerade bekannt ist. Und ich habe 00:13:45.370 --> 00:13:50.189 einen Bot gebaut, der sich solche Tafeln generieren kann, der holt sich hier Daten 00:13:50.189 --> 00:13:56.040 aus zwei Datenbanken, einmal aus Wikidata, wenn ihr hier in der WikipakaWG sitzt, 00:13:56.040 --> 00:13:59.110 dann kennt ihr vielleicht auch Wikidata, das ist das Schwesterprojekt zur 00:13:59.110 --> 00:14:03.749 Wikipedia, nur als maschinenlesbare Datenbank, und da hole ich mir Städtenamen 00:14:03.749 --> 00:14:08.389 und Objektenamen raus, das heißt es sind alles, ja, irgendwie reale Objekte und 00:14:08.389 --> 00:14:11.809 Städte die da verarbeitet werden, dann brauche ich noch ein Icon, das hole ich 00:14:11.809 --> 00:14:17.059 mir aus „The Nouns Project“, das ist so eine Ansammlung von SVG-Grafiken, die man 00:14:17.059 --> 00:14:22.220 benutzen kann, und mein Bot verbastelt das dann eben zu einem Bild, das so in etwa 00:14:22.220 --> 00:14:26.550 nach so einer Touritafel aussieht, und ihr seht schon, die sind halt auch oft sehr 00:14:26.550 --> 00:14:30.639 obskur, dann gibt es halt so was wie ein Pommes frites Museum oder ein, was haben 00:14:30.639 --> 00:14:34.129 wir da noch schönes, oh es sind alles Museen zufällig, normalerweise variiert 00:14:34.129 --> 00:14:37.290 der Text immer noch ein bisschen mehr, das sind dann auch mal irgendwie, keine 00:14:37.290 --> 00:14:43.940 Ahnung, die Kuchenstadt Magdeburg oder sowas kann dann auch mal rauskommen. Und 00:14:43.940 --> 00:14:48.470 der Grund, warum der Bot zum Beispiel auf Mastodon lebt, ist finde ich auch eine 00:14:48.470 --> 00:14:52.509 sehr spannende Geschichte. Vor einiger Zeit hat Twitter seine API-Schnittstelle 00:14:52.509 --> 00:14:55.920 geändert, ich weiß nicht ob ihr das mitbekommen habt, und das ist mittlerweile 00:14:55.920 --> 00:14:58.939 sehr viel schwerer, sich so einen API- Schlüssel abzuholen bei Twitter, man muss 00:14:58.939 --> 00:15:02.939 mittlerweile so ein ganzes Formular ausfüllen, was man denn gedenkt zu tun, 00:15:02.939 --> 00:15:06.360 für was man diesen Twitter-Account überhaupt benutzen will, und eigentlich 00:15:06.360 --> 00:15:09.519 will Twitter diesen API-Schlüssel am liebsten gar nicht mehr rausgeben, und das 00:15:09.519 --> 00:15:14.149 hat diese Twitter-Bot-Kunstszene tatsächlich sehr aufgerüttelt, weil es 00:15:14.149 --> 00:15:17.749 jetzt schwerer geworden ist, neue Bots zu bauen, weil zum Teil auch alte Bots durch 00:15:17.749 --> 00:15:21.319 eine eingeschränkte API einfach nicht mehr funktionsfähig sind. Und dann kommen auch 00:15:21.319 --> 00:15:25.480 auf einmal ganze Diskussionen hoch, gerade wenn es um Medienkunst geht, wie gehe ich 00:15:25.480 --> 00:15:29.569 denn eigentlich auch um Archivierung, wie gehe ich damit um, wenn Sachen eingestellt 00:15:29.569 --> 00:15:32.350 werden, nicht mehr funktionieren, das ist natürlich problematisch, Medienkunst zu 00:15:32.350 --> 00:15:37.970 archivieren, weil sich Technik so schnell verändert und so schnell wandelt. Und der 00:15:37.970 --> 00:15:42.360 Ausweg, den sehr viele gefunden haben, ist Mastodon, eine Twitter-Alternative, die 00:15:42.360 --> 00:15:46.160 dezentral funktioniert, und da gibt es eine eigene Instanz, die heißt 00:15:46.160 --> 00:15:51.860 „botsin.space“, und auf der leben jetzt nur solche künstlerisch angehauchten und 00:15:51.860 --> 00:15:56.110 witzigen – also nicht mehr Twitter-, sondern Mastodon-Bots dann in dem Moment. 00:15:56.110 --> 00:15:58.709 Kann ich euch sehr empfehlen da mal durchzuklicken, da gibt es auch sehr sehr 00:15:58.709 --> 00:16:03.189 viele schöne Projekte. Und wenn ihr mal Lust habt, vielleicht selber so einen Bot 00:16:03.189 --> 00:16:06.629 zu bauen, dann kann ich euch ein paar Sachen empfehlen. Einmal gibt es die 00:16:06.629 --> 00:16:10.110 „Botwiki“. Das ist ein Projekt, wo eben solche Bot-Varianten gesammelt werden, 00:16:10.110 --> 00:16:12.610 klickt euch da mal durch, die ist noch nicht sehr voll und nicht sehr 00:16:12.610 --> 00:16:15.069 vollständig, finde ich, also – vielleicht findet ihr auch mal einen Bot, den ihr 00:16:15.069 --> 00:16:17.959 besonders gern mögt, dann tragt den da gerne ein, aber man kann sich da auch 00:16:17.959 --> 00:16:23.339 hervorragend durchklicken und mal sich anschauen, was andere so machen. Da gibt's 00:16:23.339 --> 00:16:27.700 Bots, die machen Gedichte oder die machen Musik, also da gibt’s massig, das man 00:16:27.700 --> 00:16:31.489 erkunden kann. Und wenn ihr wirklich selber einen bauen wollt, dann gibt es die 00:16:31.489 --> 00:16:35.490 Seite „Cheap Bots, Done Quick!“, die ist dafür da, um sehr schnell praktisch so 00:16:35.490 --> 00:16:39.579 einen Bot zu hosten, ohne großartige Vorkenntnisse, und das kann man dann auch 00:16:39.579 --> 00:16:44.970 noch ergänzen mit Tracery, das ist ein Tool, mit dem man sich sehr einfach 00:16:44.970 --> 00:16:48.980 Grammatiken bauen kann um zum Beispiel Texte zu generieren, aber auch um Bilder 00:16:48.980 --> 00:16:52.480 zu generieren. Wenn euch das noch mehr interessiert, das habe ich leider nicht 00:16:52.480 --> 00:16:56.049 verlinkt, aber dann könnt ihr nochmal bei blinry auf seinem Blog schauen, der hat da 00:16:56.049 --> 00:16:59.009 nämlich auch mal einen schönen Workshop gehalten – wurde der aufgezeichnet? Leider 00:16:59.009 --> 00:17:03.399 nicht. Aber da hast du Folien online? Genau, dann schaut doch mal auf blinrys 00:17:03.399 --> 00:17:13.337 Blog, dann gibt es da Folien, wie das ganz genau funktioniert. 00:17:13.337 --> 00:17:17.640 blinry: Als nächstes geht es um Ray Marching und Signed Distance Functions. 00:17:17.640 --> 00:17:21.770 Das klingt ganz furchtbar gruselig, aber ich erkläre euch mal, wie ich dazu kam. 00:17:21.770 --> 00:17:29.040 Wir waren vor ungefähr drei Jahren mal auf einer Demoparty in Köln, der Evoke, das 00:17:29.040 --> 00:17:32.910 ist so ein Treffen, da tun sich einige hundert Leute zusammen und setzen sich 00:17:32.910 --> 00:17:36.340 irgendwie für ein paar Tage in dunkle Hallen und setzen sich an ihre Laptops und 00:17:36.340 --> 00:17:42.390 coden irgendwie coole Videos, also, die coden irgendwie kleine Schnipsel, die also 00:17:42.390 --> 00:17:46.640 sehr interessante grafische und audiell interessante Dinge tun, so ein paar 00:17:46.640 --> 00:17:51.590 Minuten. Und es gibt dann verschiedene Kategorien, unter denen sie die einreichen 00:17:51.590 --> 00:17:57.300 können, verschiedene Wettbewerbe. Und einer davon ist eine Einschränkung für das 00:17:57.300 --> 00:18:00.150 Programm, das man da schreibt, dass das Programm eine bestimmte Größe nicht 00:18:00.150 --> 00:18:04.700 überschreiten darf. Und dann zum Beispiel so eine Größenbeschränkung hat wie vier 00:18:04.700 --> 00:18:09.300 Kilobyte zum Beispiel. Was, finde ich, unglaublich wenig ist, sind halt so ein paar 00:18:09.300 --> 00:18:13.730 Zeilen – ein paar Seiten Code im Wesentlichen. Und die Herausforderung ist, 00:18:13.730 --> 00:18:17.919 mit dieser Platzbeschränkung irgendwie coole Dinge zu tun. Was da dann zum 00:18:17.919 --> 00:18:24.360 Beispiel rauskommt ist sowas hier, also das ist jetzt eine 4k-Demo von der Evoke, 00:18:24.360 --> 00:18:31.930 die total spannende komplexe Geometrien beinhaltet. Gucken wir mal ein bisschen rein. 00:18:31.930 --> 00:18:37.550 Ne, man sieht da irgendwie diese Nebeleffekte im Raum, irgendwie eine 00:18:37.550 --> 00:18:41.820 interessante Kameraführung und so, und man fliegt dann da durch so eine fraktale 00:18:41.820 --> 00:18:48.410 Geometrie durch. Gehen wir mal ein bisschen weiter hinten rein… So, da 00:18:48.410 --> 00:18:53.230 bewegen sich Sachen in dieser Welt, und – oh, übrigens haben wir auch Musik, 00:18:53.230 --> 00:18:57.170 irgendwie, das ist auch durch diesen Code generiert, in dem Moment, also das läuft 00:18:57.170 --> 00:19:04.960 alles live auf dem Rechner. Also irgendwie so die Oberfläche schillernd, als wäre da 00:19:04.960 --> 00:19:08.860 Nebel, naja. Und ich saß da mit offenem Mund und habe gedacht: wie machen die das? 00:19:08.860 --> 00:19:12.970 Wie kriegen die mit so wenig Code irgendwie so komplexe Sachen hin? Und dann 00:19:12.970 --> 00:19:17.250 habe ich auf der Rückfahrt im Zug irgendwie so ein bisschen recherchiert und 00:19:17.250 --> 00:19:20.660 bin auf eine Sache gefunden, die Leute immer wieder erwähnt haben, nämlich 00:19:20.660 --> 00:19:28.720 Fragment Shaders. Das ist ein OpenGL-Ding, da geht es darum, dass man ein kleines 00:19:28.720 --> 00:19:33.120 Programm schreibt, was, wenn man ein Bild erzeugen will, für jeden Pixel einzeln 00:19:33.120 --> 00:19:36.680 ausgeführt wird. Also man kriegt die Pixel-Koordinaten in dieses Programm rein, 00:19:36.680 --> 00:19:40.320 das Programm rechnet einem dann irgendeine Farbe aus, die dieser Pixel haben soll. 00:19:40.320 --> 00:19:43.800 Und der Vorteil ist, wenn man das so macht, kann man das super gut 00:19:43.800 --> 00:19:48.730 parallelisieren. Grafikkarten sind halt darauf ausgelegt, dass die total parallel 00:19:48.730 --> 00:19:51.900 für ganz viele Pixel gleichzeitig irgendwie dann diese Farbe ausrechnen 00:19:51.900 --> 00:19:55.740 können. Dafür ist diese Technologie gedacht. Und ich habe online dieses Buch 00:19:55.740 --> 00:19:59.440 gefunden, „The Book of Shaders“, das sich selbst nennt, irgendwie, „a gentle step- 00:19:59.440 --> 00:20:04.070 by-step guide through the abstract and complex universe of Fragment Shaders“. Das 00:20:04.070 --> 00:20:07.970 ist wirklich gut, das kann ich empfehlen, das nimmt einen sehr nett an die Hand, 00:20:07.970 --> 00:20:10.890 irgendwie, und zeigt einem mal wie das funktioniert, zeigt einem so ein paar 00:20:10.890 --> 00:20:16.180 Generierungsmöglichkeiten für komplexere Geometrien und so. Allerdings macht das 00:20:16.180 --> 00:20:21.510 nur 2D-Kram, also damit kann man jetzt noch nicht diese Demos bauen, die wir da 00:20:21.510 --> 00:20:23.990 gesehen hatten. Dann habe ich ein bisschen weiter geguckt und habe noch andere 00:20:23.990 --> 00:20:28.680 Webseiten gefunden und bin auf verschiedene Techniken gestoßen, um 00:20:28.680 --> 00:20:33.550 3D-Geometrien – also, 3D-Grafik zu machen. Was ich in der Uni schon mal gehört hatte 00:20:33.550 --> 00:20:37.220 und was ihr vielleicht auch mal gehört habt ist „Raytracing“, wo man im 00:20:37.220 --> 00:20:40.250 Wesentlichen – wenn man so ein Bild ausrechnen will, das aus verschiedenen 00:20:40.250 --> 00:20:44.150 Pixeln besteht, dann schießt man von der Kamera aus, die irgendwie sich im 3D-Raum 00:20:44.150 --> 00:20:49.320 befindet, für jeden Pixel einen Strahl in die Szene rein und guckt mal, wo der 00:20:49.320 --> 00:20:52.370 auftrifft. In der Szene können dann, weiß ich nicht, hier, Kugeln sein oder 00:20:52.370 --> 00:20:55.640 irgendwie komplexere Sachen, und man guckt sich dann im Wesentlichen an, wo trifft 00:20:55.640 --> 00:20:59.750 dieser Strahl, den ich gerade schieße, als erstes auf, und welche Farbe hat das 00:20:59.750 --> 00:21:03.000 Objekt, und so ein bisschen vielleicht wie ist das schattiert, liegt das im Schatten, 00:21:03.000 --> 00:21:07.030 ist das irgendwie besonders angeleuchtet oder sowas, und diese Farbe kriegt dann 00:21:07.030 --> 00:21:11.030 halt der Pixel. Das ist so ein Standardverfahren, um irgendwie hübsche 00:21:11.030 --> 00:21:15.510 3D-Geometrie zu rendern. Damit kann man dann sehr gut so was machen wie 00:21:15.510 --> 00:21:20.830 Glasobjekte, zum Beispiel, oder irgendwie weiche Schatteneffekte und so was. Und das 00:21:20.830 --> 00:21:24.200 ist eine Technik, die sehr lange es schon gibt und sehr etabliert ist, allerdings hat 00:21:24.200 --> 00:21:27.390 sie ein Problem, nämlich wenn man sehr komplexe Geometrie hat, dann sind diese 00:21:27.390 --> 00:21:32.220 Schnitttests total kompliziert. Also, wenn man herausfinden will, ob der Strahl jetzt 00:21:32.220 --> 00:21:36.170 mit irgendwas davon kollidiert, ist das vielleicht super aufwendig herauszufinden. 00:21:36.170 --> 00:21:40.040 Insofern eignet sich das nicht so gut für diese Demo, die ihr da gerade gesehen habt 00:21:40.040 --> 00:21:43.160 zum Beispiel. Sondern was man da macht ist ein anderes Verfahren, das nennt sich 00:21:43.160 --> 00:21:50.330 „Raymarching“. Hatte ich vorher noch nie gehört. Was macht man da? Man definiert 00:21:50.330 --> 00:21:56.370 sich eine mathematische Funktion, die einem für jeden Punkt im Raum gibt den 00:21:56.370 --> 00:22:02.090 Abstand zur nächsten Oberfläche eines Objekts. In diesem Beispiel ist das 2D, 00:22:02.090 --> 00:22:04.930 aber das funktioniert auch in 3D. Also stellt euch vor, irgendwie, ihr habt 00:22:04.930 --> 00:22:08.520 irgendwie eine Funktion, da tut ihr eine Koordinate rein, und ihr kriegt eine 00:22:08.520 --> 00:22:11.950 einzelne Zahl raus, und die sagt euch dann, okay, die nächste Oberfläche ist 00:22:11.950 --> 00:22:17.230 irgendwie einen Meter weit weg oder sowas. Und wenn ihr dann wieder die Sache macht, 00:22:17.230 --> 00:22:20.440 einen Strahl in die Szene zu schießen, dann könnt ihr halt, wenn ihr wisst, okay, 00:22:20.440 --> 00:22:23.190 der Strahl ist irgendwie hier, die nächste Oberfläche ist einen Meter weg, ich weiß 00:22:23.190 --> 00:22:27.240 nicht, in welche Richtung, aber irgendwie einen Meter ist sie weg, dann ist halt in 00:22:27.240 --> 00:22:31.320 einer Kugel mit einem Meter Radius auf jeden Fall kein Objekt drin. Das heißt, 00:22:31.320 --> 00:22:34.360 ich kann einen Meter nach vorne gehen, ohne gegen irgendwas gegen zu stoßen. Dann 00:22:34.360 --> 00:22:38.120 mache ich das und werte dann diese Funktion für den Punkt, an dem ich 00:22:38.120 --> 00:22:40.870 angekommen bin, noch mal aus. Und die sagt dann vielleicht, okay, das nächste Objekt 00:22:40.870 --> 00:22:45.180 ist einen halben Meter weg oder so, gehe ich wieder einen halben Meter nach vorne, 00:22:45.180 --> 00:22:48.950 und das wiederhole ich so lange, bis der Abstand zu einem Objekt ausreichend klein 00:22:48.950 --> 00:22:54.140 ist. Also in dieser Grafik ist es halt für den 2D-Fall demonstriert, wo man bei P0 00:22:54.140 --> 00:22:58.000 anfängt und dann irgendwie als erstes so einen Abstand kriegt entsprechend des 00:22:58.000 --> 00:23:00.660 Radius dieses Kreises, den man dann vorwärts geht, und das so lange 00:23:00.660 --> 00:23:04.990 wiederholt, bis man irgendwo auftrifft. Und, genau, das kann man halt auch in 3D 00:23:04.990 --> 00:23:09.780 machen, und dadurch dann sehr elegant irgendwie Formulierungen finden für diese 00:23:09.780 --> 00:23:12.730 komplexen Geometrien, die ihr gesehen habt, wo man dann vielleicht Teile des 00:23:12.730 --> 00:23:16.910 Raumes beschreibt und die dann periodisch wiederholt oder so was, dann kann man 00:23:16.910 --> 00:23:23.180 diese Funktion auch einfach wiederholen. Naja, und wenn man das richtig gut kann, 00:23:23.180 --> 00:23:27.170 kann man damit halt so coolen Scheiß machen. Ich habe Anfang letzten Jahres 00:23:27.170 --> 00:23:30.300 auch mal einen kleinen Workshop dazu gemacht – wir verlinken die Folien 00:23:30.300 --> 00:23:32.910 nachher, dann könnt ihr euch das angucken wenn euch das interessiert – wo ich auch 00:23:32.910 --> 00:23:37.110 nochmal so ein bisschen demonstriere, wie das funktioniert, und dann auch anfange 00:23:37.110 --> 00:23:41.750 irgendwie, erstmal so mit dem 2D-Fall, irgendwie, wie man da einzelne Formen 00:23:41.750 --> 00:23:46.680 malt, wie man irgendwie sich Kreise definiert und irgendwie den Farben 00:23:46.680 --> 00:23:51.400 zuordnet und so, und später kann man dann vielleicht verschiedene 2D-Formen haben 00:23:51.400 --> 00:23:54.820 und sie so ein bisschen verschmelzen… gucken, ob ich da eine Stelle finde, 00:23:54.820 --> 00:24:00.560 genau, hier so was… das ist dann auch mit dieser distance function total einfach, 00:24:00.560 --> 00:24:02.860 sich das zu definieren, dass man halt irgendwie die Mittelpunkte der beiden 00:24:02.860 --> 00:24:08.450 Kreise hat und sich dann diese bisschen komplexere, bisschen, ja, irgendwie 00:24:08.450 --> 00:24:13.950 bouncy, knetbar aussehende Oberfläche erzeugt. Und von da kann man dann halt 00:24:13.950 --> 00:24:18.710 weitergehen in den 3D-Raum und da im Wesentlichen das Gleiche machen, sich dann 00:24:18.710 --> 00:24:23.500 irgendwie, zum Beispiel hier so einen Würfel mit runden Ecken definieren, wie 00:24:23.500 --> 00:24:31.700 gesagt, und dann irgendwie irgendeinen Untergrund bauen und dem vielleicht Wellen 00:24:31.700 --> 00:24:35.260 geben, und am Schluss dann das Ganze irgendwie ganz oft wiederholen, und da hat 00:24:35.260 --> 00:24:39.930 man so einen Flug durch irgendwie eine komplexe 3D-Welt mit Code, das sind 00:24:39.930 --> 00:24:42.830 ungefähr so, weiß nicht, vielleicht die doppelte Menge Code, die ihr da seht, oder 00:24:42.830 --> 00:24:46.560 so was, die man braucht um das zu schreiben. Naja, und insgesamt, sowohl 00:24:46.560 --> 00:24:51.250 Fragment Shaders als auch dieses Raymarching sind halt zwei Ansätze, Grafik 00:24:51.250 --> 00:24:54.460 zu machen, die ich vorher so noch nicht kannte und die mich ziemlich umgehauen 00:24:54.460 --> 00:25:02.380 haben, und ich dachte das interessiert euch vielleicht auch. Wenn man das richtig 00:25:02.380 --> 00:25:06.860 gut kann, kommt dabei so was raus. Das ist ein Mensch, der heißt – also der nennt 00:25:06.860 --> 00:25:12.120 sich IQ und macht so was seit vielen, vielen Jahren, und ich gucke mal, wenn man 00:25:12.120 --> 00:25:16.340 ans Ende springt – also das ist ein Video, in dem er tatsächlich mal erklärt, wie er 00:25:16.340 --> 00:25:21.530 arbeitet und wie seine Demos funktionieren, und einen da mitnimmt – ihr 00:25:21.530 --> 00:25:24.260 seht, das geht irgendwie knapp sechs Stunden, also das ist kein triviales 00:25:24.260 --> 00:25:29.390 Programm, ich hätte gerne… mal gucken, ob ich noch eine animierte Version davon 00:25:29.390 --> 00:25:33.920 finde, das ist halt so eine kleine niedliche Figur, die durch die Gegend 00:25:33.920 --> 00:25:37.860 springt, genau. Und sowohl der Untergrund bewegt sich als auch diese Figur bewegt 00:25:37.860 --> 00:25:41.810 sich, Und da hat IQ halt genau das Gleiche gemacht, sich eine Funktion definiert, zum 00:25:41.810 --> 00:25:44.610 Beispiel, die einem den Abstand zu der Oberfläche des Körpers dieser kleinen 00:25:44.610 --> 00:25:49.100 Figur angibt, und darüber kann man das rendern. Und generell hat dieser Mensch 00:25:49.100 --> 00:26:03.017 auch eine Webseite mit sehr, sehr guten Ressourcen zu dem Thema. Genau! Soweit dazu. 00:26:03.017 --> 00:26:04.950 bleeptrack: Vor einigen Jahren habe ich 00:26:04.950 --> 00:26:10.310 mal angefangen, jeden Tag ein kleines Bildchen zu zeichnen und das zu 00:26:10.310 --> 00:26:14.750 veröffentlichen, und denen hab ich einen Namen gegeben, die heißen jetzt Schnipsel, 00:26:14.750 --> 00:26:19.840 das eben so kleine snippets sind, die eben einfach jeden Tag entstehen. Und ich 00:26:19.840 --> 00:26:23.380 wollte einfach mal so ein bisschen was davon erzählen. So richtig genau weiß ich 00:26:23.380 --> 00:26:26.740 eigentlich nicht mehr, warum ich damit angefangen hatte, aber es ging auf jeden 00:26:26.740 --> 00:26:29.931 Fall ein bisschen darum, besser zu reflektieren, was man so macht, das habe 00:26:29.931 --> 00:26:35.990 ich während dem Studium noch angefangen, und euch geht’s vielleicht ähnlich wie 00:26:35.990 --> 00:26:38.920 mir, ich bin so jemand der mal voll gern so Projekte anfängt, aber dann vielleicht 00:26:38.920 --> 00:26:43.490 auch nicht fertig macht oder so ein Jahr später mal wieder dran weiterbastelt, und, 00:26:43.490 --> 00:26:46.780 naja, ich hatte irgendwie das Gefühl, ich verliere so ein bisschen den Überblick, 00:26:46.780 --> 00:26:49.710 was ich eigentlich am Tag mache, und dann studiert man noch und macht noch irgendwie 00:26:49.710 --> 00:26:54.050 3000 andere Sachen parallel, dann fand ich es eigentlich immer schön, immer am Ende 00:26:54.050 --> 00:26:58.370 vom Tag oder am Beginn des nächsten Tages so ein bisschen zu reflektieren, was war 00:26:58.370 --> 00:27:03.080 denn der wichtigste Punkt in meinen letzten 24 Stunden? Und nachdem ich ganz 00:27:03.080 --> 00:27:06.400 gern zeichne und auch das Gefühl hatte, während meinem Informatikstudium, ich 00:27:06.400 --> 00:27:09.390 zeichne gar nicht mehr so viel, dachte ich, ich halte das einfach in kleinen 00:27:09.390 --> 00:27:14.930 Bildern fest. Und für mich war dann halt irgendwie wichtig, dass das auch irgendwie 00:27:14.930 --> 00:27:20.140 schnell gehen muss, und – können wir jetzt hier mal schon auf diesen Link klicken – 00:27:20.140 --> 00:27:24.660 ich habe kürzlich mal bei Twitter praktisch so einen kleinen Screencast, 00:27:24.660 --> 00:27:28.310 wenn man das so nennen will, aufgenommen, wie ich das zeichne. Also es musste für 00:27:28.310 --> 00:27:31.440 mich halt irgendwie schnell gehen, das ist halt wirklich wie so ein scribble, ich 00:27:31.440 --> 00:27:34.030 mach da nicht lange rum, ein so’n Bild dauert vielleicht irgendwie zehn Minuten 00:27:34.030 --> 00:27:37.720 oder eine Viertelstunde oder so was, und ich habe hier so ein Thinkpad, das hat so 00:27:37.720 --> 00:27:40.070 einen integrierten Digitizer, also einen Stift, das heißt ich kann das direkt 00:27:40.070 --> 00:27:44.010 digital machen, ich brauche da gar kein Papier, und probier halt einfach so ein 00:27:44.010 --> 00:27:48.141 bisschen rum, und verzichte auch irgendwie komplett auf Farbe, weil ich irgendwie für 00:27:48.141 --> 00:27:51.510 mich festgestellt hab, ich bin echt schlecht im kolorieren, und für so was 00:27:51.510 --> 00:27:55.250 reicht es total, irgendwie ein bisschen mit Schwarz-weiß zu arbeiten, aber 00:27:55.250 --> 00:27:57.700 Schatten haben mir Spaß gemacht, also ich hab immer so ein bisschen Schattierungen 00:27:57.700 --> 00:28:03.700 reingezeichnet. Die Auflösung ist auch total popelig, sind irgendwie 250 x 250 00:28:03.700 --> 00:28:06.240 Pixel, das schränkt einen auch nochmal ziemlich ein, weil man dann so richtig 00:28:06.240 --> 00:28:10.350 Details eigentlich auch nicht mehr festhalten kann, ist im Nachhinein 00:28:10.350 --> 00:28:12.680 vielleicht ein bisschen schade, weil ich manchmal mittlerweile das Gefühl hätte, 00:28:12.680 --> 00:28:15.590 ich würde mir gerne auch mal so einen großen Abzug machen mit so einer Sammlung, 00:28:15.590 --> 00:28:21.390 und dann ist die Pixelauflösung tatsächlich ein bisschen arg gering, und 00:28:21.390 --> 00:28:24.880 ich hab dann auch irgendwann angefangen, die, wie ihr hier seht, einfach mal auf 00:28:24.880 --> 00:28:28.810 Twitter zu posten, weil ich dachte, das ist immer so ein bisschen schade, ich habe 00:28:28.810 --> 00:28:31.510 die zwar immer auf meine Webseite gepackt, aber da versauern die halt, da guckt die 00:28:31.510 --> 00:28:34.770 eigentlich irgendwie niemand an. Und dann hatte ich mal gefragt, würde sich das 00:28:34.770 --> 00:28:38.310 jemand angucken, wenn ich das auf Twitter posten würde? Dann kam von ein paar Leuten 00:28:38.310 --> 00:28:42.760 so, ja, ich würde mir das angucken, und dann hab ich das jetzt einfach mal 00:28:42.760 --> 00:28:45.720 probiert. Das ist einfach ein Bot das auch immer jeden Tag direkt mit auf meinen 00:28:45.720 --> 00:28:49.590 Twitter-Account haut, und ich habe tatsächlich auch sehr positives Feedback 00:28:49.590 --> 00:28:52.610 dann bekommen, weil ich habe oft mal auch so Tage, wo es halt so stressig, und ich 00:28:52.610 --> 00:28:55.140 verchecks dann einfach, die zu zeichnen, das kommt schon auch mal vor, beim 00:28:55.140 --> 00:28:57.880 Scrollen habt ihr vielleicht auch gesehen, da gibt es ein paar Monate wo fast gar 00:28:57.880 --> 00:29:00.520 nichts drin ist, da hatte ich einfach so viel Stress, dass ich es nicht gebacken 00:29:00.520 --> 00:29:03.260 bekommen habe. Dann haben auch wirklich Leute geschrieben, ist voll schade, dass 00:29:03.260 --> 00:29:06.750 du gerade nichts zeichnest, ich freue mich eigentlich jeden Tag auf dein kleines 00:29:06.750 --> 00:29:12.710 Bildchen. Und blinry hat es zum Beispiel auch mal ausprobiert, einen Monat lang, 00:29:12.710 --> 00:29:15.060 das könnt ihr euch gerne auch mal angucken, oder wir klicken da vielleicht 00:29:15.060 --> 00:29:18.420 auch mal drauf, dann können wir das mal groß machen. Du hast dir ein anderes 00:29:18.420 --> 00:29:20.860 Format ausgesucht, du hast das immer so kreisförmig gemacht, und du hattest das 00:29:20.860 --> 00:29:25.010 auch schon mal gemacht mit… Achtecken, wenn ich das richtig im Kopf habe, oder 00:29:25.010 --> 00:29:27.320 Sechsecken, oder hast dir immer andere Formate ausgesucht, das finde ich auch 00:29:27.320 --> 00:29:31.060 sehr schön. Bei mir ist halt quadratisch, blinry hat ja auch so einen schönen 00:29:31.060 --> 00:29:34.523 Monatszusammenschluss gemacht und das halt von Hand gezeichnet, das ist auch 00:29:34.523 --> 00:29:40.990 irgendwie sehr schön und sehr ästhetisch, wie ich finde. Und ich hatte ja schon 00:29:40.990 --> 00:29:45.340 gesagt, ich hab das jetzt gerade auf so einem Bot laufen, und kürzlich hatte ich 00:29:45.340 --> 00:29:49.370 halt nochmal eine API dazugenommen, dass er noch wo posten soll, und hab dann so 00:29:49.370 --> 00:29:53.080 einen Fehler nicht abgefangen, und dann ist mein – bin ins Bett gegangen, das war 00:29:53.080 --> 00:29:55.720 irgendwie so eine dumme Idee, und dann ist mein Bot ein bisschen Amok gelaufen, hat 00:29:55.720 --> 00:30:00.150 alle zehn Minuten das gleiche Bild noch mal gepostet, und dann kam halt irgendwie 00:30:00.150 --> 00:30:06.880 von 20 – also, früh wacht man dann halt auf, und man sieht dann irgendwie so aus… 00:30:06.880 --> 00:30:12.420 Aber ich hatte halt irgendwie die ganze Inbox voll mit „Oh, dein Bot läuft Amok! 00:30:12.420 --> 00:30:16.270 Oh mein Gott, die ganze Timeline von mir wird zugespamt! Das kann ja nicht wahr 00:30:16.270 --> 00:30:19.760 sein!“ Und irgendwelche haben dann schon runter geschrieben, „hihi, die schläft, 00:30:19.760 --> 00:30:24.340 die Nacht ist noch lang“, und ich bin auch irgendwie, ich dachte, das war so ein Tag, 00:30:24.340 --> 00:30:28.890 wo ich so ausgeschlafen habe bis um 10, und das war dann halt irgendwie nicht so 00:30:28.890 --> 00:30:32.330 schön, aber das Schöne ist, wenn man halt täglich ein kleines Bildchen zeichnet, 00:30:32.330 --> 00:30:35.670 dann kann man da halt auch einen kleinen Witz draus machen, mit einem fiktiven Bot, 00:30:35.670 --> 00:30:40.080 der sagt, „Hm, diesen Schnipsel mag ich sehr, sehr gerne! Und den zeige ich jetzt 00:30:40.080 --> 00:30:45.080 die ganze Nacht über“, und, naja. Ich finde – ich möchte euch eigentlich ein 00:30:45.080 --> 00:30:48.350 bisschen dazu ermutigen, mal so eine Reflektionstechnik sich auszusuchen, weil 00:30:48.350 --> 00:30:52.010 ich finde, das bringt einem sehr viel, gerade auch so – man hat so Tage wie den 00:30:52.010 --> 00:30:55.890 Congress, da passieren irgendwie 3000 Sachen an einem Tag, und die Tage 00:30:55.890 --> 00:30:59.170 verschwimmen so ineinander, und ich habe auch festgestellt, man kann – man hat – 00:30:59.170 --> 00:31:02.650 man findet so den positiven Aspekt in einem Tag, auch wenn es vielleicht eher so 00:31:02.650 --> 00:31:07.120 ein Scheißtag war, und man kann sich viel besser – also ich kann mich zumindest viel 00:31:07.120 --> 00:31:10.300 besser erinnern, was so passiert ist, vielleicht noch vor einem Monat, oder vor 00:31:10.300 --> 00:31:13.651 zwei Monaten, weil ich weiß ja noch, welches Bildchen ich an dem Tag gezeichnet 00:31:13.651 --> 00:31:16.940 habe. Also probiert es gerne mal aus – wer weiß, ob das jetzt ein Bildchen ist, 00:31:16.940 --> 00:31:20.300 vielleicht schreibt ihr auch nur ein Wort pro Tag auf, aber ich finde, das ist eine 00:31:20.300 --> 00:31:23.610 sehr schöne Technik, um sich mal selber zu verdeutlichen, was man eigentlich so 00:31:23.610 --> 00:31:33.871 schafft und eigentlich so macht. blinry: Ich möchte euch als nächstes etwas 00:31:33.871 --> 00:31:39.450 erzählen über mathematische Paradoxe, die ich ganz spannend finde. Zum Beispiel gibt 00:31:39.450 --> 00:31:45.110 es etwas, das nennt sich das „interesting number paradox“, das so etwas aussagt, 00:31:45.110 --> 00:31:50.380 wie: „alle Zahlen sind interessant“. Und das ist erstmal überraschend, für mich 00:31:50.380 --> 00:31:54.390 zumindest. Lasst uns das zusammen mal beweisen. Also, das ist ein Beweis, der 00:31:54.390 --> 00:31:58.030 läuft über einen Widerspruchsbeweis, das heißt wir machen am Anfang eine Annahme. 00:31:58.030 --> 00:32:02.620 Wir nehmen an, es gäbe überhaupt uninteressante Zahlen. Man beschränkt das 00:32:02.620 --> 00:32:06.490 üblicherweise auf natürliche Zahlen, irgendwie nicht negative ganze Zahlen, mit 00:32:06.490 --> 00:32:10.490 denen irgendwie Objekte zählen könnten oder so was, und wir nehmen mal an, es 00:32:10.490 --> 00:32:15.130 gäbe welche, die wären uninteressant. So. Stellt euch irgendwie einen Zahlenstrahl 00:32:15.130 --> 00:32:21.460 vor, und da sind jetzt diejenigen markiert, die uninteressant sind. Und wenn 00:32:21.460 --> 00:32:24.000 wir uns das angucken, dann gibt es halt unter denen auch eine, das ist die 00:32:24.000 --> 00:32:27.400 kleinste uninteressante Zahl: die, die halt auf dem Strahl am weitesten links 00:32:27.400 --> 00:32:31.940 sitzt. Und, ok, das ist irgendwie komisch, das ist eine Zahl, die ist gleichzeitig… 00:32:31.940 --> 00:32:36.170 ist sie uninteressant, aber diese Eigenschaft, dass sie die kleinste 00:32:36.170 --> 00:32:40.940 uninteressante Zahl ist, ist natürlich schon wieder total interessant. Und da 00:32:40.940 --> 00:32:45.300 kommt ein Widerspruch zustande, und wenn das passiert bei so einem Beweis, dann ist 00:32:45.300 --> 00:32:53.190 halt die Aussage, dass unsere Annahme falsch war. Und das zeigt uns halt, dass 00:32:53.190 --> 00:32:56.520 die Annahme, die kann nicht stimmen – wir haben angenommen, es gibt irgendwelche 00:32:56.520 --> 00:32:59.690 uninteressanten Zahlen, das heißt, das Ergebnis ist, alle natürlichen Zahlen sind 00:32:59.690 --> 00:33:04.640 interessant. Das ist ein Beweis, der klingt irgendwie komisch, da ist 00:33:04.640 --> 00:33:07.360 allerdings kein doppelter Boden drin, es gibt so ein paar Beweise, wo man sich 00:33:07.360 --> 00:33:10.970 irgendwie 1 = 2 herleitet oder so, wo man dann irgendwo durch 0 teilt, das ist 00:33:10.970 --> 00:33:15.690 natürlich Quatsch – das ist ein relativ wasserdichter Beweis, der nicht ganz ernst 00:33:15.690 --> 00:33:19.950 gemeint ist, aber der schon irgendwie einer kritischen Betrachtung standhält. 00:33:19.950 --> 00:33:27.270 Naja. Ach so, genau, ich wollte noch erzählen: trotzdem gibt es Leute, die 00:33:27.270 --> 00:33:32.020 versuchen dann, diese kleinste uninteressante Zahl zu finden, und nehmen 00:33:32.020 --> 00:33:35.100 dann verschiedene Kriterien her, irgendwie. Es gibt so eine Online- 00:33:35.100 --> 00:33:39.950 Enzyklopädie der Nummersequenzen, die gucken sich dann da die kleinste Zahl an, 00:33:39.950 --> 00:33:44.170 die da nicht drin vorkommt oder so was. Oder zum Beispiel die kleinste Zahl, die 00:33:44.170 --> 00:33:47.270 keinen eigenen Wikipedia-Artikel hat: ich habe vorhin mal nachgeguckt, das ist 00:33:47.270 --> 00:33:52.490 momentan die 262. Ist die besonders interessant? Vielleicht – gibt wohl nichts 00:33:52.490 --> 00:34:00.510 über sie zu erzählen, bisher. Das nächste Paradox, das ich mitgebracht habe, hat mit 00:34:00.510 --> 00:34:07.610 diesem geometrischen Objekt zu tun. „Gabriels Horn“. Diese Oberfläche ist so 00:34:07.610 --> 00:34:13.109 definiert: ihr nehmt euch die Funktion 1/x her, das ist hier diese rote Linie, diese 00:34:13.109 --> 00:34:17.330 Kästchen sind jeweils eine Längeneinheit lang. Und wir gucken uns dann einen 00:34:17.330 --> 00:34:20.720 bestimmten Bereich davon an, nämlich schneiden wir den an dieser Stelle 1 ab 00:34:20.720 --> 00:34:25.200 und gucken uns den ganzen Teil, der dann nach rechts läuft, an, nehmen diesen 00:34:25.200 --> 00:34:31.129 Verlauf und rotieren den um die x-Achse. So ist dieses Objekt konstruiert. Was wir 00:34:31.129 --> 00:34:33.700 dann kriegen, ist halt so ein sehr, sehr spitz, unendlich weit nach rechts 00:34:33.700 --> 00:34:38.790 zulaufendes, Ding, was irgendwie aussieht wie ein Trichter. Und dieses Objekt hat 00:34:38.790 --> 00:34:44.730 eine super spannende Eigenschaft, nämlich: Also, die Oberfläche des Objektes ist 00:34:44.730 --> 00:34:48.760 unendlich groß, was irgendwie einleuchtet, weil es ja unendlich weit nach rechts 00:34:48.760 --> 00:34:52.760 läuft. Wenn man irgendwie das versuchen würde mit Farbe anzumalen oder so was, 00:34:52.760 --> 00:34:55.120 würde man unendlich viel Farbe brauchen, weil man irgendwie das ganze Ding nie 00:34:55.120 --> 00:34:59.840 vollgemalt bekommt. Allerdings, wenn man es jetzt mit der Öffnung nach oben dreht 00:34:59.840 --> 00:35:03.752 und die Farbe da reingießt, irgendwie, um das Volumen zu messen, dann stellt man 00:35:03.752 --> 00:35:08.060 fest, das ist ein endliches Volumen, das Ding ist irgendwann voll. Und das ist eine 00:35:08.060 --> 00:35:11.460 super spannende Kombination von zwei Eigenschaften, finde ich, also wenn man 00:35:11.460 --> 00:35:14.340 das mit Farbe aufgefüllt hat, innen, könnte man sagen, okay, das berührt ja 00:35:14.340 --> 00:35:18.440 jetzt irgendwie die gesamte Oberfläche von innen, aber trotzdem, wenn wir es anmalen, 00:35:18.440 --> 00:35:24.350 reicht es halt nicht. Und, naja, dieses Paradox mit der Farbe, das klingt erstmal 00:35:24.350 --> 00:35:27.790 total komisch – man kann das ein bisschen auflösen, indem man sich vorstellt, wenn 00:35:27.790 --> 00:35:32.320 wir das nicht von außen anmalen würden, sondern von innen, dann kämen wir halt 00:35:32.320 --> 00:35:35.390 irgendwann, wenn wir weiter nach rechts in diese Spitze reinmalen, in so einen 00:35:35.390 --> 00:35:39.260 Bereich, wo die Farbschicht vielleicht so dick ist, dass sie da gar nicht mehr rein 00:35:39.260 --> 00:35:41.770 passt. Das heißt, wenn man es von innen bemalt, müsste man mit der Farbschicht 00:35:41.770 --> 00:35:45.430 eigentlich auch immer dünner werden, und wenn man das dann so rechnet, dann ist 00:35:45.430 --> 00:35:49.540 halt doch die Farbmenge wieder begrenzt. Das heißt dieses mit der – also, mit Farbe 00:35:49.540 --> 00:35:53.511 füllen funktioniert, mit Farbe anmalen, ist unendlich viel Farbe, kann man dadurch 00:35:53.511 --> 00:35:57.530 so ein bisschen auflösen, und auch diese Eigenschaft, dass die Oberfläche unendlich 00:35:57.530 --> 00:36:03.300 groß ist und das Volumen endlich, also, man kann sich das ausrechnen. Man kann 00:36:03.300 --> 00:36:06.990 sich Integrale aufschreiben mit dieser Funktion 1/x und dann irgendwie 00:36:06.990 --> 00:36:09.760 integrieren über die Länge und so, und sich ausrechnen wie groß die Oberfläche 00:36:09.760 --> 00:36:12.650 ist, man sieht sie ist unendlich, und wie groß das Volumen ist, und man sieht es ist 00:36:12.650 --> 00:36:16.600 endlich. Das ist allerdings nicht besonders intuitiv. Ich könnte euch jetzt 00:36:16.600 --> 00:36:18.100 die Formeln zeigen und dann würdet ihr das vielleicht glauben oder vielleicht auch 00:36:18.100 --> 00:36:22.600 nicht, aber was ich dann noch fand ist eine Betrachtung oder ein Vergleich, der 00:36:22.600 --> 00:36:24.890 einem das so ein bisschen schmackhafter macht, nämlich: Wenn ihr euch vorstellt, 00:36:24.890 --> 00:36:30.270 ihr nehmt ein Stück Knete, eine definierte Menge Knete, macht daraus irgendwie eine 00:36:30.270 --> 00:36:35.040 kleine dicke Schlange oder so was, so einen Zylinder, zylindrische Form, und 00:36:35.040 --> 00:36:38.720 guckt euch dann mal die Oberfläche von dem ganzen Ding an. Dann ist die Oberfläche 00:36:38.720 --> 00:36:45.840 halt ungefähr so der Umfang dieser Form des Zylinders mal der Länge. Das ist quasi 00:36:45.840 --> 00:36:49.340 so, als würde man da irgendwie Papier darum legen, wenn man das aufrollt hat man 00:36:49.340 --> 00:36:53.840 so ein Rechteck, die eine Kantenlänge des Rechtecks ist so lang wie der Umfang, die 00:36:53.840 --> 00:36:58.270 andere Länge so lang wie diese Schlange lang ist. Und jetzt nehmen wir diese Knete 00:36:58.270 --> 00:37:02.890 und rollen sie ein bisschen dünner, dass sie nur noch halb so dick ist. Was dann 00:37:02.890 --> 00:37:07.600 damit passiert, ist, dass, naja, also die Höhe halbiert sich und das heißt, es 00:37:07.600 --> 00:37:13.750 halbiert sich auch der Umfang dabei. Allerdings wird die Querschnittsfläche, 00:37:13.750 --> 00:37:19.090 wenn ihr das einmal durchschneiden würdet, auf ein Viertel sinken. Und das bedeutet, 00:37:19.090 --> 00:37:22.310 weil ja das Volumen konstant bleibt – wir nehmen ja keine Knete weg oder so was – 00:37:22.310 --> 00:37:28.008 wird diese Schlange danach viermal so lang sein. Das heißt, okay, was haben wir? 00:37:28.008 --> 00:37:34.190 Wir haben die vierfache Länge, wir haben den halben Umfang, das heißt die Oberfläche 00:37:34.190 --> 00:37:39.320 dieses Dings hat sich verdoppelt gerade, während das Volumen konstant geblieben 00:37:39.320 --> 00:37:43.860 ist. Und das bedeutet, je dünner man diese Schlange rollt, desto mehr verschiebt sich 00:37:43.860 --> 00:37:48.300 dieses Verhältnis von Fläche und Volumen, und das ist halt auch genau das, was hier 00:37:48.300 --> 00:37:53.840 bei diesem Objekt passiert, dass man das quasi unendlich weiter dünner macht und 00:37:53.840 --> 00:37:56.790 dabei halt dieses Verhältnis völlig aus dem Gewicht gerät und dadurch diese 00:37:56.790 --> 00:38:04.920 Eigenschaft zustande kommt. Ein bisschen ähnlich und mit Unendlichkeit zu tun hat 00:38:04.920 --> 00:38:10.910 auch das „coastline paradox“, wo es darum geht, dass man die Länge einer 00:38:10.910 --> 00:38:17.360 Landesgrenze messen will. Und da kommt es dann sehr darauf an, wie genau man das 00:38:17.360 --> 00:38:20.800 macht, was dabei rauskommt. Wenn ihr euch vorstellt, ihr habt irgendwie ein sehr 00:38:20.800 --> 00:38:25.460 langes Lineal, und man legt das dann jetzt irgendwie mal an diesen Landesumriss an, 00:38:25.460 --> 00:38:28.330 kippt das immer so ein bisschen weiter, geht da irgendwie einmal rum, dann kriegt 00:38:28.330 --> 00:38:31.210 man irgendeine Zahl raus, okay, man könnte sagen, das ist die Länge, aber dann könnte 00:38:31.210 --> 00:38:34.350 jemand kommen: „das hast du nicht genau genug gemessen, und wir müssten eigentlich 00:38:34.350 --> 00:38:38.020 das mit einem kürzeren Lineal machen, was das irgendwie genauer misst, und irgendwie 00:38:38.020 --> 00:38:41.701 in Meeresbuchten noch reingeht“, das ist so der Unterschied hier zwischen dem 00:38:41.701 --> 00:38:44.690 linken Beispiel und dem rechten, wo man halt beim rechten einen viel kürzeren 00:38:44.690 --> 00:38:49.991 Maßstab genommen hat und damit genauer diesen Umrisse misst. Das heißt, davon 00:38:49.991 --> 00:38:54.640 hängt es sehr ab, was man da für eine Zahl herauskriegt für die Länge dieses 00:38:54.640 --> 00:38:58.280 Landesumrisses. Und das lässt sich halt beliebig weit fortführen, wenn ihr euch 00:38:58.280 --> 00:39:03.330 jetzt vorstellt, ihr steht irgendwie am Strand dieses Landes und wollt messen die 00:39:03.330 --> 00:39:07.590 Länge der Linie zwischen dem Sand und der Wasserkante oder so was, könnt ihr jetzt 00:39:07.590 --> 00:39:11.240 ein 30-cm-Lineal nehmen oder so, und da hinlegen und dann weiterlegen und so, und 00:39:11.240 --> 00:39:15.270 sagen, okay, das sind jetzt 60 cm, aber dann kommt vielleicht irgendwie ein 00:39:15.270 --> 00:39:18.800 Lebewesen, was noch viel kleiner ist als ihr, und sagt, ihr hättet doch auch jetzt 00:39:18.800 --> 00:39:21.631 so um die einzelnen Sandkörner herum messen müssen und so, und dann noch in die 00:39:21.631 --> 00:39:25.380 Lücken gehen, und dann kriegt man halt noch eine längere Länge raus. Und das 00:39:25.380 --> 00:39:28.130 führt sich beliebig fort weiter, irgendwie, die Sandkörner haben dann 00:39:28.130 --> 00:39:31.210 vielleicht Unregelmäßigkeiten, wo man rein messen kann, und wenn man auf atomare 00:39:31.210 --> 00:39:34.900 Ebene kommt, wird das irgendwie alles sehr merkwürdig, aber trotzdem sehen irgendwie, 00:39:34.900 --> 00:39:39.900 dass das Konzept einer Länge eines Landesumrisses halt nicht gut definiert 00:39:39.900 --> 00:39:48.200 ist. Mathematiker sprechen davon, dass diese Form eine fraktale Dimension > 1 00:39:48.200 --> 00:39:53.490 hat, das heißt, je genauer man hinguckt, desto länger wird dieses Ding. Und das 00:39:53.490 --> 00:39:59.390 finde ich nicht besonders intuitiv. Und das letzte Paradox, das ich mitgemacht 00:39:59.390 --> 00:40:04.377 habe, ist das Geburtstagsparadoxon. Manche von euch kennen das vielleicht. 00:40:04.377 --> 00:40:07.700 Im Wesentlichen geht es darum, also, wenn ich jetzt hier im Saal mich mal umgucke und 00:40:07.700 --> 00:40:12.400 irgendwie hier diese rechte Sitzspalte von euch nehme, ihr seid vielleicht 30 Leute 00:40:12.400 --> 00:40:15.910 oder so, würde ich schätzen, und die Frage dieses Paradoxons ist ist dann: Wie 00:40:15.910 --> 00:40:21.720 wahrscheinlich ist es, dass zwei von euch am genau gleichen Tag Geburtstag haben? 00:40:21.720 --> 00:40:25.670 Und wenn ihr mögt, und das noch nicht kennt, könnt ihr mal versuchen zu 00:40:25.670 --> 00:40:28.480 schätzen, irgendwie, was da so – also einfach so einen Prozentwert, wie 00:40:28.480 --> 00:40:31.340 wahrscheinlich das wäre, wenn ihr mögt. Habt ihr da irgendwie Ideen? 00:40:31.340 --> 00:40:36.427 Publikum: Gehen wir von 30 aus? blinry: Gehen wir von 30 aus. 00:40:36.427 --> 00:40:42.740 Publikum: Wahrscheinlich 30! blinry: lacht 00:40:42.740 --> 00:40:44.963 Publikum: Das ist hoch! blinry: Da wird gesagt, die 00:40:44.963 --> 00:40:52.010 Wahrscheinlichkeit sei hoch. Und, also – über 50 wird gesagt? Mhm. Das habe ich 00:40:52.010 --> 00:40:53.630 jetzt natürlich auch als Paradoxon eingeleitet, wo schon ein bisschen klar 00:40:53.630 --> 00:40:57.070 ist, dass wahrscheinlich irgendwie was Unerwartetes rauskommt. Wenn man da naiv 00:40:57.070 --> 00:41:01.430 rangeht, könnte man halt denken, okay, 30 Leute, es gibt irgendwie 365 Tage im Jahr, 00:41:01.430 --> 00:41:04.110 dass es da irgendwie eine Übereinstimmung gibt, ist die Wahrscheinlichkeit nicht so 00:41:04.110 --> 00:41:07.520 super hoch. Aber dadurch, dass, wenn man eine Person einer Gruppe hinzufügt, es 00:41:07.520 --> 00:41:12.640 halt viel mehr Paare gibt auf einmal, steigt diese Wahrscheinlichkeit halt 00:41:12.640 --> 00:41:16.530 schneller, als man denkt. Wenn man das als Graphen aufmalt, kriegt man hier auf der 00:41:16.530 --> 00:41:20.900 x-Achse die Anzahl Leute und auf der y-Achse die Wahrscheinlichkeit, dass es da 00:41:20.900 --> 00:41:24.710 irgendwie, dass zwei Leute an einem Tag Geburtstag haben. Und bei 30 Leuten sind 00:41:24.710 --> 00:41:30.430 wir da halt tatsächlich über 50%, irgendwie so bei 65% oder sowas, was ich 00:41:30.430 --> 00:41:34.840 wieder erstaunlich hoch finde. Und tatsächlich, ungefähr, also, genau – 23 00:41:34.840 --> 00:41:39.260 Leute ist so die Grenze wo es dann – wo die Wahrscheinlichkeit über 50% ist. Weiß 00:41:39.260 --> 00:41:42.760 jetzt nicht, ob ihr Lust habt, irgendwie nach dem Vortrag mal rauszufinden, ob das 00:41:42.760 --> 00:41:45.330 tatsächlich der Fall ist bei euch irgendwie, und die beiden Leute zu finden, 00:41:45.330 --> 00:41:48.731 die vielleicht am gleichen Tag Geburtstag haben, könnt euch irgendwie nach Monaten 00:41:48.731 --> 00:42:01.639 gruppieren oder so, das werden wir nicht anleiten. Aber dieses Ergebnis finde ich spannend. 00:42:01.639 --> 00:42:03.580 bleeptrack: Im Sommer, vor dem Camp, 00:42:03.580 --> 00:42:07.680 wollte ich mir einen coolen Stuhl bauen, ich habe mir gedacht, der soll irgendwie 00:42:07.680 --> 00:42:12.020 ein tolles Muster noch haben, und ich habe mich ein bisschen umgeguckt im Netz und 00:42:12.020 --> 00:42:16.180 habe ein spannendes Paper gefunden, das heißt „Modeling and visualization of leaf 00:42:16.180 --> 00:42:20.420 venation patterns“. Klingt jetzt erstmal irgendwie wirr. Also, es geht um das 00:42:20.420 --> 00:42:24.870 Adernwachstum in Blättern. Und die haben dann einen Algorithmus beschrieben, der 00:42:24.870 --> 00:42:27.890 eigentlich ganz simpel ist, den wollte ich euch mal zeigen, der ergibt nämlich enorm 00:42:27.890 --> 00:42:32.200 tolle Ergebnisse. Da können wir mal ein paar angucken. Das sind Ergebnisse, die 00:42:32.200 --> 00:42:35.880 die erzeugt haben damit, bei a) haben sie halt erstmal diese Wenigen ganz spärlich 00:42:35.880 --> 00:42:39.910 wachsen lassen, Richtung e) dann schon sehr verzweigt, und ihr seht schon, es 00:42:39.910 --> 00:42:44.180 gibt auch unterschiedliche Varianten, die bei c), die hören so in der Luft auf, und 00:42:44.180 --> 00:42:49.040 bei e) fangen die Adern an, auch so Loops wieder zu schließen, und bei f), g), h), 00:42:49.040 --> 00:42:51.500 da ist dann praktisch auch noch mal so ein bisschen unterschiedliche Parameter, dann 00:42:51.500 --> 00:42:56.380 bilden sich da größere Zellen oder kleinere Zellen. Und wir können uns mal 00:42:56.380 --> 00:42:59.194 ganz kurz anschauen, wie das funktioniert, das ist nämlich gar nicht so schwer. 00:42:59.194 --> 00:43:03.480 Die gehen davon aus, dass die Blattform vorgegeben ist, das ist dieser Umriss bei a. 00:43:03.480 --> 00:43:07.890 Die schwarzen Punkte, die ihr seht, ist die Vene oder die Ader, wie sie bisher 00:43:07.890 --> 00:43:11.830 gewachsen ist, die wird da in so Punkten dargestellt, und die roten Punkte sind 00:43:11.830 --> 00:43:15.800 Auxine, das sind in Blättern… ich weiß nicht, ob das Hormone sind, aber 00:43:15.800 --> 00:43:20.110 Wachstumsregler in so einem Blatt. Und eine Vene möchte zu seinem roten 00:43:20.110 --> 00:43:26.410 Auxinpunkt wachsen. Diese Auxinpunkte, die werden erstmal platziert in diesem Blatt, 00:43:26.410 --> 00:43:30.869 und danach wird geschaut, welcher Venenpunkt oder welcher Adernpunkt denn am 00:43:30.869 --> 00:43:35.990 nächsten zu welchem Auxinpunkt liegt, das sind dann die roten Linien, die ihr in b 00:43:35.990 --> 00:43:43.180 seht. Und jede Verbindung, jeder nächstgelegene Auxinpunkt beeinflusst die 00:43:43.180 --> 00:43:47.400 Richtung, in die die nächste Adernwachstumsphase eingeleitet wird. Das 00:43:47.400 --> 00:43:52.970 heißt, hier oben, der obere Punkt hier, der wird von zwei Punkten beeinflusst, das 00:43:52.970 --> 00:43:59.784 heißt der Mittel davon, praktisch die… genau, die – nee, der wird von drei 00:43:59.784 --> 00:44:03.180 beeinflusst, sorry, den hier unten hab ich vergessen, von den dreien beeinflusst, das 00:44:03.180 --> 00:44:07.350 heißt die Mittelrichtung ist dann die, in die der nächste Punkt gesetzt wird, das 00:44:07.350 --> 00:44:10.980 wäre dann der hier oben, der wird dann platziert. Im nächsten Schritt wird 00:44:10.980 --> 00:44:16.619 geguckt, es gibt so einen Umkreisradius, der wird als Parameter definiert, liegt in 00:44:16.619 --> 00:44:21.960 diesem Umkreis ein Venenpunkt, dann wird das Auxin vernichtet, dann wurde das Auxin 00:44:21.960 --> 00:44:27.150 praktisch gefressen von der Vene und verschwindet. Im nächsten Schritt ist das 00:44:27.150 --> 00:44:31.640 Blatt dann gewachsen, das heißt man skaliert diesen Blatt-Shape einfach ein 00:44:31.640 --> 00:44:38.010 bisschen größer und setzt dann neue Auxinpunkte, die werden erstmal zufällig 00:44:38.010 --> 00:44:41.521 gesetzt, und dann wird aber geguckt, ob zwei zu nahe beieinander liegen, da gibt 00:44:41.521 --> 00:44:44.580 es dann auch so einen eigenen Umkreis, das heißt, wenn zwei sehr nah sind, dann wird 00:44:44.580 --> 00:44:47.660 auch wieder einer rausgelöscht, so dass – das ist ein bisschen wie Poisson disc 00:44:47.660 --> 00:44:50.060 sampling, also da werden einfach Punkte verteilt, dass sie einfach einen 00:44:50.060 --> 00:44:54.530 Mindestabstand haben, und dann fängt das Ganze eigentlich immer von vorne an. Das 00:44:54.530 --> 00:44:57.330 heißt, es wird immer geguckt, wie viele Auxinpunkte gibt es, welche beeinflussen 00:44:57.330 --> 00:45:00.160 die Ader, das heißt die wachsen immer irgendwie so zu dem Auxin, die können 00:45:00.160 --> 00:45:05.950 dieses Auxin fressen oder verbrauchen, und so… naja, so verästeln sich da diese 00:45:05.950 --> 00:45:11.150 Adern. Und ich habe das dann einfach mal implementiert, das sieht dann zum Beispiel 00:45:11.150 --> 00:45:20.395 so aus, wenn es dann denkt, abzuspielen – genau. Was ihr hier aber auch schon seht, 00:45:20.395 --> 00:45:24.270 was ich in diesem Fall passiert ist, ist, dass die Venen mitskalieren, das sind 00:45:24.270 --> 00:45:29.090 praktisch zwei Modi in der Simulation, die die vorstellen, einmal skalieren diese 00:45:29.090 --> 00:45:32.970 Venen mit in diesem Skalierschritt und einmal nicht, und je nachdem, ob man das 00:45:32.970 --> 00:45:36.520 macht oder nicht, enthält man Adern, die einfach sehr blitzförmig nach außen 00:45:36.520 --> 00:45:41.460 wachsen oder die eben sehr stark nach innen verästeln. Das habe ich eben einfach 00:45:41.460 --> 00:45:44.670 einmal nachimplementiert, das ist irgendwie nicht so tragisch, und die 00:45:44.670 --> 00:45:47.460 ganzen Sachen sind jetzt hier bunt, damit man es – damit ich für mich praktisch 00:45:47.460 --> 00:45:52.160 sehe, wo so einzelne Abschnitte liegen. Im letzten Schritt, wenn die Simulation dann 00:45:52.160 --> 00:45:56.000 fertig durchgelaufen ist, dann kann ich noch berechnen, wie dick so eine Ader sein 00:45:56.000 --> 00:45:58.030 soll, wenn die nämlich mehrere Verzweigungen hat, dann ist die Ader 00:45:58.030 --> 00:46:02.020 natürlich dicker, da fließt ja der Adernsaft durch, und wenn diese Adern 00:46:02.020 --> 00:46:09.270 Richtung Blattende gehen, dann werden die dünner. Und das sind noch Ergebnisse, die 00:46:09.270 --> 00:46:12.280 die auch in dem Paper veröffentlicht haben, die ich ganz spannend fand, links 00:46:12.280 --> 00:46:16.359 ist immer eine Fotografie und rechts deren gerendertes Modell auf praktisch den 00:46:16.359 --> 00:46:20.230 gleichen Umriss, und da sieht man mal, wie ähnlich tatsächlich die Ergebnisse sind, 00:46:20.230 --> 00:46:24.190 also ich finde, mit ihrer Simulation haben die das eigentlich ganz gut erfasst, wie 00:46:24.190 --> 00:46:31.030 das Wachstum funktioniert. Und, wie gesagt, es sollte ja ein Stuhl werden, das 00:46:31.030 --> 00:46:34.609 heißt, ich hatte mir das implementiert und habe das dann einfach mal auf meine CNC- 00:46:34.609 --> 00:46:38.690 Fräse gelegt, die ist leider nicht, naja, die ist so eine Eigenbau-CNC-Fräse, also 00:46:38.690 --> 00:46:42.500 da dauert das alles ziemlich lang, das heißt das Ausfräsen von einem so’n Teil 00:46:42.500 --> 00:46:46.361 hat immer ungefähr 5 Stunden gedauert, und ich brauchte zwei von diesen Teilen, damit 00:46:46.361 --> 00:46:50.550 da ein ganzer Stuhl daraus wird. Da hat dann – so eine Platte hat dann zum Schluss 00:46:50.550 --> 00:46:54.013 so ausgesehen, ich habe von Hand diese Quadrate noch eingesetzt, das sind so – 00:46:54.013 --> 00:46:59.500 „Nuten“ ist falsch, aber der steht praktisch, wo ich die Stuhlbeine 00:46:59.500 --> 00:47:02.970 einstecken möchte, später, und ich habe die Venen außenrum geschlossen, damit es 00:47:02.970 --> 00:47:08.150 ein bisschen stabiler wird. Und das Stuhlergebnis schaut dann so aus, die 00:47:08.150 --> 00:47:12.410 Files sind online auf der Webseite, solltet ihr euch den nachbauen wollen, und 00:47:12.410 --> 00:47:16.620 ich – der Knackpunkt, den ich dann zum Schluss festgestellt habe, wenn man so was 00:47:16.620 --> 00:47:20.359 hat wie Adernwachstum, und man maximiert da ja praktisch die Oberfläche, das 00:47:20.359 --> 00:47:24.619 verästelt sich ja total, dann wird Nachbearbeiten von Holz auf einmal ganz 00:47:24.619 --> 00:47:27.960 spannend, weil man auf einmal sehr viel Oberfläche hat, und von Hand mit 00:47:27.960 --> 00:47:31.510 Schmirgelpapier nochmal jede kleine Ritze nachtzuarbeiten, hat sehr viel Spaß 00:47:31.510 --> 00:47:35.730 gemacht. Aber es ist ein sehr netter Stuhl und irgendwie, ja – war ein sehr schönes 00:47:35.730 --> 00:47:40.109 Projekt für den Sommer mit generativer Kunst. Mir wurde gerade 0 Minuten 00:47:40.109 --> 00:47:42.859 angezeigt, aber nach uns ist niemand, stört euch das, wenn wir einfach noch kurz 00:47:42.859 --> 00:47:49.958 ein paar Minuten weitermachen? Dann machen wir nämlich einfach direkt weiter. 00:47:49.958 --> 00:48:01.990 blinry: Hallo. Danke. Ich möchte euch erzählen die Geschichte der illegalen 00:48:01.990 --> 00:48:09.000 Primzahlen. Und diese ganze Sache hat zu tun mit DVDs. Wir haben einige junge Leute 00:48:09.000 --> 00:48:15.750 im Publikum, wer von euch hatte schon mal eine DVD in der Hand? Ich würde auch gerne 00:48:15.750 --> 00:48:18.760 die Gegenprobe machen, ob jemand das noch nicht hatte? Das ist tatsächlich niemand, 00:48:18.760 --> 00:48:24.500 das ist spannend, da sind wir alle auf demselben Level, das ist gut. Also, DVDs. 00:48:24.500 --> 00:48:28.020 Ihr kamt vielleicht mal in die Situation, dass ihr eine hattet und eine 00:48:28.020 --> 00:48:31.320 Sicherheitskopie davon machen wolltet, und dann hat vielleicht das Programm eurer 00:48:31.320 --> 00:48:36.410 Wahl so etwas gesagt, dass die DVD kopiergeschützt wäre und das deshalb nicht 00:48:36.410 --> 00:48:40.840 ginge. Da haben sich Leute mal Gedanken darüber gemacht, wie kriegen wir das hin, 00:48:40.840 --> 00:48:43.950 das Leute sich nicht einfach irgendwie unseren Content kopieren, haben sich ein 00:48:43.950 --> 00:48:47.250 Verfahren ausgedacht, den Inhalt darauf zu verschlüsseln. Das ist ein Verfahren, das 00:48:47.250 --> 00:48:53.599 nennt sich CSS, lustigerweise, steht für Content Scrambling System, und ist halt so 00:48:53.599 --> 00:48:57.710 ein Verfahren, das irgendwie geheime Keys und geheime Verfahren hat und irgendwie 00:48:57.710 --> 00:49:02.532 die Bits auf der DVD durch einen komplizierten Algorithmus routet, den ich 00:49:02.532 --> 00:49:04.980 mir nicht genau angeguckt habe, wo dann am Schluss irgendwie eine entschlüsselte 00:49:04.980 --> 00:49:10.280 Version rauskommt. Und, naja, die haben halt Informationen darüber, wie man das 00:49:10.280 --> 00:49:14.880 verschlüsseln kann, an Leute gegeben, die Content herstellen, und Informationen über 00:49:14.880 --> 00:49:19.070 Entschlüssellung an Hersteller von Abspielgeräten, so authentifizierten 00:49:19.070 --> 00:49:21.770 Abspielgeräten, die keine bösen Sachen damit machen, sondern das nur auf einen 00:49:21.770 --> 00:49:27.790 Bildschirm leiten oder sowas, und, ja, haben gehofft, dass das längere Zeit so 00:49:27.790 --> 00:49:32.700 bleibt, dass Leute keinen Unfug damit treiben. Dann haben sich Leute hingesetzt, 00:49:32.700 --> 00:49:35.980 sich einen DVD-Spieler genommen, irgendwie versucht zu reverse engineeren, wie dieses 00:49:35.980 --> 00:49:40.385 Verfahren funktioniert und was die Keys sind und so, und haben das halt mal in C 00:49:40.385 --> 00:49:49.270 nachimplementiert, CSS-Descrambling. Das ist jetzt so die Hauptfunktion dieses 00:49:49.270 --> 00:49:53.520 Verfahrens, drumrum im Sourcecode stehen noch ein paar längere Tabellen von Zahlen, 00:49:53.520 --> 00:49:57.730 das sind so ein paar Tables, die hier irgendwie mit CSSt2 und so referenziert 00:49:57.730 --> 00:50:02.640 werden, wo ab und zu mal Lookups drin passieren, aber das ist so der Kern davon, 00:50:02.640 --> 00:50:06.660 und andere Personen haben sich dieses Programm genommen, haben dazu eine GUI 00:50:06.660 --> 00:50:09.250 geschrieben, was es den Leuten sehr einfach machte, irgendwie DVDs zu 00:50:09.250 --> 00:50:13.900 kopieren. Und das gefiel natürlich dann vielen Leuten nicht, es gab irgendwie 00:50:13.900 --> 00:50:17.360 verschiedene Gerichtsverfahren irgendwie gegen diese Person, die die GUI 00:50:17.360 --> 00:50:21.390 geschrieben hat, ich glaube es war ein Norweger, und, naja, da wurde es dann 00:50:21.390 --> 00:50:24.510 relativ schnell knifflig, irgendwie, was man dann da eigentlich genau verbieten 00:50:24.510 --> 00:50:28.855 will, irgendwie wie dieser Algorithmus funktioniert oder die Keys oder was? Und 00:50:28.855 --> 00:50:32.550 Leute haben sich dann tatsächlich mal, naja, ein bisschen kreativer damit 00:50:32.550 --> 00:50:35.730 auseinandergesetzt, wo eigentlich so die Grenze liegt zu dem, was eigentlich 00:50:35.730 --> 00:50:42.340 geschützt werden soll, und dann zum Beispiel „DeCSS – The Movie“ produziert, 00:50:42.340 --> 00:50:46.950 da scrollt im Wesentlichen der Sourcecode zu dramatischer Musik durch den Weltraum, 00:50:46.950 --> 00:50:49.940 so ein bisschen Star Wars-mäßig irgendwie, und da ist dann halt die Frage, ist das 00:50:49.940 --> 00:50:52.381 jetzt irgendwie ein künstlerisches Produkt, was schützenswert ist, oder was 00:50:52.381 --> 00:50:57.270 verboten werden soll, oder wo es da… wie ist das so? Oder Leute haben eine 00:50:57.270 --> 00:51:01.090 dramatische Lesung gemacht des Sourcecodes, ich dachte, da hören wir mal 00:51:01.090 --> 00:51:05.930 kurz rein, das geht 7 Minuten, einfach mal so die ersten Sekunden oder so… 00:51:05.930 --> 00:51:13.190 Aufnahme: Ciphermagi(?) productions present: css_descramble.c. Written by 00:51:13.190 --> 00:51:26.460 Derek Fawcus. Read by Xader Vartec. Procedure css_descramble. /*** 00:51:26.460 --> 00:51:41.696 This function does the actual descrambling. * sec: encrypted sector (2048 bytes). key: 00:51:41.696 --> 00:51:45.520 encrypted title key obtained from CSS… blinry: Und so weiter. Ihr versteht die 00:51:45.520 --> 00:51:52.099 Idee. Was ist noch passiert? Leute haben Haikus geschrieben, also jetzt nicht nur 00:51:52.099 --> 00:51:55.920 einen, sondern ungefähr – ich glaube 600 Stück oder so, die beschreiben, wie der 00:51:55.920 --> 00:51:59.590 Algorithmus funktioniert. Tatsächlich sind darin auch die Keys untergebracht, und das 00:51:59.590 --> 00:52:03.900 ist jetzt hier so ein Kernstück davon, also Haikus, ihr kennt das irgendwie: fünf 00:52:03.900 --> 00:52:07.100 Silben, sieben Silben, fünf, stimmt das? So eine japanische klassische 00:52:07.100 --> 00:52:09.690 Gedichtsform, irgendwie, an die man sich relativ strikt halten kann, wenn einem das 00:52:09.690 --> 00:52:14.700 Spaß macht, und da schreibt dann halt jemand: „All we have to do / is this: copy 00:52:14.700 --> 00:52:21.280 our DKEY / into im1; use the rule above / that decrypts a disk key (with / im1 and 00:52:21.280 --> 00:52:27.850 its; friend im2 as / inputs) – thus we decrypt the / disk key im1.“ Und so 00:52:27.850 --> 00:52:33.150 weiter, über viele, viele Seiten. Ist das Kunst? Ist das ein Programm, ist das ein 00:52:33.150 --> 00:52:38.150 Algorithmus? Wer weiß. Leute haben das übrigens auch auf T-Shirts gedruckt und 00:52:38.150 --> 00:52:41.110 auf Krawatten, und das irgendwie angefangen zu verkaufen und zu tragen und 00:52:41.110 --> 00:52:45.310 so. Naja, und ein Mathematiker hat sich mal hingesetzt und hat diese Zahl 00:52:45.310 --> 00:52:51.760 bestimmt. Die Zahl ist interessant, weil wenn man sie in hexadezimaler Notation 00:52:51.760 --> 00:52:56.660 schreibt, ist das eine ZIP-Datei, die dieses C-Programm enthält. 00:52:56.660 --> 00:53:01.050 Lautes Lachen im Publikum Und das ist eine Primzahl, und das macht 00:53:01.050 --> 00:53:05.050 es so spannend, also der Trick über den das gefunden wurde, war tatsächlich, dass 00:53:05.050 --> 00:53:08.540 bei einer ZIP-Datei, da kann man irgendwie beliebig Null-Bytes hinten anhängen, ohne 00:53:08.540 --> 00:53:11.810 die Bedeutung der Datei zu verändern, und das hat halt der Mensch ausgenutzt, 00:53:11.810 --> 00:53:14.890 irgendwie, um mal ziemlich brute force- mäßig irgendwie nach einer bestimmten 00:53:14.890 --> 00:53:17.610 Regel zu gucken, okay, was sind so Primzahlkandidaten davon, irgendwie, und 00:53:17.610 --> 00:53:21.750 dann mal ein paar darauf zu überprüfen, ob es wirklich welche sind und bei einer Zahl 00:53:21.750 --> 00:53:25.550 hatte er halt Glück, und, genau, hatte diese Primzahl, die jetzt vielleicht eine 00:53:25.550 --> 00:53:28.859 illegale Primzahl ist. Das war die allererste, die er gefunden hat, er hat 00:53:28.859 --> 00:53:34.630 später auch noch eine bestimmt, die ungefähr doppelt so lang war, und das war 00:53:34.630 --> 00:53:37.523 interessant, weil es zu dem Zeitpunkt, zu dem der das gemacht hat, das war so 00:53:37.523 --> 00:53:42.340 irgendwie kurz nach der Jahrtausendwende, glaube ich, zu den zehn größten 00:53:42.340 --> 00:53:47.390 Primzahlen, die bekannt waren überhaupt, gehörte, und das machte sie halt allein 00:53:47.390 --> 00:53:49.981 durch diesen Umstand schon irgendwie veröffentlichungswürdig, und dann ist es 00:53:49.981 --> 00:53:53.560 so gelandet in Highscore-Listen von den größten Primzahlen, also, ist auf ganz 00:53:53.560 --> 00:53:56.170 vielen Webseiten gelandet, und das finde ich ein sehr charmanten Hack, irgendwie, 00:53:56.170 --> 00:54:06.921 die Informationen zu verbreiten. bleeptrack: Zum Schluss noch ein bisschen 00:54:06.921 --> 00:54:11.500 Kunst, ein bisschen Kunst aus dem KI- Umfeld, und ich will nicht viel über 00:54:11.500 --> 00:54:14.940 neuronale Netze reden, nur eine Kleinigkeit vorneweg, damit man so ein 00:54:14.940 --> 00:54:18.431 bisschen ein Gefühl hat, was eigentlich passiert. Was wir hier anschauen, ist ein 00:54:18.431 --> 00:54:23.310 „variational autoencoder“, das ist so eine der einfachsten Methoden für ein 00:54:23.310 --> 00:54:27.100 neuronales Netz, irgendwie Bilder zu generieren. Was ihr oben seht, ist ein 00:54:27.100 --> 00:54:30.910 Teil des Netzes, da kann ich vorne ein Bild reinschmeißen, ich sage jetzt mal 00:54:30.910 --> 00:54:35.530 ganz banal, der macht da Neuronale-Netz- Magie, wir landen in einem Raum, der nennt 00:54:35.530 --> 00:54:41.180 sich „latent space“, das ist eine sehr heruntergebrochene Repräsentation von 00:54:41.180 --> 00:54:44.750 Bildern, und ich kann das ganze auch wieder rückwärts machen, um daraus wieder 00:54:44.750 --> 00:54:48.560 das ursprüngliche Bild zu rekonstruieren, das mache ich in meiner Trainingsphase. 00:54:48.560 --> 00:54:52.380 Das heißt ich schmeiße Bild rein, der verwurstelt das, rekonstruiert, und dann 00:54:52.380 --> 00:54:56.710 gucke ich mir die Differenz an und kann mit dieser Differenz praktisch lernen und 00:54:56.710 --> 00:54:59.900 das Verfahren optimieren. Was ich aber auch machen kann, ist, ich schmeiße am 00:54:59.900 --> 00:55:05.231 Anfang kein Bild rein, sondern steige tatsächlich direkt in diesen latent space 00:55:05.231 --> 00:55:09.490 ein und mach da, such mir da drin, in diesem space, in diesem Raum einen 00:55:09.490 --> 00:55:13.160 zufälligen Vektor und lass den mal rekonstruieren, und mal gucken, was dann 00:55:13.160 --> 00:55:16.490 für ein Bild rauskommt. Das sind so Verfahren, mit denen da gearbeitet wird. 00:55:16.490 --> 00:55:21.220 Und was ich dann halt auch machen kann, angenommen, ich habe hier irgendwie zwei 00:55:21.220 --> 00:55:25.140 Bilder, zum Beispiel irgendwie links diesen Hund und rechts diesen – ist es ein 00:55:25.140 --> 00:55:30.150 Leopard? ich glaube schon, mit zwei komischen Ohren, also irgendwas – beim 00:55:30.150 --> 00:55:33.130 Generieren im Modell auch nicht so toll – aber was ihr schon seht, man kann jetzt 00:55:33.130 --> 00:55:36.760 auch auf einmal Zwischenbilder berechnen, ganz spannend, das was man ganz früh in 00:55:36.760 --> 00:55:39.840 den 90ern mit so komischer Morph-Software gemacht hat, kann man mal jetzt mit 00:55:39.840 --> 00:55:43.820 neuronalen Netzen machen, das heißt, ich suche mir die beiden Bilder in diesem 00:55:43.820 --> 00:55:48.010 latent space und kann dazwischen interpolieren. Und das sieht halt viel 00:55:48.010 --> 00:55:51.430 spannender – diese Interpolation ist viel spannender, als tatsächlich auf Pixelebene 00:55:51.430 --> 00:55:56.270 zu interpolieren, weil auf Pixelebene interpolieren wäre überblenden, wie man es 00:55:56.270 --> 00:55:58.330 in einem Video kennt, ja, ich blende von A nach B über, das ist doof, und hier habe 00:55:58.330 --> 00:56:03.350 ich halt, naja inhaltlich zumindest halbwegs korrekte Bilder, die rauskommen, 00:56:03.350 --> 00:56:07.730 das kann man dann auch in Videos rendern, das sieht dann vielleicht so aus. (Den Ton 00:56:07.730 --> 00:56:15.119 brauchen wir in dem Fall nicht, der ist nicht so spannend.) Das Modell hier heißt 00:56:15.119 --> 00:56:19.080 „Big GAN“, da wurden auch unterschiedliche – die Bilder in unterschiedliche Klassen 00:56:19.080 --> 00:56:22.730 kategorisiert, in Hunde, Blumen und so, die benutzen aber keinen variational 00:56:22.730 --> 00:56:26.980 autocoder, das sind dann andere neuronale Strukturen, aber die besitzen halt 00:56:26.980 --> 00:56:30.220 trotzdem diesen latent space, das heißt, diese Interpolation kann ich trotzdem 00:56:30.220 --> 00:56:33.820 machen. Und dieses Morphing, nenne ich’s jetzt mal, das da stattfindet, sieht halt, 00:56:33.820 --> 00:56:44.040 finde ich, total faszinierend aus. Was man dann auch auf einmal machen kann, ist 00:56:44.040 --> 00:56:47.589 Vektor-Mathe in diesem Raum, das heißt, man kann sich mal angucken, ob es 00:56:47.589 --> 00:56:51.859 bestimmte Vektoren gibt, um die ich diesen Punkt verschieben kann in dem Raum, die 00:56:51.859 --> 00:56:56.671 bestimmte Sachen auslösen, oder ich kann mir Punkte in diesem Raum angucken und die 00:56:56.671 --> 00:57:00.210 halt clustern und zum Beispiel sagen, in dem Fall haben wir hier zum Beispiel 00:57:00.210 --> 00:57:07.109 irgendwie ein Clustering gefunden mit Damen, die lächeln, und Damen, die neutral 00:57:07.109 --> 00:57:10.590 sehen, und jetzt kann ich auch so was sagen, wie: Ich nehme den einen Punkt, den 00:57:10.590 --> 00:57:15.500 einen Vektorpunkt, ziehe den vom anderen ab, das heißt smiling woman minus neutral 00:57:15.500 --> 00:57:19.880 woman wurde auf einmal neutral man, weil dieses Frauen-Attribut praktisch 00:57:19.880 --> 00:57:25.860 wegsubtrahiert wird, ich kann es aber auch zum Beispiel ganz unten mit Sonnenbrillen 00:57:25.860 --> 00:57:31.990 oder mit Brillen machen und sag, man with glasses minus man without glasses ist dann 00:57:31.990 --> 00:57:36.090 auf einmal woman without glasses, weil ich das halt auch praktisch wegsubtrahiert 00:57:36.090 --> 00:57:40.030 hab. Und da kann man sehr viel Spaß mit haben, weil wir es ja vorhin von Twitter- 00:57:40.030 --> 00:57:45.830 Bots hatten gibt es hier nämlich auch noch einen, das ist der „smiling vector bot“, 00:57:45.830 --> 00:57:52.609 der sucht sich einfach Bilder, sucht dann dieses Bild passend im latent space und 00:57:52.609 --> 00:57:57.190 addiert da einen Lächeln-Vektor drauf, oder zum Teil subtrahiert ihn dann auch 00:57:57.190 --> 00:58:00.910 wieder, je nachdem, und es gibt oft so ein bisschen creepy Ergebnisse, aber man kann 00:58:00.910 --> 00:58:05.010 sich da halt mal durchscrollen… vielleicht klicken wir nochmal den kompletten Account 00:58:05.010 --> 00:58:24.710 an, dann schauen wir mal was er aktuell gepostet hat… Ups, okay… genau, der postet 00:58:24.710 --> 00:58:27.320 halt eben auch regelmäßig und nimmt da – ich weiß ehrlich gesagt nicht, wo er die 00:58:27.320 --> 00:58:30.900 Bilder reinfüttert oder wo die herkommen, zum Teil macht er das auch auf Videos und 00:58:30.900 --> 00:58:37.800 morpht da dann hin und her. Was ihr vielleicht auch schon gesehen habt, ist 00:58:37.800 --> 00:58:44.740 „DeepDream“, das ist praktisch so eine Überoptimierung auf einem Bild. Ihr seht 00:58:44.740 --> 00:58:48.150 schon hier (da machen wir auch den Ton aus, glaub ich, der ist ein bisschen 00:58:48.150 --> 00:58:51.800 komisch), hier wurde das auf einem Video gemacht, das ist ganz spannend, und ihr 00:58:51.800 --> 00:58:55.800 seht schon, trainiert wurde das neuronale Netz eigentlich auf Bildern von Hunden, 00:58:55.800 --> 00:58:59.420 das heißt, hier werden sich praktisch jetzt überall Hunde reingedacht, und ich 00:58:59.420 --> 00:59:04.119 glaube… jetzt weiß ich nicht… ich habe noch kein LSD probiert, sieht so ein LSD- 00:59:04.119 --> 00:59:07.830 Trip aus? Aber so würde man sich’s vorstellen, würde ich mal sagen, es ist 00:59:07.830 --> 00:59:12.150 sehr… es ist super trippy und super abstrakt, und es ist auch ganz spannend, 00:59:12.150 --> 00:59:16.960 zu sehen, wo überall so Gesichter und Muster auftauchen. Was bei dem Video jetzt 00:59:16.960 --> 00:59:20.950 auch sehr bemerkenswert ist, ist, dass es sehr konsistent ist, also wenn man so 00:59:20.950 --> 00:59:26.990 einen Kameraschwenk hat, dann bleibt so ein Hundegesicht stehen, das war am Anfang 00:59:26.990 --> 00:59:30.490 bei den ersten Versuchen, so neuronale Netze auf Videos anzuwenden, oft nicht, da 00:59:30.490 --> 00:59:33.260 muss man mal ein bisschen mittricksen, dass Sachen da konsistent bleiben, 00:59:33.260 --> 00:59:43.160 ansonsten wobbelt es noch viel mehr. Ah, genau, das habe ich jetzt auch noch vor 00:59:43.160 --> 00:59:46.320 ein paar Tagen gefunden, das ist noch mal so eine Interpolation, aber nur auf 00:59:46.320 --> 00:59:53.950 Katzenbildern, die fand ich auch irgendwie sehr schön. Ich habe auch immer das 00:59:53.950 --> 00:59:58.133 Gefühl, man sieht halt auch zum Teil, wie die Positionen wechseln, also gerade wenn 00:59:58.133 --> 01:00:01.340 dann der Körper so anfängt, zu wobbeln, sind es hat diese ganzen typischen 01:00:01.340 --> 01:00:04.330 unterschiedlichen Fußpositionen, die die Katze so haben kann, die da halt auch mal 01:00:04.330 --> 01:00:12.800 so durchpermutiert werden praktisch. Ich kann übrigens den Twitter-Account generell 01:00:12.800 --> 01:00:15.849 sehr empfehlen, roadrunner01, ist zwar irgendwie so ein bisschen nichtssagend, 01:00:15.849 --> 01:00:18.770 aber der experimentiert ganz viel mit neuronalen Netzen und postet ganz oft so 01:00:18.770 --> 01:00:22.460 Videos, die sind immer alle ganz spannend anzugucken. Und wir waren ja bei Kunst, 01:00:22.460 --> 01:00:25.971 ich möchte euch noch ein paar Kunstprojekte zeigen, die ich sehr 01:00:25.971 --> 01:00:30.490 beeindruckend fand in der letzten Zeit. Das ist von Helena Sarin, die macht ganz 01:00:30.490 --> 01:00:33.560 viel, und da ist es sehr beeindruckend, dass die immer – die Datensätze, mit denen 01:00:33.560 --> 01:00:37.599 sie ihre neuronalen Netze trainiert, sind ihre eigenen Bilder und Fotos und 01:00:37.599 --> 01:00:40.800 Zeichnungen und sowas, und es ist oft – das sieht man nicht oft, weil Leute 01:00:40.800 --> 01:00:44.369 kratzen sich oft halt irgendwie Datensätze von irgendwo oder nehmen so große 01:00:44.369 --> 01:00:47.980 Bilderdatenbanken, und die macht alles auf ihren eigenen Datensätzen und hängt da 01:00:47.980 --> 01:00:53.010 diverse… also ich glaube, dass die mit GANs arbeitet, hauptsächlich aneinander, 01:00:53.010 --> 01:00:56.480 und generiert da irgendwie oft sehr abstrakte Bilder, die meisten Projekte 01:00:56.480 --> 01:01:00.620 laufen unter dem Namen „GAN Weaver“, dass sind oft so Bilder, die dann auch wie so 01:01:00.620 --> 01:01:04.060 ein Puzzle aneinanderhängen, also die finde ich sehr spannend anzuschauen, und 01:01:04.060 --> 01:01:08.550 in dem Fall war das glaube ich – genau, steht auch da, das ist ein Datensatz, das 01:01:08.550 --> 01:01:10.700 aus zwei unterschiedlichen Sachen trainiert wurde, einmal mit blühenden 01:01:10.700 --> 01:01:17.420 Bäumen und mit Bücherseiten, in denen Haikus standen. Anderes schönes Projekt 01:01:17.420 --> 01:01:26.700 ist von Tom White, der exploitet eigentlich neuronale Netze oder 01:01:26.700 --> 01:01:31.550 Bilderkennungssoftware, und der hat sich eine ganz spannende Architektur 01:01:31.550 --> 01:01:35.260 geschrieben, um praktisch an so abstrakte Bilder zu kommen, die aber immer noch 01:01:35.260 --> 01:01:39.620 erkannt werden von der Bilderkennung, also, ihr könnt ja, ich weiß nicht, 01:01:39.620 --> 01:01:43.570 vielleicht könnt ihr erraten, zum Beispiel das hier in der Mitte oben, was denkt ihr, NOTE Paragraph 01:01:43.570 --> 01:01:47.866 nach was das aussieht? Publikum: Flugzeug? 01:01:47.866 --> 01:01:53.180 bleeptrack: Flugzeug, ja, könnte auch gut sein, ist etwas anderes. Das ist wohl auf 01:01:53.180 --> 01:01:56.880 das Modell von einem Hai trainiert, oder mit dem Modell von einem Hai trainiert. 01:01:56.880 --> 01:02:01.150 Was haben wir noch, wo man vielleicht noch ganz gut drauf kommt? Das andere 01:02:01.150 --> 01:02:05.900 dunkelblaue hier unten vielleicht, genau, ist ein Fön, was ich noch im Kopf hab, das 01:02:05.900 --> 01:02:09.030 hier war „cabbage“, also ein Krautkopf, und das hier unten, da stand 01:02:09.030 --> 01:02:13.869 „jack-o'-lantern“ dabei, also so eine Halloween-Kürbis… wie sagt man, 01:02:13.869 --> 01:02:17.360 geschnitzter Kürbis für Halloween. Und ich finde es halt ganz spannend, weil es ist 01:02:17.360 --> 01:02:20.470 ja sehr abstrakt, aber man erkennt als Mensch auch eigentlich schon immer noch 01:02:20.470 --> 01:02:25.110 ganz gut, was es eigentlich darstellt, und der experimentiert da auch in die Richtung 01:02:25.110 --> 01:02:30.060 sehr viel, finde ich sehr schöne Projekte. Uah, das war falsche Richtung, hier sind 01:02:30.060 --> 01:02:34.070 wir noch. Okay, noch drei kleine Sachen zum Schluss. Die sind alle von einem 01:02:34.070 --> 01:02:39.560 Künstlerduo aus Südkorea, und ich versuche das jetzt mal korrekt zu sprechen, 01:02:39.560 --> 01:02:43.960 „Shinseungback Kimyonghun“ heißen die (und ich hoffe, sie nehmen mir das jetzt nicht 01:02:43.960 --> 01:02:47.680 übel), da möchte ich drei kleine Projekte vorstellen. Das erste Projekt heißt 01:02:47.680 --> 01:02:52.330 „Nonfacial Mirror“, das ist ein Spiegel, wie ihr gleich sehen werdet, mit 01:02:52.330 --> 01:02:57.801 Gesichtserkennung, der aber eigentlich nicht möchte, dass man sich darin anschaut. 01:02:57.801 --> 01:03:15.726 [Unverständlich] 01:03:15.726 --> 01:03:19.500 Stimmt, ja, aber dreht der sich weg von der Person? Ich glaube, der ist 01:03:19.500 --> 01:03:22.900 umgekehrt, der verfolgt, oder, hab ich das richtig gesehen? Der ist praktisch das 01:03:22.900 --> 01:03:27.140 umgekehrte Äquivalent. Falls man es nicht gehört hat, gerade sagte jemand im 01:03:27.140 --> 01:03:29.940 Publikum, wir haben hier auch so eine Installation, das stimmt, da bin ich auch 01:03:29.940 --> 01:03:33.579 kurz vorbeigelaufen. Den finde ich sehr nett. Die Beispiele, die ich jetzt habe, 01:03:33.579 --> 01:03:36.304 sind alle mit Gesichtserkennung, die machen aber auch andere Sachen. Und die 01:03:36.304 --> 01:03:39.020 haben zum Beispiel einfach mal eine Kamera mit Gesichtserkennung in die Wolken 01:03:39.020 --> 01:03:42.220 gehalten, was man ja sonst so vielleicht auch ganz gerne macht und mal so schaut, 01:03:42.220 --> 01:03:45.270 was in den Wolken erkannt wird, und die haben halt sich immer das Bild 01:03:45.270 --> 01:03:48.180 gespeichert, wenn ein Gesicht erkannt wird, und haben das mal sehr groß 01:03:48.180 --> 01:03:51.070 abgezogen. Und die finde ich zum Teil auch sehr schön, weil man wirklich halt oft 01:03:51.070 --> 01:03:57.390 Gesichter da drin sieht. Und das allerletzte Projekt, auch sehr spannend, 01:03:57.390 --> 01:04:03.790 da haben die andere Künstler gebeten, ein Porträt zu zeichnen. Die Challenge dabei 01:04:03.790 --> 01:04:07.610 war aber, dass von oben eine Kamera auf die Leinwand gerichtet wird, mit 01:04:07.610 --> 01:04:12.230 Gesichtserkennung, und das Ziel war, das Porträt sollte eben nicht als Person 01:04:12.230 --> 01:04:25.810 erkannt werden, und das ist gar nicht so einfach. Und der Künstler hatte neben sich 01:04:25.810 --> 01:04:30.480 stehen den Laptop und konnte halt sehen, was wie erkannt wurde. Da liefen 01:04:30.480 --> 01:04:33.500 unterschiedliche Algorithmen, also ihr seht jetzt ja da praktisch immer, zum 01:04:33.500 --> 01:04:36.079 Beispiel den grünen, roten, oder einen blauen Rahmen, ich glaube, da liefen drei 01:04:36.079 --> 01:04:39.829 Algorithmen parallel, die versucht haben, da ein Gesicht darin zu erkennen. Man 01:04:39.829 --> 01:04:42.869 sieht ja dann schon, wie der Künstler halt dann hartnäckig versucht, irgendwie hier 01:04:42.869 --> 01:04:45.510 Augen anders zu platzieren, später werden dann auch mal irgendwie Linien einfach 01:04:45.510 --> 01:04:47.950 quer durchgemalt, so ein bisschen glaube ich vielleicht auch aus Frustration, dass 01:04:47.950 --> 01:04:54.430 immer noch ein Gesicht erkannt wird. Und das haben die mit sehr vielen Künstlern 01:04:54.430 --> 01:04:57.670 gemacht, die haben alle das gleiche Porträt bekommen, und da sind sehr 01:04:57.670 --> 01:05:08.230 spannende Gemälde dabei entstanden. blinry: Gut! Das waren die Themen, die wir 01:05:08.230 --> 01:05:12.790 euch mitgebracht haben heute. Ich hoffe, es hat ein bisschen Spaß gemacht, wir 01:05:12.790 --> 01:05:18.230 haben die Folien unter dieser URL, da sind auch verlinkt die beiden bisherigen 01:05:18.230 --> 01:05:23.320 Versionen dieses Formats, wenn euch das interessiert. Genau. Sonst quatscht uns 01:05:23.320 --> 01:05:26.540 an, wenn ihr uns rumlaufen seht, wir sind irgendwie auf Mastodon und Twitter NOTE Paragraph 01:05:26.540 --> 01:05:30.768 unterwegs… und dann danke, dass ihr da wart, und habt noch einen tollen Congress! 01:05:30.768 --> 01:05:34.823 Abspannmusik 01:05:34.823 --> 01:05:58.000 Untertitel erstellt von c3subtitles.de im Jahr 2020. Mach mit und hilf uns!