WEBVTT

00:00:06.400 --> 00:00:12.960
<v Ingo>Binärgewitter der Podcast rund um Webtechnologie und Open

00:00:13.200 --> 00:00:16.560
<v Ingo>Store Was?

00:00:16.880 --> 00:00:18.960
<v Gast 2>Nein, kein Internet, mehr Wasser.

00:00:19.120 --> 00:00:21.680
<v Unbekannt>Nein, ala, ala, hört auf damit.

00:00:22.320 --> 00:00:28.080
<v Ingo>Hallo, herzlich willkommen zu Binärgewitter Talk 0008.

00:00:29.280 --> 00:00:32.720
<v Ingo>Und heute mit dabei sind volles Haus wieder.

00:00:32.800 --> 00:00:33.920
<v Ingo>Wir übrigens Marc.

00:00:34.160 --> 00:00:34.480
<v Ingo>Morgen.

00:00:34.800 --> 00:00:35.360
<v Ingo>Flydy.

00:00:35.680 --> 00:00:37.040
<v Gast 2>Ich bin der Flydy.

00:00:38.240 --> 00:00:38.560
<v Gast 2>Ja.

00:00:38.800 --> 00:00:43.200
<v Ingo>Ja, das ist mir jetzt nicht aufgefallen, aber wo du es jetzt nochmal sagst,

00:00:43.440 --> 00:00:47.680
<v Ingo>mit deinem schönen Regenbogen-T-Shirt und den Pferden, dass du dir hast.

00:00:47.920 --> 00:00:49.120
<v Ingo>Das sind keine Pferde, doch.

00:00:49.600 --> 00:00:52.960
<v Ingo>Einhörner, die da Dinge tun.

00:00:53.920 --> 00:00:55.840
<v Ingo>Hätte ich fast vergessen, dass du der Fleidi bist.

00:00:55.920 --> 00:00:56.080
<v Ingo>Richtig.

00:00:56.640 --> 00:00:57.520
<v Unbekannt>Darum sage ich es nochmal.

00:00:57.680 --> 00:00:58.080
<v Unbekannt>Moin.

00:00:58.320 --> 00:00:59.520
<v Ingo>Und ich bin auch dabei.

00:00:59.840 --> 00:01:04.560
<v Ingo>Und Nachtrag zur letzten Sendung, irgendwie ist irgendwie gefaked worden.

00:01:04.640 --> 00:01:05.760
<v Ingo>Ich hab's nicht ganz geblieben, worauf es ist.

00:01:06.080 --> 00:01:06.480
<v Ingo>Gefaked worden.

00:01:07.600 --> 00:01:11.200
<v Ingo>Wir haben letztes Mal ja schon gesagt, dass wir uns noch nicht wirklich sicher sind,

00:01:11.280 --> 00:01:15.120
<v Ingo>ob die lustigen Holländer mit dem Fliegen das wirklich tun.

00:01:16.000 --> 00:01:17.840
<v Gast 2>Er hat sich dann als Fake rausgestellt.

00:01:18.000 --> 00:01:18.160
<v Gast 2>Richtig.

00:01:18.240 --> 00:01:21.440
<v Gast 1>Und der hat auch eine Geschichte von Fakes hinter sich, was ein bisschen komisch ist.

00:01:21.600 --> 00:01:23.840
<v Gast 1>Irgendwie so eine Pseudodokumentation über Leute.

00:01:24.960 --> 00:01:26.720
<v Ingo>Kann so mal noch den Startknopf drücken.

00:01:26.800 --> 00:01:27.040
<v Ingo>Ja, natürlich.

00:01:29.600 --> 00:01:34.400
<v Gast 1>Irgendeine Pseudodokumentation hat er auch gemacht über Leute, bei denen sich Implantate irgendwie anfangen zu

00:01:34.400 --> 00:01:36.400
<v Gast 1>wachsen und irgendwas über Metall und so einen Kack und.

00:01:36.640 --> 00:01:37.200
<v Gast 1>Die Borg.

00:01:37.600 --> 00:01:38.240
<v Gast 1>Ähnlich, ja.

00:01:38.320 --> 00:01:42.000
<v Gast 1>Und irgendwie, der hat also einen ganzen Haufen recht qualitativ hochwertige Fakes gemacht.

00:01:42.080 --> 00:01:44.240
<v Gast 1>Nicht sicher warum, aber ist auch ein Hobby.

00:01:44.640 --> 00:01:47.440
<v Gast 2>Also wenn man sonst nichts zu tun hat, kann man auch gute Fakes machen.

00:01:47.840 --> 00:01:48.720
<v Felix>Das ist eine gute Illusion.

00:01:49.040 --> 00:01:51.600
<v Gast 1>Ja, besonders weil Leute nicht nachschauen, was er bisher so gemacht hat,

00:01:51.760 --> 00:01:53.680
<v Gast 1>sondern einfach so sagen, oh, da hat jemand Flügel gebaut.

00:01:53.920 --> 00:01:54.800
<v Unbekannt>Dem glaube ich.

00:01:55.120 --> 00:01:55.680
<v Unbekannt>Ist doch schön.

00:01:55.920 --> 00:01:56.560
<v Unbekannt>Auf jeden Fall nichts.

00:01:56.960 --> 00:01:57.200
<v Unbekannt>Fake.

00:01:57.360 --> 00:01:58.160
<v Unbekannt>Fake, fake, fake.

00:01:58.240 --> 00:01:59.040
<v Ingo>Fake, fake, fake.

00:01:59.360 --> 00:01:59.760
<v Ingo>Fake.

00:02:00.000 --> 00:02:00.480
<v Ingo>Schade.

00:02:00.800 --> 00:02:03.760
<v Ingo>Aber ich meine, kommt ja vielleicht nochmal irgendwann.

00:02:03.920 --> 00:02:05.600
<v Ingo>Vielleicht dautzt ja wirklich jetzt jemand.

00:02:05.840 --> 00:02:06.560
<v Ingo>Jetpacks.

00:02:07.280 --> 00:02:10.640
<v Ingo>Dann sind mindestens 200 Tauben gestorben.

00:02:11.440 --> 00:02:12.320
<v Unbekannt>Felix.

00:02:12.560 --> 00:02:13.760
<v Felix>200 Tauben.

00:02:14.000 --> 00:02:16.480
<v Felix>Weil sonst nichts passiert ist in der letzten Woche.

00:02:16.800 --> 00:02:18.640
<v Felix>200 tote Tauben.

00:02:19.120 --> 00:02:20.800
<v Ingo>Das ist jetzt auch überhaupt gar nicht schade.

00:02:20.880 --> 00:02:23.600
<v Ingo>Ich finde die in Stehenden sowieso schon einfach scheiße.

00:02:23.760 --> 00:02:26.560
<v Felix>Nee, das waren so Zuchttauben, deswegen ist ein bisschen traurig.

00:02:26.640 --> 00:02:29.200
<v Felix>Aber ist auch nicht schlimm, weil es sind immer noch Tauben und keiner mag Tauben.

00:02:29.360 --> 00:02:30.000
<v Felix>Ratten der Lüfte.

00:02:30.240 --> 00:02:33.280
<v Gast 2>Könnte man ja auch eine Bluebreite umrechnen, weil es gibt ja TC.

00:02:35.680 --> 00:02:38.400
<v Gast 2>Wie viel würde man denn mit 200 Brieftauben durchkriegen?

00:02:38.560 --> 00:02:39.040
<v Gast 2>Vielleicht.

00:02:39.280 --> 00:02:39.840
<v Gast 2>Eine Menge.

00:02:40.000 --> 00:02:44.560
<v Felix>Je nachdem, wie viel Gigabyte USB-Sticks du denen in den Fuß hängst.

00:02:45.040 --> 00:02:46.160
<v Felix>Nein, es ist so.

00:02:46.480 --> 00:02:48.720
<v Felix>Es gibt ja schon 128 Gigabyte-Teile.

00:02:48.800 --> 00:02:49.600
<v Felix>Und ich meine, da kannst du schon mal.

00:02:49.760 --> 00:02:52.880
<v Gast 2>Du kannst so eine Taube, so ein USB-Stick tragen überhaupt?

00:02:53.120 --> 00:02:53.600
<v Gast 2>Klar, bestimmt.

00:02:53.920 --> 00:02:55.280
<v Felix>Natürlich, das haben sie ja die Videos.

00:02:55.760 --> 00:02:59.360
<v Felix>Das haben sie ja schon gemacht in Afrika und dann war es halt einfach irgendwie 2000 Mal schneller oder so.

00:03:00.000 --> 00:03:00.320
<v Felix>Okay.

00:03:00.640 --> 00:03:04.800
<v Felix>Oder du nimmst halt die Micro-SD-HC Super Bonus mit 120 Millionen.

00:03:05.120 --> 00:03:06.000
<v Ingo>Die Dinger sind ja auch nicht schwer.

00:03:06.320 --> 00:03:10.560
<v Gast 1>Es wurde schon mal, wurde schon mal implementiert, aber dann jeweils für nur neun Datenpakete mit einem

00:03:10.560 --> 00:03:17.040
<v Gast 1>Packetloss von 55% und einem Response-Time von 45 Minuten bis

00:03:17.520 --> 00:03:18.720
<v Gast 1>1,35 Stunden.

00:03:18.960 --> 00:03:20.560
<v Unbekannt>Es geht ja um Ping, ja.

00:03:21.280 --> 00:03:22.160
<v Felix>Lass mich mal pingen.

00:03:22.480 --> 00:03:24.400
<v Gast 1>Gerade mit Slowstart, das ist halt scheiße, wenn du.

00:03:24.640 --> 00:03:26.240
<v Felix>Ja, die machen das einfach nicht.

00:03:26.320 --> 00:03:26.800
<v Felix>Die ignorieren.

00:03:27.040 --> 00:03:30.240
<v Ingo>Ich glaube, eigentlich bräuchte man ja Slow Start bei Tauben.

00:03:31.360 --> 00:03:31.840
<v Ingo>Oder nicht?

00:03:32.240 --> 00:03:34.720
<v Gast 1>Nee, die können ja nicht von Anfang an schon das ganze Paket mittragen.

00:03:34.960 --> 00:03:36.000
<v Gast 1>Wenn es ankommt, kommt es an.

00:03:36.560 --> 00:03:38.480
<v Felix>Dann denke ich auch, die müssen nicht erst die kleinen Pakete tragen.

00:03:38.560 --> 00:03:40.960
<v Ingo>Ja, was ist, wenn sie unterwegs einfach abstürzen?

00:03:41.440 --> 00:03:42.720
<v Gast 1>Dann ist es egal, wie viel weg ist.

00:03:43.920 --> 00:03:46.880
<v Felix>Du kannst ja einfach parallel, also du kannst dir da ganz neue Möglichkeiten überlegen,

00:03:46.960 --> 00:03:51.920
<v Felix>wie du diese Tauben quasi redundant verfügbar machst, dass du nicht so viel Packet los hast.

00:03:52.160 --> 00:03:54.720
<v Gast 2>Dann könnte die Taube ja mit einem Nachbrenner ausstatten.

00:03:56.000 --> 00:03:59.440
<v Felix>Und mit GPS-Pi-Sendern, damit du sie auch wieder einsammeln kannst, weil sie irgendwie wegfliegen.

00:03:59.520 --> 00:04:04.080
<v Gast 1>Auf jeden Fall, sie haben das damals mit ICMP-Echo-Requests gemacht, über fünf Kilometer.

00:04:04.400 --> 00:04:06.000
<v Felix>Und sie haben es auch immer in Ampel.

00:04:06.240 --> 00:04:06.960
<v Felix>Sinnvolle Anwendung.

00:04:07.120 --> 00:04:10.560
<v Felix>In Afrika gemacht, weil da das Internet ja bekanntlich nicht so super ausnahms ist,

00:04:10.640 --> 00:04:13.200
<v Felix>sondern waren sie halt irgendwie 200 Mal schneller oder so als die Antrag-Kerm-Kerb-Sturkung.

00:04:13.280 --> 00:04:16.000
<v Gast 1>Ja, das ist auch die Frage, über was für Tauben wir hier reden.

00:04:16.080 --> 00:04:18.240
<v Gast 1>Ich habe gesagt, wir haben die Taubspeed auf einen.

00:04:18.800 --> 00:04:19.680
<v Ingo>Die Tauben sind jetzt nicht tot.

00:04:20.000 --> 00:04:22.240
<v Gast 2>Im Moment, das waren keine Tauben, sondern.

00:04:23.200 --> 00:04:23.840
<v Gast 2>Schwalben, genau.

00:04:25.040 --> 00:04:26.640
<v Gast 1>Das ist ja hier Cable und DSL.

00:04:27.200 --> 00:04:28.240
<v Gast 1>Es kommt überall Internet raus.

00:04:28.480 --> 00:04:30.880
<v Ingo>Nur um das jetzt nochmal voneinander zu trennen.

00:04:31.120 --> 00:04:33.360
<v Ingo>Solche Internettauben sind nicht toten, nicht?

00:04:33.440 --> 00:04:34.400
<v Ingo>Es waren schon normale.

00:04:34.720 --> 00:04:35.040
<v Ingo>Das war schon.

00:04:35.200 --> 00:04:36.160
<v Felix>Nee, es waren Zuchttauben.

00:04:36.320 --> 00:04:37.440
<v Ingo>Ja, ja, aber schon so Tauben.

00:04:37.760 --> 00:04:44.720
<v Ingo>Der Chat hat noch gemeint, das Taubenproblem in Venedig ist jetzt mal temporär gelöst.

00:04:44.960 --> 00:04:48.880
<v Ingo>Aber ich glaube, da würden 200 Tauben mehr oder weniger auch einfach nicht auffallen.

00:04:49.040 --> 00:04:52.080
<v Gast 2>Also wenn man mal da in Venedig auf, wie heißt denn dieser große Platz?

00:04:52.400 --> 00:04:52.720
<v Gast 2>Keine Ahnung.

00:04:52.960 --> 00:04:53.520
<v Gast 2>Alexanderplatz?

00:04:53.600 --> 00:04:54.160
<v Gast 2>Nee, keine Ahnung.

00:04:55.120 --> 00:04:55.760
<v Gast 2>Markus Platz, aber die Kinder.

00:04:55.920 --> 00:04:57.040
<v Unbekannt>Markus, das kann natürlich nicht.

00:04:57.120 --> 00:05:03.760
<v Gast 2>Nee, aber wenn man da mal war, irgendwie ein Brötchen zu essen, dann lässt man das lieber sein,

00:05:03.840 --> 00:05:06.160
<v Gast 2>weil da gibt es sehr, sehr viele Tauben, mehr als 200 Version.

00:05:06.480 --> 00:05:07.520
<v Felix>Einfach Flammwerfer mit.

00:05:07.760 --> 00:05:08.560
<v Ingo>Mehr als 9000.

00:05:08.720 --> 00:05:09.760
<v Felix>Über 9000 auf jeden Fall.

00:05:09.920 --> 00:05:10.640
<v Felix>Auf jeden Fall.

00:05:11.200 --> 00:05:15.680
<v Ingo>Okay, dann, weil es ja noch nicht traurig genug ist, sorry.

00:05:15.760 --> 00:05:16.880
<v Ingo>Das ist lustig eigentlich.

00:05:17.040 --> 00:05:21.680
<v Ingo>Die FDP ist nur noch bei 1,2% mal wieder irgendwo gelandet.

00:05:22.240 --> 00:05:24.080
<v Felix>1,2 Minuten, glaube ich, oder?

00:05:24.720 --> 00:05:25.520
<v Felix>Gleich bei den Nazis.

00:05:25.600 --> 00:05:27.040
<v Felix>Ich meine, da fassen sie ja auf die hin.

00:05:27.120 --> 00:05:27.680
<v Felix>Da geht was.

00:05:28.000 --> 00:05:29.840
<v Ingo>In Berlin haben die Nazis hier überholt gehabt, glaube ich.

00:05:30.000 --> 00:05:31.520
<v Felix>Das ist einfach super traurig.

00:05:32.560 --> 00:05:34.000
<v Unbekannt>Highspeed-Nazis.

00:05:34.720 --> 00:05:35.440
<v Unbekannt>Nazis.

00:05:35.840 --> 00:05:38.320
<v Felix>Und wahrscheinlich besser TCP-Sprechen als Taumann.

00:05:38.560 --> 00:05:40.000
<v Felix>Aber sie sind nicht so schnell.

00:05:41.920 --> 00:05:44.400
<v Ingo>Machen die da so Blinkbewegungen so.

00:05:45.920 --> 00:05:50.320
<v Gast 1>Ist die Frage, bei TCP-Nazis können wir das Bandbreitenproblem vom Osten damit lösen.

00:05:51.280 --> 00:05:52.400
<v Gast 2>Ich überlege das mal.

00:05:52.560 --> 00:05:56.320
<v Gast 2>Ich meine, da könnte man sogar modulieren, je nachdem, wie hoch da um den Armen ist.

00:05:56.640 --> 00:05:58.160
<v Unbekannt>Und die können das ja auch beidseitig.

00:05:58.480 --> 00:05:59.600
<v Unbekannt>Nee, das können sie nicht, sorry.

00:06:00.720 --> 00:06:01.440
<v Unbekannt>Das ist mein Modus.

00:06:01.520 --> 00:06:03.600
<v Unbekannt>Das ist Beamforming hier, wenn sie dann so machen, den Gaza.

00:06:03.680 --> 00:06:04.800
<v Felix>Nee, nee, die können tatsächlich nur mit einem.

00:06:05.360 --> 00:06:06.960
<v Gast 1>Ob die das wissen, die haben noch keine Ahnung, was da rechts ist.

00:06:07.040 --> 00:06:09.680
<v Felix>Nee, du stellst einfach zwei Nazis nebeneinander, dann können die das zusammen machen.

00:06:09.760 --> 00:06:12.320
<v Felix>Und dann kannst du so super ganzen Byte darstellen.

00:06:12.480 --> 00:06:13.200
<v Felix>Mit einem Nazis ja.

00:06:13.440 --> 00:06:16.720
<v Gast 1>Meinst du, da kriegen wir einfach Mimonazis?

00:06:16.880 --> 00:06:19.200
<v Gast 1>Ja, aber da kriegen wir, glaube ich, Ärger von der Flugzeuglotsen-Gewerkschaft.

00:06:19.280 --> 00:06:22.400
<v Gast 1>Weil die haben da glaube ich ein Patent drauf auf dieses Gewinnel mit dem Arm, um Daten zu übertragen.

00:06:22.480 --> 00:06:25.680
<v Gast 2>Da gibt es übrigens auch einen Standard, wie man mit Flaggenwinken TCP-IP macht.

00:06:25.760 --> 00:06:28.000
<v Gast 1>Richtig, wenn wir das an die Nazis dran tapen.

00:06:28.480 --> 00:06:29.120
<v Gast 1>Drantapen?

00:06:29.280 --> 00:06:31.760
<v Felix>Ich meine, wenn es einen Standard gibt, heißt, dass du keine Lizenz dafür gibt.

00:06:31.840 --> 00:06:35.040
<v Felix>Also dass du keine Lizenz kaufen machst, das heißt, du kannst es einfach so tun.

00:06:35.760 --> 00:06:37.360
<v Ingo>Nee, das heißt es leider nichts.

00:06:37.600 --> 00:06:39.840
<v Gast 1>Das wäre mir zu fragwürdig.

00:06:40.160 --> 00:06:42.560
<v Felix>Aber ich meine es, wenn es von der IT-F oder sowas gibt.

00:06:42.720 --> 00:06:44.160
<v Gast 1>Ja gut, aber H264 auch.

00:06:44.720 --> 00:06:50.960
<v Felix>Bei ATS ist auch ein Standard und jetzt hört auf hier, macht mir meine Konzeptidee mit Nazis nicht.

00:06:51.280 --> 00:06:52.320
<v Gast 1>Das ist jetzt schon recht abstrus.

00:06:52.400 --> 00:06:53.200
<v Gast 1>Ich glaube, wir sollen einfach mal.

00:06:53.360 --> 00:06:54.240
<v Gast 1>Haben wir, was haben wir noch?

00:06:54.560 --> 00:06:55.920
<v Felix>Haben wir noch das Hemen?

00:06:58.000 --> 00:07:01.280
<v Ingo>Wir waren gerade bei der FDP auf jeden Fall, finden wir jetzt nicht traurig,

00:07:01.360 --> 00:07:02.720
<v Ingo>dafür sind die Piraten ja drin, die sind ja nicht mehr.

00:07:02.880 --> 00:07:06.320
<v Felix>Genau, die haben einfach gewonnen im Gegensatz zu den Nazis und FDP.

00:07:06.480 --> 00:07:09.760
<v Ingo>Und Harald Schmidt, also Harald Schmidt allein selber ist noch nicht tot, aber.

00:07:10.240 --> 00:07:10.800
<v Ingo>Das kommt noch.

00:07:12.560 --> 00:07:13.600
<v Ingo>Aber seine Show ist abgesetzt worden.

00:07:14.640 --> 00:07:20.160
<v Ingo>Also nicht, dass ich die geguckt hätte, seitdem die auf einem Sender ist, den man einfach nicht gucken kann.

00:07:20.640 --> 00:07:21.680
<v Gast 2>Also das Letzte, was ich von Hartier habe.

00:07:21.840 --> 00:07:22.640
<v Felix>Haben die nicht HD?

00:07:23.680 --> 00:07:24.640
<v Ingo>Sind die nicht im Internet?

00:07:24.800 --> 00:07:25.440
<v Ingo>Sind die nicht im Internet?

00:07:25.680 --> 00:07:25.920
<v Ingo>Ich will nicht.

00:07:26.240 --> 00:07:28.800
<v Gast 1>Andi, das ist über Audio, weil ansehen muss ich ihn eh nicht.

00:07:29.680 --> 00:07:30.880
<v Unbekannt>Damals war ganz lustig.

00:07:31.120 --> 00:07:34.560
<v Gast 2>Also das Letzte, was ich von Harald Schmidt mitbekommen habe, war die Geschichte mit dem Pocher.

00:07:34.640 --> 00:07:36.320
<v Gast 2>Und die war ab und zu ganz amüsant.

00:07:36.480 --> 00:07:38.000
<v Ingo>Ja, das war das nicht in der AD.

00:07:38.320 --> 00:07:39.040
<v Ingo>Das war in der ARD.

00:07:39.840 --> 00:07:41.760
<v Gast 2>Danach habe ich überhaupt nichts mehr von dem mitbekommen.

00:07:42.800 --> 00:07:44.480
<v Ingo>Jedenfalls, die Show ist jetzt tot.

00:07:44.800 --> 00:07:46.880
<v Felix>Gott sei Dank sind wir kein Technik-Podcast.

00:07:48.640 --> 00:07:52.480
<v Ingo>Jetzt geht's um Tauben, um Politik und um Shows.

00:07:52.800 --> 00:07:54.320
<v Gast 2>Und wir sind ein Binär-Shotcast.

00:07:54.720 --> 00:07:59.680
<v Gast 2>Wir haben jetzt hier gerade binär darüber geredet, wie man Nazis zum Internet umbaut.

00:07:59.920 --> 00:08:00.800
<v Felix>Zum Internet.

00:08:01.600 --> 00:08:02.080
<v Felix>Und Tauben.

00:08:02.320 --> 00:08:02.720
<v Felix>Und Tauben.

00:08:03.280 --> 00:08:03.920
<v Felix>Tauben gibt es ja schon.

00:08:04.160 --> 00:08:05.520
<v Ingo>Wie kann man den Harald Schmidt benutzen?

00:08:06.160 --> 00:08:07.920
<v Felix>Wenn der tot ist, geht ja bestimmt einige.

00:08:08.400 --> 00:08:10.640
<v Gast 1>Ich glaube, wir könnten da echt Fördermittel beantragen.

00:08:11.120 --> 00:08:11.920
<v Felix>Für Harald Schmidt.

00:08:14.880 --> 00:08:15.280
<v Felix>Über Nazis.

00:08:15.440 --> 00:08:15.760
<v Felix>Über alles.

00:08:15.920 --> 00:08:16.880
<v Felix>Über Nazis.

00:08:17.120 --> 00:08:17.360
<v Felix>Richtig.

00:08:17.520 --> 00:08:18.240
<v Felix>Finde ich genau richtig.

00:08:18.560 --> 00:08:20.000
<v Gast 2>Sehr viel binärer geht es ja dann auch wieder.

00:08:20.640 --> 00:08:20.880
<v Gast 2>So.

00:08:22.080 --> 00:08:22.320
<v Gast 2>Gut.

00:08:22.560 --> 00:08:27.040
<v Ingo>Dann, wo wir schon beim Spaß waren, es gibt auch Leute, die wollen tatsächlich das Internet über die

00:08:27.040 --> 00:08:28.240
<v Ingo>Wasserleitung kriegen.

00:08:28.480 --> 00:08:29.680
<v Gast 2>Ja, soll es geben.

00:08:29.920 --> 00:08:30.400
<v Gast 2>Richtig.

00:08:31.200 --> 00:08:34.400
<v Ingo>Also, das heißt, je nachdem, wie oft ich die Spülung drücke.

00:08:34.960 --> 00:08:35.600
<v Ingo>Oh yeah.

00:08:36.240 --> 00:08:40.960
<v Gast 2>Ich habe mir ja schon überlegt, man könnte ja eigentlich über das Wasser so Ultraschallzeug irgendwas

00:08:40.960 --> 00:08:41.280
<v Gast 2>übertragen.

00:08:42.240 --> 00:08:43.520
<v Gast 1>Wir haben keine Kanäle, die volllaufen.

00:08:43.600 --> 00:08:46.800
<v Gast 1>Das ist ja das Problem, dass wir so viel Wasser sparen, dass man irgendwie direkt trocken liegt.

00:08:46.960 --> 00:08:48.880
<v Felix>Ja, das ist super scheiße auf jeden Fall.

00:08:49.040 --> 00:08:54.240
<v Gast 1>Außerdem geht es ja auch gar nicht um die Wasserleitung an sich, sondern die wollen einfach nur Glasfaserkabel

00:08:54.400 --> 00:08:57.520
<v Gast 1>durch die Leitung, die schon da liegt, schieben, was ja für sich nahe liegt.

00:08:57.760 --> 00:09:01.600
<v Gast 1>Weil Wasserleitung ja im Normalfall, also das Wasser macht der Glasfaser ja recht wenig aus.

00:09:02.560 --> 00:09:07.200
<v Gast 2>Ein Problem wird es halt, wenn du dann irgendwie große Stadtteile damit versorgen willst.

00:09:07.840 --> 00:09:11.280
<v Gast 2>Weil irgendwann ist halt die Wasserleitung voll mit Glasfaserkabeln.

00:09:11.440 --> 00:09:14.400
<v Gast 1>Ja gut, normalerweise macht es ja nur zur Verteilung von da aus dann.

00:09:14.880 --> 00:09:15.680
<v Gast 1>Genau, du machst einfach so.

00:09:15.760 --> 00:09:17.200
<v Ingo>Du musst ja nur in jedes Haus eins kriegen.

00:09:17.440 --> 00:09:19.600
<v Gast 1>Das ist ja auch eher die letzte Meile, glaube ich, die da so.

00:09:19.680 --> 00:09:23.600
<v Gast 1>Weil normalerweise die Hauseinfahrt aufreißen und sowas.

00:09:24.240 --> 00:09:27.600
<v Ingo>Bedeutet das dann aus meinem Wasserhahn kommt dann ein Glasfaserkabel?

00:09:28.480 --> 00:09:32.000
<v Gast 1>Da gibt es ja auch schon so LEDs, die du dann Wasser anschrauben kannst, dass sie immer so lustig leuchtet.

00:09:32.080 --> 00:09:33.120
<v Gast 1>Ich denke mir genauso.

00:09:33.440 --> 00:09:36.720
<v Felix>Also wenn man das genau sehen will, wie das funktionieren kann mit Bildern,

00:09:36.880 --> 00:09:39.360
<v Felix>gucken sich Google Tisp an, weil die hatten die Idee vorher.

00:09:39.520 --> 00:09:41.200
<v Ingo>Ja, und zwar mit lustigen Klotauchern.

00:09:41.760 --> 00:09:43.200
<v Felix>Nee, die sind nicht lustig, die können das.

00:09:43.360 --> 00:09:47.840
<v Felix>Die sind ausgebildete PhDs und was sie so.

00:09:48.000 --> 00:09:50.720
<v Gast 2>Nur weil sie ein PhD in Klotauchen haben.

00:09:51.120 --> 00:09:52.880
<v Felix>Plumbing Hardware Dispatcher.

00:09:53.680 --> 00:09:54.400
<v Felix>PhDs.

00:09:54.640 --> 00:09:54.960
<v Felix>Sehr gut.

00:09:55.200 --> 00:09:57.040
<v Gast 2>Aber das heißt ja nicht, dass sie nicht lustig sein können.

00:09:57.200 --> 00:09:58.640
<v Gast 1>Aber das Google Tisp war so ein 1.

00:09:58.800 --> 00:10:03.040
<v Gast 1>April, einer dieser grandiosen ersten April-Seiten von Google, die da ein bisschen Zeit reinstecken.

00:10:03.440 --> 00:10:06.000
<v Felix>Ich frag mich, wie viele Leute da wirklich angefragt haben, ob sie das bekommen.

00:10:06.240 --> 00:10:06.880
<v Felix>Ich finde das cool.

00:10:07.040 --> 00:10:07.600
<v Felix>Ich finde es auch.

00:10:08.000 --> 00:10:11.280
<v Gast 2>Ich meine, du kriegst da so ein Paket und dann nimmst du einfach so ein bisschen Glasfaser und spülst es zum

00:10:11.280 --> 00:10:12.960
<v Gast 2>Klo runter und plötzlich kommt der Gigabit durch.

00:10:13.200 --> 00:10:15.920
<v Felix>Das Problem ist halt, es kommt aus deinem Klo wieder raus.

00:10:16.480 --> 00:10:18.560
<v Felix>So richtig kacken ist da auch nicht drin.

00:10:19.840 --> 00:10:23.200
<v Felix>Guck dir das doch an, du hast ja dieses Ethernet-Kabel, es kommt aus deinem Klo raus.

00:10:23.440 --> 00:10:29.600
<v Felix>Ja, dann wird es halt das zweite Klo, zweit Klo, sorry, aber so ein auch wieder nicht.

00:10:29.760 --> 00:10:34.000
<v Gast 1>Können die da eventuell so Zitronenduft irgendwie ausstrahlen, dass du nicht so Klosteine kommen?

00:10:34.160 --> 00:10:35.440
<v Felix>Also wenn schon, dann schon.

00:10:35.600 --> 00:10:36.080
<v Felix>Das wäre auch gut.

00:10:36.320 --> 00:10:39.200
<v Felix>Okay, also das würde mich tatsächlich überzeugen, das trotzdem machen zu wollen.

00:10:39.440 --> 00:10:45.040
<v Ingo>Aber das Google Tisp war jetzt ein April-Scherz, aber das, worum es jetzt geht, ist tatsächlich ernst gemeint.

00:10:45.440 --> 00:10:49.600
<v Gast 1>Genau, da geht es darum, dass du halt die Wasserleitung benutzt, anstatt die Einfahrt aufzureißen und dann

00:10:49.680 --> 00:10:51.120
<v Gast 1>Glasfaser reinzuschieben.

00:10:51.280 --> 00:10:54.720
<v Gast 1>Wobei sie das ja im Grunde, also ich habe immer gedacht, die machen das im Grunde bei jeder Leitung,

00:10:54.800 --> 00:10:58.320
<v Gast 1>die heutzutage gelegt wird, tun die einfach nochmal einen Arm voll Glasfasern rein.

00:10:58.400 --> 00:11:00.880
<v Gast 1>Weil Glasfasern sehr billig sind, aber halt sehr cool.

00:11:01.920 --> 00:11:03.920
<v Felix>Kann man immer mal gebrauchen, das ist quasi der Ansatz.

00:11:04.160 --> 00:11:05.760
<v Gast 2>Genau, haben wir schon gesagt, wo das Sinn ist?

00:11:06.000 --> 00:11:12.640
<v Gast 2>Das ist irgendwie im Kreis A-Beiler von den Wasser, von dem Wasserzweckverband Eiffel A.

00:11:14.800 --> 00:11:16.720
<v Gast 2>Das sind aber noch die Piraten mit dabei.

00:11:16.960 --> 00:11:18.320
<v Felix>Das ist praktisch.

00:11:18.560 --> 00:11:19.280
<v Felix>Richtig.

00:11:20.400 --> 00:11:21.440
<v Unbekannt>Lass mal was Gutes reden.

00:11:22.160 --> 00:11:23.120
<v Felix>Das war super gut.

00:11:23.520 --> 00:11:25.520
<v Ingo>Über Passwortmanager mobile.

00:11:25.920 --> 00:11:30.000
<v Gast 1>Richtig, ein Paper mit dem Thema Airquotes, Secure Passwort Managers,

00:11:30.080 --> 00:11:34.880
<v Gast 1>N-Qotes, and Airquotes, Military Grade Encryption, N-Qotes,

00:11:34.960 --> 00:11:38.000
<v Gast 1>on Smartphones, Doppelpunkt O, Really, Fragezeichen.

00:11:39.040 --> 00:11:42.400
<v Gast 1>Allein für so einen Titel, da merkst du schon, dass das nicht normale Leute sein können,

00:11:42.480 --> 00:11:43.520
<v Gast 1>die normale Papers veröffentlichen.

00:11:43.760 --> 00:11:45.680
<v Gast 1>Es ist auch O-Really ein Titel, ja.

00:11:46.320 --> 00:11:48.000
<v Felix>Aber es ist auch von Lcomsoft.

00:11:48.960 --> 00:11:50.400
<v Gast 1>Die Russen, die Rararchie beknappen, um normalerweise.

00:11:50.480 --> 00:11:51.760
<v Felix>Ja, ja, genau, das sind die.

00:11:51.840 --> 00:11:53.840
<v Felix>Und die, ich meine, die wissen, was sie machen.

00:11:54.000 --> 00:11:54.240
<v Felix>Richtig.

00:11:54.720 --> 00:11:56.480
<v Gast 1>Aber sind halt eher nicht so akademisch drauf, glaube ich.

00:11:56.880 --> 00:11:57.760
<v Felix>Darum geht es ja auch nicht in dem.

00:11:58.080 --> 00:11:58.160
<v Felix>Richtig.

00:11:58.480 --> 00:12:01.200
<v Felix>Die haben auch voll große Schrift, deswegen kann es gar nicht akademisch sein.

00:12:01.360 --> 00:12:02.880
<v Gast 2>Ja, und sie haben nicht zweispaltig.

00:12:03.040 --> 00:12:04.240
<v Gast 1>Das ist auch kein Latech, glaube ich, oder?

00:12:04.720 --> 00:12:05.360
<v Gast 1>Könnte Latech sein.

00:12:05.600 --> 00:12:06.320
<v Gast 1>Ja, das ist sicherlich.

00:12:07.200 --> 00:12:08.720
<v Gast 2>Das sieht aus wie Word, ja gerade würde ich sagen.

00:12:08.960 --> 00:12:09.680
<v Gast 2>Fucking Word.

00:12:09.840 --> 00:12:13.680
<v Gast 2>Also sie schreiben Papers in Word, aber um was ging es denn?

00:12:13.840 --> 00:12:15.600
<v Gast 1>Ich habe sie schon mal vorgelesen, aber vielleicht.

00:12:16.080 --> 00:12:16.720
<v Gast 1>Ich habe keine Ahnung.

00:12:16.960 --> 00:12:17.920
<v Felix>Es ging genau darum.

00:12:18.000 --> 00:12:21.280
<v Felix>Es ging um sichere Passwortmanager oder ob sie sicher sind.

00:12:21.520 --> 00:12:22.240
<v Felix>Auf Mobilgeräten.

00:12:24.560 --> 00:12:25.200
<v Felix>Und BlackBerry.

00:12:25.280 --> 00:12:26.320
<v Felix>Und BlackBerry, okay, fuck.

00:12:28.000 --> 00:12:34.160
<v Felix>Aber speziell geht es da wirklich um die Apple iOS Passwortmanager.

00:12:34.240 --> 00:12:38.000
<v Felix>Und da haben die dann irgendwie ein paar analysiert, also ein paar im Sinne von einige.

00:12:38.240 --> 00:12:43.360
<v Gast 2>Ja, und man muss dazu sagen, die haben die auch analysiert, indem sie quasi auf die kompletten Nutzdaten

00:12:43.360 --> 00:12:49.600
<v Gast 2>zugegriffen haben, was man normalerweise auch nur hat, wenn man da das Passwort,

00:12:49.920 --> 00:12:53.920
<v Gast 2>mit dem das, oder die PIN, mit dem das Device gelockt ist hat und das dann halt.

00:12:54.560 --> 00:12:56.960
<v Felix>Oh, apropos PIN, da habe ich noch was super cooles.

00:12:57.760 --> 00:12:59.600
<v Gast 1>Dann erzähle ich mal weiter, auf jeden Fall haben sie da.

00:12:59.840 --> 00:13:02.560
<v Gast 1>Also sie sagen am Anfang auch gleich hier, wenn du es aus Backups machen willst,

00:13:02.640 --> 00:13:07.840
<v Gast 1>also da zumindest bei iOS, sind die Backups mit 10.000 Iterationen PPKDF2,

00:13:08.080 --> 00:13:10.960
<v Gast 1>Shawnee, da haben wir, glaube ich, in der letzten Sendung drüber geredet,

00:13:11.040 --> 00:13:13.120
<v Gast 1>dass PBKDF2 ja so toll ist.

00:13:13.600 --> 00:13:17.040
<v Gast 1>Die machen das auf jeden Fall, von daher kannst du es eigentlich vergessen, das zu knacken.

00:13:17.120 --> 00:13:21.360
<v Gast 1>Also es geht im Grunde auch nur, wenn du dann echt das Ding angeschlossen hast und dann ein PIN eingegeben

00:13:21.360 --> 00:13:21.520
<v Gast 1>hast.

00:13:21.760 --> 00:13:24.320
<v Felix>Aber die Sache ist, das ist genau ein, oder?

00:13:24.960 --> 00:13:26.320
<v Gast 1>Nee, das ging um die Backups.

00:13:26.400 --> 00:13:29.040
<v Gast 1>Also du kannst den Backups rausziehen, die jetzt kannst du vergessen, ist sicher.

00:13:29.280 --> 00:13:29.520
<v Gast 1>Genau.

00:13:29.600 --> 00:13:35.360
<v Gast 2>Also was man halt machen müsste, wäre, man müsste irgendwie an die Backups von dem iPhone rankommen,

00:13:35.440 --> 00:13:39.280
<v Gast 2>indem er es wahrscheinlich über USB ansteckt und dann muss man noch die PIN dazu eingeben,

00:13:39.360 --> 00:13:41.520
<v Gast 2>damit es das Telefon überhaupt zümt.

00:13:41.680 --> 00:13:46.000
<v Felix>Also zu der PIN, da gibt es einen coolen Artikel, wo es darum geht,

00:13:46.080 --> 00:13:50.080
<v Felix>wie gezeigt wird, wie in zwei Minuten diese iPhone-Security-Code geknackt würde.

00:13:50.720 --> 00:13:51.760
<v Gast 2>Wie machen die das in zehn Minuten?

00:13:52.400 --> 00:13:53.200
<v Felix>In zwei Minuten.

00:13:54.160 --> 00:13:57.200
<v Ingo>Weiß Gerät, also so habe ich zumindest eingestellt, dass es gewiped wird,

00:13:57.280 --> 00:13:59.520
<v Ingo>wenn man da ein paar Mal die Pin falsch eingibt.

00:13:59.840 --> 00:14:02.320
<v Felix>Ja, wenn du das so speziell eingestellt hast, dann haben das gerade jetzt ganz viele.

00:14:02.800 --> 00:14:06.640
<v Gast 1>Die sagen auch selber, selber die Telcomoft Leute sagen auch, dass es mit physischem,

00:14:06.800 --> 00:14:11.680
<v Gast 1>physikalischem Zugriff, das klappt auch nur bei Sachen vor iPad 2 und vor iPhone 4S,

00:14:11.920 --> 00:14:16.560
<v Gast 1>also die respektive vorletzte und aktuelle Version von den Geräten.

00:14:16.960 --> 00:14:20.720
<v Gast 1>Dann kannst du nämlich, wenn du eins von den neueren hast, und ich denke,

00:14:20.800 --> 00:14:24.000
<v Gast 1>damit gehen die einfach nur von der iOS-Version aus, mit dem es ausgeliefert wurde oder so.

00:14:24.320 --> 00:14:29.280
<v Gast 2>Nee, nee, da ist Hardware-Krypto mit drin, mit dem der komplette Flash-Speicher verschlüsselt ist.

00:14:29.360 --> 00:14:31.680
<v Gast 2>So funktioniert auch der Remote-Vibe, weil es ansonsten würde es viele.

00:14:32.960 --> 00:14:34.960
<v Gast 2>Genau, der wirft dann einfach den Krypto-Key weg und dann.

00:14:35.280 --> 00:14:40.480
<v Ingo>Aber also wie gesagt, die Krypto wurde, glaube ich, auch schon ausgehebelt,

00:14:40.640 --> 00:14:42.320
<v Ingo>habe ich vor einer Weile gelesen, aber ich bin mir nicht 100%.

00:14:42.800 --> 00:14:47.200
<v Felix>Also es gibt auf jeden Fall dieses eine Video von einer Software,

00:14:47.360 --> 00:14:52.240
<v Felix>die diese ganzen Security-Codes für den Apple-Kram knacken kann, auch für das neue,

00:14:52.320 --> 00:14:57.520
<v Felix>neuste iPhone und für irgendwie andere Software.

00:14:57.600 --> 00:15:03.120
<v Felix>Und die verkaufen das, also die Hersteller verkaufen das speziell an so Law Enforcement-Kram.

00:15:03.680 --> 00:15:05.200
<v Gast 1>Microsystemation.

00:15:06.240 --> 00:15:12.400
<v Felix>Und sieht auf jeden Fall lustig aus, wie sie es geknackt haben, sieht halt aus wie Software irgendwie.

00:15:12.960 --> 00:15:14.320
<v Unbekannt>Sieht aus wie so Windows-Software, oder?

00:15:14.480 --> 00:15:15.520
<v Felix>Wie Windows-Software, genau.

00:15:15.600 --> 00:15:19.120
<v Felix>Und du stopfst es irgendwie an deine USB ran und dann passiert das Richtige.

00:15:20.480 --> 00:15:22.320
<v Gast 1>Aber wahrscheinlich halt auch eher nur bei den älteren.

00:15:22.480 --> 00:15:23.760
<v Felix>Nee, nee, also das war das neue.

00:15:24.800 --> 00:15:25.920
<v Felix>Was ist denn das neueste Fünf?

00:15:26.000 --> 00:15:26.560
<v Felix>Gibt es schon fünf?

00:15:27.680 --> 00:15:28.400
<v Felix>Dann war es das.

00:15:28.960 --> 00:15:31.680
<v Gast 1>Steht, also ich habe es jetzt hier in dem Video, ich seh's zwar, dass wir da was gemacht haben,

00:15:31.760 --> 00:15:32.720
<v Gast 1>aber ich habe das nicht gefunden.

00:15:32.880 --> 00:15:35.440
<v Felix>Aber das ist, sie hatten irgendein 4.

00:15:36.080 --> 00:15:39.600
<v Gast 1>Vier, ja, 4 hat noch kein Hardware-Krypto, 4S hat halt genauso wie das iPad 2.

00:15:40.000 --> 00:15:42.640
<v Felix>Ich muss mal, also vielleicht ist es auch 4S, ich weiß es nicht genau.

00:15:42.720 --> 00:15:44.800
<v Felix>Ich habe es mir nicht so genau angeschaut, aber es war.

00:15:45.200 --> 00:15:48.720
<v Gast 2>Das, was Felix auch meint, ist, die PIN zu knacken und nicht die Krypto zu knacken.

00:15:48.800 --> 00:15:50.160
<v Ingo>Das sind zwei unterschiedliche Sachen.

00:15:50.320 --> 00:15:50.640
<v Ingo>Ja.

00:15:52.000 --> 00:15:53.920
<v Felix>Aber was mit der PIN kannst du denn was machen?

00:15:54.160 --> 00:16:00.080
<v Gast 2>Mit der PIN kannst du das Device anlocken und damit kannst du dann quasi theoretisch über USB dir dann halt

00:16:00.080 --> 00:16:00.960
<v Gast 2>ein Backup ziehen.

00:16:01.120 --> 00:16:03.760
<v Felix>Das heißt, du knackst damit fiktiv die Krypto.

00:16:04.480 --> 00:16:05.920
<v Gast 1>Ja, du musst halt physischen Zugriff haben.

00:16:06.240 --> 00:16:07.760
<v Felix>Ja, ja, klar, darum geht es ja immer.

00:16:08.000 --> 00:16:13.120
<v Gast 2>Aber das, was Marc gemeint hat, war, man könnte das Gerät auch aufmachen und da direkt an den Flash-Speicher

00:16:13.120 --> 00:16:14.320
<v Gast 2>rangehen, aber der ist halt verschlüsselt.

00:16:14.400 --> 00:16:15.200
<v Felix>Das ist halt ein riesen Penis.

00:16:15.360 --> 00:16:19.600
<v Gast 1>Ja, oder die aus den Device-Backups das Zeug holen, aber da sind sie halt auch encrypted.

00:16:19.840 --> 00:16:20.000
<v Gast 1>Genau.

00:16:20.080 --> 00:16:20.320
<v Gast 1>Okay, genau.

00:16:20.480 --> 00:16:21.280
<v Gast 1>Genau auf jeden Fall.

00:16:21.920 --> 00:16:26.560
<v Ingo>Ja, das Paper an sich, also ich habe jetzt nur den Teil zu der Software durchgelesen,

00:16:26.640 --> 00:16:29.200
<v Ingo>die ich selber einsetzt, was OnePassword Pro ist.

00:16:30.000 --> 00:16:33.040
<v Ingo>Und da ist es halt so, dass es da eine Anfälligkeit gibt, dass man,

00:16:33.120 --> 00:16:39.440
<v Ingo>weil die PKCS7-Padding nicht richtig implementieren, dass man da ein bisschen optimierteres Bruteforcing

00:16:39.440 --> 00:16:44.160
<v Ingo>machen kann, womit man, was waren das, ein paar 5 Millionen Keys pro Sekunde,

00:16:44.320 --> 00:16:46.400
<v Ingo>pro Minute, glaube ich, durchprobieren kann.

00:16:46.880 --> 00:16:47.200
<v Ingo>Ja.

00:16:48.240 --> 00:16:51.360
<v Gast 1>Also die gehen generell so auf verschiedene Passwortmanager ein.

00:16:51.760 --> 00:16:53.360
<v Gast 1>Sie haben echt wenig.

00:16:54.160 --> 00:16:55.680
<v Gast 2>Ah, ne, sind tatsächlich pro Sekunde.

00:16:55.920 --> 00:16:56.800
<v Gast 1>Pro Sekunde, ja gut.

00:16:57.040 --> 00:17:01.680
<v Gast 1>Sie haben bei den meisten recht wenig auszusetzen, manche irgendwie Keeper-Password und Data Walls,

00:17:01.760 --> 00:17:07.440
<v Gast 1>weil so irgendwie Gratis-Apps, die sind etwas schlecht, die haben so irgendwie umgesalzene MD5-Fashes.

00:17:07.920 --> 00:17:09.680
<v Gast 1>Dann könnten wir das mit Rainbow Tables recovern.

00:17:10.080 --> 00:17:15.840
<v Felix>Da gab es aber auch ein, zwei Kandidaten, die haben irgendwie ihre hartgecodeten Keys da drin in ihren Kind.

00:17:16.000 --> 00:17:17.200
<v Unbekannt>Das ist natürlich sehr blöd.

00:17:17.440 --> 00:17:19.920
<v Felix>Und das ist halt schon super Fan einfach.

00:17:20.240 --> 00:17:23.600
<v Ingo>Ja, also die Sachen, die ich mir bis jetzt so angeguckt habe aus dem Paper,

00:17:23.680 --> 00:17:30.560
<v Ingo>die waren halt alle, benutzen 128-Bit IS im Cypher-Blockchaining-Mode und sollten

00:17:30.720 --> 00:17:33.920
<v Ingo>auch ihre Hashes, aber die haben halt Probleme mit Empedding.

00:17:34.160 --> 00:17:38.320
<v Felix>Und also es gibt hier tatsächlich nicht nur nicht so ein bisschen nur Sachen,

00:17:38.400 --> 00:17:41.680
<v Felix>die richtig üble Probleme haben, sondern so fünf, sechs.

00:17:42.800 --> 00:17:45.520
<v Gast 1>Alle Gratis-Sachen sind zum Beispiel total scheiße, erstaunlich.

00:17:45.680 --> 00:17:48.880
<v Gast 1>Also wirklich, die meisten gratis sagt halt, ja, Passwort ist im Klartext einer Datenbank,

00:17:48.960 --> 00:17:49.600
<v Gast 1>ist ein bisschen komisch.

00:17:49.760 --> 00:17:51.760
<v Felix>Genau, also das ist schon ein bisschen blöd.

00:17:52.400 --> 00:17:56.960
<v Felix>ISecure Light, Save Passwort, Awesome Passwort Manager Lock, Stripe Light,

00:17:57.360 --> 00:18:04.160
<v Felix>Ultimate Password Manager Free und Secret Folder Light und noch Splash-ID

00:18:04.320 --> 00:18:05.680
<v Felix>Save for iPhone.

00:18:05.920 --> 00:18:10.960
<v Gast 2>Oh ja, die Limitierung von diesem Ultimate Passwort Manager Free ist No Data Encryption.

00:18:11.600 --> 00:18:12.400
<v Unbekannt>Das ist natürlich.

00:18:12.960 --> 00:18:13.360
<v Unbekannt>Hä?

00:18:13.600 --> 00:18:17.120
<v Gast 2>Ja, nee, man kann die Software halt mit einem Pin anlocken, aber die Daten an sich,

00:18:17.200 --> 00:18:19.280
<v Gast 2>wenn du da rankommst, die sind halt nicht verschlüsselt.

00:18:20.000 --> 00:18:23.200
<v Ingo>Das ist halt auch so ein blöd.

00:18:23.680 --> 00:18:24.720
<v Felix>Fühlt sich irgendwie falsch an.

00:18:25.280 --> 00:18:28.000
<v Felix>Also so ein paar haben da schon echt üble Probleme.

00:18:28.800 --> 00:18:30.480
<v Gast 1>Die meisten sind halt echt in dem Free-Segment.

00:18:30.560 --> 00:18:32.960
<v Gast 1>Also ich würde echt einen Passwortmanager, da würde ich mir einen kaufen,

00:18:33.040 --> 00:18:34.960
<v Gast 1>wenn ich es auf meinem BlackBerry oder iPhone teste.

00:18:35.200 --> 00:18:38.000
<v Gast 2>Ja, oder irgendwelche getestete Software nehmen, die halt Open Source ist.

00:18:38.240 --> 00:18:38.640
<v Gast 2>Ja, natürlich.

00:18:39.040 --> 00:18:40.480
<v Gast 2>Die Alternative, die gibt es jetzt halt nicht.

00:18:40.640 --> 00:18:44.800
<v Ingo>Also die gute Alternative, die vielleicht auch noch irgendwie synkt oder so, gibt es halt hier nicht.

00:18:44.880 --> 00:18:48.560
<v Ingo>Also ich benutze halt auch auf Mac und auf iOS OnePassword.

00:18:48.800 --> 00:18:52.160
<v Ingo>Kostet es halt Geld, aber dafür funktioniert es halt auch gut.

00:18:52.320 --> 00:18:52.800
<v Ingo>Richtig.

00:18:54.160 --> 00:18:55.360
<v Gast 1>Es ist ein ganz nettes Paper.

00:18:55.440 --> 00:18:57.840
<v Gast 1>Also im Grunde gehen sie immer nur durch und sagen, wie die das verschlüsseln,

00:18:57.920 --> 00:19:00.480
<v Gast 1>was ja schon mal ganz cool ist und was da eventuell die Schwachstelle dran ist.

00:19:00.640 --> 00:19:03.680
<v Felix>Genau, also ich finde, ich finde das, also ich es geschrieben haben,

00:19:03.760 --> 00:19:09.920
<v Felix>ist halt nicht super professionell komisches Unigrate,

00:19:10.160 --> 00:19:12.000
<v Felix>sondern halt einfach nett geschrieben.

00:19:12.320 --> 00:19:16.080
<v Ingo>Also ich finde es auf jeden Fall auch mal interessant zu wissen, welche Algorithmen und welche Hashing,

00:19:16.240 --> 00:19:22.880
<v Ingo>also welche Krypto und welche Hashing-Algorithmen in welcher Software eingesetzt werden und wie viele Keys man

00:19:22.880 --> 00:19:25.680
<v Ingo>da mal mit einer normalen CPU pro Sekunde bruteforcen kann.

00:19:25.760 --> 00:19:26.800
<v Gast 2>Das ist auch schon mal ganz interessant.

00:19:27.120 --> 00:19:31.520
<v Felix>Ja, aber das, äh, du, die Zahlen, die sie da haben, sind nur Numbers.

00:19:33.040 --> 00:19:39.760
<v Felix>Also die sagen hier 7 Millionen pro Sekunde und zwar Numbers.

00:19:39.920 --> 00:19:43.760
<v Felix>Also wenn du nur auf Numbers gehst, ah, die Passwortlengt, sorry, das ging um die Passwortlengt.

00:19:44.160 --> 00:19:50.240
<v Felix>Und wenn die sagen hier am Tag, wenn du, was hast du dein, dein Ice One Password Pro,

00:19:50.720 --> 00:19:53.360
<v Felix>am Tag 12,2 Stellen.

00:19:53.520 --> 00:19:57.440
<v Felix>Also wenn du ein Passwort hast, kleiner als 12,2 Stellen, hast du nur Numbers.

00:19:58.080 --> 00:20:00.800
<v Felix>Und dann die ganze Zeit hochrechnen auf deine restliche Buchstaben.

00:20:00.960 --> 00:20:05.120
<v Ingo>Wobei, bei OnePasswort muss man halt auch noch sagen, da hat man im Normalfall eine vierstellige Pin und dazu

00:20:05.120 --> 00:20:08.000
<v Ingo>sind halt, also bei mir ist es zumindest so, sind halt die ganzen Passwörter.

00:20:08.690 --> 00:20:12.690
<v Ingo>wenn man die dann rausholen will, noch mit einer Masterkey geschlüsselt zu machen.

00:20:12.850 --> 00:20:15.410
<v Felix>Ja, genau, also die haben das glaube ich auch angesprochen, dass du da,

00:20:15.570 --> 00:20:19.970
<v Felix>wenn du dein Master Key richtig setzt, dass es ganz anständig ist, aber wenn du nur deine Pin hast,

00:20:20.050 --> 00:20:21.490
<v Felix>dann fällt es halt einfach.

00:20:21.730 --> 00:20:26.210
<v Gast 2>Ja, das ist halt keine gute Idee, auf einem mobilen Gerät seinen Passwörtern nur mit einer vierstelligen Pin

00:20:26.290 --> 00:20:26.690
<v Gast 2>zu sichern.

00:20:27.250 --> 00:20:28.610
<v Gast 2>Darauf können wir uns glaube ich einigen.

00:20:28.850 --> 00:20:29.570
<v Gast 2>Denke ich auch.

00:20:30.130 --> 00:20:33.970
<v Ingo>Okay, dann war es das erstmal mit mobilen Passwortmanagern.

00:20:34.130 --> 00:20:37.090
<v Ingo>Gucken wir mal, wird ja sicher noch viel passieren in der Stadt.

00:20:37.250 --> 00:20:39.650
<v Felix>Artikel ist verlinkt zu den Pin-Dingern.

00:20:39.970 --> 00:20:45.010
<v Ingo>Genau, bis mal der erste richtig geknackt ist und dann alle Passwörter verloren hat oder was weiß ich.

00:20:45.170 --> 00:20:45.970
<v Ingo>Oh, da Passwort.

00:20:46.770 --> 00:20:49.650
<v Ingo>Dann habe ich jetzt noch gerade so einen Untot in der Woche gefunden.

00:20:50.050 --> 00:20:52.690
<v Ingo>Wir müssen da jetzt gar nicht groß drüber diskutieren.

00:20:52.770 --> 00:20:56.530
<v Ingo>Und das hatten wir, glaube ich, schon oft, sehr oft.

00:20:57.970 --> 00:20:58.530
<v Ingo>Zombies.

00:20:59.010 --> 00:20:59.730
<v Ingo>Zombies, ja.

00:21:00.050 --> 00:21:00.770
<v Ingo>Verdammte Zombies.

00:21:01.010 --> 00:21:01.170
<v Ingo>Genau.

00:21:01.250 --> 00:21:08.050
<v Ingo>Migo ist ein neuer Zombie, weil Nokia sich gerade überlegt, jetzt doch noch zwei neue

00:21:08.050 --> 00:21:09.650
<v Ingo>Telefone mit Migo rauszudringen.

00:21:09.970 --> 00:21:12.130
<v Felix>Nachdem es von Microsoft so hart gefuckt wurden?

00:21:12.690 --> 00:21:13.570
<v Gast 1>Laut einer Quelle.

00:21:13.810 --> 00:21:14.370
<v Gast 1>Einer Quelle.

00:21:14.610 --> 00:21:18.770
<v Gast 1>Laut einer Quelle, der Next Billion Group des weltgrößten Handyherstellers.

00:21:19.090 --> 00:21:19.250
<v Gast 1>Was?

00:21:19.490 --> 00:21:20.850
<v Gast 1>Die denen nahesteht.

00:21:21.330 --> 00:21:25.490
<v Gast 1>Also jemand, der jemand nahe steht, der sich eventuell mit dem Gebiet irgendwie ein bisschen auskennt.

00:21:25.570 --> 00:21:29.330
<v Felix>Der, der schon mal, der einen Freund hat, dessen Cousine, dessen Hund.

00:21:29.490 --> 00:21:30.210
<v Felix>Dessen Hund.

00:21:31.330 --> 00:21:32.770
<v Ingo>So funktionieren doch die ganzen Nachrichten.

00:21:32.850 --> 00:21:37.010
<v Gast 1>Laut amerikanischen Analysten, ja, aber das sind jetzt ja nicht mal mehr Analysten,

00:21:37.090 --> 00:21:39.250
<v Gast 1>sondern das ist so eine Quelle, die jemand.

00:21:39.490 --> 00:21:40.290
<v Gast 1>Immerhin eine Quelle.

00:21:40.530 --> 00:21:45.010
<v Gast 1>Aber die jemand nahesteht, der bei einem Konzern arbeitet, der in derselben Industrie ist.

00:21:45.250 --> 00:21:46.050
<v Gast 1>Das ist doch schön.

00:21:46.130 --> 00:21:46.770
<v Gast 1>Ich meine, das ist super.

00:21:47.570 --> 00:21:49.090
<v Unbekannt>Da wird es dann irgendwann fragwürdig.

00:21:49.250 --> 00:21:52.290
<v Felix>Aber dafür ist die Aussage aber relativ klar.

00:21:53.010 --> 00:21:56.690
<v Gast 1>Ja, Nokia wird zwei Mikrogeräte anbieten, die billig sind.

00:21:56.850 --> 00:21:59.250
<v Felix>Ja, richtig, nachdem sie von Microsoft haben.

00:21:59.650 --> 00:22:00.930
<v Gast 1>Keine konkreten Details.

00:22:01.170 --> 00:22:02.290
<v Unbekannt>Also wahrscheinlich Touchscreen.

00:22:02.530 --> 00:22:07.970
<v Gast 1>Ja, und selbst wenn es so ist, ich kann mir auch viel ausdenken so den ganzen Tag lieber.

00:22:08.690 --> 00:22:10.130
<v Felix>Aber du kannst sagen, drei.

00:22:10.850 --> 00:22:15.010
<v Gast 1>Ja, aber wenn sie sagen würden, bei Nokia, okay, oder bei, keine Ahnung,

00:22:15.170 --> 00:22:18.690
<v Gast 1>eigentlich bei Nokia wäre so das, was man wollte, aber bei einer Quelle,

00:22:18.770 --> 00:22:22.370
<v Gast 1>die jemand nahe steht, der bei einer Firma arbeitet, die im selben Industriesegment tätig ist,

00:22:22.450 --> 00:22:25.810
<v Gast 1>dann kannst du auch zu Samsung gehen und sagen, wie sieht es denn mit Nokia und Migo außen?

00:22:26.050 --> 00:22:26.210
<v Gast 1>Ja.

00:22:26.610 --> 00:22:27.010
<v Gast 1>Zwei.

00:22:27.330 --> 00:22:27.490
<v Gast 1>Zwei.

00:22:28.370 --> 00:22:29.730
<v Unbekannt>Ach ein, zwei können wir noch nicht machen.

00:22:29.970 --> 00:22:31.810
<v Felix>Wir müssen uns ja auch Raki immer befragen.

00:22:33.490 --> 00:22:33.810
<v Felix>Zwei.

00:22:34.530 --> 00:22:37.090
<v Gast 1>Sie können sich da nicht schämen, wenn sie sowas veröffentlichen irgendwie.

00:22:37.490 --> 00:22:41.330
<v Gast 1>Ich kenne jemanden, der kennt jemanden, der in derselben ähnlichen Industrie,

00:22:41.410 --> 00:22:43.570
<v Gast 1>der sich ein bisschen damit auskennt, der sagt das.

00:22:45.090 --> 00:22:46.850
<v Ingo>Ah, so funktioniert dieses ganze Geschäft.

00:22:47.250 --> 00:22:51.010
<v Gast 1>Aber oft oft Leute bei Apple arbeiten, sagen das.

00:22:51.170 --> 00:22:53.090
<v Felix>Aber es ist auch netbooknews.de.

00:22:53.890 --> 00:22:54.210
<v Felix>Ja.

00:22:54.770 --> 00:22:58.690
<v Gast 2>Fucking Netbooknews.de Mit dem Typen hat Ingo doch mal einen Podcast gemacht, oder?

00:22:58.850 --> 00:22:59.570
<v Gast 2>Ja, mehrere schon.

00:22:59.810 --> 00:23:00.370
<v Gast 2>Fuck.

00:23:00.610 --> 00:23:00.850
<v Gast 2>Okay.

00:23:01.010 --> 00:23:03.650
<v Felix>Es tut mir leid, es ist vor die coole Seite.

00:23:04.690 --> 00:23:05.250
<v Felix>Nö.

00:23:05.730 --> 00:23:07.570
<v Ingo>Doch, ich gucke da ab und zu mal rein.

00:23:07.650 --> 00:23:08.610
<v Felix>Ja, nee, kein Problem.

00:23:08.690 --> 00:23:12.850
<v Ingo>Aber ich finde, vielleicht gibt es bald mehr Migo-Telefone, vielleicht auch nicht.

00:23:13.090 --> 00:23:15.890
<v Ingo>Mal angenommen, es wäre, so würde es uns großartig interessieren.

00:23:16.050 --> 00:23:16.770
<v Ingo>Ich würde es kaufen.

00:23:17.010 --> 00:23:17.250
<v Ingo>Echt?

00:23:17.730 --> 00:23:18.610
<v Felix>Keine Ahnung.

00:23:19.970 --> 00:23:22.690
<v Ingo>Und Klett ran machen und da hast ein neues Clettphone.

00:23:22.850 --> 00:23:23.650
<v Gast 2>Gib mal die Hand drauf.

00:23:23.730 --> 00:23:25.570
<v Felix>Nee, bloß wenn es Tethering kann.

00:23:25.810 --> 00:23:26.930
<v Felix>Ich brauche noch eins mit Tethering.

00:23:27.010 --> 00:23:29.250
<v Felix>Und wenn es nur 65 Euro kostet, dann kaufe ich mir das.

00:23:29.490 --> 00:23:30.050
<v Felix>Sehr gut.

00:23:30.850 --> 00:23:31.650
<v Unbekannt>Ja, nee.

00:23:31.890 --> 00:23:33.810
<v Felix>Weil ein iPhone kriege ich nicht für 65 Euro.

00:23:33.970 --> 00:23:34.530
<v Felix>Das ist richtig.

00:23:34.850 --> 00:23:35.330
<v Felix>Richtig.

00:23:35.570 --> 00:23:36.130
<v Felix>Richtig.

00:23:36.690 --> 00:23:37.010
<v Felix>Okay.

00:23:37.570 --> 00:23:40.290
<v Ingo>Dann, ähm, wo waren wir?

00:23:40.850 --> 00:23:41.730
<v Ingo>Neue Tablets, oder?

00:23:41.890 --> 00:23:42.370
<v Ingo>Neue Tablets?

00:23:43.010 --> 00:23:44.050
<v Unbekannt>Keine Tablets-E-Reader.

00:23:44.290 --> 00:23:44.370
<v Unbekannt>Tab.

00:23:46.210 --> 00:23:47.410
<v Ingo>Das ist so ein Twitter, oder?

00:23:47.570 --> 00:23:47.730
<v Ingo>Was?

00:23:47.890 --> 00:23:48.610
<v Ingo>Der Kindle Touch?

00:23:48.690 --> 00:23:50.850
<v Gast 2>Nee, das ist ein E-Reader und der hat ein Touchscreen.

00:23:50.930 --> 00:23:51.490
<v Gast 2>Das ist kein Tablet.

00:23:51.650 --> 00:23:52.050
<v Gast 2>Das ist das Ding.

00:23:52.210 --> 00:23:53.650
<v Ingo>Das, was du meinst, ist der Kindle Fire.

00:23:53.890 --> 00:23:54.530
<v Ingo>Ah, das ist doch dieses.

00:23:55.570 --> 00:23:55.730
<v Ingo>Hä?

00:23:56.290 --> 00:23:56.450
<v Ingo>Ja.

00:23:56.530 --> 00:23:56.850
<v Ingo>Kindle Tutch.

00:23:57.010 --> 00:23:57.970
<v Felix>Du meinst tatsächlich Hunch.

00:23:58.610 --> 00:24:00.530
<v Felix>Du hättest dir einfach mal die Bilder anschauen sollen.

00:24:00.850 --> 00:24:01.650
<v Felix>Das Ding ist Schwarzwein.

00:24:02.450 --> 00:24:03.330
<v Gast 2>Du meinst den Fire.

00:24:03.490 --> 00:24:05.010
<v Gast 2>Und der meint jetzt immer nur noch in den USA.

00:24:05.490 --> 00:24:06.770
<v Ingo>Achso, okay, und was kommt jetzt raus?

00:24:07.090 --> 00:24:07.490
<v Ingo>Der Touch.

00:24:07.730 --> 00:24:08.210
<v Ingo>Und was ist das?

00:24:08.450 --> 00:24:11.890
<v Felix>Das ist quasi hier so, guckt, guckt euch, das ist der kleine Kindle.

00:24:12.290 --> 00:24:13.570
<v Ingo>Ich will ja, dass er mir das erklärt.

00:24:13.730 --> 00:24:17.330
<v Gast 2>Das ist der kleine Kindle ohne Hardware-Tastatur, aber mit Touchscreen.

00:24:17.890 --> 00:24:19.010
<v Gast 2>Und den gibt es auch mit 3G.

00:24:19.650 --> 00:24:22.050
<v Ingo>Das ist also kein Android-Gerät, sondern das ist.

00:24:23.170 --> 00:24:28.530
<v Gast 2>Da läuft halt das, was da auch, dieses modifizierte Linux, was auch immer, auf diesem Kindle läuft.

00:24:28.770 --> 00:24:29.650
<v Ingo>Ah, okay.

00:24:29.890 --> 00:24:30.530
<v Ingo>Genau.

00:24:31.250 --> 00:24:36.450
<v Gast 2>Fand ich ganz interessant, weil ich bin vorhin an der an der S-Bahn U-Bahn-Haltestelle gestanden und da gibt

00:24:36.450 --> 00:24:40.690
<v Gast 2>es ja immer diese komischen Beamer, die da irgendwie Stuttgarter Nachrichten projizieren.

00:24:40.850 --> 00:24:44.210
<v Gast 2>Und dann haben irgendwie Leute angefangen zu tuscheln, oh, jetzt gibt es einen neuen Kindle,

00:24:44.290 --> 00:24:50.290
<v Gast 2>als sie da irgendwie die Schlagzeile mit dem Kindle Touch irgendwie dargestellt haben.

00:24:50.450 --> 00:24:52.530
<v Ingo>Aber ich habe gleich an diesen blöden Kindle Fire gedacht.

00:24:52.610 --> 00:24:53.010
<v Ingo>Ja, das ist ja auch.

00:24:53.090 --> 00:24:53.730
<v Ingo>Hast du aber Feind?

00:24:54.690 --> 00:24:56.610
<v Felix>Da haben sich perfekt irgendwie ausgeschrieben.

00:24:57.090 --> 00:24:59.250
<v Ingo>Nee, weil das wäre jetzt eigentlich eine schlechte User Experience.

00:24:59.410 --> 00:25:04.130
<v Ingo>Ingo wollte sich denn jetzt vielleicht kaufen und dann wäre er auf Amazon.de gegangen und hätte gesehen,

00:25:04.210 --> 00:25:05.490
<v Ingo>oh, das ist ja nur ein E-Reader.

00:25:08.530 --> 00:25:10.290
<v Ingo>Aber wozu brauche ich den dann?

00:25:11.730 --> 00:25:13.490
<v Ingo>Also bräuchte man den dann dein Schiff.

00:25:13.650 --> 00:25:18.610
<v Felix>Also ich kann mir das vorstellen, weil die Tastatur ist ja quasi nicht benutzbar auf dem Kindle anderen

00:25:18.770 --> 00:25:19.490
<v Felix>kleinen Kindle.

00:25:19.650 --> 00:25:20.450
<v Felix>Ja, aber da ist.

00:25:21.010 --> 00:25:24.370
<v Felix>Und da touchst du auf die Buttons drauf, wenn ich finde, das macht ein bisschen mehr Sinn.

00:25:24.690 --> 00:25:28.690
<v Felix>Als irgendwie mit diesem kleinen Fadenkreuz auf die Buchstaben zu gehen und dann OK zu drücken.

00:25:29.090 --> 00:25:31.090
<v Ingo>Aber warum willst du da überhaupt tippen?

00:25:31.170 --> 00:25:31.970
<v Ingo>Also außer das WLAN.

00:25:32.370 --> 00:25:37.250
<v Felix>Nee, nee, also du hast ja WLAN und UMTS und du kannst quasi direkt wieder bei Dings einkaufen.

00:25:37.330 --> 00:25:39.490
<v Ingo>Ja, aber wofür brauche ich denn die Tastatur?

00:25:39.810 --> 00:25:41.730
<v Felix>Um Bücher zu suchen, die du jetzt lesen willst.

00:25:41.810 --> 00:25:42.370
<v Felix>Ich meine, jetzt machst du das.

00:25:42.450 --> 00:25:44.290
<v Ingo>Aber wenn man Suchbegriffe eingeben will zum Beispiel.

00:25:44.530 --> 00:25:46.290
<v Gast 2>Oder man kann sich ja auch Notizen ranmachen.

00:25:46.370 --> 00:25:47.170
<v Felix>Ich finde, das macht schon sehr.

00:25:47.890 --> 00:25:52.930
<v Gast 2>Also ich fände den, hab mir auch mal überlegt, dass dieser Kindle Touch ganz interessant wäre.

00:25:53.170 --> 00:25:58.690
<v Ingo>Bin dann aber zum Schluss gekommen, dass ich mir wahrscheinlich doch eher den kleinen mit den Whip-Tasten an

00:25:58.690 --> 00:25:59.490
<v Ingo>der Seite kaufen würde.

00:25:59.570 --> 00:26:01.410
<v Gast 2>Oder halt den Keyboard, den ich jetzt schon habe.

00:26:01.570 --> 00:26:03.410
<v Felix>Achso, der hat auch keine WIP-Tasten, der hat ja das.

00:26:04.210 --> 00:26:09.010
<v Gast 2>Also man muss da irgendwie hin und her mit wischen, um es umzublättern und dann wird das Display wieder fertig

00:26:09.170 --> 00:26:11.090
<v Gast 2>und ich weiß nicht, ich glaube, das ist nicht so cool.

00:26:11.250 --> 00:26:13.970
<v Felix>Also hätte der noch Buttons an der Seite, dann hätte es ja tatsächlich Sinn gemacht.

00:26:14.050 --> 00:26:16.530
<v Ingo>Weil diese Buttons, gerade die finde ich irgendwie genial.

00:26:16.770 --> 00:26:18.050
<v Felix>Ja, die machen tatsächlich schon Sinn.

00:26:18.290 --> 00:26:21.730
<v Gast 2>Ein Problem, was ich da halt auch sehe, ist halt.

00:26:22.210 --> 00:26:25.650
<v Ingo>Das kann man sogar mit einer Hand bedienen und auf der anderen Hand noch irgendwas halten.

00:26:25.970 --> 00:26:27.330
<v Gast 2>Ja, also das geht irgendwie auch.

00:26:27.410 --> 00:26:32.210
<v Gast 2>Man kann da auch irgendwie, ich glaube, wenn man rechts tippt, dann blättert man vorwärts und wenn man links

00:26:32.210 --> 00:26:33.410
<v Gast 2>tippt, dann zurück.

00:26:33.650 --> 00:26:36.690
<v Gast 2>Aber dann kommt man mal außer Sehen drauf oder so.

00:26:36.770 --> 00:26:39.090
<v Ingo>Ich glaube, das ist alles nicht so super cool.

00:26:39.650 --> 00:26:45.810
<v Gast 2>Ja, was ich da halt auch noch sehe, ist, dass Touchscreens allgemein so ein bisschen Latenz hinzufügen und

00:26:45.810 --> 00:26:50.690
<v Gast 2>wenn man dann noch dieses E-Paper-Display hat, was auch so ein bisschen schwergängig ist,

00:26:50.930 --> 00:26:55.810
<v Gast 2>dann kann halt, kann ich mir vorstellen, dass es sich vielleicht ein bisschen weniger flüssig bedient.

00:26:55.970 --> 00:27:00.050
<v Gast 1>Ja, das raffen dann die meisten Leute auch nicht, wenn sie drauf swipen und es passiert nicht sofort was,

00:27:00.130 --> 00:27:01.570
<v Gast 1>sondern es dauert irgendwie zweieinhalb Sekunden.

00:27:01.890 --> 00:27:02.690
<v Gast 1>Es sind alle verwöhnt.

00:27:03.090 --> 00:27:04.370
<v Unbekannt>Ja, richtig.

00:27:05.090 --> 00:27:09.410
<v Ingo>Gut, ich finde die VIP-Tasten eigentlich ganz cool zum Vor- und Zurückblättern und auch gerade so,

00:27:09.490 --> 00:27:13.330
<v Ingo>dass man den mit beiden Händen bedienen kann und so, finde ich eigentlich ganz nett.

00:27:13.890 --> 00:27:18.930
<v Ingo>Okay, also jetzt gibt es die Zwischenstufe und vielleicht kommt ja auch irgendwann mal der Feier nach

00:27:19.010 --> 00:27:19.650
<v Ingo>Deutschland.

00:27:19.890 --> 00:27:20.210
<v Ingo>Vielleicht.

00:27:20.370 --> 00:27:22.130
<v Gast 1>Achso, den gibt es ja noch, stimmt.

00:27:22.610 --> 00:27:27.570
<v Gast 2>Ja, aber da reißen sich auch in den USA die Leute momentan nicht drum.

00:27:27.650 --> 00:27:29.330
<v Gast 2>Also er ist zwar billig, aber irgendwie.

00:27:29.570 --> 00:27:32.930
<v Felix>Also Dorf geht schon, aber die meisten sagen halt nichts Gutes darüber, aber sagen, dass es billig ist.

00:27:33.010 --> 00:27:33.890
<v Felix>Von daher passt das schon.

00:27:34.290 --> 00:27:38.530
<v Gast 2>Also ich meine, man kriegt halt, was man dafür bezahlt und für ein iPhone zahlt man halt irgendwie das

00:27:38.530 --> 00:27:41.890
<v Gast 2>zweieinhalb bis dreifache und dafür kriegt man halt auch ein besseres Gerät,

00:27:41.970 --> 00:27:42.530
<v Gast 2>äh, iPad.

00:27:43.330 --> 00:27:43.810
<v Gast 2>Achso.

00:27:44.850 --> 00:27:47.010
<v Felix>Jedenfalls ja, apropos Scheiße.

00:27:47.650 --> 00:27:47.970
<v Felix>Richtig.

00:27:48.290 --> 00:27:48.530
<v Felix>Was?

00:27:48.850 --> 00:27:49.490
<v Felix>Get Shitter.

00:27:49.730 --> 00:27:50.130
<v Felix>Get Shitter.

00:27:50.690 --> 00:27:52.930
<v Felix>Ich weiß nicht, wo ich raufklingen soll, ich verstehe diese Seite nicht.

00:27:53.890 --> 00:27:56.610
<v Felix>Ich hätte gerne benutze aus dem, was macht das?

00:27:56.930 --> 00:28:01.410
<v Gast 1>Die drucken, äh, du logst dich ein mit deinem Twitter-Account und sie drucken dir dann vier Klopapierrollen

00:28:01.410 --> 00:28:03.730
<v Gast 1>aus deiner Timeline, dass du auf der Toilette was zu suchen hast.

00:28:03.810 --> 00:28:07.170
<v Gast 1>Ich hab gedacht, das passt beim Mobile rein, weil du weg vom Computer bist.

00:28:07.810 --> 00:28:09.010
<v Unbekannt>Du bist mobil.

00:28:09.570 --> 00:28:16.290
<v Gast 2>Also bedingte mobil, aber man könnte die Rollen ja auch mit in die Bahn nehmen und an der Bahn

00:28:16.290 --> 00:28:16.690
<v Gast 2>anfangen.

00:28:16.930 --> 00:28:17.570
<v Gast 2>Richtig, richtig.

00:28:17.890 --> 00:28:19.410
<v Felix>Oder jemanden schenken einfach.

00:28:20.690 --> 00:28:23.490
<v Ingo>Und wie lange dauert das, bis man die hat?

00:28:23.650 --> 00:28:24.450
<v Ingo>Nicht die geringste Art.

00:28:24.770 --> 00:28:27.570
<v Gast 2>Das Problem ist ja, wenn die das da drucken, selbst wenn das eine Woche dauert,

00:28:27.730 --> 00:28:29.970
<v Gast 2>ich meine eine Woche auf Twitter, das sind ja Dekaden.

00:28:30.210 --> 00:28:30.770
<v Gast 2>Ja, richtig.

00:28:31.410 --> 00:28:34.610
<v Gast 1>Die drucken einfach vier Rollen voll und dann kannst du mal deine Timeline durchspulen hier.

00:28:34.770 --> 00:28:38.290
<v Ingo>Aber dann hast du mal wirklich Zeit, deine ganze Timeline zu lesen.

00:28:38.450 --> 00:28:40.850
<v Gast 2>Ich habe mir meine Timeline am Arsch vorbei.

00:28:41.330 --> 00:28:41.810
<v Gast 2>Richtig.

00:28:42.770 --> 00:28:44.370
<v Felix>Richtig, genau, das ist die Idee.

00:28:44.690 --> 00:28:47.890
<v Felix>Und das Ganze von der Collectors Edition, die machen irgendwie mehr so Zeugs.

00:28:48.370 --> 00:28:49.730
<v Ingo>Das sieht irgendwie nach Kunst aus oder so.

00:28:49.810 --> 00:28:52.450
<v Gast 2>Ich meine, die Idee ist eigentlich ganz, ganz, ganz nett, aber.

00:28:52.930 --> 00:28:55.410
<v Felix>Sie hätten wenigstens ein echtes Foto machen können, das wäre okay gewesen,

00:28:55.490 --> 00:28:57.490
<v Felix>aber nicht irgendwie so ein gefaktes 3D-Foto.

00:28:57.730 --> 00:28:59.650
<v Gast 2>Ja, das ist irgendwie ein bisschen schlecht gerendert.

00:28:59.810 --> 00:29:01.170
<v Felix>Das ist einfach so Kripe.

00:29:01.970 --> 00:29:06.770
<v Felix>Jedenfalls Web, Web, Web, Web, Web, Web, was haben wir?

00:29:07.010 --> 00:29:09.810
<v Gast 1>Der Chrome hat den IE geschlagen für den Tag, für den ganzen Tag IE.

00:29:10.210 --> 00:29:16.050
<v Gast 1>Ja, also hochwissenschaftliche Auswertungen, die natürlich wissen, mit was alle Leute gleichzeitig online

00:29:16.050 --> 00:29:16.290
<v Gast 1>sind.

00:29:16.370 --> 00:29:17.010
<v Gast 1>Ja, das ist halt auch.

00:29:18.370 --> 00:29:19.650
<v Gast 2>Wie genau sind so Statistiken?

00:29:19.730 --> 00:29:26.450
<v Ingo>Ja, da gab es halt irgendwie Statistiken, dass der Chrome kurze Zeit für einen Tag mehr Verbreitung

00:29:26.450 --> 00:29:28.290
<v Ingo>wahrscheinlich auch mehr benutzt wurde als der IE.

00:29:28.770 --> 00:29:33.330
<v Ingo>In Amerika und Deutschland war gleichzeitig ein Feiertag und die ganzen Leute waren nicht im,

00:29:33.490 --> 00:29:35.410
<v Ingo>wie heißt es hier im Schwäbischen so schön, im Geschäft.

00:29:35.730 --> 00:29:38.290
<v Gast 2>Ne, da geht es tatsächlich um das war letzten Sonntag.

00:29:38.610 --> 00:29:39.730
<v Ingo>Naja, genau, sag ich doch.

00:29:39.810 --> 00:29:43.810
<v Ingo>Es muss gleichzeitig überall gewesen sein, wo die alle nicht arbeiten waren.

00:29:43.970 --> 00:29:45.410
<v Gast 1>Jeder durfte sich seinen Browser raussuchen.

00:29:45.570 --> 00:29:45.730
<v Gast 1>Genau.

00:29:45.810 --> 00:29:52.450
<v Ingo>Und an dem Tag hat jeder mal sein Browser selber benutzt, den eigenen und Choose Your Browser Day

00:29:52.530 --> 00:29:53.090
<v Ingo>quasi.

00:29:53.970 --> 00:29:54.210
<v Ingo>Quasi.

00:29:55.010 --> 00:29:55.570
<v Ingo>Quasi.

00:29:56.370 --> 00:29:57.490
<v Felix>Das macht aber dann keinen Sinn.

00:29:57.650 --> 00:29:58.290
<v Felix>Ja, fand ich auch.

00:29:58.450 --> 00:29:58.770
<v Felix>Keine Ahnung.

00:29:59.010 --> 00:30:00.370
<v Felix>Stud-Counter ist aber eh so ein super Cooper.

00:30:00.610 --> 00:30:03.010
<v Ingo>Und von welchen, genau, auf welche Daten bezieht sich das?

00:30:03.250 --> 00:30:04.050
<v Ingo>Auf Stud-Counter.

00:30:04.290 --> 00:30:04.770
<v Ingo>Stud-Counter.

00:30:05.090 --> 00:30:07.970
<v Felix>Das ist, was man sich so früher auf seiner Webseite gemacht hat, um so Stats zu bekommen.

00:30:08.210 --> 00:30:08.530
<v Felix>Stimmt.

00:30:08.770 --> 00:30:11.330
<v Unbekannt>Bevor die embedded A.

00:30:12.370 --> 00:30:15.250
<v Felix>Genau, da hast du da unten so hier schon 12.000 Views oder so.

00:30:15.410 --> 00:30:15.970
<v Felix>Ja, total gut.

00:30:16.210 --> 00:30:17.730
<v Ingo>Das ist dafür ganz wichtig, ja.

00:30:18.050 --> 00:30:22.130
<v Gast 2>Die Frage ist halt auch, was für eine Aussage hat das und wie oft wird dieser Dienst irgendwo eingebunden.

00:30:22.370 --> 00:30:25.650
<v Felix>Also es ist, denke ich, ganz schön oft, weil es gibt Leute, die benutzen sowas.

00:30:25.890 --> 00:30:28.530
<v Gast 2>Ja, das sind aber dann die ganzen Legacy-Webseiten, ist halt die Frage.

00:30:29.730 --> 00:30:33.010
<v Gast 2>Ich weiß nicht, hat Google so ein Start-Count bezweifle es stolisch.

00:30:33.650 --> 00:30:37.010
<v Ingo>Legacy-Webseiten werden ja eher mit alten Browsern gesurft.

00:30:37.250 --> 00:30:38.370
<v Felix>Das heißt, warum stimmt das da nicht?

00:30:38.930 --> 00:30:41.170
<v Ingo>Ich habe auch noch so eine Webseite, die das glaube ich eingebunden hat.

00:30:41.250 --> 00:30:42.210
<v Felix>Oh, ich habe auch eine.

00:30:42.450 --> 00:30:43.250
<v Felix>StartCount.

00:30:43.810 --> 00:30:44.610
<v Felix>Aber ich habe egal.

00:30:45.650 --> 00:30:46.370
<v Felix>Ihr seid seltsam.

00:30:48.610 --> 00:30:49.810
<v Gast 2>Ja, das ist super.

00:30:50.050 --> 00:30:53.970
<v Gast 2>Hab ich mich gefreut und dann haben irgendwelche Leute gemeint, das gab es schon in den 70ern mit

00:30:53.970 --> 00:30:54.690
<v Gast 2>C-Source-Code.

00:30:54.850 --> 00:30:57.330
<v Gast 1>Das ist immer super, wenn du mit dem Karo redest, der das gesagt hat.

00:30:57.650 --> 00:31:00.690
<v Gast 1>Der ist so alt und weiß so viel, der sagt ja nicht immer, oh, hatte ich damals auf VMS schon.

00:31:02.930 --> 00:31:07.010
<v Gast 2>Das tolle ist halt, die Sachen wiederholen sich halt immer, aber das gibt es halt auch für JavaScript.

00:31:07.570 --> 00:31:13.250
<v Gast 2>Also um mal von Anfang an anzufangen, es gibt

00:31:14.850 --> 00:31:21.330
<v Gast 2>diverse Gründe, weshalb man unter anderem JavaScript kompilieren oder nach

00:31:21.330 --> 00:31:22.610
<v Gast 2>JavaScript kompilieren möchte.

00:31:22.690 --> 00:31:26.050
<v Gast 2>Unter anderem, weil man vielleicht eine Programmiersprache einsetzt,

00:31:26.130 --> 00:31:30.610
<v Gast 2>die nicht direkt vom Browser supportet wird, also die nicht direkt JavaScript ist,

00:31:30.930 --> 00:31:34.690
<v Gast 2>wie zum Beispiel CoffeeScript oder ClojureScript oder was es da sonst noch so gibt.

00:31:35.570 --> 00:31:38.930
<v Gast 2>Zum anderen möchte man den Code vielleicht minifieren.

00:31:39.170 --> 00:31:41.650
<v Gast 2>Das heißt, man möchte die Variablenamen so kurz wie möglich machen,

00:31:41.810 --> 00:31:47.730
<v Gast 2>möchte da die kompletten Whitespaces rausnehmen, damit man einfach weniger Content

00:31:48.370 --> 00:31:51.650
<v Gast 2>ausliefern muss und man möchte vielleicht auch seine kompletten JavaScript-Sachen,

00:31:51.730 --> 00:31:53.650
<v Gast 2>die man auf seine Webseite eingebunden hat.

00:31:53.810 --> 00:31:58.450
<v Gast 2>Oder CSS zum Beispiel auch alles in eine Datei zusammenfassen,

00:31:58.530 --> 00:32:03.490
<v Gast 2>damit man das besser cachen kann und damit man weniger HTTP-Requests zum Server machen muss,

00:32:03.890 --> 00:32:05.250
<v Gast 2>um die Sachen abzuholen.

00:32:05.730 --> 00:32:07.490
<v Ingo>Kleinzeit-Optimizing.

00:32:07.730 --> 00:32:08.370
<v Ingo>Genau.

00:32:08.690 --> 00:32:14.290
<v Gast 2>Auf gut Deutsch, man möchte einfach möglichst performante Webseiten haben,

00:32:14.450 --> 00:32:19.570
<v Gast 2>was so ein bisschen dem Gedanken von, wie nenne ich es denn mal,

00:32:19.970 --> 00:32:23.010
<v Gast 2>komfortablem Debugging so ein bisschen entgegenwirkt.

00:32:23.170 --> 00:32:25.250
<v Gast 1>Ja, so Laufzeit-Debugging ist dann echt eben.

00:32:25.650 --> 00:32:31.570
<v Gast 2>Genau, also man kennt es ja zum Beispiel eben WebKit Inspector im Chrome oder in den

00:32:31.810 --> 00:32:38.050
<v Gast 2>Firebug oder in den neuen Entwickler-Tools im Firefox, da kann man ja halt auch JavaScript-Singles tappen zum

00:32:38.050 --> 00:32:38.290
<v Gast 2>Beispiel.

00:32:38.370 --> 00:32:42.050
<v Gast 2>Man kann irgendwie eine Stelle klicken, kann sagen, hier halt mal da an,

00:32:42.210 --> 00:32:46.450
<v Gast 2>zeigt mir mal den Inhalt von irgendwelchen Variablen oder zeigt mir einfach mal den Source-Code,

00:32:46.610 --> 00:32:49.570
<v Gast 2>wo denn gerade ein Fehler geworfen wurde.

00:32:50.370 --> 00:32:55.970
<v Gast 2>Und es wird dann halt auch schnell zum Problem, wenn man da in seiner Produktionsumgebung ist und dann nicht

00:32:55.970 --> 00:32:57.410
<v Gast 2>weiß, was da los ist.

00:32:57.730 --> 00:32:58.050
<v Gast 2>Richtig.

00:32:58.210 --> 00:32:59.890
<v Felix>Okay, was ist jetzt eine Source-Map?

00:33:00.290 --> 00:33:01.170
<v Gast 2>Dazu komme ich noch.

00:33:02.770 --> 00:33:06.930
<v Felix>Ich klicke auf diese Seite rauf, ich suche irgendwo eine Map, die deinen Source-Code zeigt,

00:33:07.090 --> 00:33:08.130
<v Felix>aber ich finde die nicht.

00:33:09.650 --> 00:33:14.370
<v Gast 2>Da ist es so, eine Source-Map, das ist quasi eine Datei,

00:33:14.850 --> 00:33:20.930
<v Gast 2>die deinen kompilierten, komprimierten Code zeilen und

00:33:20.930 --> 00:33:25.010
<v Gast 2>spaltenweise auf dein Original-Source-Code-Mappt.

00:33:26.370 --> 00:33:29.970
<v Felix>Und da kannst du quasi Symbols für dein Code colours.

00:33:30.050 --> 00:33:31.810
<v Gast 2>Genau, Symbols, aber halt.

00:33:31.970 --> 00:33:33.250
<v Felix>Okay, das gibt es aber schon seit den 70ern.

00:33:33.570 --> 00:33:34.690
<v Unbekannt>Das habe ich doch gerade gesagt.

00:33:36.610 --> 00:33:37.650
<v Unbekannt>Jetzt auch für JavaScript.

00:33:37.730 --> 00:33:39.970
<v Gast 1>Ich glaube, mehr mit dem drüber sagen, das war es ja schon.

00:33:40.290 --> 00:33:46.210
<v Gast 1>Also früher warst du wohl in C-Compilern die Line-Direktive, die Debugging-Symbole in Binäobjekte quasi

00:33:46.210 --> 00:33:46.930
<v Gast 1>ermöglicht hat.

00:33:47.170 --> 00:33:47.410
<v Gast 1>Ja, genau.

00:33:49.410 --> 00:33:53.330
<v Gast 2>Das, was daran jetzt gerade neu ist, ist halt im Endeffekt, dass es,

00:33:53.650 --> 00:33:58.850
<v Gast 2>dass da jetzt in den ersten Testversionen in den Browsern Support für gibt und dass es die ersten Compiler

00:33:58.850 --> 00:34:01.170
<v Gast 2>gibt, die diese Source Maps generieren können.

00:34:01.250 --> 00:34:06.610
<v Gast 2>Und dass man sich mal halt auf den Standard geeinigt hat, wie man das Ganze implementiert.

00:34:06.690 --> 00:34:12.530
<v Gast 2>Und da arbeiten momentan Mozilla dran, da arbeiten momentan die Google-Leute von Chrome dran und das wird

00:34:12.530 --> 00:34:18.930
<v Gast 2>demnächst in GWT, in das Google Web Toolkit eingebaut und ist momentan schon im Google Closure Compiler mit

00:34:18.930 --> 00:34:23.410
<v Gast 2>drin und wird wahrscheinlich demnächst auch irgendwie in CoffeeScript oder so kommen.

00:34:23.490 --> 00:34:27.170
<v Gast 2>Da gibt es schon experimentelle Versionen vom CoffeeScript-Compiler, die das auch schon können.

00:34:27.650 --> 00:34:30.850
<v Felix>Ich meine, die Webseite hat nicht so viel Aussage, wenn man nur noch rüber scrollt.

00:34:31.330 --> 00:34:31.650
<v Felix>Ja.

00:34:33.410 --> 00:34:35.810
<v Gast 1>Ich finde es ein bisschen schade, ich finde die herangehensweise blöd.

00:34:36.450 --> 00:34:39.810
<v Gast 1>Das Schöne an diesem ganzen JavaScript-Grickel war ja, dass du es lesen kannst.

00:34:40.050 --> 00:34:43.170
<v Gast 1>Die Sprache ist ja natürlich ganz nett, aber wenn sie jetzt anfangen,

00:34:43.330 --> 00:34:48.450
<v Gast 1>allein schon einen Compiler für CoffeeScript, das ist so, ja, da geht es schon so langsam los.

00:34:48.690 --> 00:34:50.850
<v Gast 2>Ja, CoffeeScript ist schon die ganze Zeit kompiliert.

00:34:50.930 --> 00:34:52.210
<v Gast 1>Ja, ja, nee, das ist ja die Sache.

00:34:52.290 --> 00:34:54.770
<v Gast 1>Deswegen, ich finde es ja schön, dass die CoffeeScript haben, aber ich finde halt,

00:34:54.850 --> 00:34:58.690
<v Gast 1>es ist irgendwie eine blöde Sache, dass du deine Sprache, also wir gehen jetzt halt immer weiter weg von

00:34:58.690 --> 00:35:00.450
<v Gast 1>JavaScript und dass du das eigentlich ausgemacht hast.

00:35:00.770 --> 00:35:06.130
<v Gast 2>Aber, aber da komme ich auch noch dazu, da gibt es jetzt ja halt auch dieses ECMAScript Next,

00:35:06.450 --> 00:35:12.610
<v Gast 2>wo mal so die nächsten Versionen von, also JavaScript, der Standard dazu heißt ECMAScript und davon gibt es

00:35:12.610 --> 00:35:14.930
<v Gast 2>jetzt halt auch demnächst mal neuere Versionen.

00:35:15.010 --> 00:35:21.490
<v Gast 2>Der aktuelle Standard ist ECMAScript 5 und jetzt gibt es gerade unter dem Working-Titel ECMAScript Next

00:35:21.890 --> 00:35:26.610
<v Gast 2>werden da gerade so Dinge wie zum Beispiel Klassen in JavaScript und noch so andere Optimierungen und

00:35:26.690 --> 00:35:28.690
<v Gast 2>Geschichten spezifizieren.

00:35:29.010 --> 00:35:29.330
<v Gast 2>Warum?

00:35:32.210 --> 00:35:35.170
<v Gast 1>Wir haben noch andere Sprachen, die schon viele Leute, die genauso gut wollen.

00:35:37.410 --> 00:35:39.250
<v Gast 1>Pack uns einfach auf Python oder Ruby in Browser.

00:35:39.490 --> 00:35:44.210
<v Felix>Genau, was spricht denn dagegen, Python oder Ruby in Browser zu tun?

00:35:44.370 --> 00:35:45.810
<v Ingo>Das müssten sich halt alle drauf einigen.

00:35:46.130 --> 00:35:51.250
<v Felix>Ja, fuck, dann musst du dich, du musst dich ja auf irgendwie auf Next Level auch einigen auf Java-Programm.

00:35:51.330 --> 00:35:57.890
<v Gast 2>Das gibt es kommen ja jetzt noch, weil genauso wie bei Google Dart oder ES Next gibt es halt auch Compiler,

00:35:57.970 --> 00:36:02.770
<v Gast 2>die das dann wiederum auf aktuelles JavaScript runterkompilieren und für die funktioniert es ja natürlich

00:36:02.770 --> 00:36:02.850
<v Gast 2>auch.

00:36:03.010 --> 00:36:05.010
<v Felix>Ja, du kannst auch Python auf JavaScript runterkompilieren.

00:36:05.970 --> 00:36:07.010
<v Felix>Dann lass doch einfach das machen.

00:36:07.090 --> 00:36:08.210
<v Felix>Aber das ist alles klar.

00:36:08.450 --> 00:36:10.930
<v Gast 2>Da hättest du auch Probleme mit dem Debuggen, wenn du keine Source-Maps hättest.

00:36:11.010 --> 00:36:12.610
<v Gast 2>Deshalb ist die Technologie eigentlich ganz cool.

00:36:12.850 --> 00:36:15.170
<v Felix>Nee, eigentlich solltest du sowas gar nicht erst brauchen.

00:36:15.650 --> 00:36:17.090
<v Felix>Hatten wir doch am Anfang gerade.

00:36:17.330 --> 00:36:18.610
<v Felix>Oder gerade vor zwei Minuten.

00:36:19.170 --> 00:36:19.970
<v Felix>Ich finde es komisch.

00:36:20.050 --> 00:36:20.930
<v Felix>Ich finde es auch komisch.

00:36:21.010 --> 00:36:22.130
<v Felix>Ich kann mich damit nicht antworten.

00:36:22.210 --> 00:36:22.450
<v Felix>Okay, wirklich.

00:36:22.930 --> 00:36:23.810
<v Felix>Ich hoffe, ich brauch es auch nicht.

00:36:24.050 --> 00:36:24.770
<v Felix>Aber so ist es halt.

00:36:24.850 --> 00:36:29.010
<v Gast 2>Und wenn du da mal JavaScript debuggen willst und du hast es vielleicht aus CoffeeScript raus oder aus anderen

00:36:29.730 --> 00:36:33.650
<v Gast 2>Sprachen rauskompiliert oder du hast irgendwie ein minimiertes JavaScript vor dir.

00:36:34.050 --> 00:36:37.010
<v Felix>Wenn du minimiert hast, dann kannst du auch die andere, die Originalpfeile nehmen, oder?

00:36:37.170 --> 00:36:38.770
<v Gast 2>Ja, das referenziert ja auf die Originalfile.

00:36:39.170 --> 00:36:42.130
<v Felix>Naja, nee, klar, du kannst aber auch einfach so die Originalfile laden anstattdessen.

00:36:42.850 --> 00:36:45.250
<v Ingo>Die wird aber nicht zur Laufzeit ausgeführt.

00:36:45.490 --> 00:36:45.970
<v Ingo>Doch.

00:36:46.130 --> 00:36:49.170
<v Felix>Wenn du sagst, ich nehme nicht die minimierte, wie normal.

00:36:50.610 --> 00:36:55.330
<v Gast 2>Ja, schon, aber dann hast du halt eine andere Umgebung als deine Produktionsumgebung,

00:36:55.410 --> 00:36:57.410
<v Gast 2>die beim Kunden läuft oder bei deinen Usern.

00:36:58.130 --> 00:36:58.850
<v Gast 2>Jedenfalls.

00:36:59.010 --> 00:37:00.770
<v Felix>Anyways, was war denn das nächste Thema?

00:37:00.930 --> 00:37:02.050
<v Unbekannt>Mozilla-Browserquest.

00:37:02.210 --> 00:37:02.850
<v Unbekannt>Ich finde es zu total.

00:37:03.890 --> 00:37:05.010
<v Unbekannt>Das funktionieren Safari nicht.

00:37:05.970 --> 00:37:08.450
<v Felix>Also es ging bei mir auf Arbeit nicht und deswegen war ich ganz schön drauf.

00:37:08.850 --> 00:37:10.050
<v Gast 2>Bei mir hat das voll funktioniert.

00:37:10.130 --> 00:37:10.770
<v Gast 2>Da kann man da funktionieren.

00:37:10.930 --> 00:37:11.970
<v Felix>Ich probiere es nochmal aus.

00:37:12.530 --> 00:37:15.330
<v Gast 1>Also er lädt bei mir sieht dann aus wie Pixelkotze, dann war es das.

00:37:15.410 --> 00:37:17.090
<v Gast 2>Nee, das ist so 8 Bit-Style.

00:37:17.330 --> 00:37:19.410
<v Gast 1>Ja, aber nicht richtig bei mir, ohne Bewegung.

00:37:19.650 --> 00:37:22.690
<v Gast 2>Also bei mir hat das sich sogar meine Waffen gemerkt, die ich mir beim letzten Mal erkämpft hatte.

00:37:23.170 --> 00:37:24.850
<v Ingo>Erklärt ihr bitte mal erstmal, was es ist.

00:37:25.250 --> 00:37:25.570
<v Ingo>Nö.

00:37:26.290 --> 00:37:33.010
<v Gast 2>Mozilla hat als Tech-Demo für moderne Browser-Technologie

00:37:33.330 --> 00:37:37.810
<v Gast 2>ein Massive Multiplayer Online Adventure Game geschrieben.

00:37:38.050 --> 00:37:40.290
<v Felix>Yeah, euch töte diese Ratte.

00:37:40.370 --> 00:37:42.930
<v Gast 2>Yeah, ich kann einen Red Burger draus machen.

00:37:43.250 --> 00:37:44.530
<v Ingo>Connected to Server.

00:37:44.770 --> 00:37:45.650
<v Felix>Lass mich jetzt mal so.

00:37:46.610 --> 00:37:47.810
<v Ingo>Das sieht so richtig aus wie.

00:37:48.210 --> 00:37:49.250
<v Felix>Ich finde, das ist super awesome.

00:37:49.570 --> 00:37:49.650
<v Felix>Mitte.

00:37:50.690 --> 00:37:51.490
<v Felix>Das ist einfach super awesome.

00:37:51.730 --> 00:37:52.450
<v Felix>Das ist halt so ein.

00:37:53.090 --> 00:37:54.690
<v Gast 2>Ist das schon Point-and-Click-Aventure?

00:37:54.770 --> 00:37:55.570
<v Gast 2>Ja, schon eigentlich, oder?

00:37:55.810 --> 00:37:57.330
<v Felix>Nein, das ist ein Role-Playing-Game.

00:37:57.730 --> 00:37:59.010
<v Felix>RPG ist das.

00:37:59.650 --> 00:38:00.210
<v Felix>Jedenfalls.

00:38:00.370 --> 00:38:01.890
<v Felix>Oh fuck, das ist ja eine October-Katze.

00:38:02.130 --> 00:38:02.930
<v Felix>Das ist die OctoCat.

00:38:03.330 --> 00:38:03.970
<v Felix>True Warrior!

00:38:04.290 --> 00:38:05.730
<v Felix>Smalltalk, ich hab Achievement.

00:38:05.970 --> 00:38:06.370
<v Felix>Yeah.

00:38:06.530 --> 00:38:09.250
<v Gast 2>Ja, das Coole ist halt auch, da gibt es jetzt hier auch so eine Brücke.

00:38:09.490 --> 00:38:10.450
<v Ingo>Kann ich ihn töten, kann ich ihn töten?

00:38:11.170 --> 00:38:16.210
<v Gast 2>Und die Wachen an den Brücken haben dann irgendwie so ein HTML5-Logo als Schild und so.

00:38:16.290 --> 00:38:17.250
<v Gast 2>Das ist alles ganz nett gemacht.

00:38:18.130 --> 00:38:20.290
<v Felix>Ich finde das super awesome, muss ich sagen.

00:38:21.090 --> 00:38:21.570
<v Felix>Genau.

00:38:21.810 --> 00:38:27.650
<v Gast 2>Und man kann da jetzt quasi mit, also momentan sind irgendwie 70, 72 Leute online und kann dann mit.

00:38:29.890 --> 00:38:32.530
<v Gast 2>Ja, kann er mit den Leuten gemeinsam spielen und kann da.

00:38:33.010 --> 00:38:33.970
<v Felix>Was halten wir jetzt?

00:38:34.530 --> 00:38:37.010
<v Gast 1>Ich glaube, ich spiele alle und ich mache letztlich Leute im Podcast.

00:38:37.330 --> 00:38:39.010
<v Gast 2>Ich mache gerade Fledermäuse kaputt.

00:38:39.330 --> 00:38:43.090
<v Felix>Jedenfalls, ich wollte das auf Arbeit mal ausprobieren und dann habe ich aber wahrscheinlich,

00:38:43.250 --> 00:38:47.810
<v Felix>habe ich gemerkt, dass es irgendwie super Bonus-Software irgendwelche Sockets wahrscheinlich noch braucht.

00:38:48.130 --> 00:38:53.490
<v Gast 2>Genau, das benutzt halt modernen Scheiß, also es benutzt Websockets zur Kommunikation.

00:38:55.970 --> 00:38:56.850
<v Ingo>Do you like this game?

00:38:57.010 --> 00:38:58.690
<v Ingo>Oh, der hat die Ratte getötet.

00:38:59.330 --> 00:39:00.130
<v Gast 2>Ich bin getötet worden.

00:39:00.210 --> 00:39:03.650
<v Gast 2>Ich mach das jetzt mal aus, weil sonst sind wir wieder jeden Jahr.

00:39:05.650 --> 00:39:06.050
<v Gast 2>Ingo.

00:39:06.370 --> 00:39:06.690
<v Gast 2>Was?

00:39:07.170 --> 00:39:07.490
<v Gast 2>Oh.

00:39:08.850 --> 00:39:09.170
<v Gast 2>Ja.

00:39:09.970 --> 00:39:12.450
<v Gast 2>Genau, das ist halt nett gemacht.

00:39:12.530 --> 00:39:17.090
<v Gast 2>Die haben da so eine teilbasierte 2D-Engine für gebaut,

00:39:17.570 --> 00:39:21.490
<v Gast 2>haben das Ganze komplett in JavaScript gebaut, was ich interessant finde,

00:39:21.650 --> 00:39:27.250
<v Gast 2>auch auf dem Server läuft zum Großteil derselbe Code wie auf dem Client.

00:39:27.570 --> 00:39:34.530
<v Gast 2>Und die haben dann halt den Server in Node.js implementiert und binden den mit Websockets an den Client

00:39:34.530 --> 00:39:37.890
<v Gast 2>an und rendern das Ganze in einem HTML5-Canvas.

00:39:38.050 --> 00:39:39.570
<v Felix>Genau, und Websockets wahrscheinlich, oder?

00:39:39.730 --> 00:39:40.370
<v Felix>Hab ich doch gerade gesagt.

00:39:40.450 --> 00:39:41.090
<v Felix>Achso, sorry.

00:39:42.130 --> 00:39:43.170
<v Ingo>Ich spielt es halt auch.

00:39:44.290 --> 00:39:45.170
<v Ingo>Mach mal wieder ausgleichen.

00:39:45.890 --> 00:39:50.530
<v Ingo>Moderner Scheiß und ich finde es eigentlich cool, dass es funktioniert und dass die da auch mal irgendwie

00:39:50.530 --> 00:39:51.890
<v Ingo>lustige Sachen zum Prokastieren.

00:39:52.610 --> 00:39:54.610
<v Ingo>Kann man sich alles angucken, steht auch auf GitHub und so.

00:39:54.930 --> 00:39:59.890
<v Gast 2>Ist Open Source, ist auf GitHub, kann man forken, kann man den Code angucken.

00:40:00.450 --> 00:40:02.690
<v Unbekannt>Also super cool, muss ich sagen.

00:40:02.930 --> 00:40:04.450
<v Ingo>Ja, jetzt machen wir wieder aus hier.

00:40:05.010 --> 00:40:06.290
<v Felix>Ich muss erst noch gewinnen.

00:40:06.450 --> 00:40:08.290
<v Felix>Ich muss erst dieses Massive Multiplayer ausgehen.

00:40:09.570 --> 00:40:10.770
<v Gast 2>Ich muss irgendwie die Prinzessin retten.

00:40:10.850 --> 00:40:12.530
<v Felix>Fucking Prinzessin, keine Web-Prinzessin.

00:40:12.850 --> 00:40:14.530
<v Ingo>Das ist ja wie über Prinz damals.

00:40:15.050 --> 00:40:16.570
<v Ingo>Da muss man auch die Prinzessin retten.

00:40:16.890 --> 00:40:18.010
<v Unbekannt>Für Mario auch.

00:40:18.410 --> 00:40:20.570
<v Gast 2>Ich glaube, bei so ziemlich vielen Spielen muss man nicht mehr so ein bisschen.

00:40:20.730 --> 00:40:23.290
<v Gast 1>Lass einfach mal weitermachen, das totals langweilige Thema.

00:40:23.770 --> 00:40:25.210
<v Gast 1>Es gibt ein PHP D-DOS.

00:40:25.450 --> 00:40:26.410
<v Gast 1>DOS, nicht DDOS.

00:40:26.650 --> 00:40:27.050
<v Gast 1>Nee, DOS.

00:40:27.690 --> 00:40:29.210
<v Felix>Aber schon wieder ein Exploit.

00:40:29.930 --> 00:40:31.290
<v Unbekannt>Ein 5.4.0 DS.

00:40:31.530 --> 00:40:38.250
<v Gast 2>Genau, also PHP 5.4 hat einen Webserver integriert, den man zu Development und Testzwecken benutzen

00:40:38.250 --> 00:40:38.570
<v Gast 2>kann.

00:40:39.450 --> 00:40:41.370
<v Ingo>Wie so viele Frameworks.

00:40:41.770 --> 00:40:48.570
<v Ingo>Ja, zum Beispiel WebRick bei Ruby oder Simple HTTP-Server bei Python oder

00:40:48.570 --> 00:40:48.890
<v Ingo>so.

00:40:49.290 --> 00:40:50.090
<v Unbekannt>Kennt man ja.

00:40:50.330 --> 00:40:56.490
<v Gast 2>Ja, und der hat jetzt halt irgendwie einen lustigen Denylov-Service, das ist aber jetzt nichts.

00:40:57.050 --> 00:41:04.010
<v Gast 2>Ja, man gibt halt mehr Content-Length an, als der Rechner, auf dem der Server läuft, Speicher hat.

00:41:04.410 --> 00:41:08.170
<v Felix>Aber ich meine, so Development Server, das ist jetzt nicht sowas, was interessant ist.

00:41:09.050 --> 00:41:10.170
<v Felix>Der hatte das schon wieder verlinkt.

00:41:10.410 --> 00:41:11.450
<v Gast 2>Ich fand es nur mal lustig.

00:41:11.530 --> 00:41:12.250
<v Gast 2>Okay, next.

00:41:12.570 --> 00:41:12.890
<v Gast 2>Next.

00:41:13.530 --> 00:41:15.930
<v Gast 1>Microsoft will bei HTTP 2.0 mitmischen.

00:41:17.210 --> 00:41:22.010
<v Gast 1>Google hatte ja schon Speedy quasi so vorgeschlagen und dann haben sie gesagt, wir machen das jetzt einfach.

00:41:22.170 --> 00:41:25.930
<v Gast 1>Dann haben die quasi Web HTTP 2.0 gekowboid und Twitter haben gesagt,

00:41:26.010 --> 00:41:29.050
<v Gast 1>da machen wir mit und alle Google- und Twitter-Sachen machen jetzt Speedy.

00:41:29.290 --> 00:41:31.930
<v Gast 1>Und Microsoft hat gesagt, wir machen es anders.

00:41:32.090 --> 00:41:35.050
<v Gast 1>Richtig, Microsoft hat jetzt herausgefunden, dass das Internet wichtig ist.

00:41:35.530 --> 00:41:37.930
<v Gast 1>Bisschen zu spät, muss man ja zugestehen, aber.

00:41:38.650 --> 00:41:42.170
<v Felix>Sie machen jetzt, sie vereinen jetzt alle Standards unter ihrem eigenen Standard.

00:41:42.330 --> 00:41:46.730
<v Gast 1>Ja, sie haben ein Proposal HTTP Speed and Mobility gemacht,

00:41:46.890 --> 00:41:51.610
<v Gast 1>was auf Speedy aufsetzt, aber noch mehr Sachen reinbringt.

00:41:52.970 --> 00:41:54.410
<v Felix>ActiveX wahrscheinlich, ja.

00:41:55.850 --> 00:41:57.130
<v Unbekannt>Das ist die beste Idee.

00:41:58.170 --> 00:41:59.370
<v Unbekannt>Das tut so weh.

00:41:59.930 --> 00:42:00.730
<v Felix>Wahrscheinlich kannst du.

00:42:00.970 --> 00:42:03.210
<v Ingo>Aber das ist so ein typischer Microsoft-Ansatz, oder?

00:42:03.690 --> 00:42:06.890
<v Gast 1>Ja, also sie haben noch ein bisschen was mit Websockets da reingefrickelt.

00:42:07.850 --> 00:42:10.250
<v Gast 2>Ja, aber Server-Side-Events kann Speedy auch schon.

00:42:11.290 --> 00:42:14.490
<v Gast 2>Ja, also sie können bidirektionale Kommunikation.

00:42:15.290 --> 00:42:20.490
<v Gast 1>Also Sie haben ja auf Speedy aufgesetzt, aber dann noch mehr noch härtere Websockets reingemacht.

00:42:20.810 --> 00:42:22.810
<v Felix>Härter irgendwie mehr Energie.

00:42:23.210 --> 00:42:26.090
<v Gast 1>Ja, auf jeden Fall, Microsoft will da jetzt auch mitmachen, ja, immerhin.

00:42:26.250 --> 00:42:27.690
<v Felix>Sie haben das Internet gefunden wahrscheinlich.

00:42:27.770 --> 00:42:33.770
<v Gast 2>Ja, also ich sag mal so, das wird wahrscheinlich früher oder später irgendwie auf einen Standard rauslaufen,

00:42:33.850 --> 00:42:35.530
<v Gast 2>auf den sich alle einigen können.

00:42:35.770 --> 00:42:36.250
<v Gast 2>Hoffentlich.

00:42:36.490 --> 00:42:37.930
<v Gast 2>Ansonsten haben wir wahrscheinlich ein Problem.

00:42:38.410 --> 00:42:40.330
<v Felix>Wahrscheinlich haben wir einfach noch einen Standard, so wie es halt immer ist.

00:42:40.410 --> 00:42:45.210
<v Ingo>Ja, dann machen wir HTTP2.0 und Speedy und Opera denkt sich auch noch was aus.

00:42:45.450 --> 00:42:49.530
<v Ingo>Ja, nee, also ich gehe jetzt mal davon aus, dass aus diesem Proposal und die setzen ja jetzt schon auf Speedy

00:42:49.610 --> 00:42:55.210
<v Ingo>auf, da wird irgendwann mal eine Kombination rauskommen,

00:42:55.450 --> 00:42:58.090
<v Ingo>die dann halt benutzt wird, weil anders funktioniert das so nicht.

00:42:58.490 --> 00:43:01.770
<v Gast 1>Ich würde einfach sagen, dass Speedy gewonnen hat, weil Twitter schon auf Speed läuft und Google auf Speedy

00:43:01.850 --> 00:43:02.010
<v Gast 1>läuft.

00:43:02.090 --> 00:43:05.130
<v Gast 1>Das sind zwei Riesenprojekte und es funktioniert anscheinend, also nehmen wir das einfach.

00:43:06.330 --> 00:43:10.250
<v Gast 1>Bevor die da den ganzen Circle-Jerg da machen und sich gegenseitig irgendwie freuen,

00:43:10.330 --> 00:43:11.610
<v Gast 1>dass sie neue Protokolle designen.

00:43:12.010 --> 00:43:13.210
<v Felix>Erstmal eine Arbeitsgruppe bilden.

00:43:13.370 --> 00:43:13.530
<v Felix>Richtig.

00:43:13.770 --> 00:43:15.290
<v Ingo>Dann können wir auch einen Ausschuss, genau.

00:43:15.690 --> 00:43:17.370
<v Felix>Der Ausschuss kommt nach der Arbeitsgruppe.

00:43:17.530 --> 00:43:20.410
<v Ingo>Ich meine, es gibt jetzt auch schon zwei relevante Browser, die Speedy sprechen.

00:43:20.490 --> 00:43:24.570
<v Ingo>Für die gibt es übrigens auch lustige Plugins, die einem anzeigen, ob eine Webseite gerade Speedy macht oder

00:43:24.570 --> 00:43:24.650
<v Ingo>nicht.

00:43:24.810 --> 00:43:24.970
<v Ingo>Echt?

00:43:27.050 --> 00:43:27.770
<v Ingo>Zwei relevante?

00:43:28.010 --> 00:43:29.290
<v Ingo>Ja, Firefox und Chrome.

00:43:29.690 --> 00:43:31.610
<v Gast 1>Firefox, also in irgendeiner ganz neuen Mighty oder.

00:43:32.010 --> 00:43:34.330
<v Gast 2>Firefox 11, glaube ich, also der, der gerade rausgekommen ist.

00:43:34.490 --> 00:43:35.290
<v Felix>Welcher bin ich der jetzt?

00:43:35.450 --> 00:43:35.930
<v Felix>Ah, apropos.

00:43:38.490 --> 00:43:39.530
<v Ingo>Ich habe 11-0 drauf.

00:43:41.050 --> 00:43:45.690
<v Gast 2>Du hast ja auch Speedy, such mal in deinem

00:43:45.690 --> 00:43:48.250
<v Gast 2>Extension-Geschichte.

00:43:48.330 --> 00:43:50.170
<v Gast 2>Da gibt es eine Extension, die dir das anzeigt.

00:43:50.410 --> 00:43:50.650
<v Gast 2>Speedy.

00:43:51.130 --> 00:43:51.690
<v Gast 2>Total gut.

00:43:52.010 --> 00:43:52.570
<v Gast 2>Finde ich super.

00:43:52.730 --> 00:43:55.050
<v Gast 1>Ich würde sagen, wir gehen einfach weiter und machen total schnell.

00:43:55.290 --> 00:43:55.610
<v Gast 1>Mach mal.

00:43:55.930 --> 00:43:58.810
<v Gast 1>Uptime-Monitoring mit Google Docs, fand ich ganz lustig.

00:43:59.050 --> 00:43:59.770
<v Gast 1>Ich hab das auch.

00:44:00.090 --> 00:44:01.210
<v Gast 1>Ist so ein Blogpost.

00:44:01.690 --> 00:44:04.650
<v Gast 1>Du kannst bei Google Docs auch serverseitigen Code ausführen.

00:44:04.810 --> 00:44:10.730
<v Gast 1>Das war mir schon bekannt, aber mir war noch nicht bekannt, dass man so cron-mäßig alle fünf Minuten oder

00:44:10.730 --> 00:44:11.770
<v Gast 1>sowas triggern kann.

00:44:11.930 --> 00:44:15.770
<v Gast 1>Und da hat einer rausgefunden, du kannst ja einfach ein Spreadsheet bauen, das deine Webseiten überwacht.

00:44:16.010 --> 00:44:16.970
<v Felix>Voll gut, fände super cool.

00:44:17.130 --> 00:44:21.450
<v Gast 1>Ist eigentlich nett, dann setzt du auf der Google-Infrastruktur auf, die sollte halbwegs ausfallsicher sein.

00:44:21.610 --> 00:44:26.490
<v Gast 1>Und dann kannst du einen Time-Driven-Trigger für jede Minute oder alle fünf Minuten bauen.

00:44:26.730 --> 00:44:33.290
<v Gast 1>Und je nachdem, was der Trigger gerade macht, kannst du quasi irgendwie den HTTP-Antwortstatus da

00:44:33.290 --> 00:44:36.170
<v Gast 1>reinfrickeln und irgendwie noch ein großes rotes Noobsi reinmachen,

00:44:36.250 --> 00:44:37.210
<v Gast 1>wenn was nicht geht.

00:44:37.450 --> 00:44:38.970
<v Gast 1>Und sogar E-Mails schicken lassen.

00:44:40.010 --> 00:44:44.490
<v Felix>Die Frage ist: Warum gibt es sowas im First Place für Google Spreadsheets?

00:44:45.050 --> 00:44:46.170
<v Gast 2>Du kannst, das ist noch gar nichts.

00:44:46.250 --> 00:44:53.210
<v Gast 2>Früher gab es in Google Docs die Möglichkeit, Content aus Third-Party-Webseiten

00:44:53.210 --> 00:44:53.610
<v Gast 2>nachzuladen.

00:44:54.090 --> 00:44:55.770
<v Felix>Früher waren es noch irgendwie zwei Wochen oder so.

00:44:55.930 --> 00:44:57.610
<v Gast 1>Ja, genau, du kannst JSON da reinladen.

00:44:57.690 --> 00:45:00.970
<v Gast 1>Also ich hatte bis am Anfang, als ich den Webcrawler gebaut habe, habe ich gedacht,

00:45:01.050 --> 00:45:03.530
<v Gast 1>machen wir doch einfach mal, wenn die ganzen Leute immer Spreadsheets wollen,

00:45:03.610 --> 00:45:06.490
<v Gast 1>ich könnte doch einfach mal die Sachen in JSON exportieren und dann direkt in Google Docs,

00:45:06.570 --> 00:45:07.050
<v Gast 1>wo sich alle mit.

00:45:07.290 --> 00:45:08.890
<v Gast 2>Das hatten sie aber vor ein paar Wochen abgeschaltet.

00:45:09.050 --> 00:45:09.690
<v Gast 2>Abgeschaltet.

00:45:09.930 --> 00:45:11.210
<v Gast 1>Das war auch rammschig und konnte nicht mehr so gut.

00:45:11.370 --> 00:45:16.490
<v Gast 2>Nee, also das gab es lange Zeit, aber das ist dann wieder rausgeflogen.

00:45:16.570 --> 00:45:19.450
<v Felix>Ja, aber ich meine, Trigger für einen Spreadsheet.

00:45:19.610 --> 00:45:22.970
<v Felix>Das ist jetzt so, okay, das brauche ich noch nicht, mein Excel.

00:45:23.370 --> 00:45:26.250
<v Gast 1>Ja, aber Leute, die Excel machen, ohne Scheiß.

00:45:26.730 --> 00:45:28.490
<v Gast 1>Die Leute, die Excel machen, wollen ja auch programmieren.

00:45:28.810 --> 00:45:30.810
<v Gast 1>Die Enigma haben sie noch nicht so nachprogrammiert.

00:45:31.050 --> 00:45:32.490
<v Gast 2>Auszusehen passiert, ja.

00:45:32.650 --> 00:45:36.570
<v Gast 1>Und es ist halt total viele Leute, die dieses ganze Marketing- und Sales-Zeug machen,

00:45:36.650 --> 00:45:38.410
<v Gast 1>die sind echt gut, was Excel Markus angeht.

00:45:38.730 --> 00:45:41.130
<v Felix>Wie gesagt, das braucht man noch nicht, mein Excel.

00:45:41.690 --> 00:45:45.530
<v Gast 1>Ja, ja, nee, aber die wollen das dann irgendwann, also der Normalmensch braucht nicht,

00:45:45.610 --> 00:45:48.970
<v Gast 1>aber irgendwie Triggers, Pivot-Tables zu machen und so.

00:45:49.290 --> 00:45:54.650
<v Felix>Ich kann mir so vorstellen, wie er irgendwo auf irgendeinem Server so ein Excel-Spreadsheet offen ist und da

00:45:54.650 --> 00:45:56.490
<v Felix>kommen dann immer die Reports raus.

00:45:57.370 --> 00:45:58.650
<v Unbekannt>Das schickt es dann niemand.

00:45:59.130 --> 00:46:02.010
<v Gast 1>Ist ja eine ganz anständige Idee eigentlich so insgesamt.

00:46:02.250 --> 00:46:03.290
<v Unbekannt>Du kannst da beliebig Co.

00:46:03.450 --> 00:46:04.090
<v Unbekannt>Du hast einen schönen Aufmerksamkeit.

00:46:04.330 --> 00:46:06.570
<v Felix>Du kannst auch Makros aufzeichnen und so, das ist super praktisch.

00:46:06.890 --> 00:46:08.890
<v Gast 2>Felix, du hast keine Ahnung, was da an manchen Firmen läuft.

00:46:08.970 --> 00:46:14.410
<v Ingo>Wir haben früher ein Ticketsystem, das konnte man nur über eine GUI getriebene Windows-Applikation bedienen

00:46:14.490 --> 00:46:19.130
<v Ingo>und das wurde dann mit Windows-GUI-Scripting mit Pearl bedient,

00:46:19.210 --> 00:46:25.770
<v Ingo>sodass da quasi automatisiert aus dem Monitoring raus in das Windows-GUI Tickets erstellen.

00:46:26.090 --> 00:46:30.330
<v Felix>Ich finde das besser, als wenn man da irgendwie eine Low, irgendwie,

00:46:30.410 --> 00:46:32.970
<v Felix>keine Ahnung, eine Arbeitskraft vorsitzt, die das den ganzen Tag macht.

00:46:33.050 --> 00:46:33.930
<v Gast 2>Das ist allerdings richtig.

00:46:34.170 --> 00:46:36.090
<v Felix>Ich hätte das auch gemacht, wenn ich das gemacht hätte.

00:46:36.170 --> 00:46:38.490
<v Gast 2>Warum könnte man das ja auch in Google Docs machen?

00:46:38.650 --> 00:46:41.850
<v Felix>Stimmt, in Google Docs haben wir jetzt diese Trigger, die dann auf Sachen klicken.

00:46:42.010 --> 00:46:42.170
<v Felix>Ja.

00:46:42.410 --> 00:46:43.050
<v Felix>So praktisch.

00:46:43.210 --> 00:46:47.930
<v Gast 2>Also man könnte mit Google Docs irgendwie JavaScript ausführen, was dann deinen Browser automatisiert.

00:46:48.170 --> 00:46:49.610
<v Unbekannt>Ich glaube nicht, ja, die haben, glaube ich, irgendwelche komischen.

00:46:49.930 --> 00:46:52.330
<v Gast 1>Die haben eine eigene Skriptsprache irgendwie, die da ganz komisch.

00:46:52.490 --> 00:46:54.410
<v Gast 1>Ich habe es mal angefasst, war sehr verwirrt, hab's dann gelassen.

00:46:54.570 --> 00:46:57.930
<v Felix>Dann das Google Docs, das ist quasi wie so V-Skript.

00:46:58.090 --> 00:46:58.410
<v Felix>Richtig.

00:46:59.050 --> 00:47:04.010
<v Gast 1>Was auch total cool ist und dieses Mal sogar einen praktischen Nutzen hätte,

00:47:04.970 --> 00:47:10.250
<v Gast 1>der Apfelfernseher, der Apple TV, also diese kleine schwarze Box, handlich mal was Vernünftiges.

00:47:10.330 --> 00:47:11.610
<v Gast 1>Der kann Remotes lernen.

00:47:12.090 --> 00:47:16.250
<v Gast 1>Ich habe noch keinen anderen Fernseher oder sonst was gesehen, der sich beliebige Fernbedienung merken kann.

00:47:16.570 --> 00:47:17.130
<v Gast 1>Das ist ja irgendwie so.

00:47:17.290 --> 00:47:19.050
<v Felix>Ist ja egal, dass es so ein kleiner Kasten so eine Setup-Box ist.

00:47:21.450 --> 00:47:23.210
<v Gast 1>Also ich habe es noch nie gesehen und ich fand das halt total krass.

00:47:23.290 --> 00:47:25.050
<v Gast 1>Du kannst ihm sagen, hier lernen wir mal meine Fernbedienung.

00:47:25.130 --> 00:47:28.730
<v Gast 1>Und er sagt dann, ja, okay, wenn du meine nicht verwenden willst, nimm noch deine eigene und dann kannst du ja

00:47:28.730 --> 00:47:32.330
<v Gast 1>oben Meister zwischen TV, DVD, VCR oder so teilweise noch umschalten.

00:47:33.050 --> 00:47:35.930
<v Gast 1>Bedeutet, ich kann dann mit einer einzigen Fernbedienung den Apfel,

00:47:36.090 --> 00:47:38.650
<v Gast 1>den Apple TV bedienen und den Fernseher gleichzeitig.

00:47:38.810 --> 00:47:41.210
<v Felix>Das ist, was du quasi jetzt in deiner Box auch hast.

00:47:41.450 --> 00:47:42.250
<v Felix>Du hast ja auch dieses.

00:47:42.410 --> 00:47:44.810
<v Gast 1>Ja, genau, diesen USB-Nupsi, nur dass das halt da schon eingebaut ist.

00:47:44.890 --> 00:47:46.890
<v Gast 1>Und ich finde es eigentlich total schade, dass das nicht mehr haben,

00:47:46.970 --> 00:47:51.530
<v Gast 1>weil im Normalfall so die ganzen, diese ganzen Abspielboxen, das ist ja pillepalle leicht.

00:47:51.610 --> 00:47:52.970
<v Unbekannt>Ja, klar, aber es macht halt keiner.

00:47:53.210 --> 00:47:55.210
<v Ingo>Man muss halt nur fragen, was willst du für Play haben?

00:47:55.290 --> 00:47:59.770
<v Ingo>Dann drückst du auf der Tastatur, der guckt, was für ein Kommando da ankommt, merkt sich das, verbindet es.

00:48:00.090 --> 00:48:03.930
<v Gast 1>Das krasse ist eben, dass ich das bisher noch nicht gesehen habe, so in irgendwelchen billigen taiwanesischen

00:48:04.010 --> 00:48:07.530
<v Gast 1>Fernsehfestplatten, die eigentlich sonst auch jedes Drecks-Feature reinbauen,

00:48:07.610 --> 00:48:08.730
<v Gast 1>aber das hatten sie irgendwie nie.

00:48:08.810 --> 00:48:09.770
<v Unbekannt>Und das finde ich lustig.

00:48:09.930 --> 00:48:10.090
<v Unbekannt>Sorry.

00:48:10.250 --> 00:48:11.290
<v Felix>Hört sich auf jeden Fall richtig an.

00:48:11.450 --> 00:48:14.890
<v Gast 1>Hört sich richtig an, sollten alle machen für alles immer, dass ich nur noch eine Vermittlung brauche.

00:48:15.930 --> 00:48:17.050
<v Felix>Eine alles, egal was.

00:48:17.210 --> 00:48:17.450
<v Felix>Richtig.

00:48:18.730 --> 00:48:21.050
<v Ingo>Okay, dann News-Thema vorbei, oder?

00:48:21.130 --> 00:48:23.130
<v Ingo>Ach Quatsch, nee, Webthema waren wir eingeschnitten.

00:48:23.290 --> 00:48:26.330
<v Felix>Genau, jetzt kommt ja noch die Cloud, was ja quasi gar kein Web ist.

00:48:26.570 --> 00:48:27.530
<v Felix>Das ist sondern Cloud.

00:48:27.930 --> 00:48:28.810
<v Ingo>Extra Cloud.

00:48:29.530 --> 00:48:30.810
<v Gast 1>Zwei mehr als Web quasi.

00:48:31.690 --> 00:48:32.970
<v Gast 2>Ja, es ist nicht nur Web.

00:48:33.850 --> 00:48:35.770
<v Gast 1>Die Jungs von Basho haben was gemacht.

00:48:36.490 --> 00:48:37.690
<v Ingo>Web  ⁇ , oder?

00:48:37.930 --> 00:48:38.570
<v Ingo>Richtig.

00:48:39.130 --> 00:48:40.970
<v Gast 2>Es ist halt Infrastruktur auch.

00:48:41.050 --> 00:48:41.930
<v Gast 2>Es ist ja nicht nur das Web.

00:48:42.330 --> 00:48:43.210
<v Felix>Ist ja quasi Web.

00:48:44.410 --> 00:48:46.650
<v Ingo>Was ist das Web dann, wenn es nicht Infrastruktur ist?

00:48:46.890 --> 00:48:47.210
<v Ingo>Also du kannst.

00:48:47.370 --> 00:48:48.250
<v Gast 2>Nee, nee, die Cloud.

00:48:48.730 --> 00:48:49.130
<v Gast 2>Also du kannst.

00:48:50.090 --> 00:48:55.130
<v Felix>Also ich würde einem Businesspeople auch erklären,

00:48:55.210 --> 00:48:58.570
<v Felix>dass das Web quasi Cloud ist.

00:48:58.650 --> 00:48:59.290
<v Felix>Alles Cloud.

00:48:59.450 --> 00:49:01.530
<v Felix>Weil Cloud ist so wolkig, das kann alles sein.

00:49:01.770 --> 00:49:02.810
<v Felix>Das kann auch fucking Web sein.

00:49:02.890 --> 00:49:03.530
<v Felix>Es ist doch scheißegal.

00:49:05.610 --> 00:49:07.290
<v Felix>Also könnte es eigentlich auch in Web rein.

00:49:07.450 --> 00:49:10.330
<v Felix>Aber wir machen jetzt einfach weiter mit React.cs.

00:49:10.730 --> 00:49:11.210
<v Felix>Genau.

00:49:11.450 --> 00:49:12.810
<v Gast 2>React Cloud Storage.

00:49:13.050 --> 00:49:13.850
<v Gast 2>Cloud Storage.

00:49:14.090 --> 00:49:19.450
<v Gast 1>Richtig, die Jungs von React haben was gebaut und zwar hatten die ja schon immer ihr Flagship-Produkt quasi,

00:49:19.530 --> 00:49:20.490
<v Gast 1>nämlich Reak.

00:49:20.730 --> 00:49:22.170
<v Unbekannt>Erstaunlicherweise heißt das nur so.

00:49:22.410 --> 00:49:26.730
<v Gast 1>Und React ist ein Distributed Key-Value-Store und auch einer, der wirklich distributed ist,

00:49:26.810 --> 00:49:29.370
<v Gast 1>ist so ähnlich wie Cassandra, haben wir schon oft drüber geredet.

00:49:30.090 --> 00:49:33.930
<v Gast 1>Skaliert super, ist total lustig, ist komplett HTTP, alles schön Erlang.

00:49:34.090 --> 00:49:36.410
<v Gast 1>Und die haben nun Reak CS gebaut.

00:49:36.890 --> 00:49:39.610
<v Gast 1>Mir, ich weiß immer noch nicht genau, für was CS eigentlich steht.

00:49:39.930 --> 00:49:40.410
<v Gast 1>Cloud Storage.

00:49:40.650 --> 00:49:41.530
<v Unbekannt>Cloud Storage, okay.

00:49:41.850 --> 00:49:42.330
<v Unbekannt>So einfach.

00:49:42.570 --> 00:49:44.970
<v Gast 1>Tja, ist ja auch so ein lustiges Wolkenlogo.

00:49:45.050 --> 00:49:51.610
<v Gast 1>Auf jeden Fall haben sie eine S3-kompatible Plattform gebaut, die quasi die S3 API nimmt und

00:49:52.490 --> 00:49:54.490
<v Gast 1>aber auf einen React-Cluster aufsetzt.

00:49:54.570 --> 00:49:58.970
<v Gast 1>Bedeutet Leute, die S3-Sachen nutzen,

00:49:59.130 --> 00:50:02.170
<v Gast 1>also zum Beispiel Arc fällt mir ein Arc ist so ein Backup-Programm,

00:50:02.250 --> 00:50:08.650
<v Gast 1>das auf S3 sichert oder wie hieß es S3-Sync oder alles mögliche in der Richtung,

00:50:08.970 --> 00:50:15.690
<v Gast 1>die könnten das nun theoretisch auch auf React aufsetzen und da eine komplett API-kompatible Geschichte haben.

00:50:15.850 --> 00:50:16.170
<v Gast 1>Genau.

00:50:16.490 --> 00:50:17.850
<v Gast 2>Oder sowas wie Dropbox zum Beispiel.

00:50:18.090 --> 00:50:22.170
<v Gast 1>Richtig, und kann auch, also das Problem ist, dass es kein Open Source-Tool, muss man dazu sagen.

00:50:22.250 --> 00:50:27.290
<v Gast 1>Bedeutet, es ist eins von ihren Produkten, aber für manche Firmen könnte es eventuell ganz sinnvoll werden.

00:50:27.450 --> 00:50:30.970
<v Ingo>Ja, interessant ist halt auch, dass der Storage-Bereich mandantenfähig ist.

00:50:31.050 --> 00:50:35.770
<v Ingo>Das heißt, man könnte da das für mehrere Kunden anbieten und die intern voneinander trennen,

00:50:35.850 --> 00:50:37.690
<v Ingo>ohne dass man sich da großartig drum kümmern muss.

00:50:37.770 --> 00:50:40.650
<v Gast 2>Also bei S3 ist es immer so ein bisschen schmerzhaft, wenn man sowas aufsetzen möchte.

00:50:40.730 --> 00:50:43.850
<v Gast 1>Richtig, die haben auch standardmäßig integriert Authentifizierung gegen LDAP,

00:50:43.930 --> 00:50:48.570
<v Gast 1>Active Directory, Pam und ist eigentlich eine ganz coole Sache.

00:50:48.650 --> 00:50:52.650
<v Gast 1>Also ich frage mich, ob die damit eventuell so größere Kunden, wer war es denn?

00:50:52.810 --> 00:50:54.010
<v Gast 1>Smug Mag zum Beispiel.

00:50:54.250 --> 00:50:54.890
<v Gast 1>Die haben unendlich.

00:50:56.570 --> 00:51:00.970
<v Gast 1>Machen wir eine riesige Fotose, die haben von Anfang an, glaube ich, komplett auf Amazon gesetzt.

00:51:01.450 --> 00:51:05.770
<v Gast 1>Und theoretisch könnten die, glaube ich,

00:51:05.850 --> 00:51:11.370
<v Gast 1>mit allein mit, mit, selbst wenn sie weiter in Amazon Instanzen benutzen,

00:51:11.690 --> 00:51:16.010
<v Gast 1>könnten die mit Reag darauf quasi ihr eigenes S3-kompatibles System aufbauen.

00:51:16.090 --> 00:51:18.410
<v Gast 1>Und S3 hat zwar noch ein paar andere coole Sachen.

00:51:18.490 --> 00:51:23.530
<v Gast 1>Ich weiß nicht genau, wie viel S3 die abbilden, weil S3 hat jetzt ja auch irgendwie so,

00:51:24.330 --> 00:51:29.850
<v Gast 1>jeder S3-Link kann auch gleichzeitig ein Torrent werden, die können Expiry auf S3-Daten setzen.

00:51:30.890 --> 00:51:32.890
<v Gast 2>Das dürfte sich mit React auch realisieren lassen.

00:51:33.370 --> 00:51:37.290
<v Gast 1>Ich wüsste nicht, dass React expirieren kann, aber es ist auch wahrscheinlich nicht so schlimm.

00:51:37.450 --> 00:51:39.930
<v Gast 1>Das könnte man ja irgendwie in einem anderen Service davor klatschen noch.

00:51:40.090 --> 00:51:44.010
<v Gast 1>Aber nur um Daten zu speichern, ist das eigentlich ganz cool, weil dann könnten die einfach auch bei

00:51:44.010 --> 00:51:47.130
<v Gast 1>verschiedenen Cloud-Anbietern, dass du dich nicht nur auf Amazon verlassen musst,

00:51:47.370 --> 00:51:49.930
<v Gast 1>sondern auch bei verschiedenen anderen Anbietern was laufen lassen.

00:51:50.170 --> 00:51:53.210
<v Gast 1>Gerade wenn du Amazon eine Instanz hochfährst, die haben diesen Ephemeral Storage,

00:51:53.290 --> 00:51:56.410
<v Gast 1>wo du ziemlich viel Storage kriegst für recht geringes Geld.

00:51:56.490 --> 00:52:01.130
<v Gast 1>Also selbst irgendwie die Large-Instanzen, die ja noch gar nicht so teuer sind.

00:52:01.530 --> 00:52:07.770
<v Gast 1>Kannst du irgendwie 200 Dollar pro Monat oder so, wenn du es durchlaufen lässt aufne Spot-Instanzen oder

00:52:07.770 --> 00:52:14.490
<v Gast 1>reservierte Instanzen, dann kannst du damit schon irgendwie ein paar hundert Gigabyte Storage kriegst du da

00:52:14.490 --> 00:52:14.970
<v Gast 1>einfach mit.

00:52:15.770 --> 00:52:20.010
<v Felix>Aber du bezahlst dann auch wieder für Up und Down, also für Upload, Download.

00:52:20.330 --> 00:52:26.810
<v Gast 1>Genau, richtig, aber da könntest du dann natürlich auch anfangen, dass du quasi echte Root-Server dafür

00:52:26.810 --> 00:52:29.210
<v Gast 1>benutzt, die du ja auch irgendwo recht günstig kriegst.

00:52:29.290 --> 00:52:32.250
<v Gast 1>Und das Schöne halt an Reag ist, dass die, du musst da gar nicht viel machen.

00:52:32.330 --> 00:52:34.490
<v Gast 1>Du musst da nur irgendwie einen Puppet oder einen Chefskript bauen,

00:52:34.570 --> 00:52:38.650
<v Gast 1>dass dir der Reag draufschlunzt und dass dann diesen neuen Cluster sich an den,

00:52:38.730 --> 00:52:43.850
<v Gast 1>äh, diese neuen Node quasi auf den Ring verweisen, wo die anderen Reag-Instanzen drin sind.

00:52:44.010 --> 00:52:47.850
<v Gast 1>Und die machen Load Balancing automatisch, die machen Sicherheitskopien automatisch.

00:52:48.010 --> 00:52:51.850
<v Gast 1>Ist quasi so ein Raid für Datenbanken, so in der Richtung.

00:52:52.170 --> 00:52:54.250
<v Gast 1>Also da kannst du dann auch, wenn du irgendeinen RAM-Schuh-Server hast,

00:52:54.330 --> 00:52:56.570
<v Gast 1>der dir den halt irgendwie alle zwei Monate abschmiert, dann sagst du halt,

00:52:56.650 --> 00:53:02.090
<v Gast 1>ja, ist ja eigentlich ziemlich egal, weil die von den Daten gibt es die Kopie noch dreimal irgendwo im Netz.

00:53:02.490 --> 00:53:04.890
<v Gast 1>Musst dann halt auch Speicherplatz mit berücksichtigen.

00:53:05.130 --> 00:53:06.970
<v Gast 1>Aber eigentlich eine ganz coole Sache.

00:53:07.450 --> 00:53:08.250
<v Gast 1>Fand ich cool.

00:53:08.490 --> 00:53:09.930
<v Gast 1>Schade, dass es nicht Open Source ist.

00:53:10.010 --> 00:53:11.370
<v Gast 1>Eventuell wird es ja noch.

00:53:12.730 --> 00:53:15.930
<v Gast 1>Die meisten Produkte, die sie haben, sind bisher Open Source geworden.

00:53:16.250 --> 00:53:21.850
<v Gast 1>Aber es gibt irgendwie Developer-Lizenzen und ein White Paper dazu, was ganz interessant ist.

00:53:22.090 --> 00:53:22.650
<v Gast 1>Gute Sache.

00:53:23.370 --> 00:53:24.410
<v Ingo>Ich finde übrigens CS.

00:53:25.130 --> 00:53:25.770
<v Ingo>CS, ja.

00:53:26.330 --> 00:53:29.530
<v Gast 2>Ich finde übrigens blöd, dass man da irgendwie persönliche Daten angeben muss,

00:53:29.610 --> 00:53:30.650
<v Gast 2>wenn man das White Paper lesen will.

00:53:30.810 --> 00:53:31.530
<v Gast 2>Muss man fast bei allen.

00:53:31.690 --> 00:53:35.370
<v Gast 1>Also ich habe wenig White, also sobald sie White Paper heißen, kannst du eigentlich davon ausgehen,

00:53:35.450 --> 00:53:37.690
<v Gast 1>dass deine E-Mail-Adresse da hinschicken muss, aus irgendeinem Grund.

00:53:37.930 --> 00:53:40.570
<v Gast 1>Und dann kriegst du irgendwann von dem Sales-Kerl halt irgendeine E-Mail und sagst du,

00:53:40.650 --> 00:53:44.090
<v Gast 1>hey, du hast den Paper runtergeladen, müsst ihr nicht an so einem Webinar teilnehmen.

00:53:44.970 --> 00:53:46.730
<v Gast 2>Ja, das kriege ich schon sonst genug.

00:53:46.970 --> 00:53:47.930
<v Unbekannt>Gibt es Schlimmeres.

00:53:49.210 --> 00:53:51.210
<v Ingo>Dann, was ist denn Zero VM?

00:53:51.450 --> 00:53:55.050
<v Gast 2>Das ist im Gegensatz zu React CS ist es Open Source.

00:53:55.770 --> 00:53:58.090
<v Gast 2>Ich tue mir bei dem Begriff VM ein bisschen schwer.

00:53:58.170 --> 00:54:02.090
<v Gast 2>Ich erkläre mal kurz, was es ist und dann könnt ihr beurteilen, ob es tatsächlich eine VM ist oder nicht.

00:54:03.450 --> 00:54:05.530
<v Ingo>VM heißt ja normalerweise Virtual Maschine.

00:54:05.690 --> 00:54:06.010
<v Ingo>Genau.

00:54:07.530 --> 00:54:13.770
<v Gast 2>Es soll eine extrem, extrem leichtgewichtige VM sein für die Cloud.

00:54:14.170 --> 00:54:14.650
<v Gast 2>Klar.

00:54:15.690 --> 00:54:20.170
<v Gast 2>Und zwar so, dass man möglichst viel sehr hardware-nah programmieren kann.

00:54:20.250 --> 00:54:26.650
<v Gast 2>Also der Einsatzzweck für die Geschichte ist so Nummer Crunching, auch dass man so Instruktionen auf Daten,

00:54:26.890 --> 00:54:31.130
<v Gast 2>auf Grafikkarten, also SEMD-Geschichten benutzen kann,

00:54:31.770 --> 00:54:38.330
<v Gast 2>dass man parallel programmieren kann und das Ganze halt auch sicher.

00:54:39.050 --> 00:54:41.450
<v Gast 2>So, und was die jetzt genommen haben, das fand ich ganz interessant,

00:54:41.530 --> 00:54:45.530
<v Gast 2>da ist jetzt nämlich so die zweite Technologie aus Chrome rausgefallen,

00:54:45.610 --> 00:54:49.050
<v Gast 2>die jetzt auf der Serverseite ihren Einsatz findet.

00:54:49.130 --> 00:54:53.370
<v Ingo>Und zwar war das ja bei Node.js schon der Fall, da haben sie die JavaScript Engine for 8 rausgenommen und

00:54:53.370 --> 00:54:54.890
<v Ingo>haben da Node.js draus gebaut.

00:54:55.210 --> 00:54:59.610
<v Gast 2>Und hier haben sie den Native Client rausgenommen und haben da ihre Sandbox draus gebaut.

00:55:00.010 --> 00:55:03.850
<v Gast 2>Und was dieser Native Client ist, das ist diese Runtime in Chrome drin,

00:55:04.410 --> 00:55:11.050
<v Gast 2>mit der man nativen Code im Browser ausführen kann und der aber dafür sorgt,

00:55:11.130 --> 00:55:17.050
<v Gast 2>dass man damit die Maschine quasi nicht hij-checken kann, sondern dass der halt sauber in einer sicheren

00:55:17.050 --> 00:55:17.850
<v Gast 2>Sandbox läuft.

00:55:18.410 --> 00:55:22.890
<v Ingo>Ohne dass man darauf verzichtet, dass man zum Beispiel auf die Grafikkarte zugreifen kann oder so Geschichten.

00:55:23.050 --> 00:55:29.530
<v Gast 2>Und was die jetzt hier gemacht haben, das komplette Zeug ist ein C geschrieben und sie haben da dieses

00:55:29.530 --> 00:55:35.450
<v Gast 2>Native Client Zero MQ und darum halt auch Zero

00:55:36.570 --> 00:55:42.730
<v Gast 2>und ihre eigenen Bibliotheken da zusammengebaut und haben da eine

00:55:42.970 --> 00:55:49.290
<v Gast 2>Mini-VM, nenne ich es mal, geschrieben, mit der man quasi eine Umgebung schaffen kann,

00:55:49.370 --> 00:55:54.970
<v Gast 2>die so schnell ist, dass sie in Millisekundenbereichen gestartet und wieder gestoppt werden kann.

00:55:55.050 --> 00:55:58.090
<v Ingo>Also dass man quasi mit jedem Request, den man reinkriegt, eine neue VM startet,

00:55:58.170 --> 00:56:00.890
<v Ingo>da drin den Code ausführt und danach die VM wieder killt.

00:56:01.290 --> 00:56:04.170
<v Ingo>Und das macht dann im Endeffekt dieser Google Native Client.

00:56:04.330 --> 00:56:05.130
<v Gast 2>Die haben dann auch noch eine Abstand.

00:56:05.370 --> 00:56:06.410
<v Felix>Also Sandboxing eigentlich quasi.

00:56:09.050 --> 00:56:13.210
<v Gast 2>Genau, deshalb meine ich, es ist eigentlich eine C-basierte Sandbox.

00:56:15.450 --> 00:56:15.690
<v Gast 2>Warum?

00:56:17.290 --> 00:56:19.050
<v Gast 1>Wie du das eh-Server-seitig ausführst.

00:56:21.450 --> 00:56:23.050
<v Felix>Dann ist es gesandboxt, ganz einfach.

00:56:23.290 --> 00:56:24.890
<v Gast 2>Also die haben damit angefangen, die wollten einen.

00:56:25.370 --> 00:56:30.330
<v Gast 1>Du kannst jemanden einen unbekannten Code auf deiner Sandbox auf deinem Server ausführen, was ja schon mal.

00:56:31.050 --> 00:56:38.010
<v Gast 2>Also die haben das angefangen, weil sie einen Open Source Clone von Google Dremel bauen wollten.

00:56:39.210 --> 00:56:45.290
<v Gast 2>Und haben dann halt angefangen, dieses ZVM zu implementieren, um das darauf zu bauen.

00:56:46.570 --> 00:56:51.930
<v Gast 2>Um für die ganze Geschichte mit Parallelprogrammierung und sonst was haben sie sich ein Aktor-Modell

00:56:51.930 --> 00:56:55.610
<v Gast 2>ausgedacht, was man auch schon von Scala oder Erlang oder sowas kennt.

00:56:55.850 --> 00:57:00.410
<v Gast 2>Und das Ganze wird dann mit Zero MQ verbunden,

00:57:00.890 --> 00:57:04.330
<v Gast 2>was auch so ein sehr leichtgewichtiges Messaging-Framework ist.

00:57:04.410 --> 00:57:06.410
<v Gast 2>Und man kann dann quasi seine unabhängigen.

00:57:06.810 --> 00:57:07.450
<v Gast 2>Message Broker.

00:57:07.770 --> 00:57:09.850
<v Ingo>Ja, aber sehr leichtgewichtig halt.

00:57:13.210 --> 00:57:14.090
<v Gast 2>Was wollte ich sagen?

00:57:14.170 --> 00:57:18.970
<v Gast 2>Also genau, man kann dann halt seine unabhängigen Prozesse miteinander über Request-Response-Patterns oder

00:57:18.970 --> 00:57:24.970
<v Gast 2>Publish-Subscribe-Patterns aneinander koppeln und könnte da halt große cloud-basierte

00:57:24.970 --> 00:57:28.650
<v Gast 2>Number-Crunching-Applikationen mit sehr wenig Overhead implementieren,

00:57:28.730 --> 00:57:32.890
<v Gast 2>wo man halt zum Beispiel auch Code von Kunden ausführen könnte, ohne dass man Angst haben müsste,

00:57:32.970 --> 00:57:36.090
<v Gast 2>dass die auf ihrem Server was kaputt machen, weil man hat ja die Sandbox außenrum.

00:57:36.330 --> 00:57:40.650
<v Gast 2>Also mir fehlt momentan ein bisschen der Einsatzzweck, aber ich finde die Technologie,

00:57:40.730 --> 00:57:44.170
<v Gast 2>die sie reingesteckt haben, eigentlich ganz cool und darum habe ich es mal angesprochen.

00:57:44.330 --> 00:57:45.770
<v Gast 1>Ich finde es ein total komisches Projekt.

00:57:45.850 --> 00:57:49.450
<v Gast 1>Wenn du auf Team klickst, hast du erstmal keine Namen, sondern zwei Blogs von den Autoren.

00:57:49.770 --> 00:57:52.890
<v Gast 1>Wenn du auf Dokumentation klickst, dann steht da Coming Soon.

00:57:54.810 --> 00:57:56.010
<v Unbekannt>Also keiner benutzt.

00:57:56.090 --> 00:57:59.610
<v Gast 1>Es gibt irgendwelche zwei Russen, die das zusammengefrickelt haben und es gibt keine Doku dazu.

00:57:59.770 --> 00:58:00.490
<v Gast 1>Hört sich genau richtig, ja.

00:58:00.650 --> 00:58:02.010
<v Gast 1>Würde ich mein Business sofort draufstellen.

00:58:02.170 --> 00:58:03.210
<v Unbekannt>Ja, nee, du musst ja auch den.

00:58:03.610 --> 00:58:04.410
<v Unbekannt>Das habe ich ja nicht gesagt.

00:58:04.490 --> 00:58:06.570
<v Gast 2>Also aber man kann den Source-Code auf GitHub angucken.

00:58:06.810 --> 00:58:07.050
<v Gast 2>C.

00:58:07.210 --> 00:58:07.930
<v Gast 2>C-Source-Code.

00:58:08.090 --> 00:58:09.450
<v Gast 2>C-Source-Code, aber man kann lesen.

00:58:09.530 --> 00:58:09.930
<v Gast 2>Tatsächlich.

00:58:10.090 --> 00:58:10.810
<v Gast 2>Will er aber nicht.

00:58:11.050 --> 00:58:13.530
<v Felix>Ja, das meiste ist ja irgendwie dieses Sandbox-Konferenz.

00:58:13.690 --> 00:58:18.490
<v Gast 2>Genau, das meiste ist das Google Native Client SDK.

00:58:19.050 --> 00:58:21.930
<v Ingo>Und das ist auch schon bei Google sehr gut dokumentiert.

00:58:22.090 --> 00:58:25.770
<v Gast 2>Und also man bekommt auf GitHub zumindest in der README genug Informationen,

00:58:26.170 --> 00:58:28.730
<v Gast 2>um sich das mal selber zu kompilieren und das mal selber auszubauen.

00:58:28.810 --> 00:58:35.050
<v Felix>Also die Grundidee, so wie ich das verstanden habe, ist, dass du deinen normalen C99-Code

00:58:35.530 --> 00:58:38.330
<v Felix>runterbrichst auf ein Deterministic-Subset.

00:58:38.890 --> 00:58:41.130
<v Gast 2>Genau, also auf ein sicheres Minimum.

00:58:41.290 --> 00:58:44.090
<v Felix>Genau, auf ein sicheres Minimum, was du irgendwie auf deinem Computer ausführen kannst.

00:58:44.170 --> 00:58:47.210
<v Felix>Und alles, was du mit dem Minimum machen kannst, kannst du dann auch quasi machen.

00:58:47.450 --> 00:58:53.130
<v Gast 2>Genau, und die limitieren dich halt nicht in Sachen, auf was für Speicherbereiche kannst du zugreifen.

00:58:53.610 --> 00:58:57.690
<v Ingo>Was heißt, das habe ich jetzt falsch ausgedrückt, sie limitieren dich nicht darauf,

00:58:57.850 --> 00:59:02.730
<v Ingo>welche Hardware kannst du zugreifen oder wie nah du am irgendwie am Speicher sein kannst,

00:59:03.050 --> 00:59:08.490
<v Ingo>sondern sie sorgen halt einfach dafür, dass du ein minimales Subset von C ausführen kannst,

00:59:08.570 --> 00:59:14.250
<v Ingo>aber du halt die Applikationen, für die es eigentlich gedacht ist, sollten damit realisierbar sein.

00:59:14.410 --> 00:59:15.930
<v Gast 1>Ich raff total nicht, was die damit machen wollen.

00:59:16.170 --> 00:59:20.650
<v Gast 1>Also selbst in den Killer-Apps, was da steht, dann sagen sie, ja, du könntest ja einen Video-Sharing-Service

00:59:20.650 --> 00:59:21.210
<v Gast 1>machen.

00:59:21.610 --> 00:59:23.210
<v Gast 1>Das macht gar keinen Sinn für mich.

00:59:23.290 --> 00:59:24.570
<v Gast 1>Echt gar keinen Sinn.

00:59:24.970 --> 00:59:29.450
<v Gast 1>Irgendwie, ja, du kannst da irgendwie Code auf deinen Servern ausführen, dem du nicht vertraust.

00:59:30.010 --> 00:59:31.850
<v Gast 1>Aber wer macht sowas?

00:59:32.090 --> 00:59:33.530
<v Gast 1>Compiler as a Service oder?

00:59:34.170 --> 00:59:37.050
<v Gast 2>Also du machst keine Sache-Hosting.

00:59:37.210 --> 00:59:40.330
<v Gast 2>Das ist ja, das ist ja im Endeffekt, wenn du sowas wie eine Plattform as a Service,

00:59:40.410 --> 00:59:42.650
<v Gast 2>zum Beispiel eine Compute-Plattform as a Service anbietest.

00:59:43.290 --> 00:59:49.930
<v Gast 2>Dann wäre das quasi eine Möglichkeit, sehr leichtgewichtig, ohne noch zusätzliche Virtualisierung Code deiner

00:59:49.930 --> 00:59:51.210
<v Gast 2>Kunden ausführen zu können.

00:59:51.370 --> 00:59:52.490
<v Gast 1>So wie Hadoop.

00:59:54.250 --> 00:59:58.330
<v Gast 1>Nur dass du dann halt nicht in Java programmieren musst, sondern in C, was ja auch scheiße ist eigentlich.

00:59:58.570 --> 01:00:04.410
<v Gast 2>Ja, eher so wie zum Beispiel diese High

01:00:04.570 --> 01:00:06.730
<v Gast 2>GPU-Instanzen und Amazon.

01:00:06.970 --> 01:00:11.370
<v Ingo>Die haben da außenrum noch einen Hypervisor, beziehungsweise die haben halt einen Xen,

01:00:11.530 --> 01:00:17.690
<v Ingo>glaube ich, außenrum, mit der sie die Ressourcenverwaltung steuern und so Geschichten.

01:00:17.930 --> 01:00:22.730
<v Gast 2>Das bräuchte man da halt jetzt nicht mehr, weil man könnte das direkt quasi auf dem Bare Metal laufen lassen,

01:00:22.810 --> 01:00:25.370
<v Gast 2>weil man diese Virtualisierung außenrum nicht mehr braucht.

01:00:26.090 --> 01:00:31.610
<v Gast 2>Weil man halt mit Zero VM den Code so abschirmen kann, dass er, dass sich die Kunden nicht gegenseitig in die

01:00:31.610 --> 01:00:33.290
<v Gast 2>Quere kommen und dass sie deinen Server nicht kaputt muss.

01:00:33.370 --> 01:00:35.130
<v Gast 1>Also es ist ein Hypervisor, ein dünner Hypervisor.

01:00:35.370 --> 01:00:38.650
<v Gast 1>Die sagen, sie sind besser als andere Hypervisor, weil Gründe.

01:00:38.890 --> 01:00:39.770
<v Felix>Weil Hypervisor.

01:00:40.010 --> 01:00:44.650
<v Ingo>Weil halt sie machen sehr wenig, aber das halt relativ gut.

01:00:45.050 --> 01:00:48.730
<v Gast 1>Aber dafür kannst du auch nicht jeden Code drauf ausführen, wie zum Beispiel bei Amazon,

01:00:48.810 --> 01:00:50.490
<v Gast 1>wo ja echt jeder Code drauf läuft, sondern brauchst du einen Kinder.

01:00:52.330 --> 01:00:57.290
<v Gast 2>Man braucht diesen Code, der gegen diese Google API linkt und kann damit halt machen,

01:00:57.370 --> 01:00:58.330
<v Gast 2>was man damit machen kann.

01:00:58.730 --> 01:01:00.090
<v Gast 1>Also quasi wie Hadoop.

01:01:00.250 --> 01:01:01.850
<v Gast 1>Nur dann halt in C statt in Java.

01:01:02.330 --> 01:01:06.570
<v Gast 1>Also in einer Art C, sondern nicht echtes C, sondern also eine Sprache, die noch keiner kennt.

01:01:08.010 --> 01:01:09.610
<v Unbekannt>Ja, nee, ein Subset von C.

01:01:09.850 --> 01:01:12.170
<v Gast 1>Also nichts, was es schon gibt, könntest du benutzen.

01:01:12.330 --> 01:01:13.450
<v Felix>Ja, pretty much.

01:01:13.690 --> 01:01:14.330
<v Felix>Das klingt doch super.

01:01:14.410 --> 01:01:15.530
<v Felix>Ja, hört sich genau richtig an.

01:01:15.690 --> 01:01:17.050
<v Gast 1>Ja, das ist auf jeden Fall so ein Kack-Logo.

01:01:17.130 --> 01:01:18.170
<v Gast 1>Was ist denn das für eine Schrifters?

01:01:18.490 --> 01:01:18.970
<v Gast 1>Das ist einfach ein CDU.

01:01:19.050 --> 01:01:20.570
<v Felix>Das finde ich auch ein Riesenpain.

01:01:20.970 --> 01:01:23.850
<v Felix>Und wenn du drauf drückst, kommst du auf die Seite nochmal.

01:01:25.370 --> 01:01:26.090
<v Felix>Ich finde es nicht gut.

01:01:26.170 --> 01:01:27.610
<v Gast 1>Ich pangere das an.

01:01:28.570 --> 01:01:33.850
<v Gast 2>Also hier steht irgendwie mal, dass man es als eine Art Erlang-In C sehen kann.

01:01:34.010 --> 01:01:37.530
<v Gast 2>Weil Erlang lässt sich schön verteilen und so, aber ist an sich von der VM-Handy.

01:01:37.690 --> 01:01:39.530
<v Gast 1>Ja, aber die hast du nichts mit verteilen dabei.

01:01:39.610 --> 01:01:42.090
<v Gast 1>Also das ist ja kein Distributor wie Erlang, dass der da so Message.

01:01:42.490 --> 01:01:42.970
<v Gast 1>Ja, aber lokal.

01:01:43.050 --> 01:01:45.370
<v Gast 2>Man kann halt lokal mit der Abstraktion, wobei könnte man auch.

01:01:45.610 --> 01:01:46.490
<v Unbekannt>Also wie Threads.

01:01:48.090 --> 01:01:51.530
<v Gast 2>Wie leichtgewichtige Prozesse, was Actors sind.

01:01:51.690 --> 01:01:52.010
<v Gast 2>Prozesse.

01:01:52.330 --> 01:01:52.810
<v Gast 2>Oder Threads.

01:01:53.290 --> 01:01:54.730
<v Gast 1>So heutzutage sind die auch echt leichtgewichtige.

01:01:55.210 --> 01:01:58.970
<v Gast 2>Ja, nicht Threads können auch Speichersheren, was du mit Actors nicht kannst.

01:01:59.130 --> 01:02:02.010
<v Gast 1>Okay, bedeutet, sie haben Actos nachgebaut in einer komischen C-Sprache.

01:02:02.170 --> 01:02:05.130
<v Gast 1>Also so wie Aldo quasi.

01:02:05.530 --> 01:02:07.050
<v Ingo>Ja, Hadoop ist ja mehr prioritiert.

01:02:07.370 --> 01:02:10.410
<v Gast 1>Ja, gut, du kannst aber ja auch Act-Zeug, also ja.

01:02:10.810 --> 01:02:12.330
<v Gast 1>Ich mag das nicht, reden wir über was anderes.

01:02:12.730 --> 01:02:14.410
<v Ingo>Also ich fand es mal ganz interessant, darüber zu sagen.

01:02:14.570 --> 01:02:15.930
<v Felix>Ich find's awesome, ich würde es mir kaufen.

01:02:16.410 --> 01:02:18.250
<v Unbekannt>Es ist Open Source, du musst es dir nicht kaufen.

01:02:18.410 --> 01:02:20.090
<v Felix>Oh, ich würde es mir trotzdem kaufen, wenn es.

01:02:21.770 --> 01:02:22.250
<v Felix>Ich lasse es mir runter.

01:02:22.810 --> 01:02:25.930
<v Ingo>Und um auf die Geschichte mit dem Verteilen zurückzukommen, kannst du natürlich machen,

01:02:26.010 --> 01:02:28.490
<v Ingo>weil die haben ja Zero MQ mit drin.

01:02:28.570 --> 01:02:31.370
<v Gast 2>Und damit kannst du natürlich, wenn die das so implementiert haben,

01:02:31.450 --> 01:02:34.170
<v Gast 2>ich hoffe jetzt mal, die haben das so, sonst müsste ich jetzt lügen.

01:02:34.490 --> 01:02:38.650
<v Gast 2>Dann könnte man ja über Zero MQ auch über Rechnergrenzen hinweg Aktoren verteilen.

01:02:38.890 --> 01:02:43.850
<v Gast 1>Aber das will ja keiner, weil du ja normalerweise, also gerade für so High-Performance-Geschichten,

01:02:43.930 --> 01:02:46.170
<v Gast 1>das ist ja das Ziel von denen, die wollen ja High-Performance bieten,

01:02:46.250 --> 01:02:48.730
<v Gast 1>da willst du es ja nicht verteilen, da willst du gescherten Speicher haben.

01:02:48.810 --> 01:02:53.050
<v Gast 1>Weil sonst ist es irgendwie wie, keine Ahnung, du kaufst dir einen Porsche, aber fährst du mit über den Acker.

01:02:53.610 --> 01:02:55.290
<v Gast 1>Das ist so, ja, das kann total schnell sein.

01:02:55.450 --> 01:02:58.170
<v Gast 1>Das ist nicht in deinem Fall, weil du kannst jetzt natürlich nicht echt so superschnell,

01:02:58.250 --> 01:03:00.970
<v Gast 1>wie du eigentlich willst, aber also es ist nichts für High Performance,

01:03:01.050 --> 01:03:04.170
<v Gast 1>weil du dann eigentlich Speicherscheren willst, nicht dieses Aktor Geraffel machen willst.

01:03:04.330 --> 01:03:07.690
<v Gast 1>Vor Verteilung ist es so mäßig gut, weil du halt eine neue Sprache lernen musst.

01:03:07.770 --> 01:03:10.890
<v Unbekannt>Und das Deck ist ganz interessant.

01:03:11.130 --> 01:03:11.850
<v Unbekannt>So wie Haskell.

01:03:12.010 --> 01:03:14.970
<v Gast 1>Kannst auch funktional programmieren stattdessen, da gibt es schon alle möglichen Sachen.

01:03:15.210 --> 01:03:16.730
<v Felix>Ich, da, da, da.

01:03:16.970 --> 01:03:18.490
<v Felix>Also ich lad es mir jetzt einfach runter.

01:03:18.650 --> 01:03:21.930
<v Gast 1>Also ich finde dieses Zero-MQ ist eine coole Sache, sollte man in mehr Sachen reinstecken,

01:03:22.010 --> 01:03:24.730
<v Gast 1>aber irgendwie, dass es A, VM nennen und B, das ist zwar irgendwelche.

01:03:25.050 --> 01:03:29.450
<v Ingo>Wie gesagt, da habe ich schon am Anfang gesagt, also das VM kann man sich mal ein bisschen drüber streiten,

01:03:29.530 --> 01:03:32.410
<v Ingo>weil im Endeffekt ist es eigentlich nur eine glorifizierte Sandbox.

01:03:33.130 --> 01:03:38.010
<v Gast 2>Aber ich finde an sich, ich weiß, wüsste jetzt nicht spontan, was ich damit machen sollte,

01:03:38.090 --> 01:03:38.810
<v Gast 2>aber ich finde es mal interessant.

01:03:39.610 --> 01:03:41.290
<v Gast 1>Ich finde halt ihre Killer-App-Sachen auch so.

01:03:41.370 --> 01:03:46.570
<v Gast 1>Also sie sagen halt, so das Hauptthema ist, du könntest quasi was machen wie Hadoop,

01:03:46.650 --> 01:03:50.730
<v Gast 1>nur dass du mehr Logik quasi auf die einzelnen Notes schieben kannst.

01:03:50.890 --> 01:03:53.930
<v Gast 1>Was ich immer gedacht habe, das geht auch mit Hadoop, aber naja.

01:03:54.890 --> 01:03:55.610
<v Gast 1>Kannst es mehr.

01:03:55.930 --> 01:03:56.250
<v Gast 1>Interessant.

01:03:56.490 --> 01:04:00.170
<v Ingo>Also ich habe hier noch so einen Blogpost verlinkt, wo sie halt auch mal gesagt haben,

01:04:00.490 --> 01:04:03.690
<v Ingo>sie haben hier Open Dremel angefangen zu implementieren.

01:04:04.570 --> 01:04:07.290
<v Ingo>Und daraus ist halt dieses Zero-VM entstanden.

01:04:07.530 --> 01:04:10.010
<v Felix>Haben sie das quasi aufgegeben und haben gedacht, wir machen jetzt alles neu.

01:04:10.170 --> 01:04:15.850
<v Gast 1>Also ja gut, Open Dremel, Dremel ist ja, ich sag mal, ähnlich wie ja du vom Konzept her von dem verteilten

01:04:15.930 --> 01:04:18.330
<v Gast 1>Rechnen, das du da hast, nur halt umgekehrt.

01:04:19.210 --> 01:04:22.410
<v Gast 1>Also Open Dremel genannt, finde ich das besser.

01:04:22.970 --> 01:04:27.290
<v Ingo>Ja, Open Dremel gibt es ja auch, aber das ist halt die Laufzeitumgebung für Open Dremel quasi.

01:04:27.450 --> 01:04:30.970
<v Gast 1>Genau, aber ja, das dann halt rauszuabstrahieren, finde ich ein bisschen komisch, dann sollten sie.

01:04:31.130 --> 01:04:31.530
<v Gast 1>Ich finde es.

01:04:31.770 --> 01:04:34.730
<v Felix>Ich meine, ihre Killer ist einfach eine Riesengrepe.

01:04:35.450 --> 01:04:35.850
<v Felix>Richtig, ja.

01:04:36.090 --> 01:04:38.330
<v Felix>Also das hat auch keine Aussage.

01:04:38.970 --> 01:04:41.850
<v Felix>Wir könnten damit das Internet neu machen.

01:04:42.170 --> 01:04:43.450
<v Gast 1>Das Internet der Dinge.

01:04:45.210 --> 01:04:47.850
<v Felix>Internet der Aktoren.

01:04:48.170 --> 01:04:49.370
<v Ingo>Ach, da gibt's übrigens eine.

01:04:49.690 --> 01:04:51.530
<v Felix>Oh shit, das haben wir ja, das ist dann die Browser.

01:04:53.690 --> 01:04:59.290
<v Gast 2>Da gibt es übrigens von ein paar Leuten ein Paper, was noch nicht.

01:04:59.530 --> 01:05:01.690
<v Felix>Oh, wenn es ein Paper gibt, dann muss das gut sein.

01:05:02.010 --> 01:05:04.250
<v Gast 1>Peer-Reviewed ist größtenteils Ponybuild-Inhalt.

01:05:04.570 --> 01:05:04.810
<v Gast 1>Nein.

01:05:06.330 --> 01:05:09.130
<v Felix>Und die andere Hälfte ist nur mit Penis ersetzt worden.

01:05:09.610 --> 01:05:10.410
<v Felix>Richtig, sehr wichtig.

01:05:10.570 --> 01:05:12.650
<v Felix>Weil keiner liest mehr als zehn Seiten.

01:05:13.210 --> 01:05:13.530
<v Felix>Okay.

01:05:14.170 --> 01:05:16.250
<v Ingo>Wir merken schon wieder, dass sie Niveau sinkt.

01:05:16.490 --> 01:05:18.330
<v Gast 1>Ich würde sagen, wir gehen einfach knallert weiter zu den.

01:05:19.290 --> 01:05:20.010
<v Gast 1>Was haben wir denn jetzt?

01:05:20.330 --> 01:05:21.690
<v Ingo>Jetzt kommt eigentlich unser Thema.

01:05:21.930 --> 01:05:22.090
<v Ingo>Ja.

01:05:22.410 --> 01:05:22.730
<v Ingo>Thema.

01:05:23.050 --> 01:05:23.690
<v Ingo>Wie viel ist denn?

01:05:23.770 --> 01:05:24.490
<v Ingo>Wie viel hast du?

01:05:24.730 --> 01:05:24.890
<v Ingo>Genau.

01:05:26.010 --> 01:05:26.410
<v Ingo>Wir haben noch Zeit.

01:05:27.850 --> 01:05:29.130
<v Ingo>Eine halbe Stunde oder so.

01:05:29.770 --> 01:05:35.050
<v Ingo>Wir wollten uns mal so ein bisschen über Webprojekte unterhalten, was man so alles benutzen kann,

01:05:35.290 --> 01:05:37.690
<v Ingo>benutzen könnte, wie wir das so machen.

01:05:37.850 --> 01:05:41.370
<v Ingo>Und da seid auch ihr Hörer gefragt, ihr könnt dann in die Kommentare auch mal so schreiben,

01:05:41.530 --> 01:05:45.690
<v Ingo>wie ihr das so macht, was ihr dann so auf Server, auf Client-Seite einsetzt.

01:05:45.770 --> 01:05:50.570
<v Ingo>Und ja, Flydy, du hattest das Thema vorgeschlagen, was.

01:05:51.130 --> 01:05:52.490
<v Felix>Du hast auch alles eingetreten.

01:05:54.730 --> 01:05:56.090
<v Gast 2>Außer mir macht ja keiner was.

01:06:00.410 --> 01:06:05.450
<v Ingo>Ja, ich habe gedacht, das wäre mal ganz nett, weil wir alle irgendwie mehr oder weniger was mit Web und

01:06:05.450 --> 01:06:07.770
<v Ingo>Webentwicklung zu tun haben, könnten wir ja mal drüber reden.

01:06:07.930 --> 01:06:10.490
<v Ingo>Das wäre vielleicht auch für den einen oder anderen höherer interessant.

01:06:10.570 --> 01:06:11.290
<v Ingo>Oder so.

01:06:11.930 --> 01:06:12.650
<v Ingo>Oder so.

01:06:14.170 --> 01:06:15.530
<v Gast 2>Wo wollen wir denn anfangen?

01:06:15.690 --> 01:06:22.090
<v Ingo>Ja, na erstmal, was gibt es für Arten von Projekten und was benutzt ihr da so?

01:06:23.770 --> 01:06:30.170
<v Gast 2>Also ich kann mal von mir sagen, ich betreibe ein paar Webseiten, teils mit Content Management-Systemen,

01:06:30.330 --> 01:06:36.570
<v Gast 2>teils mit Codegeneratoren, teils mit mehr

01:06:37.130 --> 01:06:39.130
<v Gast 2>spezielleren Blogging-Systemen.

01:06:41.450 --> 01:06:46.250
<v Ingo>Ich programmiere ab und zu mal so Geschichten fürs Web.

01:06:46.970 --> 01:06:50.090
<v Gast 2>Und ja, was mache ich denn sonst noch?

01:06:50.170 --> 01:06:53.690
<v Ingo>Ja, ich arbeite im Bereich Webtesting und studiere halt Medieninformatik,

01:06:53.770 --> 01:06:55.690
<v Ingo>wo halt Web auch ein Schwerpunkt ist.

01:06:56.410 --> 01:07:02.810
<v Ingo>Und da kommt man so eigentlich mehr oder weniger täglich auf täglicher Basis mit irgendwie Webgeschichten

01:07:03.130 --> 01:07:04.170
<v Ingo>in Kontakt.

01:07:04.970 --> 01:07:07.930
<v Ingo>Na dann mal Butterbuddyfische, was benutzt du denn so?

01:07:08.330 --> 01:07:13.690
<v Gast 2>Ich benutze unter anderem für unseren Podcast hier,

01:07:15.050 --> 01:07:21.610
<v Gast 2>Octopod, was einen Fork von Octopress ist, was den Marc und ich momentan entwickeln,

01:07:21.850 --> 01:07:24.250
<v Gast 2>mit denen wir halt unsere Webseite generieren.

01:07:26.090 --> 01:07:28.890
<v Ingo>Statisch, genau, das ist alles statische HTML-Code.

01:07:29.210 --> 01:07:35.210
<v Ingo>Wir schreiben dazu Markdown mit angereichert mit ein bisschen ein paar Metadaten für unsere

01:07:35.210 --> 01:07:36.330
<v Ingo>Blogposts.

01:07:36.730 --> 01:07:42.010
<v Gast 2>Und dann lassen wir da unsere Ruby-Software drauf los und die macht da einen schönen HTML-Code,

01:07:42.090 --> 01:07:43.210
<v Gast 2>HTML-5-Code raus.

01:07:43.370 --> 01:07:46.810
<v Gast 1>Richtig, da ist auch immer die Frage bei vielen Sachen, also ich denke,

01:07:46.970 --> 01:07:51.930
<v Gast 1>so von den ganzen dynamisch generierten Seiten, die mit einer Datenbank dahinter sind und dann irgendwie so

01:07:51.930 --> 01:07:58.330
<v Gast 1>ein lustiges Admin-Interface haben, ich denke, du kriegst locker 75 bis 80 Prozent der

01:07:58.330 --> 01:08:00.650
<v Gast 1>Funktionalität auch durch statische Generatoren hin.

01:08:00.730 --> 01:08:05.930
<v Gast 1>Weil im Endeffekt ist es ja, eine dynamisch generierte Seite hat ja das Einzige,

01:08:06.010 --> 01:08:09.530
<v Gast 1>was die wirklich dynamisch macht, ist, was in der Datenbank steht.

01:08:09.690 --> 01:08:13.930
<v Gast 1>Und wenn dich deine Datenbank nicht verändert, dann kannst du das Ding komplett statisch rausrendern,

01:08:14.010 --> 01:08:18.650
<v Gast 1>weil jeder Link quasi, also so funktionieren diese dynamischen Seitengeneratoren auch,

01:08:18.890 --> 01:08:22.890
<v Gast 1>die intern kann man sich vorstellen, dass die einfach jeden Link durchgehen und die sind,

01:08:23.450 --> 01:08:27.850
<v Gast 1>was dann von diesem Link generiert werden würde, einfach statisch aus HTML-Seite rausschreiben.

01:08:28.090 --> 01:08:30.490
<v Gast 1>Bei uns zum Beispiel, bei so einem ganz normalen Blog, ich meine, ja gut,

01:08:30.570 --> 01:08:33.930
<v Gast 1>da gibt es Archive, da gibt es einzelne Blogposts, da gibt es Übersichtsseiten.

01:08:34.810 --> 01:08:36.650
<v Gast 2>SS-Feeds, Podcast-Feeds vor allem.

01:08:38.570 --> 01:08:41.770
<v Gast 1>Die sind ja alle statisch, außer wir publizieren explizit was Neues.

01:08:41.930 --> 01:08:48.410
<v Gast 2>Genau, und wenn wir was Neues publizieren, dann sagen wir dem quasi manuell, so jetzt generier mal bitte neu.

01:08:48.490 --> 01:08:53.450
<v Gast 2>Wir haben eine neue Sendung veröffentlicht und dann pushen wir das auf GitHub,

01:08:53.690 --> 01:08:57.050
<v Gast 2>was hier so unser Hoster ist, in dem Fall, GitHub Pages.

01:08:58.010 --> 01:08:59.290
<v Gast 2>Und dann kommt es bei euch an.

01:08:59.450 --> 01:09:01.050
<v Gast 1>Richtig, also wir pushen das statisch raus.

01:09:01.130 --> 01:09:04.890
<v Gast 1>Das Einzige, was natürlich dynamisch ist, ist, wenn, also was sich verändert,

01:09:04.970 --> 01:09:09.050
<v Gast 1>auch wenn wir nichts machen, ist nämlich, wenn ihr was macht, wenn ihr uns in die Kommentare schreibt.

01:09:09.210 --> 01:09:09.530
<v Gast 1>Genau.

01:09:09.690 --> 01:09:13.530
<v Gast 1>Und da benutzen wir jetzt in dem Fall, das kannst du natürlich mit einer statischen Webseite leider nicht

01:09:13.530 --> 01:09:13.930
<v Gast 1>machen.

01:09:14.250 --> 01:09:18.570
<v Gast 1>Was wir da gemacht haben, ist, wir verlassen uns da einfach auf einen Third-Party-Dienstleister,

01:09:18.730 --> 01:09:19.290
<v Gast 1>nämlich Discas.

01:09:19.770 --> 01:09:22.890
<v Gast 1>Discuss bietet ein kleines Stückchen JavaScript an.

01:09:23.050 --> 01:09:26.970
<v Gast 1>Das frickelst du in eine Seite rein und dann ladet ihr die statische Seite.

01:09:27.130 --> 01:09:31.930
<v Gast 1>Euer Browser führt das JavaScript aus und das JavaScript holt sich einfach alle Kommentare,

01:09:32.010 --> 01:09:37.850
<v Gast 1>die zu dieser entsprechenden Seite bisher abgegeben wurden und baut es da quasi dynamisch bei euch in die

01:09:37.850 --> 01:09:38.490
<v Gast 1>Seite ein.

01:09:38.650 --> 01:09:41.690
<v Gast 1>Oder wenn ihr die ladet, gibt es noch gar keine Kommentare darauf.

01:09:42.250 --> 01:09:43.530
<v Ingo>Das sieht man auch immer ganz kurz.

01:09:43.610 --> 01:09:44.890
<v Ingo>Das steht dann immer noch null.

01:09:45.610 --> 01:09:48.570
<v Ingo>Oder wenn ihr JavaScript deaktiviert habt, dann könnt ihr nicht kommentieren.

01:09:49.050 --> 01:09:49.210
<v Ingo>Richtig.

01:09:49.450 --> 01:09:50.810
<v Gast 2>Ja, ist dann euer Problem.

01:09:50.970 --> 01:09:51.290
<v Gast 2>Richtig.

01:09:52.410 --> 01:09:53.210
<v Ingo>Und nicht flattern.

01:09:54.650 --> 01:09:58.090
<v Ingo>Ja, flattern geht es so oder so nicht, weil das ist ja immer JavaScript.

01:09:58.250 --> 01:09:59.770
<v Gast 1>Genau, das ist auch so eine Sache, was dynamisch ist.

01:10:01.530 --> 01:10:03.210
<v Gast 2>Moment, wir linken doch da drauf, oder?

01:10:03.370 --> 01:10:06.250
<v Ingo>Ja, aber du würdest zumindest nicht sehen, wie viel es sind.

01:10:06.810 --> 01:10:09.370
<v Gast 2>Ja, gut, das sieht man ja sonst auch, aber man kann draufklicken.

01:10:10.810 --> 01:10:11.210
<v Gast 2>Egal.

01:10:11.370 --> 01:10:13.690
<v Gast 2>Aber man kann draufklicken und dann kommt man auf die Flatter-Webseite.

01:10:13.770 --> 01:10:17.050
<v Gast 2>Irgendwann muss man halt mal JavaScript anmachen, wenn man nicht ganz bescheuert ist.

01:10:17.210 --> 01:10:17.450
<v Gast 2>Richtig.

01:10:17.530 --> 01:10:20.890
<v Gast 1>Auf jeden Fall, das ist so der Gedanke von statischen Seitengeneratoren.

01:10:20.970 --> 01:10:23.610
<v Gast 1>Ich bin ja auch ein recht großer Freund von, weil mir ging es irgendwie auf den Sack,

01:10:23.690 --> 01:10:28.250
<v Gast 1>immer irgendwie MySQL zu haben und dann Updates zu machen und dann geht wieder irgendwas nicht.

01:10:28.330 --> 01:10:33.610
<v Gast 1>Und dann haben wir ein Update von WordPress und dann fehlt auf einmal irgendwie deine Kommentare und dann

01:10:33.610 --> 01:10:34.730
<v Gast 1>darfst du wieder nachschauen.

01:10:34.890 --> 01:10:38.970
<v Gast 1>Und ich hatte auch, ich habe so ein, also ich betreibe selber gar nicht so viele Webseiten.

01:10:39.370 --> 01:10:42.410
<v Gast 1>Ich habe irgendwie, keine Ahnung, meinen Blog, irgendwie noch ein paar so statische,

01:10:42.490 --> 01:10:47.210
<v Gast 1>hallo, mein Name ist Marc-Seiten und hier ist, was ich consultingmäßig anbiete und da ist,

01:10:48.250 --> 01:10:49.450
<v Gast 1>schieß mich tot.

01:10:49.850 --> 01:10:52.970
<v Gast 1>Und das Einzige, was ich noch hatte, war so eine Seite, wo ich einfach,

01:10:53.210 --> 01:10:57.290
<v Gast 1>wenn ich laufen war, gerne die GPX-Dateien, die da hinten rausfallen aus dem Handy,

01:10:57.450 --> 01:10:58.730
<v Gast 1>divisualisiert haben will.

01:10:58.890 --> 01:11:01.370
<v Gast 1>Und das habe ich am Anfang auch mit Sinatra gemacht auf Ruby.

01:11:01.450 --> 01:11:06.730
<v Gast 1>Ist auch eigentlich noch eins meiner Lieblings-Web-Frameworks, weil es jetzt echt nahe an REST dran ist und

01:11:06.730 --> 01:11:12.010
<v Gast 1>nahe an den echten URL-Pfaden und sehr leichtgewichtig.

01:11:12.170 --> 01:11:15.530
<v Gast 1>Aber irgendwann war es mir auch zu doof, weil der musste immer einen Server selber betreiben,

01:11:15.690 --> 01:11:18.650
<v Gast 1>der das dann macht und dann musst du dich da irgendwie drum kümmern,

01:11:18.730 --> 01:11:21.290
<v Gast 1>dass der die Sicherheitsupdates hat und alles Mögliche.

01:11:21.450 --> 01:11:24.730
<v Gast 1>Obwohl der eigentlich echt gar nichts macht, bedeutet, das habe ich dann auch irgendwann mal,

01:11:24.810 --> 01:11:28.010
<v Gast 1>weil mir Sonntagnachmittag langweilig, habe ich halt das Ganze auch umgeschrieben,

01:11:28.090 --> 01:11:29.930
<v Gast 1>dass er auch statisches HTML rausrendert.

01:11:30.010 --> 01:11:34.570
<v Gast 1>Das ist in so einem halbgaren Zustand, aber das Schöne ist halt, sobald du statisches HTML hast,

01:11:34.650 --> 01:11:36.730
<v Gast 1>hast du gar keine Ansprüche mehr an Hosting.

01:11:37.050 --> 01:11:40.410
<v Gast 1>Und ich kann es dann einfach nach Amazon S3 schieben, da bin ich total glücklich mit.

01:11:40.490 --> 01:11:44.490
<v Gast 1>Da muss ich mich um gar nichts kümmern, das ist immer da und das ist auch im Normalfall sehr schnell und

01:11:44.490 --> 01:11:46.250
<v Gast 1>kostet irgendwie 5 Cent pro Monat.

01:11:46.410 --> 01:11:48.490
<v Gast 2>Ich meine, man muss sich das halt auch mal vor Augen halten.

01:11:48.570 --> 01:11:51.930
<v Gast 2>Ich meine, im Normalfall, wenn man da jetzt so ein 0815-Web-CMS hat,

01:11:52.090 --> 01:11:56.730
<v Gast 2>dann wird für jeden Seitenaufbau mehrere Requests zur Datenbank gemacht,

01:11:56.810 --> 01:11:59.690
<v Gast 2>dann werden da wahrscheinlich noch intern irgendwelche Joints gemacht,

01:11:59.770 --> 01:12:01.930
<v Gast 2>die die Daten nochmal zusammenfügen.

01:12:02.250 --> 01:12:07.450
<v Gast 2>Dann holst du das Zeug aus der Datenbank raus, renderst das in ein HTML-Template und dann schickst du das

01:12:07.450 --> 01:12:12.250
<v Gast 2>HTML-Template an deinen User und das jedes Mal bei jedem Request.

01:12:12.650 --> 01:12:13.770
<v Felix>Außer du hast Cache.

01:12:15.050 --> 01:12:19.450
<v Ingo>Das musst du dann auch relativ bald einsetzen, weil so ab, weiß ich nicht,

01:12:19.770 --> 01:12:22.890
<v Ingo>400 Besucher pro Tag macht das dann auf deiner Datenbank schon viel.

01:12:23.210 --> 01:12:24.250
<v Felix>400 Besucher pro Tag ist nicht.

01:12:24.650 --> 01:12:26.010
<v Gast 2>400 Besucher pro Tag ist nichts.

01:12:26.570 --> 01:12:27.130
<v Gast 2>Pro Minute.

01:12:28.010 --> 01:12:29.530
<v Ingo>Pro Minute dann dampft es schon.

01:12:30.570 --> 01:12:32.010
<v Felix>Ah, Quatsch, Datenbank ist auch schnell.

01:12:32.170 --> 01:12:34.890
<v Ingo>Also ich habe mal geguckt, so ein normales WordPress, das macht auch seine 10,

01:12:34.970 --> 01:12:39.210
<v Ingo>20 Requests die Sekunde ohne Caching auf einem 0815-Server.

01:12:39.530 --> 01:12:42.010
<v Ingo>Also wir hatten bei Radatux damals dann irgendwann die Probleme, dass der Festplatz.

01:12:42.490 --> 01:12:44.330
<v Gast 2>Durch eine Apache eingesetzt, dass wir es ja haben.

01:12:47.370 --> 01:12:48.010
<v Gast 2>Egal.

01:12:48.090 --> 01:12:50.570
<v Ingo>Also die Datenbank hat das Problem gemacht dann.

01:12:50.650 --> 01:12:52.970
<v Ingo>Also die Datenbank war halt nicht mehr schnell genug.

01:12:53.290 --> 01:12:56.650
<v Ingo>Du musst deine Caches ein bisschen großzügiger in der Datenbank, also die Caches in der Datenbank sind

01:12:56.810 --> 01:12:57.130
<v Ingo>großzügiger.

01:12:57.930 --> 01:12:59.450
<v Felix>Es ist halt einfach ein Riesenpain, das zu machen.

01:13:00.170 --> 01:13:00.890
<v Felix>Deswegen will man es nicht.

01:13:01.210 --> 01:13:05.290
<v Gast 2>Aber dass sich ja von den Daten E-Com was ändert, macht es irgendwie auch wenig Sinn,

01:13:05.450 --> 01:13:10.010
<v Gast 2>da jedes Mal komplett den Roundtrip zu machen und auch die Caching-Logik macht da wenig Sinn.

01:13:10.170 --> 01:13:16.650
<v Gast 2>Viel mehr Sinn würde es da eigentlich machen, halt im Endeffekt so wie wir es momentan implementiert haben.

01:13:17.450 --> 01:13:18.810
<v Felix>Was wir machen, ist richtig.

01:13:18.970 --> 01:13:24.810
<v Gast 2>Genau, was wir machen, macht Sinn, weil wir generieren die Seite komplett statisch und tun nur die einzelnen

01:13:24.810 --> 01:13:29.770
<v Gast 2>Teile, wie jetzt die Kommentare in unserem Fall, dynamisch nachladen.

01:13:29.850 --> 01:13:30.410
<v Gast 2>Und das funktioniert.

01:13:30.650 --> 01:13:33.770
<v Gast 2>Also da könnte man sich zur Not auch sich eine Software auf einem lokalen Server installieren,

01:13:33.850 --> 01:13:34.730
<v Gast 2>die sowas ähnliches macht.

01:13:34.810 --> 01:13:35.930
<v Gast 2>Die ist, glaube ich, in Rails geschrieben.

01:13:36.010 --> 01:13:36.650
<v Gast 2>Mir fällt der Name von.

01:13:36.970 --> 01:13:38.170
<v Gast 1>Rack Cache gibt es zum Beispiel.

01:13:38.250 --> 01:13:38.970
<v Gast 1>Das macht genau dasselbe.

01:13:39.210 --> 01:13:39.770
<v Gast 1>Nee, nee, nee, nee.

01:13:40.010 --> 01:13:42.250
<v Ingo>Nicht Cache, sondern ich meine die Kommentarfunktion.

01:13:42.330 --> 01:13:45.370
<v Ingo>Da gibt es auch sowas wie Discuss nur in Open Source, mir fehlt der Name gerade nicht gut.

01:13:45.690 --> 01:13:47.930
<v Ingo>Hat irgendjemand schon in seinen Kommentaren mal geschrieben, ja.

01:13:48.170 --> 01:13:50.250
<v Gast 2>Ich weiß, aber dann ist halt auch selber wirklich.

01:13:52.650 --> 01:13:57.370
<v Gast 1>Richtig, nee, aber gerade auch, weil ich so ausgespaced und einfach mal Rack Cache in die Runde geworfen habe,

01:13:57.450 --> 01:14:03.130
<v Gast 1>das ist auch ganz interessant, weil die nehmen quasi die Idee, alles statisch zu generieren anhand der URL und

01:14:03.290 --> 01:14:05.770
<v Gast 1>bauen das quasi vor eure dynamische Anwendung.

01:14:05.930 --> 01:14:09.690
<v Gast 1>Bedeutet, jedes Mal, wenn ein User dann irgendwie auf so eine nicht eingelogte Seite,

01:14:09.770 --> 01:14:15.690
<v Gast 1>also ohne besondere Cookies, raufgeht und euer Webframework dann am Ende eine HTML-Datei da raushaut,

01:14:15.770 --> 01:14:19.770
<v Gast 1>dann würde dieses Rack-Cache quasi als Webserver-Middlewischen gehen und sagen,

01:14:19.850 --> 01:14:25.050
<v Gast 1>ah, da hat jemand was generiert und der speichert es dann auch wirklich unter demselben Namen in Public

01:14:25.050 --> 01:14:25.690
<v Gast 1>Directory.

01:14:25.770 --> 01:14:28.650
<v Gast 1>Also wenn ihr irgendwie nach slash blub, slash blah slash hallo geht,

01:14:28.730 --> 01:14:32.890
<v Gast 1>dann wird der irgendwie zwei Ordner machen namens Blub und Bla und da eine Hallo-HTML reinklatschen.

01:14:33.210 --> 01:14:39.210
<v Gast 1>Und wird das so lange ausliefern, wie du da sagst, irgendwie, dass dieses Caching gut sein soll.

01:14:39.290 --> 01:14:41.770
<v Gast 1>Also der hat dann irgendwo einen Hash, intern im Speicher und sagt dann,

01:14:41.850 --> 01:14:45.690
<v Gast 1>ja, nach zehn Minuten, da lösche ich es dann mal wieder und baue das neu auf.

01:14:45.850 --> 01:14:46.970
<v Gast 1>Also es gibt es.

01:14:47.130 --> 01:14:50.490
<v Gast 1>Und das ist im Grunde auch das Prinzip, weil nur dynamisch ist einfach zu langsam,

01:14:50.650 --> 01:14:55.530
<v Gast 1>bedeutet, du musst es echt statisch machen im Endeffekt, um dann irgendwann noch Performance zu haben.

01:14:56.010 --> 01:14:58.810
<v Gast 2>Zumindest um eine größere Anzahl von Benutzern bedienen zu können.

01:14:58.970 --> 01:14:59.050
<v Gast 2>Richtig.

01:14:59.210 --> 01:15:02.810
<v Gast 1>Und das Schöne an dem Ganzen Statisch ist auch, du hast keine SQL-Injections, du hast kein.

01:15:03.290 --> 01:15:06.810
<v Gast 2>Ja, man hat allgemein keine Sicherheitsprobleme, weil kein Code auf dem Server ausgeführt wird.

01:15:06.970 --> 01:15:07.530
<v Gast 2>Oh, richtig.

01:15:07.610 --> 01:15:11.290
<v Gast 1>Und du hast auch eigentlich keinen Input, wo du dann irgendwie so Cross-Site-Skripting oder sonst was.

01:15:11.690 --> 01:15:15.210
<v Ingo>Ja, und wenn, dann müssen das halt unsere Kommentar-Provider oder sowas filtern, oder?

01:15:15.450 --> 01:15:15.610
<v Ingo>Richtig.

01:15:15.930 --> 01:15:17.530
<v Gast 2>Gut, Suche ist halt wieder so ein Problem.

01:15:17.610 --> 01:15:20.010
<v Ingo>Ich meine, bei uns ist es halt so, wenn man was ins Suchfeld reinschreibt,

01:15:20.090 --> 01:15:25.130
<v Ingo>dann wird man halt auf eine Google-Seite geleitet, die dann halt für uns quasi aus ihrem Index sucht.

01:15:25.450 --> 01:15:26.010
<v Ingo>Ist auch besser so.

01:15:26.090 --> 01:15:30.090
<v Gast 1>Weil also die meisten Suchen benutzen irgendwie die MySQL, hier, wie heißt es?

01:15:31.290 --> 01:15:35.530
<v Gast 1>Isam MyISEM-Text-Suchmöglichkeiten, die so mäßig gut sind.

01:15:35.610 --> 01:15:36.410
<v Gast 1>Und im Normalfall.

01:15:36.810 --> 01:15:38.970
<v Ingo>Die scheitern meistens schon an Groß- und Kleinschreibungen und so.

01:15:39.130 --> 01:15:39.210
<v Ingo>Richtig.

01:15:39.450 --> 01:15:41.610
<v Gast 1>Und da ist eben die Sache, Google bietet dir das halt an.

01:15:41.770 --> 01:15:44.970
<v Gast 1>Es ist natürlich, musst du davon ausgehen, dass du auch von Google indiziert wirst,

01:15:45.050 --> 01:15:47.050
<v Gast 1>was eigentlich jeder davon ausgehen kann.

01:15:47.690 --> 01:15:48.570
<v Ingo>Wenn du es nicht verbietest.

01:15:48.810 --> 01:15:50.170
<v Gast 1>Ja, wenn du es nicht verbietest, genau.

01:15:50.650 --> 01:15:50.970
<v Gast 1>Robots.

01:15:52.170 --> 01:15:55.530
<v Gast 1>Ansonsten, das ist auch so eine Sache, da müsstest du dann irgendwie schon selber was bauen,

01:15:55.610 --> 01:15:58.650
<v Gast 1>aber das ist dann auch recht nervig, Suche aufzusetzen.

01:15:58.890 --> 01:16:03.850
<v Gast 1>Bedeutet, das ist, äh, wir sind ja im Web, wir können ja Links benutzen zu anderen Services,

01:16:03.930 --> 01:16:04.810
<v Gast 1>die Sachen machen.

01:16:05.450 --> 01:16:07.610
<v Ingo>Die Kommentarsuche, also das war Juvia.

01:16:09.050 --> 01:16:12.330
<v Ingo>Oder Juvia oder sowas, die man noch selber einsetzen kann.

01:16:12.890 --> 01:16:16.890
<v Ingo>Also ich meine, wir haben auch ab und zu mal irgendwie seltsame Phänomene bei diesem Discuss,

01:16:17.130 --> 01:16:19.370
<v Ingo>zumindest berichten, höre da immer wieder was.

01:16:19.690 --> 01:16:25.050
<v Gast 2>Allerdings bin ich mir da halt auch nicht sicher, was da noch lokal für Browser-Extensions oder komische

01:16:25.050 --> 01:16:27.770
<v Gast 2>Einstellungen oder sowas laufen, die das vielleicht kaputt machen könnten.

01:16:27.850 --> 01:16:32.970
<v Ingo>Also da gibt es scheinbar auch irgendwelche Extensions, die dann so Cookies filtern und noch andere

01:16:32.970 --> 01:16:36.250
<v Ingo>Geschichten machen, weil irgendwie Tracking unterbinden.

01:16:36.970 --> 01:16:39.450
<v Gast 2>Die scheinen auch Probleme mit Discuss zu haben.

01:16:40.250 --> 01:16:44.890
<v Ingo>Sehe ich mich jetzt allerdings nicht in der Situation, dass das mein Problem wäre.

01:16:45.130 --> 01:16:49.850
<v Ingo>Also, aber wenn ihr wisst, woran das liegt oder da irgendwelche.

01:16:50.250 --> 01:16:53.450
<v Gast 2>Ja, selbst wenn, dann können wir daran nichts ändern, weil dann ist es halt ein Problem von Discuss.

01:16:53.610 --> 01:16:54.250
<v Gast 2>Das ist halt das Ding.

01:16:54.490 --> 01:16:55.930
<v Gast 2>Wir embedden ja nur das Snippet.

01:16:56.570 --> 01:16:57.690
<v Felix>Das heißt, wir sind gar nicht schuld.

01:16:57.850 --> 01:16:59.530
<v Ingo>Da kann man so viel nicht falsch machen.

01:16:59.850 --> 01:17:01.210
<v Ingo>Ja, egal, egal.

01:17:01.290 --> 01:17:04.250
<v Ingo>Man kann ja auch dann Discast sagen, hey, macht mal das und jenes anders,

01:17:04.330 --> 01:17:10.810
<v Ingo>wenn ihr da eine Lösung habt, entweder eine Lösung, die bei uns jetzt funktionieren würde oder die bei Discast

01:17:10.810 --> 01:17:14.970
<v Ingo>dann eher funktioniert, dann weiß ich nicht, schreibt den Jungs oder uns doch mal einfach eine Mail oder

01:17:14.970 --> 01:17:15.210
<v Ingo>sowas.

01:17:15.290 --> 01:17:21.290
<v Ingo>Also es scheint bei irgendwelchen Leuten Probleme zu geben, dass die Kommentare im falschen Blogpost.

01:17:21.690 --> 01:17:23.370
<v Gast 2>Das ist allerdings auch nur einem passiert bisher.

01:17:23.530 --> 01:17:23.690
<v Gast 2>Bisher.

01:17:24.010 --> 01:17:29.610
<v Gast 1>Ist auch komisch, weil Discast normalerweise die Blog-URL als Key benutzt und das daher die E-Kommentare lädt.

01:17:30.090 --> 01:17:34.010
<v Ingo>Und die anderen, die kamen ja auch alle im richtigen Thread an oder im richtigen.

01:17:34.570 --> 01:17:35.850
<v Gast 2>Also ja.

01:17:36.410 --> 01:17:36.730
<v Gast 2>Genau.

01:17:37.610 --> 01:17:38.490
<v Gast 2>Was benutzen wir sonst noch?

01:17:38.570 --> 01:17:42.730
<v Gast 2>Also ich habe noch einen privaten Blog, den ich leider momentan aufgrund des CMS-s,

01:17:43.130 --> 01:17:49.930
<v Gast 2>was mich super annervt, viel zu wenig benutze und ich eigentlich schon seit gefühlten Jahren umsteigen will

01:17:49.930 --> 01:17:50.890
<v Gast 2>auf Octopress.

01:17:52.010 --> 01:17:56.570
<v Gast 2>Momentan habe ich auf meinem eigenen Blog, setze ich glaube ich seit sechs Jahren mittlerweile.

01:17:58.010 --> 01:17:59.450
<v Ingo>Serendipity.

01:17:59.850 --> 01:18:01.050
<v Unbekannt>Serendipity 1.

01:18:02.650 --> 01:18:03.050
<v Unbekannt>Genau.

01:18:03.290 --> 01:18:09.770
<v Ingo>Das war am Anfang ganz cool, weil das hatte schon weit vor WordPress so Plugin-Management,

01:18:09.930 --> 01:18:16.650
<v Ingo>was man einfach im Admin-Interface anklicken konnte und dann automatisch die Plugins installiert und upgedatet

01:18:16.650 --> 01:18:18.010
<v Ingo>wurden und so weiter.

01:18:20.250 --> 01:18:25.050
<v Ingo>Ja, es hat ganz, es hat eine eingeschworene Community,

01:18:25.210 --> 01:18:29.370
<v Ingo>die auch da Plugins für schreibt, aber die ist bei weitem nicht so groß wie die von WordPress.

01:18:30.170 --> 01:18:31.850
<v Ingo>Die WordPress-Community ist einfach mit am größten.

01:18:32.330 --> 01:18:36.570
<v Ingo>Ja, dafür ist halt die komplette Software oder die kompletten Plugins halt scheiße.

01:18:37.050 --> 01:18:40.170
<v Ingo>Das Ding ist halt am größten, also das kommt nochmal darauf an, was du willst.

01:18:40.890 --> 01:18:45.290
<v Ingo>Wenn du davon ausgehst, du brauchst halt eine Webseite, die du irgendwie mit zwei Klicks aufsetzt und wo du

01:18:45.290 --> 01:18:50.090
<v Ingo>halt mit fünf weiteren Klicks irgendwie ein Extensions-Verzeichnis hast,

01:18:50.170 --> 01:18:54.090
<v Ingo>was dich einfach umbaut, egal ob da schlechte Sachen oder gute Sachen dran sind,

01:18:54.410 --> 01:19:00.730
<v Ingo>aber da hast du halt alles, von irgendwelchen Tracking-Features bis hin zu Plugins für jedes

01:19:00.730 --> 01:19:04.730
<v Ingo>Webdingens, was es gibt auf der ganzen Welt, das ist halt schön einfach.

01:19:05.130 --> 01:19:10.010
<v Gast 2>Also wie gesagt, ich will mittlerweile auch von Serendipity weg aus mehreren Gründen.

01:19:10.250 --> 01:19:13.610
<v Ingo>Zum einen, weil ich Octopress für den Einsatzzweck viel, viel besser finde,

01:19:13.850 --> 01:19:18.410
<v Ingo>zum anderen, weil es halt auch PHP ist und je weniger PHP-Software auf meinem Server läuft,

01:19:18.490 --> 01:19:19.530
<v Ingo>umso besser.

01:19:20.570 --> 01:19:24.410
<v Ingo>Und gefühlt wird das Projekt halt auch nicht mehr wirklich viel gepflegt.

01:19:25.130 --> 01:19:29.850
<v Felix>Ja, also ich hab hier gerade mal geschaut, ich habe diesen Vapalizer und da ist das noch nicht mehr mit dabei,

01:19:29.930 --> 01:19:30.650
<v Felix>weil der top ist.

01:19:30.810 --> 01:19:31.690
<v Gast 2>Also der entwickelt sich.

01:19:32.170 --> 01:19:36.410
<v Ingo>Entwickler, der Garvin Hiking, Hiking, das ist auch ein Deutscher.

01:19:37.290 --> 01:19:40.250
<v Gast 2>Der pflegt es zwar noch so, aber da gibt es halt auch.

01:19:40.610 --> 01:19:45.970
<v Ingo>Sehr, sehr selten neue Releases und da sind meistens auch nur super kleinere Fixes drin und mittlerweile ist

01:19:45.970 --> 01:19:46.130
<v Ingo>es so.

01:19:46.290 --> 01:19:47.730
<v Ingo>Aber der antwortet dort schnell auf Mails.

01:19:47.810 --> 01:19:48.850
<v Ingo>Ja, ja, natürlich.

01:19:50.210 --> 01:19:50.930
<v Ingo>Super, praktisch.

01:19:51.010 --> 01:19:51.730
<v Ingo>Kann man immer gefragt.

01:19:52.290 --> 01:19:58.290
<v Gast 2>Gerade so, was das Admin-Interface, was die Benutzbarkeit angeht, was mittlerweile so den Komfort angeht beim

01:19:58.290 --> 01:20:03.490
<v Gast 2>Upgraden, da war Serendipity früher super toll, aber mittlerweile hat er WordPress halt massiv nachgezogen und

01:20:03.490 --> 01:20:07.090
<v Gast 2>auch wenn der Code, der da drunter ist, sehr, sehr schrecklich aussieht,

01:20:07.410 --> 01:20:12.050
<v Gast 2>funktioniert das Interface, was man dann letzten Endes benutzt, eigentlich echt relativ gut.

01:20:13.010 --> 01:20:19.570
<v Felix>Also ich muss sagen, bei dem Webalizer die Nummer zwei Seite ist Duckhome.de Was auch immer das ist.

01:20:19.810 --> 01:20:21.170
<v Felix>Eine Seite überenden.

01:20:21.650 --> 01:20:23.570
<v Gast 2>Oh ja, das hört sich richtig an.

01:20:23.970 --> 01:20:24.930
<v Unbekannt>Für Serendipity.

01:20:25.810 --> 01:20:27.010
<v Felix>Nee, einfach nur für Enten.

01:20:27.170 --> 01:20:27.890
<v Felix>Nee, das ist tatsächlich.

01:20:28.130 --> 01:20:30.690
<v Felix>Nee, tatsächlich ist es ein Politikblog im Deutsch.

01:20:31.090 --> 01:20:32.050
<v Ingo>Eine Seite über Enden.

01:20:32.290 --> 01:20:33.330
<v Felix>Finde ich super gut.

01:20:33.970 --> 01:20:34.770
<v Felix>DuckHome.de.

01:20:35.810 --> 01:20:38.050
<v Ingo>Gut, in meinem Fall brauche ich halt keine dynamischen Features.

01:20:38.130 --> 01:20:40.530
<v Ingo>Kommentare werde ich wahrscheinlich eh keine mehr anbieten.

01:20:40.850 --> 01:20:47.570
<v Ingo>Und darum werde ich halt auf Octopress migrieren, sobald ich mal fünf Stunden

01:20:47.570 --> 01:20:48.450
<v Ingo>Intensiv Zeit hast.

01:20:48.690 --> 01:20:51.810
<v Ingo>Nee, das geht, nee, das sind keine fünf Stunden, aber ich müsste mich halt mal irgendwie.

01:20:52.050 --> 01:20:54.290
<v Ingo>Ja, doch, wenn du ganz Sachen übernehmen willst und alles.

01:20:54.770 --> 01:20:55.170
<v Ingo>Was denn?

01:20:55.250 --> 01:21:00.050
<v Ingo>Die Kommentare muss ich nicht übernehmen und es gibt einen Exporter, der das aus einem RSS-Feed rauszieht.

01:21:00.770 --> 01:21:01.570
<v Ingo>Die Blogposts.

01:21:01.730 --> 01:21:05.570
<v Gast 2>Die Sache ist bloß die, das müsste ich mal hin, ich müsste mich mal hinsetzen und das machen und dann auch das

01:21:05.570 --> 01:21:08.930
<v Gast 2>Deployment ordentlich testen und ordentlich einrichten und dann, ja,

01:21:09.170 --> 01:21:13.490
<v Gast 2>das dauert halt wahrscheinlich auch mal wieder einen Abend und da habe ich dann halt auch andere Sachen zu

01:21:13.490 --> 01:21:13.650
<v Gast 2>tun.

01:21:13.890 --> 01:21:18.850
<v Gast 1>Was so an hochqualitativ, nicht hochqualitativen, aber hochgerängten Serendipity-Seiten zum Beispiel noch

01:21:18.850 --> 01:21:20.450
<v Gast 1>wäre, wäre das Bestatterwebblog.de.

01:21:21.730 --> 01:21:22.850
<v Gast 1>Das ist gar nicht so schlecht.

01:21:22.930 --> 01:21:26.690
<v Gast 1>Dann gab es noch irgendwie telemedicus.info, was auch immer.

01:21:26.930 --> 01:21:30.450
<v Gast 1>Thebudget, thebudgetbabe.com ist auch noch eine Serendipity.

01:21:31.010 --> 01:21:34.770
<v Gast 2>Man sieht, der Marc fragt gerade seinen Crawler, der hat das Internet abcrawled.

01:21:34.850 --> 01:21:38.130
<v Ingo>Achso, am sitzen der Radetux schon bei dir gelistet als.

01:21:38.450 --> 01:21:40.050
<v Ingo>Irgendein Twitter-Account, der irgendwie.

01:21:40.610 --> 01:21:41.570
<v Unbekannt>Alles ist bei mir gelistet.

01:21:42.690 --> 01:21:44.050
<v Felix>Und wie kommst du auf die Top-Seite?

01:21:44.290 --> 01:21:46.770
<v Felix>Also wie rechnet dein Ding das Page Ranks.

01:21:47.090 --> 01:21:51.250
<v Gast 1>Incoming Links, Alexa Ranks, PageRanks, CompeteRank.

01:21:51.490 --> 01:21:51.970
<v Gast 1>Sehr gut.

01:21:52.370 --> 01:21:55.330
<v Gast 1>Und meine Daten sind immer besser als alle von allen anderen, kann ich nur sagen.

01:21:56.370 --> 01:22:01.730
<v Gast 1>Ich weiß zum Beispiel, dass OnlyAsian Boys ist eine Serendipity-Seite,

01:22:01.810 --> 01:22:05.970
<v Gast 1>die auf Northpole Christmas ist auch eine, die ist sogar auf GoDaddy gehostet.

01:22:06.050 --> 01:22:07.570
<v Gast 1>Das spricht für Qualität.

01:22:08.290 --> 01:22:09.250
<v Unbekannt>Oder gar nicht.

01:22:09.890 --> 01:22:10.850
<v Unbekannt>Ja, genau.

01:22:11.090 --> 01:22:17.330
<v Gast 2>Was ich dann noch betreibe, sind noch so Seiten für Freunde und ein bisschen richtige Gesellschaft mit deiner

01:22:17.330 --> 01:22:17.810
<v Gast 2>Seite.

01:22:18.130 --> 01:22:20.770
<v Gast 2>Und für Freunde und Bekannte.

01:22:20.930 --> 01:22:21.170
<v Gast 2>Ja.

01:22:21.410 --> 01:22:23.090
<v Felix>Oh, das sind wirklich OnlyAsian Boys.

01:22:23.490 --> 01:22:24.210
<v Felix>Nein, mach's weg.

01:22:24.370 --> 01:22:25.730
<v Felix>Oh Girl, hatte ich ausgesehen.

01:22:26.050 --> 01:22:28.050
<v Gast 1>Ich werde jetzt einfach nicht drauf gegangen.

01:22:28.370 --> 01:22:28.690
<v Gast 1>Ja.

01:22:29.650 --> 01:22:30.130
<v Gast 1>Shit.

01:22:30.530 --> 01:22:35.490
<v Gast 2>Genau, und da benutze ich momentan auch ganz furchtbare Software.

01:22:36.610 --> 01:22:37.570
<v Unbekannt>Ich lösche dein Cash.

01:22:37.890 --> 01:22:38.450
<v Unbekannt>Hast du es bei?

01:22:39.890 --> 01:22:40.770
<v Ingo>So schlimm.

01:22:42.210 --> 01:22:43.410
<v Unbekannt>So Cashlös.

01:22:44.530 --> 01:22:45.010
<v Unbekannt>Privacy.

01:22:46.450 --> 01:22:46.930
<v Unbekannt>Haben wir es?

01:22:47.250 --> 01:22:47.650
<v Unbekannt>Haben wir es?

01:22:47.730 --> 01:22:47.970
<v Unbekannt>Ja, ja.

01:22:48.210 --> 01:22:51.890
<v Gast 2>Achso, genau, Lars Webhosting für Freunde und Bekannte.

01:22:52.050 --> 01:22:55.570
<v Ingo>Da habe ich auch Webseiten, die auf Joomla basieren.

01:22:55.810 --> 01:22:59.170
<v Gast 2>Und ungefähr das, was Ingo gerade macht, das habe ich im eigenen Gebiet.

01:22:59.410 --> 01:23:00.690
<v Ingo>Kleine Kätzchen, die sterben.

01:23:00.930 --> 01:23:01.330
<v Ingo>Richtig.

01:23:01.570 --> 01:23:05.410
<v Ingo>Da will ich auch wieder ganz dringend von weg und jetzt arbeite ich mittlerweile bei einer Firma,

01:23:05.490 --> 01:23:12.290
<v Ingo>die irgendwie hauptsächlich mit Drupal ihr Geld verdient und Großteil der Core-Entwickler irgendwie

01:23:12.850 --> 01:23:13.650
<v Ingo>beschäftigt.

01:23:14.130 --> 01:23:19.490
<v Ingo>Und da wäre es doch vielleicht auch mal ganz, ganz praktisch, wenn ich dann schon eh auf der Arbeit mit Drupal

01:23:19.650 --> 01:23:23.170
<v Ingo>zu tun habe, dass ich mir das doch auch mal irgendwie auf die anderen Sachen,

01:23:23.250 --> 01:23:24.610
<v Ingo>die ich noch so hoste, mal einsetze.

01:23:24.850 --> 01:23:25.170
<v Ingo>Richtig.

01:23:25.730 --> 01:23:31.170
<v Gast 1>Das benutze ich auch noch für irgendwelche Webseite von Bekannten, die ich großzügigerweise irgendwann mal

01:23:31.570 --> 01:23:32.290
<v Gast 1>soll ich sagen, aufgenommen.

01:23:32.610 --> 01:23:36.450
<v Gast 1>Dummerweise mal unter meine Fidiche genommen habe, weil ich dann doch nicht.

01:23:37.090 --> 01:23:40.930
<v Gast 1>Es geht einfacher, als wenn du das denen selber die selber machen lässt und immer helfen musst,

01:23:41.010 --> 01:23:42.050
<v Gast 1>wenn irgendwas kaputt geht.

01:23:45.170 --> 01:23:50.530
<v Gast 1>Genau, da benutze ich auch Drupal für und lass das Ganze auf DrupalGardens.com hosten,

01:23:50.850 --> 01:23:56.530
<v Gast 1>was der Cloud-Hosting-Anbieter, also beziehungsweise das Cloud-Hosting-Angebot ist.

01:23:56.770 --> 01:24:01.090
<v Gast 1>Als Mitarbeiter bekommt man da großzügige Accounts, die lustige Sachen machen können, von daher.

01:24:01.330 --> 01:24:01.730
<v Gast 1>Genau.

01:24:01.970 --> 01:24:03.010
<v Gast 1>Drauf damit.

01:24:03.970 --> 01:24:09.090
<v Gast 2>Meine Testseite haben sie übrigens letztens weggeräumt, weil ich nichts drauf gemacht habe.

01:24:09.170 --> 01:24:12.450
<v Gast 1>Ich glaube, ja, 90 Tage nichts machen ist, glaube ich, irgendwann sagen sie so,

01:24:12.530 --> 01:24:14.210
<v Gast 1>na, willst du dich nicht mal einloggen.

01:24:14.530 --> 01:24:14.770
<v Gast 1>Genau.

01:24:15.170 --> 01:24:16.930
<v Felix>Aber sie nach dem Crown-Rap an.

01:24:17.090 --> 01:24:18.530
<v Gast 2>Kann man alles benutzen, für das was benutzt?

01:24:20.290 --> 01:24:26.850
<v Felix>Also wenn ich was benutze, also ich habe ein Einmal habe ich einen

01:24:26.850 --> 01:24:33.650
<v Felix>Octopress und für alles andere, was irgendwie Web ist,

01:24:33.970 --> 01:24:37.330
<v Felix>generiere ich mir meist meinen Kram in irgendwelchen Skripten zusammen.

01:24:37.810 --> 01:24:40.290
<v Felix>Und das ist dann quasi auch schon alles, was ich mache.

01:24:40.530 --> 01:24:44.850
<v Felix>Was ich dann nochmal gebaut habe, ist auch so ein Stück in Python, was irgendwie das Richtige macht.

01:24:44.930 --> 01:24:49.090
<v Felix>Das ist halt alles irgendwie bin ich, ich benutze dann irgendwelche komischen Frameworks,

01:24:49.170 --> 01:24:51.330
<v Felix>die ich mir gerade vorher angelesen habe, was die machen.

01:24:52.530 --> 01:24:54.370
<v Gast 1>Hast du Erfahrung mit so was gibt es für WebPi-Boot?

01:24:54.850 --> 01:24:55.970
<v Felix>WebPy hab ich genommen, ja.

01:24:56.210 --> 01:24:57.490
<v Felix>WebPy habe ich einmal genommen.

01:24:57.570 --> 01:24:59.170
<v Felix>Das war ziemlich cool, das ist auch relativ einfach.

01:24:59.330 --> 01:25:01.890
<v Ingo>WebPy ist auch cool, wenn man es auf der Google App Engine hosten will,

01:25:01.970 --> 01:25:08.290
<v Ingo>weil dann kann man die Datenbank direkt an dieses Google neues QL-Storage anbieten und kann da an sich

01:25:08.290 --> 01:25:10.690
<v Ingo>eigentlich, hat dann schon Admin-Interface und so Geschichten mit drin,

01:25:10.770 --> 01:25:11.730
<v Ingo>das ist eigentlich ganz nett.

01:25:11.890 --> 01:25:16.770
<v Felix>Also, also entweder, also was habe ich, ich habe einmal generiert mit Ruby,

01:25:16.850 --> 01:25:20.130
<v Felix>was, obwohl ich ja Ruby immer noch riesen Paint finde, wenn man es installieren muss.

01:25:20.370 --> 01:25:24.690
<v Felix>Mit diesen ganzen Extensions, weil Ruby selber ist relativ cool,

01:25:24.930 --> 01:25:30.850
<v Felix>aber wenn die dann an, wenn das Ding dann anfängt, irgendwie 200 Add-ons zu bauen und dann crasht die eins weg

01:25:30.850 --> 01:25:33.250
<v Felix>mit irgendwelchen komischen C-Compiler-Errus, dann denke ich mir so,

01:25:33.650 --> 01:25:38.450
<v Felix>das muss nicht sein, nicht für irgendwie ein was auch immer das Ding gerade macht.

01:25:38.610 --> 01:25:43.730
<v Gast 1>Ja, das ist die XM LibXML, die er dann halt die Development-Version haben will und der dann immer abkackt,

01:25:43.810 --> 01:25:46.850
<v Gast 1>weil keiner die Development-Version, die Development-Header für LibXML hat.

01:25:47.090 --> 01:25:50.770
<v Felix>Genau, und dann ist es halt irgendwas, also das finde ich ein bisschen schade,

01:25:50.850 --> 01:25:55.650
<v Felix>weil ansonsten ist es, glaube ich, ganz cool, dann halt Python meistens für irgendwas,

01:25:55.970 --> 01:25:58.850
<v Felix>WebPy habe ich da gerade benutzt, aber da gehen bestimmt auch andere Sachen,

01:25:59.010 --> 01:26:03.810
<v Felix>und ansonsten irgendwie ein Crown-Drop mit irgendwie Shell, der dann zum Beispiel,

01:26:03.970 --> 01:26:08.530
<v Felix>also was ich zum Beispiel habe, ist ein Shell-Skript, was Graphen generiert.

01:26:09.090 --> 01:26:10.530
<v Felix>Weil das halt relativ einfach geht.

01:26:10.610 --> 01:26:15.650
<v Felix>Und das passiert genau zu dem Punkt, wenn sich im Tink, also im VPN,

01:26:15.730 --> 01:26:19.890
<v Felix>irgendwas ändert, dann wird dieses Shell-Skript aufgerufen, das generiert dir den Graphen weg und das legt es

01:26:19.890 --> 01:26:24.210
<v Felix>dann halt in irgendeinen Ordner, der vom HTT-Server ausgeliefert wird.

01:26:24.370 --> 01:26:26.770
<v Felix>Und das funktioniert eigentlich relativ gut.

01:26:27.410 --> 01:26:32.450
<v Felix>Und bei den meisten Kram, ja, also ich benutze sehr,

01:26:32.530 --> 01:26:36.130
<v Felix>sehr ungerne Datenbanken und wenn dann nur eine, die sich nicht ändert,

01:26:36.210 --> 01:26:37.170
<v Felix>also quasi JSON.

01:26:37.490 --> 01:26:39.810
<v Gast 1>Was ist mit deinem, du hast doch so eine Energy-Datenbank.

01:26:39.970 --> 01:26:43.330
<v Felix>Ja, genau, das ist auch generiert und zwar Python und Mastash.

01:26:43.650 --> 01:26:45.730
<v Felix>Python und ein bisschen Mustash und generiert.

01:26:46.050 --> 01:26:47.890
<v Gast 1>Aus was für ein Format benutzt du JSON?

01:26:48.050 --> 01:26:48.290
<v Gast 1>JSON?

01:26:48.770 --> 01:26:49.090
<v Gast 1>Jason, genau.

01:26:49.250 --> 01:26:53.010
<v Felix>Also ich benutze tatsächlich, wenn ich Datenbanken benutze, dann nur JSON.

01:26:54.450 --> 01:26:55.410
<v Unbekannt>Also Flatfile.

01:26:56.690 --> 01:26:58.210
<v Felix>Also das ist auch voll cool.

01:26:58.370 --> 01:27:01.490
<v Felix>Ich meine, du kannst es mit allem anderen verarbeiten und du hast nie ein Pain,

01:27:01.570 --> 01:27:03.330
<v Felix>dass du das irgendwie aus den komischen Datenbanken bist.

01:27:03.490 --> 01:27:08.130
<v Gast 1>Das braucht die wenigsten Leute, also viele machen halt so diese Standard-Lamp, einfach mal MySQL draufhauen.

01:27:08.370 --> 01:27:10.610
<v Gast 1>Und du brauchst ja für so wenig Sachen echt MySQL.

01:27:10.770 --> 01:27:12.610
<v Gast 1>Für die meisten Sachen reicht eine Flat-File.

01:27:13.010 --> 01:27:17.250
<v Ingo>Oder auch wenn man Sachen zumindest mal irgendwie, keine Ahnung,

01:27:17.410 --> 01:27:21.890
<v Ingo>übers Netzwerk ansprechbar oder so haben möchte, dann tut es tatsächlich auch irgendwie einen

01:27:21.890 --> 01:27:25.250
<v Ingo>Redis-Key-Value-Store, indem er einfach nur JSON-Strings reinspeichert.

01:27:26.050 --> 01:27:29.010
<v Felix>Also die Sache ist, meistens brauchst du auch nicht so High-Performance-Irgas,

01:27:29.250 --> 01:27:32.530
<v Felix>Datenbank Redis-Kram, sondern du willst eigentlich immer nur JSON.

01:27:32.770 --> 01:27:33.570
<v Felix>Und dann wirdst du es.

01:27:33.970 --> 01:27:39.730
<v Ingo>Ja, also was ich mir mal für JavaScript für Note gebaut hat, war halt einfach ein kleiner Rapper um Redis

01:27:39.810 --> 01:27:40.290
<v Ingo>außen rum.

01:27:40.450 --> 01:27:41.010
<v Ingo>WikiWiki.

01:27:41.330 --> 01:27:41.490
<v Ingo>Genau.

01:27:43.650 --> 01:27:48.610
<v Ingo>Der hat einfach JavaScript-Objekte genommen, hat die serialisiert und JSON in die Datenbank geschoben und wenn

01:27:48.610 --> 01:27:52.770
<v Ingo>er sie wieder rausgeholt hat, wieder geparst und da wieder JavaScript-Objekte drauf sind.

01:27:52.850 --> 01:27:56.450
<v Felix>Aber das ist halt auch schon wieder so ein Level-Indirektion, was nicht unbedingt sein muss.

01:27:56.690 --> 01:27:57.330
<v Felix>Ja, ja.

01:27:57.570 --> 01:27:59.090
<v Gast 2>Aber was mir in dem Fall wäre.

01:27:59.250 --> 01:28:01.970
<v Gast 1>Das kann man nicht mehr manuell parsen, sondern das ist ja quasi wie so ein Smartphone.

01:28:02.290 --> 01:28:03.010
<v Gast 1>Das ist dabei, ja.

01:28:03.650 --> 01:28:08.050
<v Gast 1>Das ist halt, gibt es ja, gibt es ja für Ruby gibt es ja Marshall, für PHP gibt es auch irgend so eine

01:28:08.050 --> 01:28:10.850
<v Gast 1>komische Apart von Binär Serialisierung.

01:28:11.890 --> 01:28:17.410
<v Gast 1>Da bin ich eigentlich so halbwegs ein Freund von unsicher wie Sau,

01:28:17.650 --> 01:28:19.570
<v Gast 1>aber Objekte Objekte.

01:28:19.810 --> 01:28:24.130
<v Felix>Also das Coole an reinem JSON-in-Flat-File ist, dass du es selber editieren kannst,

01:28:24.210 --> 01:28:25.250
<v Felix>wenn du was kaputt gemacht hast.

01:28:25.490 --> 01:28:27.570
<v Gast 1>Und zwar Backups sind sau leicht.

01:28:28.050 --> 01:28:29.890
<v Felix>Und du musst es nicht irgendwo wieder rausziehen.

01:28:30.210 --> 01:28:31.250
<v Ingo>Datenbank-Server erst anders.

01:28:31.490 --> 01:28:35.250
<v Gast 1>Richtig, da weiß ich noch damals, als ich in der Hochschule bei uns einen Java-Server aufgesetzt habe am

01:28:35.250 --> 01:28:41.890
<v Gast 1>Anfang mit Open Fire, also Java mit MySQL als Backend, ungefähr 600 Megabyte Speicher in der

01:28:41.890 --> 01:28:43.330
<v Gast 1>Ausgangskonfiguration.

01:28:43.650 --> 01:28:49.010
<v Gast 1>Unglaublich schwer die Datenbank irgendwie da MySQL-Dumps machen und absichern und Bildscheiß.

01:28:49.330 --> 01:28:52.770
<v Ingo>Auch Open Fire, das ist da, die machen da auch ekelhafte Sachen in I.O.

01:28:52.930 --> 01:28:56.930
<v Ingo>und so, die machen ja für jeden Client, der connectet, einen Thread auf.

01:28:57.650 --> 01:29:00.450
<v Ingo>Und das wird dann halt auch schnell ekelhaft.

01:29:00.850 --> 01:29:01.250
<v Ingo>Richtig.

01:29:01.330 --> 01:29:04.210
<v Gast 1>Und da habe ich dann auch zu Prosody gewechselt und der so, Flatfiles.

01:29:04.370 --> 01:29:05.490
<v Gast 1>Nicht so, oh Gott, Flatfiles.

01:29:05.570 --> 01:29:08.450
<v Gast 1>Auch zum ersten Mal, als ich es echt wirklich so aktiv benutzt, habe ich so,

01:29:08.530 --> 01:29:11.010
<v Gast 1>ja, aber wenn er dann immer eine Datei lesen muss, das ist doch eigentlich recht langsam.

01:29:11.170 --> 01:29:11.970
<v Felix>Das macht er doch auch.

01:29:12.450 --> 01:29:12.610
<v Felix>Richtig.

01:29:13.730 --> 01:29:17.330
<v Ingo>Erstens das und zweitens, wenn der mal läuft, hält er sich alles irgendwie im lokalen Sprech.

01:29:17.570 --> 01:29:21.010
<v Gast 1>Richtig, das ist eben die Sache, so die Datenbank hat auch einen Query-Cache und wenn du den nicht hast,

01:29:21.090 --> 01:29:21.890
<v Gast 1>dann wird es langsam.

01:29:22.050 --> 01:29:25.810
<v Gast 1>Ist dann noch ein bisschen, ja gut, ist auch mit einem B Plus-Bau im Endeffekt geordnet,

01:29:25.890 --> 01:29:27.650
<v Gast 1>wahrscheinlich wieder ein Dateisystem auch.

01:29:28.290 --> 01:29:31.090
<v Gast 1>Und dein Dateisystem ist ja eine Datenbank.

01:29:31.410 --> 01:29:33.010
<v Gast 2>Und dein Dateisystem hat auch ein Cache.

01:29:33.410 --> 01:29:35.250
<v Felix>Richtig, das ist halt ein Problem auch ein Cache, ja.

01:29:35.330 --> 01:29:39.650
<v Gast 1>Das ist ja ein Key Values da, wo die Key ist, wo der Key einfach dein kompletter Pfad ist und der Value der

01:29:39.650 --> 01:29:40.450
<v Gast 1>Inhalt der Datei.

01:29:41.090 --> 01:29:42.770
<v Gast 1>Das ist so als Abstraktion das Einfachste.

01:29:42.850 --> 01:29:48.290
<v Gast 1>Und die haben halt noch ein bisschen Metainformation, dass sie Verzeichnisse auch noch extra haben als

01:29:48.290 --> 01:29:49.810
<v Gast 1>Collection von Keys quasi.

01:29:50.690 --> 01:29:54.770
<v Gast 1>Deswegen, Datei ist immer alles ins Dateisystem, dann könnt ihr durchgrappen und könnt ihr alles mit

01:29:54.770 --> 01:29:55.330
<v Gast 1>Organisationen machen.

01:29:55.410 --> 01:29:55.890
<v Gast 1>Was haben wir denn noch?

01:29:55.970 --> 01:29:57.490
<v Gast 2>Achso, genau, wir haben noch Mediengewitter.

01:29:57.650 --> 01:29:58.210
<v Gast 2>Das läuft immer noch.

01:29:58.850 --> 01:30:00.290
<v Felix>Das läuft auf Node.js immer noch.

01:30:00.770 --> 01:30:03.730
<v Felix>Aber auf einer Super Old-Version, die ist hier irgendwie 200 Jahre alt.

01:30:04.050 --> 01:30:05.810
<v Felix>Also 200 Note-Jahre.

01:30:06.050 --> 01:30:09.650
<v Ingo>Das läuft, glaube ich, noch auf Note 02 und mittlerweile sind wir bei Note 06,

01:30:09.810 --> 01:30:12.130
<v Ingo>was zwei stabile Versionen später ist.

01:30:12.290 --> 01:30:15.890
<v Felix>Also das ist, also dieses Note.js ist ganz cool, aber das ist halt super schnell die ganze Zeit.

01:30:16.530 --> 01:30:21.090
<v Ingo>Das verändert sich halt super schnell und mittlerweile müssten wir halt auch Mediengewitter quasi komplett neu

01:30:21.090 --> 01:30:21.490
<v Ingo>schreiben.

01:30:21.970 --> 01:30:27.570
<v Ingo>Oder halt zu großen Teilen anfassen, wenn wir daran nochmal arbeiten wollten.

01:30:28.290 --> 01:30:34.450
<v Gast 2>Ja, das läuft komplett, ist in eigentlich relativ low-Level geschrieben.

01:30:34.530 --> 01:30:40.450
<v Gast 2>Wir haben da das Connect Middleware-Framework benutzt, was sowas ist wie Rack für Node und setzen da quasi

01:30:40.450 --> 01:30:44.850
<v Gast 2>ohne großes Framework außenrum direkt auf Connect und haben da auch so teilweise unsere eigene Middleware,

01:30:44.930 --> 01:30:46.850
<v Gast 2>was so locker und so Geschichten angeht.

01:30:47.010 --> 01:30:51.810
<v Ingo>Und dann haben wir halt Socket.io, was die Websocket-Kommunikation macht und auf der Client-Seite halt

01:30:51.810 --> 01:30:56.690
<v Ingo>irgendwie auch JavaScript, was dann so diese ganzen Sliding-Effekte und so macht.

01:30:56.770 --> 01:30:57.970
<v Gast 2>Und ja, das läuft auch.

01:30:58.050 --> 01:31:00.210
<v Gast 2>Der Crawler war komplett in JavaScript geschrieben.

01:31:00.530 --> 01:31:07.010
<v Gast 1>Das ist auch dieses generell die Sache Web-Framework oder gerade wo du Rack-Middleware oder

01:31:07.010 --> 01:31:09.730
<v Gast 1>so.de entdeckt.

01:31:10.210 --> 01:31:13.650
<v Gast 1>Ja, auf jeden Fall, wo du gerade auch angesprochen hast, das finde ich auch eine super interessante Sache,

01:31:13.730 --> 01:31:16.930
<v Gast 1>wenn du schon was so in Anführungszeichen halbwegs Dynamisches hast.

01:31:17.570 --> 01:31:20.610
<v Gast 1>Middlewares sind eine ganz grandiose Sache, so Sachen wie.

01:31:21.490 --> 01:31:21.890
<v Gast 1>Ja, genau.

01:31:22.130 --> 01:31:28.130
<v Gast 1>Also normalerweise hast du ja deinen Web-Server ganz unten und auf dem Web-Server setzt dann eigentlich dein

01:31:28.130 --> 01:31:28.930
<v Gast 1>Framework auf.

01:31:29.170 --> 01:31:35.890
<v Gast 1>Und es gibt halt so Minimal-Frameworks, die quasi die Verbindung vom Web-Server zu irgendwas beliebigem

01:31:35.890 --> 01:31:38.610
<v Gast 1>herstellen, das halt auf eine standardisierte Schnittstelle lauscht.

01:31:39.010 --> 01:31:45.570
<v Gast 1>Bei Python wird es zum Beispiel Whiskey, also like, also WSGI, WSGI.

01:31:45.810 --> 01:31:52.130
<v Gast 1>Bei Ruby wäre es Rack, bei PHP ist es PHP selber, was eigentlich auch so ein minimales Web-Framework ist.

01:31:52.450 --> 01:31:58.690
<v Gast 1>Was die dir halt ermöglichen, ist, sie ermöglichen dir zum Beispiel aus dem HTTP-Zeug die Session-Cookies

01:31:58.690 --> 01:32:01.490
<v Gast 1>rauszuparsen, recht einfach und zu accessen.

01:32:01.570 --> 01:32:03.490
<v Gast 1>Und arg viel mehr machen sie eigentlich auch gar nicht.

01:32:03.570 --> 01:32:06.850
<v Gast 1>Also ein bisschen noch irgendwie so die Parameter und die kannst du dann bearbeiten.

01:32:06.930 --> 01:32:12.690
<v Ingo>Also die Idee ist halt, man hat da so sein Request-Response-Lifecycle, der da auf die Applikation einhämmert.

01:32:13.410 --> 01:32:19.650
<v Gast 2>Und da kann man zwischendrin noch Software schalten, die irgendwas mit dem Request macht.

01:32:19.730 --> 01:32:20.050
<v Gast 2>Richtig.

01:32:20.210 --> 01:32:26.290
<v Gast 2>Man kann zum Beispiel Get-Post-Parameter rauspassen und kann die schon mal in Objekte in die

01:32:26.290 --> 01:32:28.130
<v Gast 2>Ausführumgebung mit reingeben.

01:32:30.290 --> 01:32:31.250
<v Ingo>Man kann Session machen.

01:32:31.650 --> 01:32:34.050
<v Gast 1>Sehr viel, was Apache macht, weil Apache ist eigentlich auch so eine,

01:32:34.210 --> 01:32:38.690
<v Gast 1>ist nicht ein Web-Server, sondern es ist auch ein Web-Server und ein Middleware-Framework mit Mod irgendwas.

01:32:39.810 --> 01:32:42.290
<v Gast 1>Mod Rewrite, der nimmt dann auch eigentlich, ist nur ein ganz dünner Layer,

01:32:42.370 --> 01:32:45.010
<v Gast 1>nur dass du es halt in irgendeiner behinderten Sprache wie C schreiben musst.

01:32:45.170 --> 01:32:47.410
<v Gast 1>Im Normalfall, wenn du da Apache-Module frickelst.

01:32:48.290 --> 01:32:51.090
<v Gast 2>Nginx kann das sogar noch ein bisschen erweitern, da kann man sogar noch,

01:32:51.250 --> 01:32:56.210
<v Gast 2>also man könnte theoretisch aus Nginx raus in der Nginx-Config programmieren,

01:32:56.290 --> 01:32:58.210
<v Gast 2>sodass man damit HTML-Code generiert.

01:32:58.290 --> 01:32:59.410
<v Gast 2>Das ist allerdings auch nicht schön.

01:32:59.570 --> 01:32:59.810
<v Gast 2>Richtig.

01:33:00.370 --> 01:33:03.250
<v Ingo>Aber sowas kann man halt auch in Nginx zum Beispiel machen.

01:33:03.410 --> 01:33:05.810
<v Gast 1>Genau, und im Normalfall bietet, also zum Beispiel, ich kenne es von Rack,

01:33:05.970 --> 01:33:09.330
<v Gast 1>bietet es die Möglichkeit, so Sachen zu machen, wie wenn du einen Logger schreiben willst,

01:33:09.410 --> 01:33:11.490
<v Gast 1>der einfach loggt, wer auf was zugreift.

01:33:11.730 --> 01:33:16.130
<v Gast 1>Wir haben neulich so eine, habe ich so eine API geschrieben für ein Produkt von uns und da würde ich halt gern

01:33:16.130 --> 01:33:21.170
<v Gast 1>nachvollziehbar haben, welche IP authentisiert als welcher User welches Kommando ausführt.

01:33:21.330 --> 01:33:24.930
<v Gast 1>Und das kann ich dann entweder in meine Anwendung mit reinschrauben und muss das dann über jedes

01:33:25.570 --> 01:33:29.570
<v Gast 1>Anwendungsrefactoring irgendwie mit rumschieben und hab da klumpigen Code.

01:33:29.730 --> 01:33:34.130
<v Gast 1>Oder ich sage einfach, ja klar, es muss ja sowieso alles durch meinen Web-Server gehen,

01:33:34.290 --> 01:33:36.610
<v Gast 1>bedeutet, es kommt alles an meiner Middleware vorbei.

01:33:36.690 --> 01:33:40.290
<v Gast 1>Und was du dann quasi machst, ist, du hängst diese kleinen Middlewares, die du schreibst, aneinander.

01:33:40.530 --> 01:33:45.810
<v Gast 1>Bedeutet, es geht in die erste rein und da sagst du dann, okay, die erste Middleware ist der Logger,

01:33:45.890 --> 01:33:50.290
<v Gast 1>der holt raus, wenn das eine HTTP-Authentifizierungssache ist,

01:33:50.370 --> 01:33:56.450
<v Gast 1>holt er den Benutzernamen raus und holt den Pfad raus und holt die Argumente raus und schreibt es einfach in

01:33:56.450 --> 01:33:59.810
<v Gast 1>Syslog zum Beispiel, dass das irgendeines Tool nachher sich holen kann.

01:34:00.850 --> 01:34:03.970
<v Gast 1>Das kann asynchron passieren, das schreiben mit Syslog, das ist gar nicht so schlimm.

01:34:04.130 --> 01:34:05.970
<v Gast 1>Der holt es einfach raus und schiebt es dann weiter.

01:34:06.130 --> 01:34:09.970
<v Gast 1>Dasselbe kannst du machen mit zum Beispiel Authentifizierung gegen LDAP zum Beispiel.

01:34:10.210 --> 01:34:12.370
<v Gast 1>Apache, da macht es das, was ist denn das für ein Mod?

01:34:12.450 --> 01:34:13.330
<v Unbekannt>Dieses HT Access.

01:34:13.890 --> 01:34:15.650
<v Gast 2>Achso, Mod, wie heißt das?

01:34:15.970 --> 01:34:17.250
<v Gast 2>Mod Authentication oder Mod-Tech.

01:34:17.410 --> 01:34:21.090
<v Gast 1>Keine Ahnung, auf jeden Fall, was auch immer HT-Access macht, ist eigentlich eine ganz große Abart,

01:34:21.250 --> 01:34:26.930
<v Gast 1>weil das bedeutet, dass wenn du mit HT Access-Dateien arbeitest, wie zum Beispiel irgendwie alle Blogs,

01:34:27.170 --> 01:34:30.610
<v Gast 1>Bogging-Systeme im Normalfall, so WordPress oder so, dann bedeutet das,

01:34:30.690 --> 01:34:35.970
<v Gast 1>dass du deine Anwendung auf deinen Web-Server tunest, dass das nur auf diesem läuft,

01:34:36.370 --> 01:34:40.210
<v Gast 1>was völlig schwachsinnig ist, weil du könntest es auch in deinem Anwendungscode schreiben,

01:34:40.290 --> 01:34:41.570
<v Gast 1>dann könnte das A jeder verstehen.

01:34:41.890 --> 01:34:46.370
<v Gast 2>Das Problem ist, man braucht tatsächlich, also mindestens eine Rewrite-Rule braucht man,

01:34:46.690 --> 01:34:52.210
<v Gast 2>damit man die kompletten Anfragen auf jegliche PHP-Sachen auf eine Dispatcher-Datei umlegt,

01:34:52.290 --> 01:34:54.130
<v Gast 2>aber danach könnte man das in der Applikation machen.

01:34:54.290 --> 01:34:57.090
<v Gast 1>Genau, was ja normalerweise das Webframework ist, diese Dispatcher-Datei.

01:34:57.250 --> 01:35:02.370
<v Gast 1>Und das ist eben die Sache, deswegen ist diese Idee von diesen minimalen Middlewares so nett,

01:35:02.450 --> 01:35:08.050
<v Gast 1>weil sie halt diese eine Dispatcher-Datei quasi standardisieren, dass nicht jeder für jedes Programm seine

01:35:08.050 --> 01:35:12.770
<v Gast 1>eigene bauen muss, sondern dass du dich da einfach reinhängen kannst und dann alles Mögliche damit machen.

01:35:12.850 --> 01:35:16.050
<v Gast 1>Da kannst du dann zum Beispiel auch, wenn du irgendwie fantasievoll bist,

01:35:16.930 --> 01:35:21.010
<v Gast 1>keine Ahnung, wenn du deine API intern versioniert hast und dann irgendwie fünf Server hast,

01:35:21.090 --> 01:35:23.890
<v Gast 1>auf dem ersten Server läuft die Version 1 der API, auf dem zweiten die Version 2,

01:35:24.050 --> 01:35:27.170
<v Gast 1>auf dem dritten die Version 3, dann kannst du zum Beispiel mit so einer Middleware sagen,

01:35:27.330 --> 01:35:32.450
<v Gast 1>okay, ich schaue in den Pfad rein, wenn da Slash V5 steht, dann verteile ich das bitte an meinen

01:35:32.450 --> 01:35:39.250
<v Gast 1>Backend-Server mit der Version 5 der API und kannst dann quasi auch so eine Art kleines Load Balancing dir

01:35:39.250 --> 01:35:42.450
<v Gast 1>selber bauen, ohne dass du wirklich, also Load Balancing in dem Fall ist jetzt schlecht,

01:35:42.530 --> 01:35:44.130
<v Gast 1>weil das wahrscheinlich nicht so performant ist.

01:35:44.370 --> 01:35:48.370
<v Gast 1>Aber selbst die kreblichsten Sprachen wie Ruby zum Beispiel, die ja echt nicht schnell sind,

01:35:48.450 --> 01:35:52.930
<v Gast 1>so im Vergleich zu fast allem anderen, sind dabei weitem schnell genug,

01:35:53.010 --> 01:35:56.770
<v Gast 1>um so eine PPFuck-String-Manipulation zu machen, dass du da eigentlich nur machst,

01:35:56.850 --> 01:35:58.210
<v Gast 1>weil auch viel mehr hast du ja nicht.

01:35:58.370 --> 01:36:02.130
<v Gast 1>Und du musst halt aufschauen, dass du irgendwie in deiner Middleware nicht in fünf Sekunden Sleep drin hast,

01:36:02.290 --> 01:36:03.810
<v Gast 1>der dann irgendwie alles langsam macht.

01:36:04.130 --> 01:36:08.290
<v Gast 1>Aber gerade Middleware, um Performance-Daten zu messen, ist es echt grandios,

01:36:08.530 --> 01:36:13.250
<v Gast 1>weil du halt siehst, Request kommt rein, Request kommt raus, du kannst dir ein eigenes Slow Request-Log bauen

01:36:13.330 --> 01:36:16.290
<v Gast 1>und sagen, ja, also alle Requests, die länger als zehn Sekunden dauern,

01:36:16.450 --> 01:36:19.010
<v Gast 1>da läuft irgendwas falsch, lass doch mal in die Datenbank schieben.

01:36:19.170 --> 01:36:22.610
<v Gast 1>Und das in eine Anwendung einzubauen, ist recht komplex.

01:36:22.850 --> 01:36:25.890
<v Gast 1>In eine Middleware einzubauen, sollte dich eigentlich nicht länger als eine halbe Stunde.

01:36:26.290 --> 01:36:27.650
<v Gast 2>Genau, also es geht auch relativ schnell.

01:36:27.730 --> 01:36:31.890
<v Gast 2>Was ich zum Beispiel vor einer Weile mal für einen Arbeitgeber von mir damals gebaut habe,

01:36:32.210 --> 01:36:37.410
<v Gast 2>war einen minimalen Reverse-Proxy, den man schnell mal einfach so starten kann und dann tut er.

01:36:37.810 --> 01:36:41.410
<v Gast 2>Und das habe ich halt auch mit Express Middleware gebaut und dann nimmt er sich einfach,

01:36:41.570 --> 01:36:45.330
<v Gast 2>wenn er einen Request reinkriegt, nimmt er einfach den kompletten Request,

01:36:46.210 --> 01:36:52.930
<v Gast 2>die Header und den Content, den er dazu bekommt und schickt den einfach an den Web-Service weiter,

01:36:53.010 --> 01:36:57.170
<v Gast 2>gegen den er gehen soll, der in der Config steht, nimmt den entgegen,

01:36:57.490 --> 01:37:03.010
<v Gast 2>wartet, bis er da den Content zurückbekommt und liefert dann in seinem Response-Code einfach den Content,

01:37:03.250 --> 01:37:06.930
<v Gast 2>den er von dem Web-Service abgeholt hat, quasi, was so ein Proxy halt macht,

01:37:07.010 --> 01:37:08.050
<v Gast 2>wieder an den Client zurück.

01:37:08.130 --> 01:37:08.290
<v Gast 2>Genau.

01:37:08.450 --> 01:37:14.290
<v Gast 2>Und das sind hier, keine Ahnung, knapp 100 Zeilen JavaScript-Code mit noch Logging-Funktionen und so einen

01:37:14.370 --> 01:37:15.170
<v Gast 2>Schinken-Geschichten.

01:37:15.250 --> 01:37:15.570
<v Gast 2>Richtig.

01:37:17.170 --> 01:37:20.930
<v Felix>Ich bin heute auch auf einen tollen Quote gestoßen, der quasi dazu passt,

01:37:21.010 --> 01:37:25.970
<v Felix>und zwar, all problems in computer science can be solved by yet another level of indirection.

01:37:26.210 --> 01:37:28.210
<v Gast 2>Ja, das ist das, was Markus genau predigt.

01:37:28.450 --> 01:37:29.010
<v Gast 2>Das ist genau das.

01:37:29.650 --> 01:37:32.530
<v Felix>Außer das Problem der zu vielen Level von Indirection.

01:37:33.090 --> 01:37:33.890
<v Gast 2>Das ist natürlich nicht sicher.

01:37:34.050 --> 01:37:37.410
<v Gast 1>Aber da kannst du auch gerade, was da angeht, andere Möglichkeiten, Performance zum Beispiel.

01:37:37.490 --> 01:37:38.850
<v Gast 1>Du kriegst ja HTML zurück.

01:37:39.010 --> 01:37:41.970
<v Gast 1>Du könntest ja dir einfach denken, hey, wenn der andere ein Mobile-Device ist,

01:37:42.130 --> 01:37:46.850
<v Gast 1>kann ich ja kurz abfragen, dann habe ich, dann weiß ich, dass dem seine Latenz total kreppelig ist.

01:37:47.010 --> 01:37:51.410
<v Gast 1>Bedeutet, ich nehme einfach alle JavaScript-Dateien, die da irgendwie extern verwiesen werden,

01:37:51.570 --> 01:37:55.330
<v Gast 1>kannst ja kurz das HTML durchparsen und bau die da einfach fest ein,

01:37:55.490 --> 01:37:56.370
<v Gast 1>inline von mir aus.

01:37:56.690 --> 01:37:59.730
<v Gast 1>Und dann kannst du da auch alle Bilder nehmen und da als Base 64 kodieren, dann kriegt er einen.

01:37:59.890 --> 01:38:01.410
<v Felix>Und das haben wir ausprobiert, das funktioniert nicht so gut.

01:38:01.650 --> 01:38:02.370
<v Felix>Funktioniert nicht so gut.

01:38:03.330 --> 01:38:09.090
<v Gast 2>Die erste Version von MedienGevitter hat Base 64 kodierte Vollbilder per WebSock jetzt verschickt,

01:38:09.170 --> 01:38:10.130
<v Gast 2>das performt nicht die Gesetzentwurf.

01:38:11.490 --> 01:38:18.290
<v Gast 1>Die Bugreports, wenn du hier in Cucumber rausrenderst, die sind halt eine 2MB-HTML Datei oder 3MB,

01:38:18.450 --> 01:38:22.130
<v Gast 1>aber bei uns klickst du dann einfach drauf und in der Datei sind Base64 und das macht es nicht.

01:38:22.290 --> 01:38:29.170
<v Ingo>Aber das sind halt ganz problemisch, wenn du an du an viele Clients parallel die Sachen verschicken willst,

01:38:29.250 --> 01:38:33.170
<v Ingo>dann macht das ein normaler HTTP-Request halt deutlich schneller, als wenn du das erst in Base 64 kodieren

01:38:33.170 --> 01:38:33.250
<v Ingo>musst.

01:38:36.130 --> 01:38:42.370
<v Felix>Also das waren fünf Sachen, die wir halt auf dem Canvas und ein bisschen daneben gebaut haben und das hat der

01:38:42.370 --> 01:38:43.410
<v Felix>Browser nicht abgekonnt.

01:38:43.570 --> 01:38:45.330
<v Felix>Der ist da super hart verkrebet an dem Wertschau-Base.

01:38:46.130 --> 01:38:50.850
<v Gast 1>Ja, aber du könntest es zum Beispiel, wenn du CSS und JavaScript minifies und auch HTML kannst ja minifieren.

01:38:51.090 --> 01:38:53.570
<v Gast 1>Das wäre zum Beispiel eine super Middleware, die einfach vor dem Cache kommt.

01:38:53.730 --> 01:38:58.370
<v Ingo>Genau, gerade wollte ich sagen, also man kann ja so Geschichten, wie wir es vorhin schon angesprochen haben

01:38:58.450 --> 01:39:03.090
<v Ingo>mit Minified JavaScript oder CSS, das kann man auch in der Middleware machen,

01:39:03.170 --> 01:39:06.930
<v Ingo>wenn der da was sieht, oh, das ist CSS oder JavaScript, dann kann er einfach alles,

01:39:07.090 --> 01:39:11.970
<v Ingo>was da noch so an JavaScript kommt, in eine Datei zusammenfassen und das auch noch minifieren.

01:39:12.210 --> 01:39:13.650
<v Gast 2>Und das vielleicht sogar noch cachen.

01:39:13.970 --> 01:39:17.090
<v Gast 1>Richtig, das ist halt eigentlich alles trivial.

01:39:17.250 --> 01:39:23.490
<v Gast 2>Also Middleware ist da tatsächlich auch ganz, ganz interessant, wenn man mal so ein paar komplexere Sachen

01:39:23.490 --> 01:39:23.650
<v Gast 2>macht.

01:39:23.890 --> 01:39:29.890
<v Felix>Genau, also wenn man nicht irgendwas Einfaches machen will, weil bei so kleinen Sachen fühlt sich das immer an

01:39:29.890 --> 01:39:33.490
<v Felix>nach super viel Bloatern, dass man da erst irgendwie 10 Titbonus-Plugins die braucht,

01:39:33.570 --> 01:39:35.730
<v Felix>damit die Middleware tut und keine Ahnung was.

01:39:35.890 --> 01:39:37.650
<v Felix>Und meistens braucht man das aber auch wieder nicht.

01:39:37.730 --> 01:39:38.930
<v Felix>Also so fühlt sich das für mich an.

01:39:39.010 --> 01:39:45.730
<v Felix>Wahrscheinlich gibt es da ganz viele, also 95% aller Anwendungsfälle, wo das passt, wo man Geld mitverdient.

01:39:46.530 --> 01:39:46.930
<v Felix>Enterprise.

01:39:47.250 --> 01:39:52.530
<v Felix>Aber halt alles andere muss man überlegen, ob man wirklich so viele Frameworks haben will,

01:39:52.610 --> 01:39:53.970
<v Felix>außer um damit rumzuspielen natürlich.

01:39:55.490 --> 01:39:57.970
<v Ingo>Was setzen wir denn so an Sprachen ein?

01:39:59.330 --> 01:40:00.610
<v Unbekannt>Ich eigentlich nur Ruby, wenn es geht.

01:40:01.570 --> 01:40:03.330
<v Gast 2>Also ich habe da momentan zwei Sachen.

01:40:03.410 --> 01:40:08.210
<v Ingo>Zum einen, weil ich auf der Arbeit eigentlich nur Ruby programmiere, habe ich mich mittlerweile auch mit Ruby.

01:40:09.590 --> 01:40:12.950
<v Ingo>Ja, ich möchte jetzt nicht sagen abgefunden, aber ich habe mich da gut genug eingearbeitet,

01:40:13.030 --> 01:40:15.190
<v Ingo>dass ich da mit Ruby gut klarkomme.

01:40:15.510 --> 01:40:19.990
<v Ingo>Plus, ich habe halt in früheren Jobs viel JavaScript gemacht und ich finde JavaScript als Sprache eigentlich

01:40:19.990 --> 01:40:20.710
<v Ingo>auch echt cool.

01:40:20.870 --> 01:40:25.430
<v Gast 2>Und Note ist halt echt ein cooles Spielzeug,

01:40:25.670 --> 01:40:30.470
<v Gast 2>um schnell mal nette Echtzeitweb-Anwendungen zu bauen.

01:40:30.950 --> 01:40:34.390
<v Gast 2>Weil halt, da ist halt viel mit drin, man hat schon mittlerweile echt

01:40:37.830 --> 01:40:41.350
<v Gast 2>großartige Plugins oder großartige Bibliotheken, die man benutzen kann.

01:40:41.510 --> 01:40:46.470
<v Gast 2>NPM als Paketmanager funktioniert auch mittlerweile gut genug,

01:40:46.790 --> 01:40:48.870
<v Gast 2>dass ich da keine Probleme mit hätte.

01:40:49.350 --> 01:40:54.710
<v Gast 2>Und also gerade so für so kleinere Sachen, da macht es echt Spaß, mal mit Nodes einfach so Sachen zu skripten.

01:40:55.270 --> 01:41:00.790
<v Ingo>Was ich jetzt aktuell in diesem Semester mache, weil ich da so einen Vortrag halten muss über Webgeschichten,

01:41:00.870 --> 01:41:06.870
<v Ingo>wäre, ich gucke mir mal CoffeeScript an und arbeite dann mit serverseitigem CoffeeScript,

01:41:06.950 --> 01:41:10.150
<v Ingo>was dann halt zu JavaScript runterkompiliert wird.

01:41:10.630 --> 01:41:15.910
<v Gast 2>CoffeeScript ist eigentlich ganz nett, es ist so ein bisschen eine Kreuzung aus Ruby,

01:41:16.070 --> 01:41:17.670
<v Gast 2>Python und JavaScript.

01:41:17.830 --> 01:41:22.630
<v Gast 2>Also das Objektmodell von JavaScript, plus man hat noch Klassen, die dann nach JavaScript,

01:41:22.950 --> 01:41:27.750
<v Gast 2>also man kann klassenbasierte Objektorientierung programmieren, was man in JavaScript so direkt nicht kann.

01:41:28.230 --> 01:41:32.230
<v Ingo>Man hat, was man aus Python kennt, dieses Einrücken für Blocks.

01:41:32.870 --> 01:41:35.430
<v Unbekannt>Also Whitespace, Speaker, also Significant Whitespace.

01:41:35.590 --> 01:41:40.230
<v Gast 2>Man kann, glaube ich, optional auch Klammern verwenden, das macht aber glaube ich keiner.

01:41:41.110 --> 01:41:45.670
<v Ingo>Und man hat halt so List-Expressions und so Geschichten,

01:41:45.750 --> 01:41:50.630
<v Ingo>die man auch aus Python kennt und die allgemein, die Syntax sieht so ein bisschen Ruby-ähnlich aus.

01:41:50.950 --> 01:41:54.870
<v Ingo>Ist eigentlich eine schöne Sprache, wird halt nicht direkt ausgeführt,

01:41:54.950 --> 01:41:59.110
<v Ingo>sondern wird halt erst nach JavaScript kompiliert, aber da liegt halt auch der Fokus von diesem Compiler

01:41:59.110 --> 01:42:02.390
<v Ingo>darauf, JavaScript zu kompilieren, was man später noch versteht.

01:42:02.470 --> 01:42:06.710
<v Gast 2>Das heißt, die Variablen-Namen bleiben gleich, die Funktionsaufrufe bleiben gleich,

01:42:06.870 --> 01:42:08.710
<v Gast 2>die Signaturen bleiben gleich.

01:42:09.030 --> 01:42:12.710
<v Ingo>Und es wird halt oft noch ein bisschen Magie dazu kompiliert, wenn man jetzt so Dinge hat,

01:42:12.790 --> 01:42:18.390
<v Ingo>die JavaScript aus Sprache nativ nicht mitbringt, wie zum Beispiel List Expressions oder Klassen oder sowas.

01:42:19.590 --> 01:42:23.190
<v Ingo>In Sachen JavaScript kompilieren, da habe ich später auch noch einen Lesefuhr-Tipp.

01:42:23.350 --> 01:42:24.630
<v Ingo>Genau, was haben wir denn sonst noch?

01:42:24.710 --> 01:42:26.150
<v Gast 2>Ja, Python kann man einsetzen, Felix.

01:42:26.310 --> 01:42:32.710
<v Felix>Ja, genau, also ich weiß nicht, quasi nur Python, weil ich habe schon

01:42:33.350 --> 01:42:37.750
<v Felix>einiges an Kram programmiert, auch in anderen Sachen, aber Python ist einfach so,

01:42:39.030 --> 01:42:44.790
<v Felix>also für mich so klar, dass ich da ohne jetzt die ganze Zeit Pythonieren zu müssen,

01:42:44.950 --> 01:42:50.070
<v Felix>sofort irgendwie Kram hinbauen kann, ohne halt ohne irgendwie viel Downtime zu haben,

01:42:50.150 --> 01:42:51.910
<v Felix>weil ich irgendwas nachlesen muss oder nachschauen muss.

01:42:52.310 --> 01:42:57.670
<v Ingo>Ja gut, aber ich glaube, das hat nun bei jeder Sprache, die man mit der man sich lange genug lange genug

01:42:57.670 --> 01:42:58.230
<v Ingo>auseinandergeht.

01:42:58.470 --> 01:43:01.190
<v Felix>Nee, auch bei Python, ich programmiere Python nicht die ganze Zeit.

01:43:01.270 --> 01:43:02.230
<v Felix>Und ich programmiere.

01:43:02.630 --> 01:43:06.150
<v Gast 2>Aber du hast so über die Zeit wahrscheinlich schon immer mal wieder Python gemacht, weil.

01:43:06.870 --> 01:43:09.910
<v Felix>Also für mich fühlt sich das einfach richtig an.

01:43:10.390 --> 01:43:11.750
<v Gast 1>Das ist sehr inkonsistent, finde ich.

01:43:11.830 --> 01:43:13.270
<v Gast 1>Also gerade Objektorientierung ist einfach nicht.

01:43:13.590 --> 01:43:14.070
<v Gast 1>Nee, das ist Python.

01:43:14.150 --> 01:43:15.430
<v Unbekannt>Doch, doch, doch, das ist eine Methode.

01:43:15.830 --> 01:43:16.390
<v Unbekannt>Nee, nee, das passt nicht.

01:43:16.550 --> 01:43:19.910
<v Gast 2>Nee, nee, das ist tatsächlich sehr konsistent und das ist auch objektorientiert.

01:43:19.990 --> 01:43:22.630
<v Ingo>Da gibt es einen super Artikel, den wir irgendwann mal gepickt haben.

01:43:23.510 --> 01:43:25.110
<v Gast 1>Aber also gerade Len war zum Beispiel.

01:43:25.830 --> 01:43:27.750
<v Gast 2>LEN ruft aber eine interne Funktion aus.

01:43:27.910 --> 01:43:32.870
<v Gast 2>Das finde ich eine interne Methode, die underscore, underscore irgendwas heißt, Length, glaube ich.

01:43:33.830 --> 01:43:36.630
<v Gast 2>Und die implementierst du wiederum in ein Objekt selber.

01:43:37.190 --> 01:43:38.790
<v Ingo>Da gibt es Gründe, das so zu machen.

01:43:38.870 --> 01:43:41.430
<v Gast 2>Aber das ist tatsächlich, also ist auch objektorientiert.

01:43:41.590 --> 01:43:42.630
<v Felix>Das ist tatsächlich objektorientiert.

01:43:42.710 --> 01:43:45.190
<v Gast 1>Aber du rufst keine Methode auf dem Objekt auf, sondern du rufst eine Mahnburg.

01:43:46.550 --> 01:43:47.910
<v Gast 1>Die dann wiederum Length aufrufen.

01:43:47.990 --> 01:43:51.510
<v Felix>Richtig, aber das kommt dadurch, das bringt Konsistenz in die Sprache selber.

01:43:52.310 --> 01:43:53.350
<v Felix>Im Gegensatz zu Length.

01:43:53.830 --> 01:43:56.550
<v Gast 2>Ich habe die Argumente nicht mehr im Kopf, aber da gab es einen Artikel,

01:43:56.630 --> 01:43:59.910
<v Gast 2>der das zumindest für mich so beschrieben hat, dass ich gedacht habe,

01:43:59.990 --> 01:44:00.790
<v Gast 2>oh, das macht doch tatsächlich.

01:44:01.270 --> 01:44:02.630
<v Gast 1>Dass du halt immer weißt, was du aufrufen musst.

01:44:04.390 --> 01:44:04.630
<v Gast 1>Ja, genau.

01:44:05.350 --> 01:44:06.550
<v Ingo>Es ist einfach immer dasselbe.

01:44:06.950 --> 01:44:08.470
<v Gast 1>Ja, bei Ruby auch Length geht immer.

01:44:08.710 --> 01:44:13.270
<v Gast 2>Aber es gibt Length und es gibt Size und dann kommt es wieder, wenn du selber Objekte implementierst,

01:44:13.430 --> 01:44:15.830
<v Gast 2>dann kommt es wieder darauf an, welches der beiden du implementierst.

01:44:17.110 --> 01:44:18.310
<v Gast 2>Das ist alles, obwohl normalerweise.

01:44:18.870 --> 01:44:21.190
<v Gast 1>Aber es ist halt keine Objektorientierung, wenn du irgendeine magische,

01:44:21.670 --> 01:44:25.830
<v Gast 1>festgelegte Funktion in deinem Root-Namespace hast, die dann wiederum eine Funktion bei dir aufruft.

01:44:26.310 --> 01:44:28.070
<v Gast 2>Eine Methode, die an dem Objekt bringt.

01:44:28.230 --> 01:44:31.990
<v Gast 1>Richtig, aber normalerweise solltest du deine Objektmethoden aufrufen und nicht irgendwas in deinem Framework

01:44:32.070 --> 01:44:33.270
<v Gast 1>ruft deine Methode auf.

01:44:34.230 --> 01:44:36.630
<v Felix>Also das passt schon für mich, ja.

01:44:36.790 --> 01:44:37.910
<v Gast 2>Also was mich ins One.

01:44:38.390 --> 01:44:39.510
<v Gast 1>Oder Dir zum Beispiel.

01:44:39.750 --> 01:44:41.030
<v Gast 1>Bei Ruby ist das halt Punkt Methods.

01:44:41.590 --> 01:44:43.350
<v Felix>Genau, das ist Dier ist genau das gleiche.

01:44:43.670 --> 01:44:46.950
<v Gast 1>Aber warum hat das Object nicht einfach eine Methode.methods?

01:44:47.190 --> 01:44:47.590
<v Gast 1>Hat es.

01:44:47.830 --> 01:44:50.390
<v Felix>Aber die wird halt genauso wieder aufgerufen wie das Length.

01:44:50.630 --> 01:44:51.510
<v Unbekannt>Ja, aber warum?

01:44:51.670 --> 01:44:53.350
<v Gast 1>Wenn es schon in Object implementiert ist.

01:44:53.510 --> 01:44:55.750
<v Felix>Weil die wieder tausend verschiedene Sachen heißen könnte.

01:44:55.910 --> 01:44:58.950
<v Gast 1>Nee, es ist ein Object implementiert, die musst du überschreiben, sonst gibt es die nicht.

01:44:59.030 --> 01:44:59.350
<v Gast 1>Deswegen.

01:45:00.630 --> 01:45:02.710
<v Felix>Das ist jedenfalls.

01:45:05.190 --> 01:45:06.870
<v Felix>Nee, das ist ja, ich habe da gar kein Problem mit.

01:45:07.350 --> 01:45:08.870
<v Gast 2>Ich glaube, da kann man sich drüber streiten, aber.

01:45:10.070 --> 01:45:11.190
<v Felix>Ich will auch niemanden überzeugen.

01:45:11.270 --> 01:45:15.030
<v Felix>Ich will, dass die Leute Sachen machen, die ich danach dann würzen kann.

01:45:15.110 --> 01:45:15.750
<v Felix>Ja, natürlich.

01:45:15.990 --> 01:45:20.310
<v Felix>Und von daher kannst du da, du kannst von mir jetzt auch Krebsscheiß benutzen.

01:45:20.390 --> 01:45:21.910
<v Felix>Das ist mir vollkommen egal.

01:45:22.070 --> 01:45:23.750
<v Ingo>Also solange es funktioniert.

01:45:23.990 --> 01:45:27.670
<v Felix>Genau, solange es funktioniert und ich programmiere halt das, was für mich funktioniert.

01:45:27.750 --> 01:45:30.070
<v Felix>Und das ist halt im meisten Fall Python.

01:45:30.150 --> 01:45:34.550
<v Felix>Und ich sehe auch so viel Software, egal in welche Richtung man schaut,

01:45:35.030 --> 01:45:37.990
<v Felix>es gibt auch sehr, sehr viele Sachen, die in Python gemacht werden tatsächlich.

01:45:38.230 --> 01:45:42.630
<v Ingo>Also gerade so, wo es echt groß ist, sind so Machine Learning-Geschichten,

01:45:42.710 --> 01:45:44.710
<v Ingo>da gibt es echt viele Bibliotheken, die sowas machen.

01:45:45.430 --> 01:45:45.910
<v Ingo>Es gibt auch ganz.

01:45:46.310 --> 01:45:47.030
<v Ingo>NumPy generell.

01:45:47.910 --> 01:45:52.870
<v Ingo>NumPy, SciPy, genau, also wenn es um Berechnung geht, da ist Python auch recht gut dabei.

01:45:53.110 --> 01:45:57.670
<v Felix>Also was man ganz oft sieht, das Software-Betriebssystem nah.

01:45:57.750 --> 01:45:59.990
<v Felix>Also die wird dann quasi wie Shell verwendet.

01:46:00.710 --> 01:46:04.790
<v Felix>Und macht dann halt bestimmte Betriebssystemoperationen für dich.

01:46:05.110 --> 01:46:08.390
<v Felix>Und ich wollte heute auf was quasi noch ansprechen.

01:46:08.950 --> 01:46:12.150
<v Ingo>Ja, immer mehr das, was früher so Bash-Programme waren, sieht man heute auch ein paar Fragen.

01:46:12.310 --> 01:46:14.150
<v Felix>Genau, also speziell sieht man, was früher Pearl war.

01:46:14.230 --> 01:46:15.430
<v Felix>Ja, das ist ein bisschen.

01:46:16.950 --> 01:46:18.870
<v Gast 1>Also Sachen wie Chef und Puppet zum Beispiel.

01:46:19.110 --> 01:46:19.750
<v Gast 1>Das ist ein Ruby.

01:46:19.990 --> 01:46:20.710
<v Gast 1>Ja, gibt's aber.

01:46:20.790 --> 01:46:26.790
<v Gast 1>Also sowas, diese ganze irgendwie Capistrano, Chef, Puppet, da gibt es nicht so viele Sachen in Python,

01:46:26.950 --> 01:46:28.310
<v Gast 1>die wirklich auch noch ansatzweise in der Stadt haben.

01:46:28.470 --> 01:46:33.910
<v Felix>Also zum Beispiel Coppler, also Coppler ist quasi noch der, also das benutzt Puppet mit oder kann es mit

01:46:33.910 --> 01:46:37.750
<v Felix>benutzen, das macht dieses ganze automatische Installieren, Kram.

01:46:38.230 --> 01:46:40.470
<v Felix>Und das ist in Python geschrieben zum Beispiel.

01:46:41.030 --> 01:46:45.430
<v Felix>Und apropos Open Source Software in Python.

01:46:45.830 --> 01:46:47.910
<v Gast 2>Zum Beispiel OpenStack ist in Python geschrieben kommt hast du.

01:46:47.990 --> 01:46:48.950
<v Unbekannt>Ja, benutzt OpenStack.

01:46:49.750 --> 01:46:52.790
<v Felix>Also das ist jetzt keine Aussage, die gegen Python spricht würde.

01:46:52.950 --> 01:46:56.550
<v Gast 1>Nee, nee, nur ich finde es nur kurz, weil Python wird halt viel in so,

01:46:56.630 --> 01:46:59.990
<v Gast 1>also alles, was mathematisch angeht, alles was irgendwie leicht universitär auch nur ist,

01:47:00.310 --> 01:47:01.350
<v Gast 1>es gibt aber auch unglaublich viel.

01:47:03.590 --> 01:47:06.390
<v Gast 1>Das ist klar Django, aber also gerade wo wir bei Systemadministration.

01:47:08.150 --> 01:47:13.030
<v Gast 1>Ich meine ja, ich habe ja auch nur gesagt, die Systemadministrationssachen, erstaunlich wenig.

01:47:13.350 --> 01:47:19.910
<v Felix>Nee, es gibt, also dieses ganze, alles was du unter Red Hat hast, dieses ganze Administrationzeug ist alles.

01:47:20.150 --> 01:47:20.710
<v Felix>Also abtieten.

01:47:25.190 --> 01:47:28.150
<v Felix>Jim zum Beispiel ist komplett in Python geschrieben.

01:47:28.390 --> 01:47:29.750
<v Felix>Also was die unter Red Hit.

01:47:31.350 --> 01:47:32.070
<v Felix>Ja, es ist so.

01:47:32.230 --> 01:47:33.270
<v Felix>Also es ist echt viel.

01:47:33.350 --> 01:47:38.950
<v Felix>Und das Coole an Open Source Software ist, in Python geschrieben, wenn dir da ein Stack Trace vor die Füße

01:47:38.950 --> 01:47:40.230
<v Felix>fällt, kannst du das fixen.

01:47:40.470 --> 01:47:41.990
<v Felix>Weil du den Source-Code hast.

01:47:42.150 --> 01:47:44.470
<v Felix>Und ich finde, das ist das Allercoolste, was sie machen kann.

01:47:46.630 --> 01:47:49.110
<v Felix>Ja, genau, also es muss Open Source Software mit dem Frage.

01:47:49.270 --> 01:47:51.990
<v Gast 2>Genau, also zum Beispiel Dropbox ist es.

01:47:52.070 --> 01:47:54.550
<v Gast 2>Ja, zum Beispiel Dropbox ist ja komplett in Python geschrieben.

01:47:54.790 --> 01:47:56.870
<v Gast 1>Die sind eh recht viele GUI-Sachen.

01:47:58.790 --> 01:48:02.390
<v Gast 2>Genau, und bei Dropbox ist es halt so, dass die in ihrem Executable,

01:48:02.470 --> 01:48:06.230
<v Gast 2>was sie ausliefern, eine Standalone-Version von dem Python-Idabreter ausliefern,

01:48:06.310 --> 01:48:10.630
<v Gast 2>der dann wiederum nur den vorkompilierten Python-Bytecode ausführt,

01:48:10.710 --> 01:48:12.630
<v Gast 2>aber der Source-Code halt nicht dabei ist.

01:48:12.790 --> 01:48:17.430
<v Felix>Ja, also das geht auch cool unter Windows zum Beispiel, da baust du dir einfach eine Executable aus dem ganzen

01:48:17.510 --> 01:48:19.990
<v Felix>Python-Cram, was super, super konfortabel ist.

01:48:20.310 --> 01:48:20.710
<v Felix>Genau, richtig.

01:48:20.790 --> 01:48:22.550
<v Gast 1>Das ist auch wesentlich besser als zum Beispiel bei Ruby.

01:48:22.630 --> 01:48:24.950
<v Gast 1>Bei Ruby gibt es das auch, aber das ist sehr kreppelig.

01:48:25.670 --> 01:48:27.110
<v Unbekannt>Warum soll ich eigentlich heute immer kreppelig?

01:48:27.350 --> 01:48:27.590
<v Unbekannt>Egal.

01:48:27.670 --> 01:48:28.950
<v Gast 1>Auf jeden Fall, die extrahieren dann immer.

01:48:29.190 --> 01:48:29.830
<v Gast 1>Crap-People!

01:48:30.070 --> 01:48:35.190
<v Gast 1>Das ist dann so eine Art ZIP-Datei, die sie dann erst ein Temp extrahieren und dann ist es eine ganz ekelhafte

01:48:35.270 --> 01:48:35.350
<v Gast 1>Sache.

01:48:35.430 --> 01:48:37.270
<v Gast 1>Und das war bei Python schon immer wesentlich besser.

01:48:37.510 --> 01:48:39.190
<v Gast 1>Dieses Tooling da drumherum.

01:48:40.230 --> 01:48:43.910
<v Gast 2>Ja, was ich bei Python auch ganz nett finde, ist, dass halt echt viele Sachen,

01:48:44.150 --> 01:48:50.150
<v Gast 2>die man so standardmäßig benutzen will, halt in der normalen Standardbibliothek mit dabei sind.

01:48:50.310 --> 01:48:51.830
<v Felix>Und du brauchst ja nicht erst 1000 Kram.

01:48:52.230 --> 01:48:59.030
<v Gast 2>Also bei Ruby ist auch viel mit drin, aber ich habe selten irgendwelche Ruby-Projekte

01:48:59.030 --> 01:49:02.550
<v Gast 2>programmiert, bei denen ich nicht noch externe Abhängigkeiten nachladen müsste.

01:49:02.870 --> 01:49:05.990
<v Felix>Zum Beispiel brauchst du für JSON schon Kram nach, oder?

01:49:06.150 --> 01:49:06.230
<v Felix>Ja.

01:49:06.470 --> 01:49:06.870
<v Felix>Oder gibt es das?

01:49:07.110 --> 01:49:07.270
<v Felix>Doch.

01:49:09.430 --> 01:49:12.550
<v Gast 2>Ich glaube, für JSON braucht man ein JSON-Gem, was man installieren muss.

01:49:12.710 --> 01:49:13.670
<v Unbekannt>Bei Ruby richtig.

01:49:13.830 --> 01:49:16.470
<v Felix>Ja, also das ist halt schon fail, weil JSON braucht man nicht.

01:49:21.190 --> 01:49:25.030
<v Gast 1>Gut, ich weiß nicht, wann das in Python reinkam.

01:49:25.110 --> 01:49:31.270
<v Gast 1>Bei Ruby gab es halt auch irgendwie in der längeren Zeit schon keine Standardbibliothek hinzufügung mehr,

01:49:31.350 --> 01:49:34.470
<v Gast 1>weil die dabei sind, die Standardbibliothek in Gems auszulagern.

01:49:34.710 --> 01:49:39.350
<v Gast 1>Was dann bedeutet, du hast dann eine versionierte Standardbibliothek.

01:49:39.430 --> 01:49:43.990
<v Gast 1>Was bedeutet, sie können Neuerungen halt sehr schnell reinpushen, ohne dass sie dann wie Java da sitzen und

01:49:43.990 --> 01:49:45.910
<v Gast 1>sieben Jahre brauchen, um ein neues Mage-Release zu machen.

01:49:46.070 --> 01:49:50.710
<v Felix>Also wenn es dann nicht so ist, dass du dann erstmal den Gem-Installer brauchst und den ganzen Kram noch

01:49:50.710 --> 01:49:52.070
<v Felix>installieren musst, sondern dass du es dabei bekommst.

01:49:52.310 --> 01:49:53.510
<v Gast 1>Der ist immer dabei der Gem Installer.

01:49:53.670 --> 01:49:57.110
<v Felix>Nee, also ich meine, dass du die Gems mit dabei bekommst, in deine Distribution.

01:49:57.350 --> 01:49:58.630
<v Unbekannt>Ja, ja klar, standardmäßig schon.

01:49:59.110 --> 01:50:00.870
<v Gast 1>Die sind halt auch verfügbar und updatebar.

01:50:00.950 --> 01:50:01.750
<v Unbekannt>Das ist halt das Wichtige.

01:50:02.470 --> 01:50:05.110
<v Felix>Und das Problem ist dann halt wieder, wenn du auf verschiedenen Systemen bist,

01:50:05.190 --> 01:50:09.430
<v Felix>hast du dann verschiedene komische Krippel-Gem-Dings siehst,

01:50:09.510 --> 01:50:12.550
<v Felix>die dann irgendwie nicht neu sind und dann funktioniert wieder irgendwelche Kram nicht.

01:50:12.710 --> 01:50:17.590
<v Felix>Das ist, ich weiß nicht, also es fühlt sich irgendwie bei Python immer richtig an.

01:50:18.070 --> 01:50:19.110
<v Felix>Also für mich.

01:50:19.510 --> 01:50:21.510
<v Gast 2>Ich kann mit beiden Sprachen arbeiten.

01:50:21.670 --> 01:50:24.870
<v Gast 2>Ich habe jetzt persönlich mehr mit Ruby gemacht aus Gründen.

01:50:25.030 --> 01:50:27.190
<v Gast 2>Keine Ahnung, das hat sich irgendwie gerade angeboten.

01:50:27.350 --> 01:50:32.470
<v Ingo>Also gerade dieses Distributed Performance Testing, was ich letztes Semester gemacht habe,

01:50:32.790 --> 01:50:38.790
<v Ingo>das war halt, da gab es halt Fogg als Bibliothek für Cloud-Computing oder für allgemein,

01:50:39.030 --> 01:50:42.230
<v Ingo>also ich habe es jetzt auf Easy2 benutzt, größtenteils.

01:50:42.790 --> 01:50:44.710
<v Gast 2>Und das war halt sehr komfortabel.

01:50:44.790 --> 01:50:48.710
<v Ingo>Da hatte ich jetzt auch keine Lust, so eine Alternative in Python zu suchen.

01:50:48.870 --> 01:50:50.230
<v Gast 2>Weißt du nicht, gibt es das sowas, Felix?

01:50:51.350 --> 01:50:57.910
<v Ingo>So eine Abstraktion auf Cloud-Services, also womit man virtuelle Maschinen hochfahren,

01:50:57.990 --> 01:50:58.950
<v Ingo>managen, installieren kann.

01:50:59.110 --> 01:51:01.590
<v Felix>Da habe ich letztens tatsächlich erst eins gesehen.

01:51:01.990 --> 01:51:03.350
<v Felix>Ich weiß aber gar nicht, was das war.

01:51:03.430 --> 01:51:05.190
<v Felix>Aber ich weiß schon.

01:51:05.670 --> 01:51:08.870
<v Gast 2>Jedenfalls habe ich da halt einfach Ruby benutzt.

01:51:08.950 --> 01:51:12.550
<v Gast 2>Ich habe auch, ich glaube, objektorientierte Programmierung erst richtig verstanden,

01:51:13.030 --> 01:51:16.470
<v Gast 2>als ich mal ein Ruby-Buch gelesen und da irgendwie angefangen habe,

01:51:16.630 --> 01:51:17.990
<v Gast 2>Ruby zu programmieren.

01:51:20.070 --> 01:51:23.590
<v Gast 2>Ja, ansonsten Python ist auch eine coole Sprache, auf jeden Fall.

01:51:24.470 --> 01:51:28.790
<v Felix>Also ich, was ich immer ein bisschen blöd finde bei Ruby, sind die Stacktraces.

01:51:29.110 --> 01:51:31.750
<v Felix>Die sind halt einfach so hässlich, dass ich daraus nichts erkennen kann.

01:51:31.830 --> 01:51:34.790
<v Gast 1>Ich weiß nicht, ich glaube, es gibt bei Stack Traces keinen Unterschied,

01:51:34.870 --> 01:51:41.270
<v Gast 1>weil du sagt, also das Problem ist, ich habe jetzt keine Python-Stack Tracers und es gibt keinen Unterschied

01:51:41.350 --> 01:51:41.830
<v Gast 1>bei Stack Tracers.

01:51:42.150 --> 01:51:43.910
<v Unbekannt>Doch, das Problem ist in deinem Stack.

01:51:44.150 --> 01:51:48.710
<v Felix>Nee, nee, das Problem ist, bei Ruby hast du so oft irgendwie diese Punkt Each,

01:51:49.110 --> 01:51:51.910
<v Felix>Punkt Irgendwas und das ist meistens der letzte Eintrag und ich such's,

01:51:52.070 --> 01:51:54.790
<v Felix>guck dann, wo ist denn jetzt das kaputt gegangen?

01:51:55.030 --> 01:51:58.470
<v Felix>Und das ist meistens in irgendeinem Each oder irgendein komischen Bonusfunktion,

01:51:58.630 --> 01:52:03.190
<v Felix>die dann irgendwie in irgendeinem Lamp da drin ist und das, also ich weiß nicht,

01:52:03.270 --> 01:52:04.550
<v Felix>woran es liegt, aber das sieht halt im.

01:52:05.030 --> 01:52:08.390
<v Gast 1>Also da habe ich keine, also ich weiß gar nicht, von was du in dem Fall jetzt redest,

01:52:08.470 --> 01:52:11.110
<v Gast 1>weil also wenn du Each aufrufst und es knallt im Each, dann ist es,

01:52:11.270 --> 01:52:14.230
<v Gast 1>dann sagt er dir halt, hier hast du Each aufgerufen, dann zeigt er dir aber denkt.

01:52:14.390 --> 01:52:18.310
<v Gast 1>Genau, also normalerweise soll er sich drüber an, es gibt nur eine Art von Stack Trace, würde ich sagen.

01:52:18.470 --> 01:52:19.670
<v Gast 1>Es gibt nicht mehrere Arten von Stack Trace.

01:52:19.750 --> 01:52:23.270
<v Felix>Nee, nee, nicht Arten von Stack Trace, sondern wie der aussieht, wie ich daraus lesen kann,

01:52:23.350 --> 01:52:24.150
<v Felix>was kaputt gesagt ist.

01:52:24.870 --> 01:52:31.430
<v Gast 2>Du meinst, dass sowas wie die Iteration in einem Each, was halt eine anonyme Funktion ist,

01:52:31.510 --> 01:52:35.590
<v Gast 2>was in dem Fall halt auch ein Teil vom Call Stack ist, dass das mit dem Stack Trace auftaucht.

01:52:35.750 --> 01:52:36.310
<v Gast 2>Genau, das war es.

01:52:37.590 --> 01:52:39.830
<v Gast 2>Ja, aber damit habe ich jetzt eigentlich keine Probleme.

01:52:39.990 --> 01:52:40.630
<v Gast 2>Vielleicht habe ich mich immer.

01:52:42.710 --> 01:52:48.150
<v Ingo>Nee, nee, er meint, dass die Ruby-Stacktraces verboser sind, weil zum Beispiel halt auch eine Iteration in

01:52:48.150 --> 01:52:53.110
<v Ingo>einem Each auch eine Applikation von einem Lambda ist,

01:52:53.350 --> 01:52:55.190
<v Ingo>was halt auch wieder ein Teil vom Callstack ist.

01:52:55.350 --> 01:52:58.950
<v Ingo>Und genau in Python zum Beispiel hat man halt irgendwie die Vorexpressions,

01:52:59.030 --> 01:53:01.510
<v Ingo>die dann wahrscheinlich nicht direkt im Callstack auftauchen.

01:53:01.910 --> 01:53:06.870
<v Gast 1>Gut, es sind halt Methodenaufrufe, tauchen das Callstack auf und weil Ruby halt wirklich objektorientiert ist,

01:53:06.950 --> 01:53:08.550
<v Gast 1>ist das eine echte Funktion und nicht irgendwie.

01:53:09.030 --> 01:53:15.430
<v Gast 2>Genau, also es ist halt in dem Fall auch ein Methodenaufruf.call auf das Landterobjekt und damit taucht es

01:53:15.430 --> 01:53:15.910
<v Gast 2>halt auch im Stack.

01:53:16.950 --> 01:53:20.950
<v Gast 1>Deswegen finde ich, deswegen war auch meine Kritik vorher, dass das halt immer dassak selbe ist,

01:53:21.030 --> 01:53:23.030
<v Gast 1>es sind alles Methodenaufrufe, immer.

01:53:23.350 --> 01:53:25.190
<v Gast 1>Nicht irgendwelche Magic-Sachen hinten drin.

01:53:25.270 --> 01:53:30.070
<v Gast 1>Und das ist ja im Chat wurde uns übrigens dieser Python und the principle of least astonishment zugeschickt.

01:53:30.390 --> 01:53:31.670
<v Gast 1>Daran kann ich mich erinnern.

01:53:31.830 --> 01:53:33.350
<v Gast 1>Aber ich finde, ja, das ist einfach.

01:53:33.750 --> 01:53:34.790
<v Felix>Nee, das ist ja auch kein Problem.

01:53:34.950 --> 01:53:36.870
<v Felix>Es gibt ja auch Leute, die andere Sachen benutzen.

01:53:37.030 --> 01:53:38.470
<v Gast 2>Ja, also grundlegend kann man sagen.

01:53:39.030 --> 01:53:42.630
<v Gast 2>Ich würde sagen, Ruby und Python sind sich tatsächlich sehr ähnlich.

01:53:42.790 --> 01:53:49.190
<v Gast 2>Ich glaube, Python-Leute mögen eher so dieses, es gibt einen richtigen Weg, eine Sache zu machen.

01:53:49.270 --> 01:53:52.550
<v Gast 2>Und in Ruby gibt es halt mehrere Wege, eine Sache zu Sachen zu machen.

01:53:52.870 --> 01:53:56.710
<v Gast 1>Ja, aber es ist ein, ja, das ist halt hier, indem sagen sie halt, wie sollen wir es nennen?

01:53:56.870 --> 01:53:58.950
<v Gast 1>Length oder Get-Length oder Len.

01:53:59.270 --> 01:54:02.070
<v Gast 1>Und das ist halt die Sache, du nennst es einfach so, wie es heißt, Length.

01:54:03.430 --> 01:54:06.390
<v Gast 1>Das ist halt die Sache, dass Get-Length, das ist eine Konvention in Ruby,

01:54:06.470 --> 01:54:07.910
<v Gast 1>dass du niemals get irgendwas schreibst.

01:54:07.990 --> 01:54:09.110
<v Unbekannt>Wirst du nirgendwo finden?

01:54:09.190 --> 01:54:12.550
<v Gast 1>Und das ist halt so, wie es in Python eine Konvention ist, das Ding einfach LEN zu nennen.

01:54:12.790 --> 01:54:14.230
<v Felix>Nee, das ist alles keine Konvention.

01:54:14.550 --> 01:54:17.670
<v Gast 1>Ich zwing keine Length, kann ich in Python Get-Length implementieren?

01:54:17.830 --> 01:54:20.550
<v Felix>Klar kannst du, dann wird es aber nicht funktionieren.

01:54:20.710 --> 01:54:21.430
<v Felix>Ganz einfach.

01:54:21.830 --> 01:54:24.790
<v Gast 1>Wenn einer Len, kann man Dingens da macht, ja.

01:54:24.870 --> 01:54:27.750
<v Gast 1>Aber wenn ich nicht Punkt Length implementiere, wird es auch nicht funktionieren.

01:54:28.310 --> 01:54:29.670
<v Gast 1>Das sind beides Konventionen.

01:54:29.750 --> 01:54:32.150
<v Gast 1>Die einen sagen, du musst irgendwas implementierst, underscore, underscore,

01:54:32.230 --> 01:54:34.790
<v Gast 1>Len heißt und das dann mit Len in Dingens aufrufen.

01:54:34.870 --> 01:54:36.150
<v Unbekannt>Und bei dem anderen ist es halt immer nicht.

01:54:36.630 --> 01:54:38.390
<v Felix>Nee, das eine ist einfach mehr Enforcing.

01:54:38.550 --> 01:54:41.030
<v Felix>Also es zwingt dich dazu, das Richtige zu tun.

01:54:41.110 --> 01:54:42.630
<v Felix>Und ich finde, ab und zu dir das schon.

01:54:43.590 --> 01:54:45.110
<v Gast 1>Das Resultat ist doch genau dasselbe.

01:54:45.190 --> 01:54:48.230
<v Gast 1>Wenn ich es nicht implementiere, knallt es, wenn ich drauf zugreife.

01:54:49.190 --> 01:54:49.990
<v Unbekannt>In beiden Fällen.

01:54:50.230 --> 01:54:54.710
<v Gast 2>Wenn ich längst nicht bin, mit dir knallt, wollen wir das nach der Sendung diskutieren.

01:54:55.190 --> 01:54:56.710
<v Gast 2>Aber das artet so langsam aus.

01:54:57.030 --> 01:55:03.350
<v Ingo>Gut, wir sehen hier Ruby, Python, die Fraktionen beißen sich und ich glaube, da gibt es einfach.

01:55:03.590 --> 01:55:05.190
<v Ingo>Ich meine, deswegen gibt es ja auch beides, ne?

01:55:05.270 --> 01:55:05.750
<v Ingo>Ist ja auch schön.

01:55:06.790 --> 01:55:11.030
<v Ingo>Also, apropos, was mir gerade so aufgefallen ist, gibt es eigentlich noch Java Server-Pages?

01:55:11.270 --> 01:55:12.550
<v Gast 2>JSP-Garantie, ähm, ja.

01:55:13.030 --> 01:55:13.830
<v Ingo>Nutzt du das noch einer?

01:55:14.230 --> 01:55:14.630
<v Ingo>Ja, Enterprise.

01:55:15.030 --> 01:55:16.630
<v Felix>Enterprise Software, Enterprise.

01:55:17.030 --> 01:55:20.790
<v Gast 2>Also auch so .NET und so, das habe ich jetzt gar nicht hereingeschrieben, weil das ist also Software.

01:55:21.350 --> 01:55:24.550
<v Gast 2>Ich habe da auch vor einer Weile mal mit einem Bekannten drüber diskutiert.

01:55:25.190 --> 01:55:32.150
<v Gast 2>Ich kann Java, ich habe auch jahrelang Java programmiert, aber momentan lerne ich lieber die coolen neuen

01:55:32.150 --> 01:55:33.590
<v Gast 2>Sachen, weil die mir vielleicht auch.

01:55:33.750 --> 01:55:36.550
<v Ingo>Ach, bei Python und Ruby sind jetzt auch schon nicht mehr cool neu, ne?

01:55:36.710 --> 01:55:39.030
<v Gast 2>Ja, die sind nicht coole neu, aber sie haben immer noch nicht mehr so.

01:55:39.270 --> 01:55:40.710
<v Gast 1>Im Enterprise-Umfeld coole neu.

01:55:41.030 --> 01:55:46.390
<v Ingo>Ja, sie sind immer noch relativ modern, was so die Konzepte angeht und die Frameworks außenrum,

01:55:46.710 --> 01:55:50.390
<v Ingo>die entwickeln sich immer noch weiter im Gegensatz zu sowas wie J2EI,

01:55:50.470 --> 01:55:52.630
<v Ingo>wo halt jetzt irgendwie, keine Ahnung.

01:55:52.870 --> 01:55:54.310
<v Ingo>Die sind die letzten 50 Jahre nichts getan.

01:55:54.390 --> 01:55:58.790
<v Gast 2>Ja, da tut sich auch was, aber es dauert halt immer Ewigkeiten und dann ist es halt immer noch super

01:55:58.790 --> 01:56:00.230
<v Gast 2>overengineierte Bloatsoftware.

01:56:00.390 --> 01:56:01.670
<v Ingo>Wie sieht es aus mit Groovy?

01:56:02.470 --> 01:56:07.590
<v Gast 2>Groovy kann man machen, wenn man so J2EI machen muss,

01:56:08.150 --> 01:56:12.150
<v Gast 2>weil es ist im Endeffekt halt ein Aufsatz auf dieses Java Enterprise-Gedöns,

01:56:12.230 --> 01:56:18.390
<v Gast 2>aber halt mit einer bisschen leichtgewichtigeren, also syntaktisch leichtgewichtigeren Programmiersprache

01:56:18.390 --> 01:56:19.110
<v Gast 2>Groovy.

01:56:21.670 --> 01:56:23.430
<v Ingo>Gibt es auch irgendwie noch eine andere für.

01:56:23.910 --> 01:56:25.670
<v Gast 1>JSON und JRuby kannst du genauso verwenden.

01:56:26.070 --> 01:56:30.230
<v Gast 1>Man kann vielleicht mal so ein bisschen, also die haben ja Grails als quasi Vorzeigeprojekt,

01:56:30.310 --> 01:56:32.710
<v Gast 1>was dann quasi Rails nachgebaut ist in Groovy.

01:56:33.110 --> 01:56:38.230
<v Ingo>Aber die haben das halt, die haben dann halt Rails nachgebaut, indem sie es auf Hibernate und Spring

01:56:38.230 --> 01:56:41.750
<v Ingo>aufgesetzt haben, was wiederum Aufsätze auf J2E sind.

01:56:42.230 --> 01:56:42.950
<v Ingo>Ja, richtig.

01:56:43.350 --> 01:56:45.510
<v Ingo>Also da wird es dann sehr schnell.

01:56:46.470 --> 01:56:51.350
<v Gast 1>Gerade wenn du die Möglichkeit hast, Jython, JSON ist, glaube ich, sogar noch ein bisschen besser

01:56:51.350 --> 01:56:55.270
<v Gast 1>implementiert als JRuby, aber beide kannst du auch wunderbar aus der JWM rausuchen.

01:56:55.350 --> 01:56:56.470
<v Gast 1>Du kannst Java-Objekte aufrufen.

01:56:56.710 --> 01:57:02.870
<v Ingo>Ich habe es umgekehrt interpretiert, dass so die JRuby-Implementierung weiter ist als die von JOSE.

01:57:03.190 --> 01:57:05.510
<v Gast 1>Also ich weiß eben, dass JSON recht viel mit Sachen ausgeliefert wird.

01:57:05.590 --> 01:57:08.790
<v Gast 1>Bei JRuby habe ich es nicht so gesehen, aber es könnte auch einfach an der Sprache liegen.

01:57:08.950 --> 01:57:13.750
<v Ingo>Also okay, ich bekomme wahrscheinlich auch von Community-Seite her einfach mehr mit,

01:57:13.830 --> 01:57:16.390
<v Ingo>was in der Ruby-Welt passiert als in der Python-Welt.

01:57:17.030 --> 01:57:23.830
<v Ingo>Daher habe ich jetzt irgendwie so gefühlt das Gefühl,

01:57:24.390 --> 01:57:26.710
<v Ingo>dass was wollte ich denn eigentlich sagen?

01:57:26.870 --> 01:57:31.990
<v Ingo>Also genau, dass die Implementierung von JSON weniger weit ist als die von Ruby,

01:57:32.070 --> 01:57:33.110
<v Ingo>aber kann ich mich auch täuschen.

01:57:33.270 --> 01:57:33.830
<v Ingo>Ja, auf jeden Fall.

01:57:34.070 --> 01:57:39.270
<v Gast 1>Ich fand immer, Groovy hat irgendwie nicht so, also die haben halt eine neue Sprache entwickelt.

01:57:39.430 --> 01:57:44.790
<v Gast 1>Die Sprache für sich ist auch gut, aber ich sehe nicht, dass sie Vorteile gegenüber JRuby oder Jyton hätte.

01:57:45.110 --> 01:57:49.990
<v Gast 1>Was halt schon zwei Sprachen sind mit vielen Libraries, da können wir auch zu der nächsten Sprache kommen,

01:57:50.070 --> 01:57:52.470
<v Gast 1>nämlich der Entwickler von Groovy.

01:57:52.950 --> 01:57:56.310
<v Ingo>Der hat auch mal gesagt, wenn er damals schon von Scala gewusst hätte,

01:57:56.390 --> 01:57:58.550
<v Ingo>dann hätte er das mit Groovy gar nicht erst angefangen.

01:57:59.510 --> 01:58:04.710
<v Gast 2>Und Scala ist auch eine Sprache, die ich eigentlich sehr mag, und auch schon ein Webprojekt hiermit

01:58:04.710 --> 01:58:05.750
<v Gast 2>implementiert habe.

01:58:06.390 --> 01:58:08.630
<v Gast 2>Und mit dem Lift-Framework.

01:58:08.710 --> 01:58:15.430
<v Gast 2>Und ja, das ist eigentlich, sie ist genauso schnell wie Java, ist auch statisch typisiert.

01:58:15.910 --> 01:58:19.030
<v Gast 2>Allerdings mit Type-Inference, das heißt, man muss, wenn man den Code runterschreibt,

01:58:19.110 --> 01:58:23.910
<v Gast 2>die Typ-Deklaration nicht überall hinschreiben, sondern an den meisten Stellen erkennt es der Compiler,

01:58:24.150 --> 01:58:28.550
<v Gast 2>was man da von Typ haben möchte und kann das dementsprechend auch schon schön optimieren.

01:58:28.790 --> 01:58:35.030
<v Gast 2>Und man kann ein bisschen eigentlich in einer typssicheren statischen Programmiersprache quasi programmieren

01:58:35.030 --> 01:58:40.790
<v Gast 2>wie in einer dynamischen, weil man halt sehr viele Konstrukte hat, die andere statisch typisierte

01:58:40.790 --> 01:58:42.230
<v Gast 2>Programmiersprachen jetzt nicht anbieten.

01:58:42.310 --> 01:58:47.510
<v Ingo>Gerade so Sachen, viele funktionale Konzepte, Pattern Matching, Actors,

01:58:48.630 --> 01:58:55.110
<v Ingo>auch viele Möglichkeiten, native Domain-Specific Languages zu implementieren.

01:58:56.550 --> 01:58:59.910
<v Ingo>Und also zum Beispiel auch die ACTA-Sache, die komplette Syntax für den ACTA,

01:58:59.990 --> 01:59:02.150
<v Ingo>das ist eigentlich in der Bibliothek implementiert.

01:59:02.230 --> 01:59:07.190
<v Gast 2>Und das Schöne an der Sprache ist halt auch, dass der Sprachkern relativ klein ist, aber gut erweiterbar ist.

01:59:07.590 --> 01:59:14.390
<v Gast 2>Und ja, kompiliert so Bytecode runter, der zu Java kompatibel ist und man kann halt quasi aus

01:59:14.390 --> 01:59:19.270
<v Gast 2>Skala raus problemlos Java-Bibliotheken verwenden und mit denen arbeiten,

01:59:19.350 --> 01:59:22.070
<v Gast 2>wie wenn man jetzt direkt nativ in Java wäre.

01:59:22.390 --> 01:59:24.550
<v Gast 2>Und umgekehrt auch mit ein paar Ausnahmen.

01:59:24.630 --> 01:59:27.910
<v Ingo>Also ich glaube, gerade so Sachen wie Clojure und so, da wird dann halt irgendwie,

01:59:28.070 --> 01:59:33.510
<v Ingo>da werden dann halt anonyme innere Klassen und Interfaces generiert unter der Haube.

01:59:33.830 --> 01:59:35.830
<v Gast 2>Das geht dann nicht ohne weiteres.

01:59:36.550 --> 01:59:39.830
<v Gast 1>Wobei, da ist immer die Sache so, wie wir mit Java-Bibliotheken arbeiten.

01:59:40.070 --> 01:59:42.470
<v Gast 1>Das Schlimme an Java sind ja eigentlich die Bibliotheken, die einfach so sind.

01:59:42.710 --> 01:59:46.310
<v Gast 2>Aber in Scala gibt es halt sehr viele sehr gute Rapper,

01:59:47.730 --> 01:59:54.210
<v Gast 2>Die die Java-Bibliotheken auf eine Ebene bringen, dass man sie echt bequem bedienen kann,

01:59:54.290 --> 01:59:55.410
<v Gast 2>was eigentlich echt natt ist.

01:59:56.130 --> 02:00:00.130
<v Gast 1>Dieser ganze Factory-Wahnsinn und so, der kommt ja eigentlich so daher, sag ich mal.

02:00:00.850 --> 02:00:03.490
<v Gast 1>Kann man das sagen, dass Java diesen Factory-Wahnsinn erfunden hat?

02:00:03.570 --> 02:00:03.650
<v Gast 1>Ja.

02:00:03.730 --> 02:00:04.530
<v Unbekannt>Und Over Engineering?

02:00:05.410 --> 02:00:08.450
<v Ingo>Also wir hatten nochmal diesen Name-Generator, der auch nur.

02:00:11.410 --> 02:00:13.810
<v Ingo>Also da komme ich nachher auch noch zu dem Lesefu.

02:00:14.130 --> 02:00:17.010
<v Gast 2>Ich glaube, ich bin hier, habe hier viel zu viel Lesefu-Tests und gemacht.

02:00:17.330 --> 02:00:23.090
<v Ingo>Okay, dann, man kann die Programmiersprachen zwar rein benutzen, aber die meisten haben auch noch Frameworks,

02:00:23.170 --> 02:00:24.130
<v Ingo>dass vieles einfacher geht.

02:00:24.210 --> 02:00:27.570
<v Ingo>Wir haben die Frameworks eigentlich jetzt so in der Diskussion schon alle mal gefunden.

02:00:27.890 --> 02:00:28.850
<v Gast 2>Können Sie mal noch kurz ansprechen.

02:00:29.330 --> 02:00:35.810
<v Ingo>Genau, also Ruby hat Rails unter anderem, was schon, also Ruby on Rails.

02:00:36.370 --> 02:00:37.170
<v Gast 1>Würde ich nicht mit anfangen.

02:00:38.210 --> 02:00:42.210
<v Gast 2>Ja, also ich muss dazu sagen, ich hab, bei mir war das so, Bachelor,

02:00:42.290 --> 02:00:46.130
<v Gast 2>zweites Semester, habe ich gedacht, ich lerne jetzt mal Rails und hab mir ein Rails-Buch gekauft,

02:00:46.210 --> 02:00:47.810
<v Gast 2>ich konnte keine Zeile Ruby.

02:00:48.290 --> 02:00:49.250
<v Felix>Und hast gewonnen.

02:00:50.210 --> 02:00:56.450
<v Gast 2>Ich hab's, also ich kam nicht damit zurecht, dass dieses Buch grundlegend versucht hat,

02:00:56.530 --> 02:01:01.890
<v Gast 2>mir das Framework beizubringen, ohne die Programmiersprache, auf der es aufbaut,

02:01:02.210 --> 02:01:03.730
<v Gast 2>näher zu betrachten.

02:01:04.050 --> 02:01:09.890
<v Gast 2>Und ich kam auch nicht damit klar, dass sehr viel Magie, die ich zu dem Zeitpunkt noch nicht verstanden habe,

02:01:10.210 --> 02:01:11.570
<v Gast 2>unter der Haube passiert.

02:01:13.170 --> 02:01:17.250
<v Gast 2>Ja, und ich wollte eigentlich eher wissen, was da gerade passiert und hab dann angefangen,

02:01:17.330 --> 02:01:19.250
<v Gast 2>richtig Ruby selbst zu lernen.

02:01:19.490 --> 02:01:25.730
<v Ingo>Und hab später dann nochmal so mit Rails mal so einen Vortrag drüber gehalten und hab mir das mal angeguckt.

02:01:26.450 --> 02:01:31.970
<v Gast 2>Wenn man Webentwicklung schon grundlegend versteht und wenn man schon grundlegend die Patterns dahinter

02:01:31.970 --> 02:01:36.450
<v Gast 2>versteht, also im speziellen Fall Model View Controller und wenn man Ruby kann und mal,

02:01:36.530 --> 02:01:42.530
<v Gast 2>sagen wir mal, mehr als mittelgroße Webprojekte machen will, die tatsächlich auch mal die Features,

02:01:42.610 --> 02:01:46.370
<v Gast 2>die Rails einem anbietet, auch wirklich ausnutzen, dann ist Rails ein cooles Framework.

02:01:46.530 --> 02:01:51.250
<v Gast 1>Genau, es zwingt dich halt auch sauber zu arbeiten, allein durch die ganze Architektur und es ist echt nichts

02:01:51.250 --> 02:01:51.970
<v Gast 1>für Anfänger.

02:01:52.050 --> 02:01:55.810
<v Gast 1>Also, wie gesagt, du musst wissen, was MVC ist, du musst deinen Stack im Grunde kennen,

02:01:55.890 --> 02:01:58.370
<v Gast 1>du musst mit der Kommandozeile gut vertraut sein.

02:01:58.450 --> 02:02:05.250
<v Gast 1>Und es gab ganz am Anfang immer so einen Blog in 15 Minuten oder sowas, wo du dann dein Zeug scaffoldest.

02:02:05.490 --> 02:02:08.850
<v Gast 1>Und es war irgendwie vor drei Jahren eventuell noch möglich, einfach,

02:02:08.930 --> 02:02:12.610
<v Gast 1>aber heutzutage ist Rail so groß und komplex und echt ein super Framework,

02:02:12.690 --> 02:02:15.970
<v Gast 1>wenn du komplexe Sachen mitmachen willst, aber für einfache Sachen würde ich echt von abraten.

02:02:16.290 --> 02:02:18.130
<v Ingo>Okay, wenn man nicht komplex will, was nimmt man dann?

02:02:18.290 --> 02:02:18.770
<v Ingo>Sinatra.

02:02:18.930 --> 02:02:19.490
<v Ingo>Sinatra.

02:02:19.570 --> 02:02:24.850
<v Gast 2>Oder was ich hier auch noch mit drin habe, eine Bibliothek, die auf Sinatra aufsetzt,

02:02:24.930 --> 02:02:28.770
<v Gast 2>aber noch so ein bisschen ein paar Bequemlichkeitshelfer mitbringt.

02:02:28.850 --> 02:02:30.050
<v Ingo>Das wäre Pedrino.

02:02:31.570 --> 02:02:35.890
<v Gast 2>Und ja, Sinatra an sich ist eigentlich echt bequem, weil man sagt hier irgendwie,

02:02:35.970 --> 02:02:42.130
<v Gast 2>ich möchte hier bei einem Get-Request auf diesem Pfad diese Funktion ausführen und die returnt dann irgendwie

02:02:42.130 --> 02:02:43.250
<v Gast 2>Code und dann funktioniert das.

02:02:43.330 --> 02:02:46.210
<v Ingo>Und das und Hello World sind dann halt irgendwie drei Zellen-Code.

02:02:46.770 --> 02:02:47.170
<v Ingo>Richtig.

02:02:47.330 --> 02:02:52.130
<v Gast 1>Und ist auch, ich finde Sinatra auch super, gerade zum Lernen, wenn du einfache Sachen machen willst,

02:02:52.290 --> 02:02:55.170
<v Gast 1>einfach wenn du quasi irgendwas im Webbrowser darstellen willst.

02:02:55.250 --> 02:03:01.170
<v Gast 1>Das ist so eine der am wenigsten komplexen Möglichkeiten, von deinem Code in einen Webbrowser zu kommen.

02:03:01.490 --> 02:03:06.610
<v Gast 1>Du gibst nur einen String zurück und fängst dann mit Templates zu arbeiten und kannst dir damit was aufbauen,

02:03:06.770 --> 02:03:08.450
<v Gast 1>er zwingt dich nicht sauber zu arbeiten.

02:03:08.610 --> 02:03:11.730
<v Gast 1>Also du kannst massenweise Code in deine Templates packen, wenn du willst.

02:03:12.610 --> 02:03:13.410
<v Unbekannt>Muss halt deine.

02:03:14.130 --> 02:03:19.490
<v Gast 2>Also man muss sich tatsächlich vielleicht für so Beginnerprojekte, in denen man sie irgendwie mal was

02:03:19.490 --> 02:03:23.570
<v Gast 2>Funktionierendes hinhacken will, dann ist es ja nicht so besonders wichtig,

02:03:23.650 --> 02:03:25.810
<v Gast 2>weil das sind dann meistens eh so Wegwerfprojekte.

02:03:25.890 --> 02:03:26.290
<v Gast 2>Richtig.

02:03:26.530 --> 02:03:30.210
<v Ingo>Aber später sollte man sich dann halt schon Gedanken drüber machen, wie man seine Applikation strukturiert.

02:03:30.450 --> 02:03:34.690
<v Gast 1>Oder wenn du mal eine API bauen willst, ist es zum Beispiel eine echt super Möglichkeit, Sinatra zu benutzen.

02:03:34.770 --> 02:03:39.490
<v Gast 1>Padrino bin ich ein bisschen, er bietet dir schon viele Helfer an, aber er macht es dann halt auch wieder

02:03:39.490 --> 02:03:40.130
<v Gast 1>komplex.

02:03:41.090 --> 02:03:45.970
<v Gast 2>Ja, also wenn man es einfache Projekte oder so, weil ein bisschen mehr haben will,

02:03:46.050 --> 02:03:47.490
<v Gast 2>dann ist Sinatra wahrscheinlich ganz okay.

02:03:47.570 --> 02:03:51.730
<v Gast 2>Und wenn man vielleicht so noch komplexere Sachen haben will, dann sollte man sich vielleicht mal Petrino

02:03:51.730 --> 02:03:51.890
<v Gast 2>anbieten.

02:03:51.970 --> 02:03:54.530
<v Gast 1>Also irgendwann baust du die aus Sinatra Padrino, wenn dein Objekt.

02:03:55.170 --> 02:03:58.930
<v Ingo>Genau, Petrino bringt halt dann schon viele Third-Party-Bibliotheken mit,

02:03:59.170 --> 02:04:01.330
<v Ingo>so als Default, die man dann einsetzen kann.

02:04:03.170 --> 02:04:05.650
<v Gast 2>Das Schöne ist, das skaliert eigentlich ganz gut.

02:04:05.730 --> 02:04:09.330
<v Gast 2>Man kann da anfangen, die komplette Anwendung in Sinatra zu schreiben,

02:04:09.410 --> 02:04:12.210
<v Gast 2>wenn man dann merkt, oh, jetzt brauche ich eigentlich doch einen Großteil von Petrino,

02:04:12.450 --> 02:04:15.730
<v Gast 2>dann kann man anfangen, das Zeug auf Padrino einzusetzen.

02:04:15.890 --> 02:04:17.810
<v Unbekannt>Und ja, richtig.

02:04:18.370 --> 02:04:20.610
<v Ingo>Also ich denke, das ist dann auch ganz nett, wenn man da so weiter.

02:04:20.850 --> 02:04:25.650
<v Ingo>Okay, das waren die Ruby-Frameworks, wenn ich was mit Python machen will, nehme ich Django.

02:04:26.050 --> 02:04:29.970
<v Gast 2>Genau, also das, was Rails unter Ruby ist, ist dann Django unter Python.

02:04:30.050 --> 02:04:30.770
<v Gast 2>Genau, das ist auch Discord.

02:04:31.250 --> 02:04:33.330
<v Gast 2>Wahrscheinlich ähnlich groß, ähnlich komplex.

02:04:34.050 --> 02:04:35.410
<v Gast 1>Also ich habe es ein Admin-Interface.

02:04:35.570 --> 02:04:39.890
<v Felix>Ich habe es mir angeschaut und es war nicht so groß für das, was ich machen wollte und deswegen habe ich mir

02:04:39.890 --> 02:04:40.690
<v Felix>was anderes genommen.

02:04:41.170 --> 02:04:43.730
<v Ingo>Aber viele, viele Web-Projekte benutzen das.

02:04:44.850 --> 02:04:47.410
<v Ingo>Und es soll wohl auch relativ einfach sein, der Einstieg da drin.

02:04:47.570 --> 02:04:50.850
<v Felix>Also du kannst, glaube ich, so ein Init machen und dann macht er irgendwie schon das Richtige und dann hast du

02:04:50.850 --> 02:04:51.570
<v Felix>deine ganze Struktur schon.

02:04:51.970 --> 02:04:55.490
<v Gast 1>Scaffoldet ihr das alles auch zurecht, so ähnlich wie Rails, nur dass Django noch,

02:04:55.570 --> 02:04:58.210
<v Gast 1>glaube ich, ein bisschen angenehmer ist als Rails gerade auch was.

02:04:58.370 --> 02:05:01.490
<v Gast 1>Also sie haben halt zum Beispiel eine Admin-Konsole standardmäßig in den Apps drin.

02:05:01.650 --> 02:05:07.170
<v Gast 1>Bedeutet, du kannst, ohne dass du da irgendwas machst, deine Objekte quasi da per Mausklick verwalten.

02:05:07.730 --> 02:05:10.450
<v Ingo>Was kannst du für Anfänger?

02:05:10.690 --> 02:05:12.130
<v Gast 1>Ja, kannst du so debuggen.

02:05:12.290 --> 02:05:13.330
<v Gast 1>Richtig, und ja.

02:05:14.850 --> 02:05:18.850
<v Gast 1>Die sind beide auf so CRUD-Anwendungen spezialisiert, Create Read, Update, Delete-Sachen.

02:05:19.010 --> 02:05:24.530
<v Gast 1>Nur dass Django halt ähnlich wie Drupal im Grunde auch so eine Möglichkeit mitbringend,

02:05:24.610 --> 02:05:27.010
<v Gast 1>in Anführungszeichen, ein Content zu managen.

02:05:27.250 --> 02:05:31.410
<v Gast 1>Jetzt nicht wirklich als vollfähiges CMS, aber ganz cool eigentlich.

02:05:31.890 --> 02:05:38.050
<v Felix>Okay, Django, wenn man was mit Path machen will oder Flask, was ich mir kurz nur angeschaut habe.

02:05:38.850 --> 02:05:42.850
<v Gast 2>Flask ist im Endeffekt sowas wie Sinatra für Ruby, kann man sagen.

02:05:43.010 --> 02:05:48.210
<v Gast 2>Also auch leichtgewichtiger, auch konzeptionell einfacher zu verstehen.

02:05:48.290 --> 02:05:51.170
<v Gast 2>Man bekommt relativ schnell was Funktionierendes hin.

02:05:51.730 --> 02:05:57.010
<v Ingo>Man muss sich allerdings halt auch mehr Gedanken darüber machen, wie man seine Anwendung strukturiert,

02:05:57.170 --> 02:05:59.570
<v Ingo>weil halt das Framework an sich nicht besonders viel vorgibt.

02:06:00.130 --> 02:06:01.410
<v Gast 1>Es ist ja auch zentriert auf so Routen.

02:06:01.490 --> 02:06:05.170
<v Gast 1>Also du sagst dann auch, die Route Slash macht, soll jetzt irgendwie ein Stück Code ausführen.

02:06:05.650 --> 02:06:08.050
<v Gast 1>Ich finde das eine der schönsten Sachen für so kleine Webprojekte.

02:06:08.530 --> 02:06:09.250
<v Gast 1>Mehr brauchst du echt.

02:06:09.570 --> 02:06:15.810
<v Felix>Ja, und WebPy ist dann quasi noch, es macht das noch ein bisschen einfacher,

02:06:15.970 --> 02:06:20.530
<v Felix>wirklich, du machst dann quasi eine, du sagst oben ganz kurz, welche Routen du haben willst und dann machst du

02:06:20.530 --> 02:06:26.290
<v Felix>bloß noch Klassen in der gleichen Pfeil, die halt einfach drauf zeigen und dann schaut da durch dein Namespace

02:06:26.290 --> 02:06:28.530
<v Felix>durch und nimmt einfach die Klassen, die du da oben definiert hast.

02:06:29.250 --> 02:06:30.290
<v Gast 1>Was waren das bei Java?

02:06:30.610 --> 02:06:33.490
<v Gast 1>Waren das, wo du auch Get und Post immer implementierst bist.

02:06:34.130 --> 02:06:35.090
<v Gast 1>Das ist ein Survelets, ja.

02:06:35.330 --> 02:06:36.850
<v Gast 1>Es erinnert mich ein bisschen an Survelets.

02:06:37.090 --> 02:06:42.130
<v Gast 1>Du hast eine Map jetzt auf eine Klasse und dann hast du do Post-to-Get genug.

02:06:42.290 --> 02:06:43.570
<v Gast 2>Mit Annotations halt, ja.

02:06:43.730 --> 02:06:44.290
<v Gast 2>Ja, also.

02:06:44.930 --> 02:06:49.170
<v Felix>Es funktioniert tatsächlich echt schnell, dass da irgendwie das Richtige passiert schon.

02:06:49.410 --> 02:06:50.930
<v Gast 1>Du brauchst ja auch kaum mehr im Normalfall.

02:06:51.410 --> 02:06:53.970
<v Felix>Je nachdem, was du machen willst, brauchst du wahrscheinlich nicht mehr, ja.

02:06:54.290 --> 02:06:55.810
<v Felix>Und das hast du halt ganz oft.

02:06:56.130 --> 02:07:02.850
<v Felix>Du brauchst zum Beispiel, meistens willst du ja auch nicht, dass es irgendwie auf so auf deinem iPhone

02:07:02.850 --> 02:07:05.890
<v Felix>genauso richtig aussieht, sondern du willst meistens nur irgendwie,

02:07:05.970 --> 02:07:07.090
<v Felix>dass jetzt gerade was passiert.

02:07:07.250 --> 02:07:11.730
<v Felix>Meistens willst du eigentlich nur eine GUI haben, weil du nicht GUI programmieren willst.

02:07:12.290 --> 02:07:16.690
<v Felix>Und da bietet sich halt einfach dein so Webkram an, weil das halt sofort funktioniert.

02:07:17.410 --> 02:07:22.290
<v Felix>Und das sieht auch meistens gar nicht so schlecht aus, weil dein Browser ja halt nicht so schlecht aussieht.

02:07:22.690 --> 02:07:23.090
<v Felix>Richtig.

02:07:23.650 --> 02:07:27.970
<v Felix>Und dafür so funktionieren eigentlich auch die meisten Projekte, die ich gemacht habe.

02:07:28.050 --> 02:07:29.570
<v Felix>Einfach die GUI ersetzen mit Web.

02:07:30.050 --> 02:07:31.410
<v Gast 1>Ist auch cool.

02:07:31.650 --> 02:07:32.370
<v Gast 1>Alle lieben Geld.

02:07:32.610 --> 02:07:35.250
<v Unbekannt>Genau, ich habe nämlich, was halt auch super einfach ist.

02:07:35.570 --> 02:07:41.330
<v Ingo>Was ich gerade noch hinzugefügt habe, was ich vorhin mit Web.py verwechselt habe, wäre Web2Pi.

02:07:41.570 --> 02:07:41.810
<v Ingo>Web.

02:07:42.290 --> 02:07:42.530
<v Ingo>Oh.

02:07:43.410 --> 02:07:44.450
<v Unbekannt>Oder ist es dasselbe?

02:07:44.850 --> 02:07:45.410
<v Unbekannt>Nee, ist was anderes.

02:07:46.290 --> 02:07:51.890
<v Gast 2>Genau, Web2Pi ist nämlich auch so ein Battery-Included-Framework, wo man halt im Endeffekt auch schon so eine

02:07:51.890 --> 02:07:57.730
<v Gast 2>kleine IDE mit integriert hat und ein Admin-Interface und Benutzerverwaltung und so Geschichten.

02:07:57.970 --> 02:08:03.330
<v Gast 2>Und das ist auch, also ein Kumpel von mir nimmt das sehr gerne und programmiert damit auf der Google App

02:08:03.410 --> 02:08:03.970
<v Gast 2>Engine.

02:08:05.490 --> 02:08:09.490
<v Gast 2>Und also das scheint halt schon sehr, sehr viel von Haus aus zu machen,

02:08:09.570 --> 02:08:11.250
<v Gast 2>was man bei vielen Web-Anwendungen braucht.

02:08:11.330 --> 02:08:16.850
<v Ingo>Gerade so User-Verwaltung, Admin-Interface, Authentifizierung und so Geschichten.

02:08:17.250 --> 02:08:19.730
<v Gast 1>Und die haben auch eine Tag-Cloud auf ihrer Webseite.

02:08:20.050 --> 02:08:20.770
<v Gast 1>Dann muss es gut sein.

02:08:20.850 --> 02:08:23.010
<v Felix>Wenn die so eine Tag-Cloud haben, dann sind die so relevant.

02:08:24.850 --> 02:08:26.290
<v Gast 2>Die Dokumentation ist tatsächlich auch.

02:08:27.410 --> 02:08:28.290
<v Felix>Soap steht drin.

02:08:28.610 --> 02:08:29.410
<v Felix>Oh, Angst davor.

02:08:29.730 --> 02:08:30.770
<v Unbekannt>Steht auch RTF drin.

02:08:30.930 --> 02:08:31.490
<v Unbekannt>RTFM?

02:08:31.890 --> 02:08:32.610
<v Unbekannt>Nee, RTF nur.

02:08:32.770 --> 02:08:34.850
<v Felix>Ach, Rich Text Format, das kann man auch gebrauchen.

02:08:35.010 --> 02:08:35.330
<v Felix>Richtig.

02:08:35.410 --> 02:08:38.850
<v Gast 1>Da kannst du quasi aus WordPad direkt Web-Anwendungen schreiben.

02:08:39.090 --> 02:08:39.410
<v Gast 1>Super.

02:08:40.290 --> 02:08:42.770
<v Felix>Oder du kannst deine Webseite in Word exportieren.

02:08:43.090 --> 02:08:46.530
<v Gast 1>Und sie haben auch drauf geschrieben, Database Abstraction Layer JSON-RPC.

02:08:46.770 --> 02:08:47.010
<v Gast 1>Sehr gut.

02:08:48.690 --> 02:08:52.610
<v Felix>Aber JSON-RPC hast du ja quasi mit Python schon dabei.

02:08:52.690 --> 02:08:53.170
<v Felix>Das ist richtig.

02:08:53.890 --> 02:08:57.250
<v Gast 1>Quasi der serialisiert Code nur nach JSON rein und evaluiert ihn direkt wieder selber.

02:08:57.410 --> 02:08:59.810
<v Felix>Nee, also du hast JSON-RPC als Library.

02:09:02.530 --> 02:09:07.170
<v Felix>Im WebPy ist das erste, was du siehst, ein Stück Source-Code, was Hello World implementiert.

02:09:07.810 --> 02:09:07.890
<v Felix>Okay.

02:09:08.850 --> 02:09:14.450
<v Ingo>Hier ist es halt auch so, dass man sich da irgendwie in der Karte ohne Tagation ein bisschen seine Datenlogik

02:09:14.450 --> 02:09:17.010
<v Ingo>zusammenklicken kann und dann dagegen programmieren kann.

02:09:17.090 --> 02:09:18.770
<v Ingo>Also so ein bisschen integrierter.

02:09:19.090 --> 02:09:23.170
<v Gast 2>Ich habe es jetzt selber noch nicht eingesetzt, aber es soll auch ganz cool sein.

02:09:23.410 --> 02:09:23.970
<v Gast 2>OpenID.

02:09:26.210 --> 02:09:27.410
<v Ingo>Das muss man heute können.

02:09:28.130 --> 02:09:30.610
<v Gast 1>So eine Tech-Cloud, da werde ich auch ganz nostalgisch eigentlich gerade.

02:09:30.850 --> 02:09:31.810
<v Ingo>Rapid Prototyping.

02:09:32.130 --> 02:09:35.410
<v Felix>Rapid, Rapid Model View Controller, so groß.

02:09:35.490 --> 02:09:36.050
<v Felix>SQL.

02:09:37.330 --> 02:09:41.250
<v Felix>Jedenfalls WebPi finde ich cooler als Web2Pi.

02:09:41.570 --> 02:09:43.650
<v Felix>Sag ich jetzt einfach, obwohl ich Web2Pi nicht kenne.

02:09:44.290 --> 02:09:46.050
<v Ingo>Ich habe jetzt Hunger auf den Kuchen.

02:09:46.290 --> 02:09:46.530
<v Ingo>Los.

02:09:47.410 --> 02:09:48.290
<v Ingo>Connect?

02:09:48.850 --> 02:09:51.650
<v Gast 2>Genau, wir hatten das vorhin schon von Node.js.

02:09:52.770 --> 02:09:53.010
<v Gast 2>Ja.

02:09:53.170 --> 02:09:53.330
<v Gast 2>Okay.

02:09:53.810 --> 02:09:55.730
<v Gast 2>Das ist immer noch die Standard-Middleware auf Node.

02:09:56.050 --> 02:09:56.770
<v Gast 2>Standard, Middleware.

02:09:57.490 --> 02:09:59.970
<v Gast 2>Genau, ich habe das vorher schon mal ungefähr erklärt, was es macht,

02:10:00.050 --> 02:10:02.290
<v Gast 2>deshalb will ich da gar nicht mehr so viel zu sagen.

02:10:02.370 --> 02:10:09.330
<v Gast 2>Also Connect ist halt die Standard-Middleware auf Node.js und darauf aufbauend ist dann Express,

02:10:10.210 --> 02:10:15.650
<v Gast 2>was so ein Web-Framework ist, was ähnlich wie Flask oder Sinatra agiert,

02:10:15.890 --> 02:10:20.050
<v Gast 2>was von der API eher sehr an Sinatra sich orientiert.

02:10:20.290 --> 02:10:23.250
<v Felix>Also ich finde ja fies, dass der Source-Code, den sie da zeigen, nicht funktioniert.

02:10:23.490 --> 02:10:23.810
<v Felix>Welcher?

02:10:24.290 --> 02:10:26.210
<v Felix>Auf express.js.com.

02:10:26.370 --> 02:10:28.290
<v Felix>Weil da fehlt irgendwo der Require.

02:10:29.170 --> 02:10:29.490
<v Felix>Ja.

02:10:29.890 --> 02:10:31.650
<v Felix>Und das ist die Fuckers.

02:10:31.730 --> 02:10:33.650
<v Ingo>Ja, aber da muss man halt wissen, dass man das Framework.

02:10:33.890 --> 02:10:35.090
<v Felix>Klar, das muss man halt wissen.

02:10:35.330 --> 02:10:36.850
<v Felix>Wenn ihr einer Copy-and-Paste mal habt.

02:10:37.010 --> 02:10:40.530
<v Ingo>Aha, also Code einfach wegkopieren und ausführen geht ja auch nicht.

02:10:40.690 --> 02:10:41.330
<v Ingo>Ja, ja, okay.

02:10:41.490 --> 02:10:43.570
<v Gast 2>Das Express ist nicht, äh, ja, das weiß ich.

02:10:44.130 --> 02:10:44.290
<v Gast 2>Gut.

02:10:44.530 --> 02:10:45.570
<v Ingo>Für Skala gibt's.

02:10:45.890 --> 02:10:46.210
<v Ingo>Lift.

02:10:46.450 --> 02:10:46.690
<v Ingo>Gut.

02:10:46.850 --> 02:10:49.570
<v Gast 2>Das Lift-Framework ist sehr cool gemacht.

02:10:50.210 --> 02:10:54.450
<v Ingo>Hat ja auch echt als eines der ersten Frameworks Support für Echtzeitweb-Anwendungen mit drin.

02:10:54.530 --> 02:11:01.170
<v Ingo>Also die haben da diese Comet Actors und die haben halt schon sehr früh,

02:11:01.330 --> 02:11:06.770
<v Ingo>also ich glaube fast von Anfang an, hatten die so Support für so echt performante,

02:11:07.650 --> 02:11:10.370
<v Ingo>mehr über Ajax rausgehende Sorte.

02:11:10.610 --> 02:11:11.250
<v Ingo>Appscale.

02:11:12.210 --> 02:11:17.570
<v Gast 2>Das Play-Framework ist jetzt auch das einzige Framework, was man irgendwie für Java einsetzen könnte,

02:11:17.650 --> 02:11:20.290
<v Gast 2>aber ich glaube, das macht auch nur Spaß, wenn man es mit Skala verwendet,

02:11:20.450 --> 02:11:23.970
<v Gast 2>weil die Sprache halt schon um einiges flexibler ist.

02:11:24.850 --> 02:11:30.850
<v Ingo>Aber scheint auch echt cool zu sein, wenn man denn unbedingt Java machen will,

02:11:30.930 --> 02:11:36.210
<v Ingo>dann kann man oder muss, dann kann man ja wenigstens vielleicht ein modernes Webframework einsetzen und muss

02:11:36.210 --> 02:11:40.450
<v Ingo>nicht unbedingt direkt auf den J2E Grad aufsetzen.

02:11:43.090 --> 02:11:43.650
<v Ingo>Kaninchen.

02:11:43.810 --> 02:11:44.050
<v Ingo>Genau.

02:11:44.210 --> 02:11:44.930
<v Ingo>Grails hatten wir.

02:11:45.330 --> 02:11:46.050
<v Ingo>Kaninchen sind lecker, ja.

02:11:46.130 --> 02:11:47.330
<v Gast 2>Grails hatten wir vorhin schon angesprochen.

02:11:47.650 --> 02:11:49.490
<v Ingo>Es ist bald wieder Ostern, da gibt es manchmal Kaninchen.

02:11:49.890 --> 02:11:50.210
<v Ingo>Sehr gut.

02:11:51.490 --> 02:11:53.090
<v Ingo>Ja, Grails hat mir vorhin schon angesprochen.

02:11:53.250 --> 02:11:58.530
<v Gast 2>Kriegst du ein bisschen Groovy auch auf der JVM und wenn man dann irgendwie PHP machen möchte oder so,

02:11:58.610 --> 02:12:00.370
<v Gast 2>gibt es bestimmt auch andere tollere Frameworks.

02:12:00.450 --> 02:12:03.330
<v Ingo>Ich habe jetzt hier einfach mal Symphony reingeschrieben, weil mir das gerade eingefallen ist.

02:12:03.570 --> 02:12:06.450
<v Gast 1>Das bauen sie, ich glaube, in Drupal ein, in Drupal 8.

02:12:06.850 --> 02:12:09.730
<v Gast 2>Ja, Drupal 8 soll auf Symphony basieren, oder?

02:12:09.810 --> 02:12:10.610
<v Gast 2>Habe ich das irgendwie?

02:12:10.930 --> 02:12:11.570
<v Gast 2>Irgendwie so.

02:12:12.850 --> 02:12:13.810
<v Ingo>Das klingt nach einem Gewinn.

02:12:15.330 --> 02:12:18.690
<v Ingo>Gut, dann schließen wir mal erstmal das Webthema so ein bisschen ab.

02:12:18.850 --> 02:12:23.410
<v Ingo>Das war jetzt die Serverseite und wenn euch das interessiert, dann können wir ja nächste Woche mit der

02:12:23.410 --> 02:12:25.810
<v Ingo>Client-Seite und allgemein mit Hosting weitermachen.

02:12:26.050 --> 02:12:27.890
<v Gast 2>Sollte es euch nicht interessieren, dann schreibt es mal.

02:12:28.210 --> 02:12:28.930
<v Gast 2>Nee, mal was trotzdem.

02:12:29.170 --> 02:12:30.930
<v Gast 2>Dann schreibt es uns mal in die Kommentare.

02:12:31.090 --> 02:12:32.370
<v Felix>Oder ihr habt ein besseres Thema.

02:12:32.850 --> 02:12:35.890
<v Ingo>Und dann machen wir es nächstes Mal vielleicht trotzdem.

02:12:36.130 --> 02:12:38.050
<v Ingo>Was habt ihr denn die Woche gelesen?

02:12:38.210 --> 02:12:39.410
<v Felix>Nur Flei, die hat was gelesen.

02:12:39.890 --> 02:12:41.410
<v Gast 2>Nein, Marc hat bestimmt auch was gelesen.

02:12:41.490 --> 02:12:42.050
<v Gast 2>Marc hat nichts gemacht.

02:12:42.850 --> 02:12:43.890
<v Ingo>Fang nochmal trotzdem an.

02:12:44.450 --> 02:12:46.050
<v Ingo>Du hast mit Nonnen irgendwas gemacht.

02:12:46.210 --> 02:12:46.930
<v Ingo>Nichts mit Nonnen.

02:12:47.090 --> 02:12:48.450
<v Felix>Warum hast du was mit Nonnen gemacht?

02:12:48.530 --> 02:12:50.210
<v Gast 2>Ich habe nichts mit Nonnen gemacht, sagst du dir.

02:12:52.050 --> 02:12:56.130
<v Gast 2>Ich habe hier einen Blogpost von Steve Yeaggy, spricht mir den, glaube ich, aus.

02:12:56.690 --> 02:12:58.450
<v Gast 2>Execution in the Kingdom of Nouns.

02:12:58.610 --> 02:13:04.370
<v Gast 2>Und das ist ein sehr, sehr schöner Run über Java und über

02:13:05.570 --> 02:13:10.450
<v Gast 2>die Klassenzentriertheit von Java und dass es keine anonymen Funktionen in Java gibt.

02:13:10.530 --> 02:13:14.690
<v Gast 2>Und der ist einfach sehr, sehr schön geschrieben und sollte man sich einfach mal durchlesen.

02:13:14.770 --> 02:13:16.930
<v Gast 2>Also ich hatte sehr viel Spaß beim Lesen.

02:13:17.010 --> 02:13:19.330
<v Gast 2>Und auch später so die Codebeispiele hier so.

02:13:20.450 --> 02:13:20.690
<v Gast 2>Nonnen.

02:13:21.010 --> 02:13:25.330
<v Gast 2>Nein, nicht Nonnen, aber hier so Throw New Horseshoe Nail, not found, exception.

02:13:25.410 --> 02:13:26.610
<v Ingo>Und dann hier geht es weiter mit.

02:13:27.090 --> 02:13:28.210
<v Felix>Oh ja, das sieht richtig aus.

02:13:28.290 --> 02:13:29.090
<v Gast 2>Ja, genau, das sieht noch jobbar aus.

02:13:29.250 --> 02:13:31.490
<v Felix>Battle Notification Bill, da hört sich auf jeden Fall gut an.

02:13:31.970 --> 02:13:32.450
<v Felix>Genau.

02:13:32.610 --> 02:13:37.170
<v Gast 2>Also das ist auf jeden Fall ein sehr amüsant zu lesen around.

02:13:37.650 --> 02:13:41.010
<v Gast 2>Ich würde mich freuen, mehr von dieser Sorte zu lesen.

02:13:41.250 --> 02:13:41.730
<v Gast 2>Sehr gut.

02:13:41.810 --> 02:13:45.890
<v Gast 1>Dann sag ich mal was von Pat Honnessy.

02:13:46.690 --> 02:13:51.330
<v Gast 1>Der hat einen ganz interessanten Artikel geschrieben: Why you should be excited about Garbage Collection Ruby

02:13:51.330 --> 02:13:52.050
<v Gast 1>2.0.

02:13:52.370 --> 02:13:54.850
<v Gast 1>Die haben eine neue Garbage Collection da reingemacht.

02:13:55.170 --> 02:13:56.450
<v Gast 1>Ich bin gar nicht so excited.

02:13:56.530 --> 02:13:59.010
<v Gast 1>Also sie ist zwar besser als die bisherige Market Collection.

02:13:59.170 --> 02:14:00.050
<v Felix>Oder solltest das sein?

02:14:00.930 --> 02:14:01.650
<v Felix>Sollte, auf jeden Fall.

02:14:01.810 --> 02:14:04.530
<v Gast 1>Market Sweep Garbage Collection, aber die neue ist.

02:14:05.010 --> 02:14:06.290
<v Gast 2>Marge Sweep in da der Mark.

02:14:06.450 --> 02:14:06.930
<v Gast 2>Genau, sweep.

02:14:07.090 --> 02:14:07.730
<v Gast 2>Sweep, sweep.

02:14:07.890 --> 02:14:10.370
<v Gast 1>Das war im Zivilienst musste ich immer sehr viel Kehrwoche machen.

02:14:11.410 --> 02:14:12.450
<v Unbekannt>Mark and Sweep.

02:14:12.770 --> 02:14:18.290
<v Gast 1>Auf jeden Fall, ja, die neue in Ruby 2.0 wird ein Bitmap-Marking,

02:14:18.450 --> 02:14:23.570
<v Gast 1>ein Bitmap-Marking-Algorithmus sein, was aber immer noch eigentlich recht weit entfernt ist von den

02:14:23.570 --> 02:14:27.570
<v Gast 1>Generational Garbage Kollektoren, die so normale neuere VMs haben.

02:14:27.810 --> 02:14:28.850
<v Gast 1>Was ein bisschen schade ist.

02:14:28.930 --> 02:14:32.130
<v Gast 1>Also ich glaube, dieser Bitmap-Marking soll copy-and-write-freundlich sein,

02:14:32.210 --> 02:14:39.170
<v Gast 1>was also quasi diese Ruby Enterprise Edition Patches irgendwie da dann auch noch mit eingefrickelt hat.

02:14:39.330 --> 02:14:42.290
<v Gast 1>Aber da wird so ein bisschen drüber geredet, was denn da der Unterschied ist,

02:14:42.610 --> 02:14:48.050
<v Gast 1>was denn an diesem Bitmap Collection Zeug besser ist als vorher.

02:14:48.770 --> 02:14:54.930
<v Gast 1>Es wird in den Kommentaren auch noch auf ein Video von

02:14:55.730 --> 02:14:58.930
<v Gast 1>dem Garbage Collector Japaner verlinkt, der das gebaut hat.

02:14:59.250 --> 02:15:00.690
<v Gast 1>Der hat es mal präsentiert.

02:15:00.850 --> 02:15:04.210
<v Gast 1>Und ja, es ist ganz nett mal durchzulesen.

02:15:04.290 --> 02:15:06.930
<v Gast 1>Ich bin immer nicht so begeistert, weil gerade Sachen wie Rubinius,

02:15:07.090 --> 02:15:08.610
<v Gast 1>die haben halt schon Generational Garbage Collective.

02:15:08.850 --> 02:15:12.130
<v Gast 2>Was ich mich da gerade frage, ist, was ist da das große Problem?

02:15:12.290 --> 02:15:16.690
<v Gast 2>Also ich meine, okay, es ist komplexer, eine generationelle

02:15:19.330 --> 02:15:25.170
<v Gast 2>Garbage Collection zu implementieren, aber ich meine, es gab doch auch schon MRI-Forks,

02:15:25.330 --> 02:15:26.530
<v Gast 2>die sowas mit drin hatten.

02:15:26.610 --> 02:15:31.730
<v Gast 2>Gerade von Twitter gab es doch vor kurzem auch mal eine VM, die da was drin hatte.

02:15:32.130 --> 02:15:36.450
<v Gast 1>Da war was, also zumindest Optimierung, aber und ja, es gibt halt echt auch VMs,

02:15:36.530 --> 02:15:40.690
<v Gast 1>also ich sehe halt mit den VMs, wie sie sich entwickeln, Rubinius einfach den klaren Gewinner.

02:15:40.770 --> 02:15:44.530
<v Gast 1>Die entfernen jetzt irgendwann den GIL, den Global Interpreter Log.

02:15:44.690 --> 02:15:51.090
<v Gast 1>Die haben eine Generational Garbage Collection, die einfach vom Prinzip her besser geeignet ist,

02:15:51.330 --> 02:15:53.650
<v Gast 1>auch Programme über längere Zeit zum Laufen zu halten.

02:15:53.730 --> 02:15:57.490
<v Gast 1>Gerade weil es ja auch Compacting ist, bedeutet im Normalfall bei deinen Garbage Collection,

02:15:57.650 --> 02:16:00.130
<v Gast 1>irgendwann fragmentiert deinen Speicher und es wird immer schwerer,

02:16:00.210 --> 02:16:01.490
<v Gast 1>da freien zu finden.

02:16:01.730 --> 02:16:07.570
<v Gast 1>Und ja, es scheint aber irgendwie doch schwerer zu sein, das zumindest in den

02:16:08.290 --> 02:16:09.810
<v Gast 1>Hauptteil der FM reinzubringen.

02:16:09.970 --> 02:16:10.930
<v Gast 1>Ist halt komplexes Zeug.

02:16:11.330 --> 02:16:15.730
<v Gast 2>Das Problem ist halt auch, dass es alles in C geschrieben ist, vielleicht auch nicht die tollste Sprache,

02:16:15.890 --> 02:16:18.610
<v Gast 2>um das komplett alles umzubauen.

02:16:18.930 --> 02:16:19.410
<v Gast 2>Alles komplett.

02:16:19.490 --> 02:16:21.730
<v Gast 1>Es ist so, wie wenn du das Objektmodell verändern würdest irgendwo.

02:16:21.890 --> 02:16:22.610
<v Gast 1>Ja, das meine ich.

02:16:22.850 --> 02:16:23.490
<v Gast 1>Das ist etwas.

02:16:23.650 --> 02:16:26.530
<v Gast 1>Aber sie arbeiten dran und zumindest wird es besser, als es jetzt ist.

02:16:26.610 --> 02:16:28.530
<v Gast 1>Und jetzt bin ich eigentlich schon halbwegs zufrieden.

02:16:29.090 --> 02:16:30.290
<v Gast 1>Rubinius wird toll.

02:16:30.450 --> 02:16:32.050
<v Gast 1>Durchlesen, glücklich sein.

02:16:32.450 --> 02:16:32.930
<v Gast 1>Genau.

02:16:33.250 --> 02:16:38.770
<v Gast 2>Was ich hier habe, ist das Apache Kafka, Design White Paper.

02:16:38.930 --> 02:16:45.490
<v Gast 2>Und da stehen sehr, sehr viele sinnvolle Sachen, in Sachen Implementierung, in Sachen Rausflaschen auf.

02:16:45.890 --> 02:16:46.290
<v Gast 2>Welche waren?

02:16:46.450 --> 02:16:46.850
<v Gast 2>Kafka.

02:16:47.010 --> 02:16:53.330
<v Gast 2>Kafka ist ein Messaging-System, was so auf wie nennen die das hier,

02:16:53.570 --> 02:16:56.130
<v Gast 2>Activity-Streams optimiert ist.

02:16:56.210 --> 02:17:01.250
<v Gast 2>Also man kann sich das so vorstellen, das ist von LinkedIn implementiert und da hat halt jeder Benutzer,

02:17:01.410 --> 02:17:06.290
<v Gast 2>der sie einloggt, seinen eigenen Activity-Stream, der ihm anzeigt, was so in den letzten paar Tagen bei ihm

02:17:06.290 --> 02:17:06.690
<v Gast 2>passiert ist.

02:17:06.770 --> 02:17:09.730
<v Gast 2>Oder Facebook hat es ja mittlerweile auch sowas, glaube ich.

02:17:10.610 --> 02:17:16.930
<v Gast 2>Und da ist halt die Implementierung beschrieben, da sind viele ihrer Patterns beschrieben.

02:17:17.490 --> 02:17:21.730
<v Gast 2>Zum einen, wie sie mit den Dateien auf der Festplatte arbeiten,

02:17:21.810 --> 02:17:26.530
<v Gast 2>sodass sie die möglichst effizient lesen und schreiben können.

02:17:26.850 --> 02:17:32.610
<v Gast 2>Zum anderen ist so das Deployment erklärt und die grundlegenden Designentscheidungen,

02:17:32.690 --> 02:17:34.050
<v Gast 2>die sie da getroffen haben.

02:17:34.450 --> 02:17:41.090
<v Gast 2>Und da ist echt sehr viel interessantes Zeug drin, auch wenn man jetzt nicht unbedingt Kafka

02:17:41.090 --> 02:17:44.530
<v Gast 2>einsetzen möchte, sondern eigentlich nur allgemein bei Implementierung.

02:17:45.170 --> 02:17:47.650
<v Felix>Ich wollte gerade sagen, das ist ja Apache Incubator, das kann ja schon nichts mehr.

02:17:48.130 --> 02:17:51.410
<v Gast 1>Nee, man muss losarrecht aufpassen, weil es kann passieren, wenn du das Ding deployst,

02:17:51.570 --> 02:17:53.810
<v Gast 1>dass es eines Morgens aufwacht und ein Käfer ist.

02:17:55.650 --> 02:17:56.690
<v Felix>Kafka, ja.

02:17:59.730 --> 02:18:00.370
<v Felix>Es ist Buggy.

02:18:00.850 --> 02:18:01.890
<v Gast 1>Kafka ist Buggy.

02:18:03.810 --> 02:18:09.650
<v Gast 2>Aber gerade so, was so Geschichten wie funktioniert mein Betriebssystem,

02:18:09.730 --> 02:18:11.810
<v Gast 2>falls es den Cache und so angeht.

02:18:13.250 --> 02:18:15.010
<v Ingo>Dann kann man das doch durchaus sparen.

02:18:15.410 --> 02:18:21.970
<v Felix>Apropos Bugs, mein Lesefuhr für heute sind sechs Zeilensturm.

02:18:22.530 --> 02:18:24.450
<v Felix>The six stages of debugging.

02:18:24.610 --> 02:18:26.930
<v Felix>Und zwar die erste, that can't happen.

02:18:27.010 --> 02:18:29.330
<v Felix>Die zweite, that doesn't happen on my machine.

02:18:29.570 --> 02:18:31.090
<v Felix>Dritte, that shouldn't happen.

02:18:31.330 --> 02:18:33.330
<v Felix>Vierte, why did that happen?

02:18:33.570 --> 02:18:34.930
<v Felix>Fünfte, oh I see.

02:18:35.010 --> 02:18:37.890
<v Felix>Und sechste ist, how did that even work?

02:18:39.730 --> 02:18:43.650
<v Felix>Und das sind so die sechs Stages.

02:18:45.250 --> 02:18:47.330
<v Felix>Fand ich super, ist auch nicht so viel zu lesen.

02:18:47.570 --> 02:18:49.170
<v Felix>Kann man sich nochmal durchlesen, wenn man es jetzt vergessen hat.

02:18:49.330 --> 02:18:51.890
<v Gast 1>Du hast es auch quasi schon jetzt alles vorgelesen.

02:18:52.370 --> 02:18:53.890
<v Unbekannt>Den ultimativen Spoiler gemacht.

02:18:54.370 --> 02:18:54.690
<v Unbekannt>Ja.

02:18:55.170 --> 02:18:55.650
<v Unbekannt>Sehr gut.

02:18:56.290 --> 02:18:59.890
<v Felix>Aber man kann sich, falls man sich nicht mehr dran erinnern kann oder nicht drückspulen kann,

02:18:59.970 --> 02:19:01.570
<v Felix>kann man es sich nochmal durchlesen.

02:19:01.970 --> 02:19:02.290
<v Felix>Richtig.

02:19:02.370 --> 02:19:03.730
<v Felix>Oder ausdrucken, ausdrucken ist super.

02:19:03.970 --> 02:19:04.610
<v Felix>Weiß auf schwarz.

02:19:04.770 --> 02:19:07.090
<v Felix>Weiß auf schwarz ausdrucken, ganz wichtig für den Drucker.

02:19:08.050 --> 02:19:09.010
<v Felix>Ja, auf jeden Fall.

02:19:09.650 --> 02:19:11.970
<v Felix>Und auf Arbeit aufhängen, weil das kommt immer gut.

02:19:12.050 --> 02:19:13.170
<v Felix>Wenn Leute verwirrt sind.

02:19:13.730 --> 02:19:14.850
<v Gast 2>Leute verwirren, macht Spaß.

02:19:15.090 --> 02:19:15.410
<v Gast 2>Richtig.

02:19:15.810 --> 02:19:17.330
<v Gast 1>Dann komme ich noch mit was.

02:19:17.970 --> 02:19:21.810
<v Gast 1>Und zwar die Jungs von 37 Signals haben ein bisschen darüber geschrieben,

02:19:21.890 --> 02:19:25.170
<v Gast 1>wie sie bei Basecamp, ihrer komischen Projektmanagement-Geschichte,

02:19:25.330 --> 02:19:27.010
<v Gast 1>die Ladezeiten verbessert haben.

02:19:27.170 --> 02:19:31.730
<v Gast 1>Und da geht es gar nicht so um Server-Side-Optimieren, sondern echt wie um Client-Side-Optimierung und wie sie

02:19:32.050 --> 02:19:37.890
<v Gast 1>einen Mechanismus namens Event Capturing benutzen, um Ladezeiten in JavaScript,

02:19:38.210 --> 02:19:43.170
<v Gast 1>also die Ladezeiten, die JavaScript beeinflusst, wie sie die optimieren.

02:19:43.410 --> 02:19:47.010
<v Gast 1>Und da haben sie irgendwie zwei- bis sechsfach so schnell laden können,

02:19:47.090 --> 02:19:50.290
<v Gast 1>indem sie das Ding ein bisschen optimiert haben.

02:19:50.450 --> 02:19:55.650
<v Gast 1>Und deswegen haben sie einen Internet Explorer Rage Phase drin, was ich sehr, sehr gut mache.

02:19:55.970 --> 02:19:58.450
<v Felix>Nicht ein Troll-Phase, nicht Rage-Pace.

02:19:58.930 --> 02:19:59.330
<v Felix>Entschuldigung.

02:19:59.730 --> 02:20:00.370
<v Felix>Kein Problem.

02:20:00.610 --> 02:20:01.970
<v Felix>Kann man auch nur passieren.

02:20:02.210 --> 02:20:03.810
<v Gast 1>Ich schäme mich jetzt auch gerade schon ein bisschen.

02:20:05.490 --> 02:20:09.890
<v Gast 2>So, ich habe jetzt was, das ist sehr theoretisch, allerdings in praktischer Anwendung.

02:20:09.970 --> 02:20:14.370
<v Gast 2>Und zwar Church Encodings, the U-Combinator and the Y-Combinator in JavaScript.

02:20:15.770 --> 02:20:16.650
<v Ingo>Spin der Titel online.

02:20:17.210 --> 02:20:23.050
<v Gast 2>Da geht es darum, um die Anwendung des Lambda-Kalküls, was ja irgendwie drei Sachen hat.

02:20:23.210 --> 02:20:30.010
<v Gast 2>Einmal Wertzuweisung, also Assignment, einmal anonyme Funktion und einmal

02:20:30.010 --> 02:20:32.410
<v Gast 2>die Ausführung dieser anonymen Funktion.

02:20:32.890 --> 02:20:38.090
<v Gast 2>Und damit kann man quasi schon grundlegend alles programmieren, was man denn so programmieren wollte,

02:20:38.330 --> 02:20:42.090
<v Gast 2>weil das Lambda-Kalkül an sich Turing vollständig ist.

02:20:42.330 --> 02:20:46.810
<v Gast 2>So, und was der hier erklärt, ist ein Subset von JavaScript,

02:20:46.970 --> 02:20:53.930
<v Gast 2>was genau diese drei Dinge beinhaltet und wie man sich damit seine eigene Programmiersprache baut,

02:20:55.370 --> 02:20:59.210
<v Gast 2>die auch Funktionen mit mehreren Parametern kann.

02:21:00.090 --> 02:21:06.330
<v Gast 2>Dazu benutzt er Currying, dann Church Encoding für Booleans und Zahlen,

02:21:06.570 --> 02:21:12.650
<v Gast 2>wie man Listen implementiert und wie man Rekursion in dieser Sprache wiederum implementiert,

02:21:12.730 --> 02:21:15.370
<v Gast 2>weil man hat ja keine Schleifen, man muss ja irgendwie rekursiv arbeiten,

02:21:15.450 --> 02:21:19.050
<v Gast 2>aber die Funktionen an sich, die können ja keine Rekursion.

02:21:19.930 --> 02:21:26.170
<v Ingo>Und da halt, wie man diese Rekursion mit dem U-Combinator oder mit dem Y-Combinator implementiert.

02:21:26.330 --> 02:21:30.410
<v Gast 2>Das ist alles sehr theoretisch, sehr viel, auch sehr viel Code.

02:21:30.650 --> 02:21:33.050
<v Felix>Und wann programmiert ihr jetzt Y-Combinator nach?

02:21:34.970 --> 02:21:36.810
<v Felix>Das ist doch die einzige logische Frage, oder?

02:21:37.210 --> 02:21:37.370
<v Felix>Richtig.

02:21:37.530 --> 02:21:39.130
<v Gast 2>Da, wo The Y-Combinator steht.

02:21:39.370 --> 02:21:39.930
<v Gast 2>Wo steht das?

02:21:40.170 --> 02:21:41.770
<v Gast 2>Such mal nach The Y-Combinator.

02:21:42.090 --> 02:21:43.290
<v Felix>Ne, funktioniert nicht, oder?

02:21:43.530 --> 02:21:43.690
<v Felix>Doch.

02:21:43.930 --> 02:21:45.130
<v Unbekannt>Es hat gepiepst, es funktioniert nicht.

02:21:45.290 --> 02:21:46.010
<v Unbekannt>Wir haven Element.

02:21:47.210 --> 02:21:48.410
<v Felix>Da, ist es Y-Combinator.

02:21:48.730 --> 02:21:49.450
<v Felix>So wenig Code?

02:21:49.610 --> 02:21:49.930
<v Felix>Ja.

02:21:50.170 --> 02:21:50.570
<v Felix>Mensch.

02:21:50.970 --> 02:21:51.850
<v Felix>Das kann ich auch.

02:21:52.010 --> 02:21:54.330
<v Felix>Ich copy and paste es einfach bei mir nach Hause.

02:21:54.490 --> 02:21:56.330
<v Felix>Und dann habe ich Y-Combinator auf meinem Computer.

02:21:56.570 --> 02:21:57.050
<v Felix>Sehr gut.

02:21:57.610 --> 02:22:03.370
<v Gast 2>Ist geschrieben von Matt Meid, der Informatik-Prof in Glaub.

02:22:03.610 --> 02:22:04.490
<v Gast 2>Wo ist denn der?

02:22:05.290 --> 02:22:05.770
<v Gast 2>Irgendwo.

02:22:05.930 --> 02:22:06.490
<v Gast 2>An der Uni.

02:22:06.890 --> 02:22:07.690
<v Gast 2>In irgendeiner Uni.

02:22:08.570 --> 02:22:09.210
<v Gast 2>Irgendwo Prof.

02:22:09.450 --> 02:22:10.730
<v Gast 1>Mach mal weiter, ich finde es mal aus.

02:22:11.930 --> 02:22:13.370
<v Ingo>Mimimi, Flydi.

02:22:14.330 --> 02:22:16.170
<v Ingo>Du wolltest rumholen oder Kopfhörer.

02:22:16.490 --> 02:22:21.770
<v Gast 2>Ja, Kopfhörer sind Kopfhörer sind eigentlich toll und ich habe auch echt super tolle Kopfhörer,

02:22:21.850 --> 02:22:26.970
<v Gast 2>die ich auch seit drei Jahren, die ich die habe, immer noch super gut finde und die ein Schweinegeld gekostet

02:22:26.970 --> 02:22:28.330
<v Gast 2>haben, aber die waren es auch wert.

02:22:30.010 --> 02:22:31.290
<v Gast 2>Nein, sie sind nicht kaputt, sondern das.

02:22:31.610 --> 02:22:32.570
<v Ingo>Das Gold ist abgekratzt?

02:22:32.730 --> 02:22:34.490
<v Ingo>Nein, das Kabel ist gebrochen, mal wieder.

02:22:34.730 --> 02:22:38.970
<v Gast 2>Also ich hatte davor so einen Track-Record, wo ich irgendwie innerhalb von einem Jahr mal fünf Kopfhörer wegen

02:22:39.050 --> 02:22:41.050
<v Gast 2>Kabelbruch zurückgeben musste.

02:22:41.770 --> 02:22:46.330
<v Gast 2>Der Kopfhörer jetzt hat so knapp drei Jahre gehalten und jetzt ist mir halt auch mein Kabel gebrochen,

02:22:46.410 --> 02:22:51.050
<v Gast 2>ist nicht mal so ganz gebrochen, dass es so komplett kaputt wäre, aber es hat halt gerauscht und wenn ich dann

02:22:51.050 --> 02:22:57.610
<v Gast 2>halt irgendwie mein iPhone in der Hose habe und ein Kabelbruch am

02:22:57.610 --> 02:23:02.570
<v Gast 2>Stecker, dann hat es jedes Mal gerauscht, wenn ich irgendwie einen Schritt gemacht habe und habe.

02:23:02.730 --> 02:23:04.410
<v Ingo>Und das ist irgendwie unangenehm.

02:23:04.650 --> 02:23:07.850
<v Gast 1>Ich stand gerade wie ein schrecklicher urologische Befund, gerade so ein Stecker,

02:23:08.010 --> 02:23:09.610
<v Gast 1>jedes Mal, wenn sie einen Schritt machen, rauscht.

02:23:10.410 --> 02:23:15.130
<v Unbekannt>Oh oh, das ist nein.

02:23:15.450 --> 02:23:17.290
<v Gast 2>Das kriege ich nie wieder aus meinem Kopf raus.

02:23:18.890 --> 02:23:22.010
<v Gast 1>Matthew While ist übrigens an der University of Utah beschäftigt.

02:23:22.330 --> 02:23:22.890
<v Gast 1>Wollte ich nur machen.

02:23:23.130 --> 02:23:24.570
<v Felix>Finde ich super, dass der Utah ist.

02:23:24.730 --> 02:23:25.610
<v Gast 1>Mormone quasi.

02:23:25.770 --> 02:23:26.090
<v Gast 1>Quasi.

02:23:26.250 --> 02:23:27.050
<v Gast 1>Alle sind die Utah.

02:23:27.530 --> 02:23:28.330
<v Gast 1>Für alle Utah.

02:23:28.570 --> 02:23:30.410
<v Ingo>Nee, ich glaube, sind die, nee, egal.

02:23:30.810 --> 02:23:31.770
<v Gast 1>Utah ist eine Mormonsstadt.

02:23:31.850 --> 02:23:35.130
<v Gast 2>Ja, ja, ich weiß, aber das heißt ja nicht, dass die alle grundlegend Mormone sind.

02:23:35.290 --> 02:23:38.650
<v Felix>Klar, also wenn du nach Utah einreisen willst, dann musst du Mormone.

02:23:39.050 --> 02:23:43.370
<v Gast 1>Deswegen baut das FBI da auch eines seiner größten Datenzentren, weil alle Mormone eine Fremdsprache können,

02:23:43.450 --> 02:23:46.490
<v Gast 1>weil die mindestens zwei, drei Jahre eine Mission in irgendwo machen.

02:23:46.570 --> 02:23:49.530
<v Gast 1>Und deswegen haben die da eine Stadt, wo irgendwie eine Million Leute sind,

02:23:49.610 --> 02:23:51.130
<v Gast 1>die alle eine Fremdsprache sehr gut können.

02:23:51.290 --> 02:23:53.290
<v Felix>Damit die quasi bei Google Translate arbeiten könnten.

02:23:53.530 --> 02:23:53.690
<v Felix>Richtig.

02:23:54.170 --> 02:23:57.530
<v Ingo>Das, was du übrigens meinst, ist glaube ich Salt Lake City, weil Utah ist der Staat.

02:23:57.690 --> 02:24:01.050
<v Gast 1>Ja, ja, aber also University in Utah ist, glaube ich, in Salt Lake.

02:24:01.370 --> 02:24:02.250
<v Gast 2>Ist in Salt Lake City.

02:24:02.490 --> 02:24:03.770
<v Felix>Egal, ich glaube, da gibt es auch keine Exam.

02:24:04.010 --> 02:24:05.210
<v Gast 1>Da gibt es, glaube ich, echt nur zwei.

02:24:05.450 --> 02:24:07.450
<v Gast 2>Zurück zum Thema: Rauschende Kabel.

02:24:07.770 --> 02:24:10.330
<v Ingo>Da sind alle 100, 130 Jahre mal die Winterspiele.

02:24:10.490 --> 02:24:11.530
<v Gast 1>Ja, ist in Salt Lake.

02:24:11.850 --> 02:24:12.170
<v Gast 1>Okay.

02:24:12.890 --> 02:24:14.090
<v Felix>Wie gesagt, da gibt es auch nichts.

02:24:14.650 --> 02:24:15.610
<v Gast 2>Rauschende Kabel.

02:24:15.770 --> 02:24:20.730
<v Gast 2>War jetzt ein bisschen blöd, aber ich habe ja zum Glück ein Schweinegeld für Kopfhörer ausgegeben,

02:24:21.050 --> 02:24:22.970
<v Gast 2>die ein tauschbares Kabel haben.

02:24:23.290 --> 02:24:28.330
<v Gast 2>Jetzt ist halt das Problem, die Kabel an sich, ich meine, das ist so ein Stück Draht mit einem Stecker auf

02:24:28.330 --> 02:24:29.130
<v Gast 2>zwei Seiten.

02:24:30.170 --> 02:24:30.730
<v Gast 2>Und Gummi.

02:24:31.450 --> 02:24:32.330
<v Ingo>Und ein bisschen Gummi.

02:24:32.650 --> 02:24:36.090
<v Ingo>Und da ist halt eine unverbindliche Preisempfehlung 50 Euro für das Kabel.

02:24:36.330 --> 02:24:37.370
<v Gast 1>Das kann man ruhig mal ausgeben.

02:24:37.450 --> 02:24:38.810
<v Felix>Das ist ja quasi ein Schnäppchen.

02:24:38.890 --> 02:24:39.530
<v Felix>Aber finde ich auch.

02:24:39.690 --> 02:24:40.010
<v Felix>Quasi.

02:24:40.090 --> 02:24:44.730
<v Gast 2>Ich habe sogar noch Billy gekriegt, ich habe nur 33 Euro bezahlt, aber da kostet das Kabel immer noch ein

02:24:44.730 --> 02:24:47.130
<v Gast 2>Fünftel von den Kopfhörern, was so ein bisschen blöd ist.

02:24:47.370 --> 02:24:50.490
<v Ingo>Ja, aber die Kabel, die wir hier benutzen, die kosten 45.

02:24:50.650 --> 02:24:51.130
<v Ingo>Ja, siehst du?

02:24:51.930 --> 02:24:53.370
<v Felix>Aber die haben viel mehr, genau die.

02:24:53.610 --> 02:24:55.130
<v Felix>Nee, die haben auch viel mehr Metallstecken.

02:24:55.610 --> 02:25:00.410
<v Gast 2>Länger, da geht auch noch ein Mikrofon durch und dann haben sie für das Mikrofon noch ein XLR.

02:25:00.490 --> 02:25:02.570
<v Gast 2>Und die haben noch den großen Klink geschickt.

02:25:02.650 --> 02:25:04.170
<v Felix>Und die haben sogar zwei Steckys am Ende.

02:25:04.410 --> 02:25:07.610
<v Felix>Und die haben diese neun Steckys oder quasi sechs oder so, die da oben sind.

02:25:07.850 --> 02:25:09.050
<v Unbekannt>Ich habe doch gerade gesagt, XLR.

02:25:09.210 --> 02:25:09.930
<v Unbekannt>Ja, was weiß ich.

02:25:10.730 --> 02:25:12.010
<v Unbekannt>Das hier ist XLR des Krug.

02:25:12.330 --> 02:25:13.450
<v Felix>Ich meine hier an der Seite hier.

02:25:15.690 --> 02:25:16.890
<v Ingo>Diese großen Pins.

02:25:17.530 --> 02:25:18.410
<v Felix>Das ist eigentlich viel besser.

02:25:18.490 --> 02:25:20.250
<v Felix>Das ist auf jeden Fall diese 45 Euro-Wert.

02:25:20.730 --> 02:25:21.770
<v Ingo>Enterprise-Software.

02:25:22.170 --> 02:25:27.370
<v Gast 2>Ja, jedenfalls Kopfhörer-Zennheiser HD25 kann ich immer noch empfehlen.

02:25:28.010 --> 02:25:30.330
<v Gast 2>Vor allem jetzt, da sie nicht mehr rauschen.

02:25:30.490 --> 02:25:30.890
<v Gast 2>Wow.

02:25:31.210 --> 02:25:34.010
<v Felix>Hast du da keine Garantie für 500 Jahre oder so?

02:25:34.250 --> 02:25:37.370
<v Ingo>Ich weiß es nicht, aber ich wollte den Kopfhörer nicht einschicken, weil ich brauche den.

02:25:37.450 --> 02:25:39.130
<v Felix>Ja, aber ohne das Kabel hilft dir das auch.

02:25:39.610 --> 02:25:40.970
<v Gast 2>Ja, deshalb habe ich mir ein neues Kabel gekauft.

02:25:41.130 --> 02:25:42.490
<v Ingo>Ich habe damals nicht ein Backup gekauft.

02:25:42.570 --> 02:25:44.090
<v Ingo>Also man kauft sich ja immer zwei Sachen von.

02:25:44.330 --> 02:25:46.490
<v Gast 2>Ja, das hätte mich genauso viel gekostet.

02:25:47.770 --> 02:25:49.850
<v Gast 2>Also das war damals nicht billiger als heute.

02:25:50.090 --> 02:25:52.890
<v Ingo>Ja, aber dann hättest du jetzt den Kopfhörer wegschicken können.

02:25:53.610 --> 02:25:54.090
<v Ingo>Egal.

02:25:54.570 --> 02:25:58.970
<v Gast 2>Kaufe ich mir zweimal Kopfhörer für 160 Euro, das hatten wir beim einen Mal schon wehgetan.

02:25:59.770 --> 02:26:06.650
<v Gast 2>Aber was ich dazu sagen muss, ich habe bei Thomann bestellt und die bieten mittlerweile Amazon Payments an.

02:26:06.890 --> 02:26:07.530
<v Gast 2>Und das ist echt.

02:26:07.770 --> 02:26:08.730
<v Felix>Also ich letzte mal schon, ne?

02:26:08.810 --> 02:26:10.090
<v Ingo>Ja, das hast du letzte Woche schon erzählt.

02:26:10.490 --> 02:26:12.970
<v Gast 2>Aber ich glaube nicht in der Serie, in der Sendung, oder?

02:26:13.290 --> 02:26:13.610
<v Gast 2>Doch.

02:26:13.850 --> 02:26:14.090
<v Gast 2>Doch.

02:26:14.490 --> 02:26:14.810
<v Gast 2>Sicher.

02:26:15.130 --> 02:26:16.890
<v Felix>Also mindestens in der Aftershow.

02:26:17.610 --> 02:26:18.490
<v Unbekannt>Also hier drin auf jeden Fall.

02:26:18.650 --> 02:26:24.410
<v Gast 2>Also ich muss mal sagen, ich habe selten so entspannt eingekauft, außer bei Amazon selbst.

02:26:24.490 --> 02:26:30.650
<v Gast 2>Weil einfach so, zack, ich möchte diese Adresse liefern, die holt er sich aus meinem Amazon-Adressbuch und ich

02:26:30.650 --> 02:26:33.290
<v Gast 2>möchte jetzt hier bezahlen und schick's mir bitte.

02:26:33.450 --> 02:26:34.730
<v Gast 2>Und dann hat es funktioniert.

02:26:34.890 --> 02:26:35.370
<v Gast 2>Geht auf jeden Fall.

02:26:35.530 --> 02:26:35.850
<v Gast 2>Sehr cool.

02:26:36.410 --> 02:26:37.690
<v Felix>Nur 35, nee, 33.

02:26:38.010 --> 02:26:38.490
<v Felix>Ich hätte auch noch was.

02:26:38.810 --> 02:26:39.690
<v Ingo>Oh, du hast auch noch Mini.

02:26:40.970 --> 02:26:46.250
<v Felix>Jedenfalls, äh, Micro SD-Karten, die sind ja so diese super kleinen, äh, super großen Speicher.

02:26:46.730 --> 02:26:50.970
<v Felix>Also super klein in Form-Size und super groß, wenn du da 16 Gigabyte oder sowas draufst.

02:26:51.050 --> 02:26:52.410
<v Ingo>Man muss mal aufpassen, dass man die nicht verschluckt.

02:26:52.650 --> 02:26:54.970
<v Felix>Ja, genau, also Babys nicht essen.

02:26:55.210 --> 02:26:56.090
<v Unbekannt>Keine Babys essen.

02:26:56.970 --> 02:26:59.930
<v Felix>Keine Babys essen, auch nicht, wenn die so eine SD-Karte an ihrem Kopf kleben haben.

02:27:00.170 --> 02:27:00.650
<v Felix>Babyspeck.

02:27:00.890 --> 02:27:01.930
<v Unbekannt>Babyspeck, Babyspeck.

02:27:02.810 --> 02:27:03.530
<v Unbekannt>Ganz wichtig.

02:27:03.690 --> 02:27:08.250
<v Felix>Jedenfalls, man könnte ja denken, dass das ist so Hardware, die funktioniert für immer.

02:27:08.650 --> 02:27:10.170
<v Felix>Aber Hardware ist gar nicht so.

02:27:10.970 --> 02:27:11.290
<v Felix>Nein.

02:27:11.850 --> 02:27:16.410
<v Felix>Und ich also eigentlich haben diese Karten ja so Wear-Leveling.

02:27:16.650 --> 02:27:19.530
<v Felix>Das heißt, die passen auf, dass du nicht immer in den gleichen Sektor schreibst,

02:27:19.690 --> 02:27:21.930
<v Felix>dass der nicht nach 10.000 oder 100.000 Zyklen kaputt geht.

02:27:22.970 --> 02:27:28.490
<v Felix>Aber irgendwie funktioniert es nicht und die Karte ist jetzt, die ich benutzt habe für 20 Tage,

02:27:28.570 --> 02:27:30.010
<v Felix>ist jetzt im Read-Only State.

02:27:30.730 --> 02:27:31.770
<v Felix>Was ein bisschen blöd ist.

02:27:32.010 --> 02:27:33.530
<v Gast 2>Du kannst ja zumindest noch davon lesen.

02:27:33.770 --> 02:27:39.530
<v Felix>Weil ja, also man kann noch sein Zeug retten, bevor sie dann wirklich den Geist aufgibt,

02:27:39.770 --> 02:27:41.050
<v Felix>aus Gründen.

02:27:41.850 --> 02:27:45.050
<v Felix>Aber das finde ich schon ein bisschen schade, weil man eigentlich denken könnte,

02:27:45.130 --> 02:27:49.450
<v Felix>dass dieses so Hardware-Zeug eigentlich nicht so schnell kaputt geht und ein bisschen länger hält.

02:27:49.850 --> 02:27:56.090
<v Felix>Aber ich habe jetzt irgendwie ein RMA bei Sandisk offen und mal schauen, was da passiert.

02:27:56.250 --> 02:27:59.210
<v Felix>Vielleicht sind die ja cool und ich kaufe jetzt nur noch Microstick-Karten bei Sandis,

02:27:59.290 --> 02:28:00.570
<v Felix>weil ich die da immer ersetzt bekomme.

02:28:00.970 --> 02:28:05.290
<v Felix>Weil du hast ja irgendwie so zehn Jahre oder sowas, hast du da ja Garantie drauf, den Teilen.

02:28:06.810 --> 02:28:08.890
<v Felix>Und das muss funktionieren quasi.

02:28:09.450 --> 02:28:09.770
<v Felix>Sollte.

02:28:10.010 --> 02:28:10.170
<v Felix>Ja.

02:28:10.730 --> 02:28:15.610
<v Felix>Also ich werde es sehen und ich werde meine Geschichte erzählen, sobald das soweit ist und ich meine

02:28:15.610 --> 02:28:16.890
<v Felix>Microstick-Karte wieder habe.

02:28:17.050 --> 02:28:18.410
<v Felix>Und neue vielleicht.

02:28:19.130 --> 02:28:20.090
<v Ingo>Okay, Pigs.

02:28:20.730 --> 02:28:21.530
<v Unbekannt>Schweinchen.

02:28:21.770 --> 02:28:22.410
<v Unbekannt>Schweinchen.

02:28:23.930 --> 02:28:24.650
<v Unbekannt>Ich fange mal an.

02:28:24.890 --> 02:28:26.810
<v Gast 1>Remove Duplicate Messages.

02:28:27.130 --> 02:28:33.530
<v Gast 1>Ich hatte das Problem letztes Mal, dass Gmail komisch ist und dieses Archive-Folder hat und dass eine E-Mail

02:28:33.610 --> 02:28:37.930
<v Gast 1>gleichzeitig getaggt sein kann als Archive, was ja alle so standardmäßig simulasier aus der Inbox raustust,

02:28:38.330 --> 02:28:42.410
<v Gast 1>aber auch in einem anderen Ordner sein kann, wenn das irgendwie automatisch durch den Filter da reingetaggt

02:28:42.410 --> 02:28:42.730
<v Gast 1>wurde.

02:28:43.610 --> 02:28:50.250
<v Gast 1>Und es ist eigentlich ganz interessantes Problem, die dann quasi nur noch eine von diesen E-Mails bestehen zu

02:28:50.250 --> 02:28:53.450
<v Gast 1>lassen, weil die im Archive-Folder will ich ja nicht, aber ich kann auch nicht alle löschen,

02:28:53.530 --> 02:28:55.770
<v Gast 1>denn wenn sie nicht in einem anderen sind, wären sie ja komplett weg.

02:28:56.010 --> 02:29:02.490
<v Gast 1>Da gibt es für den Thunderbird ein Remove Duplicate Messages Add-on, das mehr oder weniger gut.

02:29:03.290 --> 02:29:08.010
<v Ingo>Das ist halt ewig alt, das ist irgendwie schon seit 2007 nicht mehr geupdatet worden.

02:29:08.410 --> 02:29:11.050
<v Ingo>Das ist nämlich genau das, was ich letzte Woche meinte, wo ich gesagt habe.

02:29:11.450 --> 02:29:13.850
<v Gast 1>Da gibt es zwei von, da gibt es auch eine neue Version, die neue geht nicht.

02:29:14.170 --> 02:29:14.410
<v Gast 1>Genau.

02:29:14.970 --> 02:29:15.610
<v Gast 1>Praktisch.

02:29:17.050 --> 02:29:20.490
<v Ingo>Aber das ist tatsächlich, du müsstest nur in diesem Un-Release-File irgendwie sagen,

02:29:20.570 --> 02:29:22.010
<v Ingo>ich bin nur kompatibel bis für die Stadt.

02:29:22.250 --> 02:29:25.450
<v Gast 1>Also sie geht schon, aber sie ist schlechter, erstaunlicherweise bei mir.

02:29:25.530 --> 02:29:26.490
<v Gast 1>Also die Resultate waren ratsch.

02:29:26.730 --> 02:29:30.410
<v Ingo>Aber die lassen sich irgendwie in dem neuen Thunderbird ließen die sich gar nicht mehr installieren und man

02:29:30.410 --> 02:29:32.970
<v Ingo>musste irgendwie in diesem einen Release-File dein Manifest röder sein.

02:29:33.290 --> 02:29:36.170
<v Gast 1>Dann habe ich es vielleicht geupdatet, weil bei mir ging es mit beiden,

02:29:36.490 --> 02:29:39.770
<v Gast 1>aber die neuere Version hat irgendwie nach einer Viertelstunde abgebrochen,

02:29:39.850 --> 02:29:41.210
<v Gast 1>weil er immer noch irgendwas gescannt hat.

02:29:41.370 --> 02:29:43.130
<v Gast 1>Und die alte konnte das alles super machen.

02:29:43.290 --> 02:29:49.210
<v Gast 1>Das Blöde ist, ich konnte, ich hätte gern angegeben und gesagt, okay, Priorität hat alles außer Archive.

02:29:49.530 --> 02:29:52.810
<v Gast 1>Bedeutet, when it's irgendwo in archive and woanders, löscht's in archive.

02:29:53.130 --> 02:29:53.770
<v Gast 1>Ging aber nicht.

02:29:54.010 --> 02:29:57.370
<v Gast 1>Ich habe es dann irgendwie über IMAP Sync with eine regular expression,

02:29:57.450 --> 02:30:01.930
<v Gast 1>die Archive-Folder einfach auf Groß Archive gemappt, sie war immer als erste dran.

02:30:02.170 --> 02:30:06.010
<v Gast 1>Und aus unserem Grund war per default alphabetisch das zweite, standardmäßig ausgewählt.

02:30:06.090 --> 02:30:08.250
<v Unbekannt>Das Keep Problem gelöst.

02:30:08.570 --> 02:30:12.570
<v Gast 1>Ich hab dann hart alles gelöscht und jetzt habe ich wesentlich weniger E-Mails und wesentlich weniger

02:30:12.570 --> 02:30:12.890
<v Gast 1>Speicher.

02:30:13.210 --> 02:30:14.170
<v Felix>Und du hast gewonnen quasi.

02:30:14.330 --> 02:30:17.210
<v Gast 1>Ich habe quasi gewonnen, aber ich finde es immer noch nicht gut.

02:30:17.690 --> 02:30:22.410
<v Ingo>Nee, aber dieses Plugin, also ich habe auch, weil ich ja mal auch mein Postfach verloren habe und da ständig

02:30:22.410 --> 02:30:26.090
<v Ingo>hin und her kopiert habe, irgendwie zigtausend Sachen gehabt und ich entweder ich weiß nicht,

02:30:26.170 --> 02:30:29.690
<v Ingo>ob ich das New verwendet habe oder das sah, aber das hat funktioniert,

02:30:29.850 --> 02:30:34.010
<v Ingo>hat zwar ewig gebraucht, bis es durch alles durchgeht, aber es tut irgendwie.

02:30:35.450 --> 02:30:38.570
<v Ingo>Gut, also Remove Duplicate Messages.

02:30:38.730 --> 02:30:43.450
<v Ingo>Vielleicht kann da ja auch mal jemand das alte Ding patchen oder so, dass es wieder ein bisschen besser läuft.

02:30:43.610 --> 02:30:44.090
<v Ingo>Ja, ja.

02:30:45.370 --> 02:30:46.250
<v Unbekannt>JSON-View.

02:30:46.570 --> 02:30:50.490
<v Gast 2>Ich habe gleich zwei Chrome-Plugins bzw.

02:30:50.810 --> 02:30:51.930
<v Gast 2>Chrome-Extensions.

02:30:52.250 --> 02:30:57.610
<v Gast 2>Die machen beide dasselbe für unterschiedliche Formate, einmal JSON-View und einmal XML-Tree.

02:30:58.490 --> 02:31:01.850
<v Gast 2>Und die sorgen beide dafür, dass wenn man JSON bzw.

02:31:02.250 --> 02:31:09.130
<v Gast 2>XML in seinem Browser darstellt, dass das dann schön bunt mit Syntax-Highlighting und zum Auf-

02:31:09.210 --> 02:31:10.890
<v Gast 2>und Zuklappen dargestellt wird.

02:31:11.050 --> 02:31:18.010
<v Ingo>Und das ist zum Debuggen und zum Entwickeln und um irgendwie mal SS-Feeds zu analysieren oder

02:31:18.010 --> 02:31:18.970
<v Ingo>so, eigentlich ganz nett.

02:31:19.050 --> 02:31:21.290
<v Gast 2>Also dieses XML-Tree kann auch noch ein bisschen mehr.

02:31:21.450 --> 02:31:26.970
<v Ingo>Man kann da irgendwie auf Elemente draufklicken und der zeigt einem dann gleich die X-Parth-Expressions an,

02:31:27.290 --> 02:31:29.210
<v Ingo>um auf die Sachen zu matchen und so.

02:31:29.290 --> 02:31:31.050
<v Gast 2>Das ist eigentlich ganz nett.

02:31:32.810 --> 02:31:34.090
<v Gast 2>Komme ich dann gleich nochmal?

02:31:35.450 --> 02:31:42.410
<v Gast 2>Ich habe hier zwei YouTube-Videos mit Neil deGrasp-Tyson, heißt er, glaube ich.

02:31:42.970 --> 02:31:47.690
<v Gast 2>Ist ein Astrophysiker und ein sehr amüsanter Redner.

02:31:48.010 --> 02:31:54.650
<v Gast 2>Einmal hier ein Interview mit Stephen Colbert und einmal ein Gespräch mit Richard Dawkins

02:31:54.970 --> 02:31:57.850
<v Gast 2>über The Poetry of Science.

02:31:58.250 --> 02:32:03.370
<v Gast 2>Die kann man sich beide angucken, die sind beide sehr, sehr lehrreich und sehr informativ und vor allem auch

02:32:03.370 --> 02:32:03.930
<v Gast 2>unterhaltsam.

02:32:04.010 --> 02:32:07.770
<v Gast 2>Also vor allem das mit Stephen Colbert ist echt lustig.

02:32:08.090 --> 02:32:14.730
<v Gast 2>Und damit kann man sich mal, geht jeweils, glaube ich, so eine Stunde, mal ein bisschen den Abend vertreiben.

02:32:16.170 --> 02:32:16.810
<v Gast 2>Felix?

02:32:17.130 --> 02:32:17.690
<v Gast 2>Hab ich was?

02:32:18.250 --> 02:32:18.810
<v Gast 2>Da steht was.

02:32:19.290 --> 02:32:20.250
<v Gast 2>Das ist deine Farbe, oder?

02:32:20.410 --> 02:32:20.650
<v Gast 2>Nee.

02:32:20.970 --> 02:32:21.530
<v Gast 2>Backblaze.

02:32:21.690 --> 02:32:22.970
<v Felix>Oh, soweit sind wir schon.

02:32:23.210 --> 02:32:23.450
<v Felix>Ja.

02:32:23.850 --> 02:32:24.810
<v Felix>Backblaze, genau.

02:32:24.890 --> 02:32:26.810
<v Felix>Und mir ist das aufgefallen.

02:32:27.050 --> 02:32:31.450
<v Felix>Ich habe auch mal geschaut nach Cloud Storage, weil wir das ja letzte Woche hatten.

02:32:31.530 --> 02:32:33.530
<v Felix>Und dann ist mir Backblaze aufgefallen.

02:32:34.010 --> 02:32:34.810
<v Felix>Backblaze.

02:32:36.730 --> 02:32:43.290
<v Gast 2>Ich kenne die nur von ihren lustigen Blogposts, in denen sie ihre Storage-Einheiten dokumentieren.

02:32:43.690 --> 02:32:45.130
<v Gast 2>Das sind doch die mit denen.

02:32:45.290 --> 02:32:46.730
<v Felix>Genau, genau, die Supports, genau.

02:32:47.290 --> 02:32:54.170
<v Felix>Und die haben halt irgendwie monatlich 3,96 Dollar und du hast Unlimited Storage

02:32:54.170 --> 02:32:55.130
<v Felix>für deinen Backup.

02:32:55.850 --> 02:32:57.610
<v Felix>Fand ich interessant.

02:32:58.490 --> 02:33:03.450
<v Felix>Dazu gab es dann auch noch so einen Artikel, wo sie halt beschreiben,

02:33:03.530 --> 02:33:06.410
<v Felix>wie sie einfach 25 Uhr billiger sein können als Amazon S3.

02:33:06.730 --> 02:33:11.450
<v Felix>Und das liegt halt daran, weil du die Daten nicht so oft abrufen musst und die sind halt nur auf diesen Ports

02:33:11.610 --> 02:33:12.810
<v Felix>und es ist halt ein bisschen langsamer.

02:33:13.690 --> 02:33:16.330
<v Felix>Aber du rufst ja deine Backups auch nicht die ganze Zeit auf.

02:33:16.570 --> 02:33:18.170
<v Felix>Das ist quasi Write Wands.

02:33:18.890 --> 02:33:20.890
<v Felix>Und deswegen können die auch so cheap sein.

02:33:21.770 --> 02:33:23.450
<v Felix>Und das finde ich ziemlich cool.

02:33:24.090 --> 02:33:28.490
<v Felix>Weiß ich nicht, ob ich mir hole, aber ich fand einfach die Idee ganz nett.

02:33:28.810 --> 02:33:32.090
<v Gast 2>Ah, ich habe hier mal den Aufbau von ihren Storage Potsdam.

02:33:32.250 --> 02:33:33.850
<v Felix>Das ist, glaube ich, sogar in den Artikel gefunden.

02:33:34.090 --> 02:33:35.530
<v Felix>Das ist tatsächlich den, den ich verlinkt habe.

02:33:35.610 --> 02:33:36.650
<v Gast 2>Achso, okay, dann ist es ja cool.

02:33:36.890 --> 02:33:40.810
<v Felix>Do-it-yourself-cloud, wo sie dann sagen, ah, sie brauchen irgendwie ein Mainboard und 4 GB RAM und dann

02:33:40.810 --> 02:33:44.890
<v Felix>irgendwie 45 Hard Drives und 4 Sattercards und zwei Power Supplies.

02:33:45.210 --> 02:33:48.890
<v Felix>Und dann hast du quasi deinen 135 Terabyte.

02:33:50.010 --> 02:33:51.210
<v Gast 2>Damit kann man noch so einige Massen.

02:33:51.610 --> 02:33:53.610
<v Felix>7500 Dollar, das ist gar nicht so schlecht.

02:33:53.770 --> 02:33:56.890
<v Ingo>Ja, also wenn ich mal 7500 Dollar übrig habe und irgendwie ein paar.

02:33:57.530 --> 02:33:58.250
<v Ingo>Wie viele waren es?

02:33:58.490 --> 02:33:59.450
<v Gast 2>138?

02:34:00.090 --> 02:34:01.130
<v Gast 2>135 TB.

02:34:02.490 --> 02:34:03.850
<v Gast 2>Damit kann man was anfangen.

02:34:05.210 --> 02:34:06.730
<v Felix>Ganz cool auf jeden Fall.

02:34:08.010 --> 02:34:08.330
<v Felix>Ja.

02:34:09.290 --> 02:34:10.250
<v Felix>Backblaze.

02:34:10.970 --> 02:34:11.610
<v Felix>Gut, macht die.

02:34:12.250 --> 02:34:13.530
<v Ingo>Dann sind wir durch für diese Woche, oder?

02:34:14.170 --> 02:34:14.730
<v Ingo>Ich glaube schon.

02:34:14.970 --> 02:34:15.690
<v Ingo>Ich hab irgendwie nichts.

02:34:15.770 --> 02:34:19.850
<v Ingo>Ich war die letzten paar Tage im Urlaub und hab Schnee gesehen und bin Ski gefahren.

02:34:19.930 --> 02:34:21.770
<v Ingo>Ah, nee, ich nicht Ski, schlitten nur.

02:34:22.490 --> 02:34:26.730
<v Ingo>Und war irgendwo, wo es überhaupt gar kein Internet gab, also nur Edge.

02:34:26.890 --> 02:34:29.610
<v Ingo>Und das ist quasi kein Internet.

02:34:30.730 --> 02:34:32.810
<v Unbekannt>Überhaupt kein Internet, also nur Edge.

02:34:32.890 --> 02:34:35.530
<v Felix>Also nur Edge, das sind wir fucking Mode im Geschwindigkeit.

02:34:36.250 --> 02:34:40.490
<v Gast 1>Da prob ich noch kurz einen Mimimi an, US-Handy-Anbieter, die geben mir das auf den Sack.

02:34:40.650 --> 02:34:41.690
<v Felix>Wieso, was wollen Sie denn?

02:34:41.930 --> 02:34:45.690
<v Gast 1>Es gibt, ich hätte gerne einfach, ich bin da ja irgendwann mal zwei Monate und will da auch so einen Vertrag

02:34:45.690 --> 02:34:47.370
<v Gast 1>haben, wo ich dann so alles machen kann.

02:34:48.170 --> 02:34:49.370
<v Felix>Habt ihr einfach Prepaid?

02:34:50.170 --> 02:34:51.290
<v Gast 1>Gibt's nicht so richtig.

02:34:51.450 --> 02:34:56.490
<v Gast 1>Es gibt für AT  ⁇ T gibt's was, aber die gab es dann nicht.

02:34:56.570 --> 02:34:58.250
<v Gast 2>Also wenn du nur Ivo da irgendwie die Bibel.

02:34:59.130 --> 02:35:02.730
<v Gast 1>Es gibt Red Pocket gibt's, da zahlst du 60 Dollar und hast dann im Grunde alles.

02:35:02.890 --> 02:35:06.730
<v Gast 1>Für ATT gibt's was, aber ATT ist ein Vollspasten, weil die sagen, hey,

02:35:07.050 --> 02:35:10.250
<v Gast 1>das kostet 50 Dollar mit Unlimited Web, Unlimited alles.

02:35:10.730 --> 02:35:14.330
<v Gast 1>Außer wenn du ein Smartphone hast, dann musst du für 20 Dollar nochmal was extra drauf buchen.

02:35:14.490 --> 02:35:17.370
<v Gast 1>Und früher ging das, weil da hatte ich irgendwie ein Palm Prix und ein HTC Desire,

02:35:17.450 --> 02:35:19.050
<v Gast 1>die es beide so nicht in den USA gibt.

02:35:20.330 --> 02:35:21.210
<v Felix>Und jetzt hast du da ein iPhone.

02:35:21.450 --> 02:35:24.970
<v Gast 1>Jetzt habe ich ein iPhone und da scannen sie wohl echt anhand der E-Mails durch und sagen,

02:35:25.050 --> 02:35:26.410
<v Gast 1>oh, das ist ein Smartphone, Boomf!

02:35:26.650 --> 02:35:27.930
<v Gast 1>Keine Daten mehr für dich.

02:35:28.090 --> 02:35:30.570
<v Gast 1>Und so ATT ist halt Spasten, einfach mal so.

02:35:30.650 --> 02:35:31.210
<v Gast 1>Ja, finde ich gut.

02:35:31.930 --> 02:35:34.090
<v Gast 2>Du könntest dir so ein MyFi-Ding holen und dann mit dem iPhone.

02:35:35.050 --> 02:35:35.290
<v Gast 2>Richtig.

02:35:36.890 --> 02:35:37.770
<v Felix>Genau, Tethering.

02:35:38.010 --> 02:35:39.850
<v Gast 1>Ich glaube, bei MyFi machen sie es genauso.

02:35:40.250 --> 02:35:41.690
<v Gast 1>Wir wollen sie, dass du einen Datentarif hast.

02:35:41.770 --> 02:35:46.490
<v Gast 1>Denn T-Mobile hat die 3G-Frequenzen sind immer noch so mäßig zugreifbar,

02:35:46.570 --> 02:35:49.530
<v Gast 1>deswegen haben die auch kein iPhone in USA, weil sie irgendwo eine ganz komische Frequenz haben,

02:35:49.610 --> 02:35:51.450
<v Gast 1>die das iPhone nur bedingt kann.

02:35:51.610 --> 02:35:55.610
<v Gast 1>Also du kriegst dann da auch Edge und irgendwie in manchen Gegenden wohl 3G,

02:35:55.690 --> 02:35:57.370
<v Gast 1>so wie ich es gelesen habe, reicht nicht überall.

02:35:57.850 --> 02:36:00.330
<v Felix>Ich kann dir das sagen, Edge ist kein Internet.

02:36:01.130 --> 02:36:02.090
<v Felix>Edge ist kein Internet.

02:36:02.410 --> 02:36:05.930
<v Ingo>Also echt so vier Tage nur mit Edge und du denkst echt, ahaaah!

02:36:06.090 --> 02:36:07.690
<v Felix>Da kommst du nach raus und 100 M mit kommen.

02:36:08.010 --> 02:36:09.450
<v Gast 1>Komm doch drauf an, was du für Edge hast.

02:36:09.530 --> 02:36:12.330
<v Gast 1>Es gibt ja auch schnelles Edge, aber meist haben sie uns halt auch so Ramsch-Edge.

02:36:12.570 --> 02:36:13.210
<v Gast 1>Das war echt Edge.

02:36:13.370 --> 02:36:14.250
<v Felix>Edge ist immer scheiße.

02:36:14.490 --> 02:36:17.450
<v Gast 1>Das schnellste Edge ist, glaube ich, irgendwie so knapp von UMTS entfernt, das ist normal.

02:36:18.970 --> 02:36:20.570
<v Ingo>Aber auch nur wenn du alleine in der Zelle bist.

02:36:20.810 --> 02:36:26.090
<v Gast 1>Da gibt es dieses Prepaidwithdata.vikia.com und hat das glaube ich vergessen,

02:36:26.170 --> 02:36:28.170
<v Gast 1>dass sich so alles so schnell löst.

02:36:28.490 --> 02:36:32.250
<v Gast 1>Ich habe also Prepaidwithdata.vikia.com.

02:36:32.810 --> 02:36:34.330
<v Gast 1>Da habe ich noch nicht mal geschaut.

02:36:34.490 --> 02:36:35.530
<v Gast 1>Dann gehen wir in die USA.

02:36:35.610 --> 02:36:38.010
<v Gast 1>Das Problem ist, dann hast du auch noch natürlich Reseller.

02:36:38.250 --> 02:36:40.090
<v Gast 1>Das gibt natürlich auch so CDMA-Geschichten.

02:36:40.250 --> 02:36:43.290
<v Ingo>Musst du übrigens dran denken, dir einen Schneider für die SIM-Karten mitzunehmen.

02:36:43.450 --> 02:36:44.570
<v Unbekannt>Habe ich, ja, habe ich starte.

02:36:44.970 --> 02:36:47.850
<v Gast 1>Nee, ich habe schon eine SIM-Karte bestellt, die ist schon Mikrosim, das ist kein Thema.

02:36:47.930 --> 02:36:52.970
<v Gast 1>Nee, dann gibt es natürlich T-Mobile, das kannst du vergessen, da kriegst du nicht die entsprechenden

02:36:52.970 --> 02:36:54.730
<v Gast 1>Frequenzen mit einem ganz normalen iPhone.

02:36:55.050 --> 02:36:58.170
<v Gast 1>Virgin Mobile kannst du vergessen, weil die CDMA sind.

02:36:58.410 --> 02:37:03.450
<v Gast 1>Simple Mobile setzt, glaube ich, Mobile aus.

02:37:03.770 --> 02:37:05.610
<v Ingo>Du kannst eigentlich nur AT  ⁇ T benutzen.

02:37:05.930 --> 02:37:08.410
<v Gast 1>Richtig, und dann gibt es aber auch verschiedene ATT-Resteller.

02:37:09.130 --> 02:37:10.090
<v Ingo>Wie bei uns hier auch.

02:37:10.490 --> 02:37:12.090
<v Gast 1>Richtig, also das gibt es bei noch gar nicht so lange.

02:37:12.170 --> 02:37:14.890
<v Gast 1>Dann gibt es irgendwie Jolt und Red Pocket Mobile.

02:37:14.970 --> 02:37:18.410
<v Gast 1>Ich glaube, Red Pocket Mobile ist jetzt das, was ich irgendwie genommen habe.

02:37:18.490 --> 02:37:20.970
<v Gast 1>Es klingt für mich irgendwie Red Rocket Mobile, was dann irgendwie komisch ist.

02:37:21.050 --> 02:37:21.690
<v Gast 1>Was dann nicht so gut ist.

02:37:21.770 --> 02:37:22.650
<v Unbekannt>Red Rocket, Red Rocket.

02:37:22.970 --> 02:37:26.490
<v Gast 1>Ja, auf jeden Fall gehen die mir alle tierisch auf den Sack, weil ich würde denen ja echt gern Geld geben,

02:37:26.570 --> 02:37:30.650
<v Gast 1>aber die machen es mir halt echt schwer, dass sie dann sagen, ja, 60 Dollar und nochmal 25 Dollar für einen

02:37:30.650 --> 02:37:31.290
<v Gast 1>Datentarif.

02:37:31.450 --> 02:37:33.210
<v Gast 1>Ihr habt echt einen Arsch offen, wenn es nicht bezahlen kann.

02:37:33.290 --> 02:37:39.450
<v Felix>Also ich hab gerade mal geschaut, Edge ist tatsächlich der Download theoretisch bei 217 Kilobit.

02:37:40.170 --> 02:37:42.410
<v Felix>Das heißt, das sind 20 Kilobyte die Sekunde.

02:37:42.490 --> 02:37:45.770
<v Felix>Das ist okay, wenn du nicht die harten Delays hast.

02:37:45.930 --> 02:37:48.090
<v Felix>Also wenn die Seite einfach nicht scheiße ewig braucht, nur zu abhängig.

02:37:49.290 --> 02:37:51.930
<v Gast 1>Das Ding ist halt Walter, E-Mail, Maps.

02:37:52.730 --> 02:37:56.170
<v Ingo>Also E-Mail ging aber schon SSH-Sessions, also es war.

02:37:57.210 --> 02:37:58.330
<v Gast 1>Ja, die mache ich vom Handy nicht so.

02:37:58.490 --> 02:38:02.570
<v Ingo>Ja, das Problem bei Edge ist, glaube ich, weniger die Bandbreite, sondern mehr die Latenz, weil.

02:38:02.810 --> 02:38:05.050
<v Felix>Ja, die Latenz zackt einfach so richtig.

02:38:05.850 --> 02:38:08.810
<v Felix>Zwei Sekunden, um fucking irgendwas zu machen, jetzt einfach nicht richtig.

02:38:09.450 --> 02:38:12.250
<v Felix>Computer sind schnell und die sollen auch schnell sein, wenn ich damit bin.

02:38:14.650 --> 02:38:14.970
<v Felix>Fuck echt.

02:38:15.290 --> 02:38:18.810
<v Gast 1>Richtig, auf jeden Fall ist das alles sehr nervig, weil ich würde denen gern Geld geben,

02:38:18.890 --> 02:38:19.850
<v Gast 1>aber die machen es mir schwer.

02:38:19.930 --> 02:38:21.770
<v Gast 1>Bisher konnte ich immer ATT einfach nehmen.

02:38:21.850 --> 02:38:26.250
<v Gast 1>Meine SIM-Karte kann ich da jetzt zwar auch irgendwie verramschen, weil die bringt mir gar nicht mehr so viel,

02:38:26.410 --> 02:38:30.650
<v Gast 1>weil sie mich dann wahrscheinlich sperren würden und deswegen muss ich jetzt irgendwie zu Red Pocket Mobile.

02:38:31.130 --> 02:38:31.930
<v Felix>Red Rocket Mobile.

02:38:32.090 --> 02:38:33.130
<v Ingo>Red Rock Mobile.

02:38:33.930 --> 02:38:36.890
<v Felix>Warum bezahlst du nicht einfach 70 Dollar für fucking ATT?

02:38:37.850 --> 02:38:42.170
<v Gast 1>Es wären ja nicht mal 70, es wären, glaub 60, wenn ich irgendwie unendlich telefonieren will,

02:38:42.250 --> 02:38:45.450
<v Gast 1>was ja eigentlich eine ganz nette Sache ist, plus 25 für den Smartphone,

02:38:45.610 --> 02:38:47.130
<v Gast 1>Datatarif mit 300 Megabyte.

02:38:47.210 --> 02:38:49.450
<v Gast 1>Oder für ein Gigabyte Event sein oder so.

02:38:49.690 --> 02:38:50.490
<v Gast 1>Oh Gott, oh Gott.

02:38:50.650 --> 02:38:52.490
<v Felix>Das ist, was du hier umsonst bekommst, quasi.

02:38:53.610 --> 02:38:56.330
<v Gast 1>Für 10 Euro kannst du bei Lila eine Karte kaufen, im Gigabyte für einen Monat.

02:38:56.810 --> 02:39:00.170
<v Felix>Also zum Beispiel, wie hießen die, bei den Netzclub, gibt es die immer noch for free, glaubst du?

02:39:01.610 --> 02:39:03.290
<v Felix>100 M-Byte kriegst du, glaube ich.

02:39:03.530 --> 02:39:05.130
<v Gast 1>Und ich will halt, also dann nehme ich.

02:39:05.450 --> 02:39:07.370
<v Gast 1>Ist auch die Sache, das ist gar nicht so ein großer Unterschied.

02:39:07.450 --> 02:39:13.290
<v Gast 1>Ich kann 300 Megabyte oder 2 Gigabyte oder 1 Gigabyte, irgendwie 57 Unterschied.

02:39:13.450 --> 02:39:14.490
<v Felix>Das ist aber alles fucking 30.

02:39:14.970 --> 02:39:18.410
<v Ingo>Und wenn du jetzt nochmal nach Österreich gehst oder so, wo es noch viel weniger kostet als.

02:39:18.650 --> 02:39:23.610
<v Ingo>Also Deutschland, das ist auch super 30, da musst du dann auch nochmal irgendwie 20 Dollar oder so aufpreis

02:39:23.610 --> 02:39:24.970
<v Ingo>zahlen, wenn du dann Tethering haben würdest.

02:39:25.130 --> 02:39:31.850
<v Gast 1>Ich würde es gerne, genau, würden würde ich es auch gerne, weil wenn du die Sim-Karte auf Red Pocket Mobile

02:39:31.930 --> 02:39:34.650
<v Gast 1>Dingens auf der Homepage kaufst, wollen sie 20 Dollar haben.

02:39:35.370 --> 02:39:37.530
<v Gast 1>Wenn du es auf Ebay kaufst, kostet es einen Dollar.

02:39:37.850 --> 02:39:40.490
<v Unbekannt>Selbe Fall, dass es Sim-Karte neu, alles und.

02:39:40.970 --> 02:39:47.610
<v Felix>Das ist wie in Deutschland bei Ebay, wo du dir irgendwie Prepaid kaufen kannst für fucking 20 Euro drauf und

02:39:47.610 --> 02:39:49.210
<v Felix>dann kriegst du noch irgendwie Pad zu.

02:39:50.250 --> 02:39:50.730
<v Felix>Kein gar nichts.

02:39:50.810 --> 02:39:51.450
<v Felix>Das ist eben das Tolle.

02:39:51.530 --> 02:39:53.450
<v Gast 1>Also die wahrscheinlich kriegen sie auch irgendwelche Referral-Fees.

02:39:53.690 --> 02:39:54.650
<v Felix>Klar kriegen sie Provisionen.

02:39:54.890 --> 02:39:57.530
<v Gast 1>Ohne dass du irgendwas, also nur eine nackte Karte ohne Vertrag taufen.

02:39:57.690 --> 02:40:00.490
<v Gast 1>Den Vertrag musst du extra buchen, aber 20 Dollar billiger.

02:40:00.730 --> 02:40:01.130
<v Gast 1>Das heißt.

02:40:01.450 --> 02:40:03.290
<v Gast 1>Und ja, da ist eben die Frage, warum?

02:40:03.530 --> 02:40:05.130
<v Unbekannt>Weil die anderen Werbungs gibt.

02:40:05.530 --> 02:40:05.930
<v Unbekannt>Keine Ahnung.

02:40:06.010 --> 02:40:08.970
<v Unbekannt>Naja, sorry, jetzt.

02:40:09.530 --> 02:40:13.210
<v Ingo>Gut, dann wünsche ich euch wie immer eine frohe Zeit.

02:40:13.290 --> 02:40:14.090
<v Ingo>Pass auf euch auf.

02:40:14.330 --> 02:40:14.970
<v Ingo>Habt Spaß.

02:40:15.290 --> 02:40:16.170
<v Ingo>Am Gerät.

02:40:16.490 --> 02:40:17.690
<v Felix>Auf jeden Fall.

02:40:18.010 --> 02:40:19.930
<v Felix>Und kein Edge, bei Edge ist kein Internet.

02:40:20.090 --> 02:40:20.970
<v Ingo>Edge ist kein Internet.

02:40:21.210 --> 02:40:22.410
<v Gast 2>Genau, esst keine Babys.

02:40:23.770 --> 02:40:24.970
<v Ingo>Und auch keine SD-Karten.

02:40:25.130 --> 02:40:25.850
<v Ingo>Und keine SD-Karten.

02:40:26.010 --> 02:40:27.370
<v Felix>Auch wenn sie nicht auf Babys sind.

02:40:28.090 --> 02:40:32.010
<v Ingo>Und knabbert nicht an den Mikrofon-Kabeln, äh, Kopfhörerkabeln.

02:40:32.490 --> 02:40:32.730
<v Ingo>Gut.

02:40:32.890 --> 02:40:33.450
<v Ingo>Finde ich super.

02:40:33.690 --> 02:40:36.490
<v Gast 2>Weil sie uns Strauß Rauschzim-Schritte machen.

02:40:36.810 --> 02:40:39.450
<v Felix>Beim Rauscht zum Schritt.

02:40:40.170 --> 02:40:41.770
<v Ingo>Könnt ihr sendet auch so raus raus.

02:40:42.010 --> 02:40:42.730
<v Ingo>Rauscht im Schritt.

02:40:43.130 --> 02:40:44.490
<v Gast 1>Ich sag mal, Edge rauscht im Schritt.

02:40:45.850 --> 02:40:46.090
<v Gast 1>Genau.

02:40:46.650 --> 02:40:47.290
<v Gast 1>Schwarz und Hardware.

02:40:47.450 --> 02:40:50.570
<v Felix>Edge ist kein Internet, finde ich aber tatsächlich echt cool.

02:40:51.130 --> 02:40:52.810
<v Felix>Edge ist kein Internet.

02:40:54.330 --> 02:40:54.650
<v Felix>Okay.

02:40:54.890 --> 02:40:55.130
<v Felix>Okay.

02:40:55.290 --> 02:40:55.610
<v Felix>Ciao.

02:40:56.010 --> 02:40:56.250
<v Felix>Tschüss.

02:40:56.490 --> 02:40:56.730
<v Felix>Ciao.
