[Script Info] Title: [Events] Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text Dialogue: 0,0:00:00.00,0:00:24.76,Default,,0000,0000,0000,,{\i1}RC3 preroll music{\i0} Dialogue: 0,0:00:24.76,0:00:31.00,Default,,0000,0000,0000,,Herald: Hello, everyone, welcome back to\NChaos West TV. The next talk will start Dialogue: 0,0:00:31.00,0:00:34.62,Default,,0000,0000,0000,,momentarily. I will now switch back to\NGerman for a few seconds to announce a Dialogue: 0,0:00:34.62,0:00:40.61,Default,,0000,0000,0000,,translation. Then I'll switch back and\Nthen we'll go off to the races as they say Dialogue: 0,0:00:40.61,0:00:45.54,Default,,0000,0000,0000,,So nochmal schnell auf Deutsch,\Nwillkommen zurück zu Chaos West TV, eure Dialogue: 0,0:00:45.54,0:00:51.30,Default,,0000,0000,0000,,beste Bühne auf dem rc3. Der nächste Talk\Nbeginnt gleich er ist zwar auf Englisch Dialogue: 0,0:00:51.30,0:00:55.55,Default,,0000,0000,0000,,wird aber wie so vieles dank unserer\NÜbersetzungscrew auf Deutsch übersetzt. Dialogue: 0,0:00:55.55,0:01:00.24,Default,,0000,0000,0000,,Ihr solltet in der Lage sein das im Stream\Neinfach auszuwählen ohne größere Probleme Dialogue: 0,0:01:00.24,0:01:03.57,Default,,0000,0000,0000,,und dann könnt ihr den Vortrag auch direkt\Nsimultanübersetzt auf Deutsch hören Dialogue: 0,0:01:03.57,0:01:06.03,Default,,0000,0000,0000,,und ich rede jetzt auf Englisch weiter. Dialogue: 0,0:01:06.03,0:01:07.97,Default,,0000,0000,0000,,Alright back to English. Dialogue: 0,0:01:07.97,0:01:11.90,Default,,0000,0000,0000,,Now in the comfort of your own homes\Nor wherever you're viewing the stream, Dialogue: 0,0:01:11.90,0:01:15.31,Default,,0000,0000,0000,,please do a warm round of applause \Nfor our next speaker, Dialogue: 0,0:01:15.31,0:01:23.11,Default,,0000,0000,0000,,Martin, who will talk about \Noptimizing public transport. Dialogue: 0,0:01:23.11,0:01:24.44,Default,,0000,0000,0000,,Let's go. Dialogue: 0,0:01:26.92,0:01:33.05,Default,,0000,0000,0000,,Martin: Welcome to my contribution to this\Nyear's rC3 2021 in the form of this talk, Dialogue: 0,0:01:33.05,0:01:37.15,Default,,0000,0000,0000,,Optimizing public transport: \Na data-driven bike sharing study in Marburg Dialogue: 0,0:01:37.15,0:01:42.24,Default,,0000,0000,0000,,I would like to thank the organizers of the\NrC3 2021 for organizing the whole event. Dialogue: 0,0:01:42.24,0:01:47.14,Default,,0000,0000,0000,,And in particular, I would like to thank\Nthe channel that accepted me Chaos West TV Dialogue: 0,0:01:47.14,0:01:52.75,Default,,0000,0000,0000,,well for accepting the presentation of my\Nwork. Today I would like to give you a Dialogue: 0,0:01:52.75,0:01:57.22,Default,,0000,0000,0000,,quick overview of one of my hobby projects\Nin which I scraped and therefore Dialogue: 0,0:01:57.22,0:02:02.27,Default,,0000,0000,0000,,downloaded over one million data points\Nregarding the bike sharing system in the Dialogue: 0,0:02:02.27,0:02:09.10,Default,,0000,0000,0000,,city of Marburg. This study came about\Nwhen I was traveling from Stuttgart to Dialogue: 0,0:02:09.10,0:02:13.22,Default,,0000,0000,0000,,Frankfurt and ultimately to Marburg some\Ntime ago, and I was watching the amazing Dialogue: 0,0:02:13.22,0:02:17.44,Default,,0000,0000,0000,,SpiegelMining talk by David Kriesel. So\Nthank you very much for this implicit Dialogue: 0,0:02:17.44,0:02:20.52,Default,,0000,0000,0000,,inspiration of the work that you're about\Nto see now. Dialogue: 0,0:02:20.52,0:02:26.09,Default,,0000,0000,0000,,Who am I? My name is Martin Lellep, \Nand I studied physics in the past, Dialogue: 0,0:02:26.09,0:02:30.42,Default,,0000,0000,0000,,and actually, I continue to do so in the \Nform of a Ph.D. in theoretical physics at Dialogue: 0,0:02:30.42,0:02:34.26,Default,,0000,0000,0000,,the University of Edinburgh in Scotland \Nand in my spare time I like to do data Dialogue: 0,0:02:34.26,0:02:39.26,Default,,0000,0000,0000,,analysis of all kinds of data. \NThere are two more things... Dialogue: 0,0:02:39.26,0:02:42.04,Default,,0000,0000,0000,,There are two more things \Nthat are important for here now. Dialogue: 0,0:02:42.04,0:02:45.88,Default,,0000,0000,0000,,It's first of all, I studied at the\NUniversity of Marburg, obviously in Dialogue: 0,0:02:45.88,0:02:52.07,Default,,0000,0000,0000,,Marburg previously, and then also I like\Nto ride my bike. Marburg, for those who Dialogue: 0,0:02:52.07,0:02:56.31,Default,,0000,0000,0000,,don't know it yet, it's a small,\Nuniversity dominated town that is in the Dialogue: 0,0:02:56.31,0:03:00.84,Default,,0000,0000,0000,,north of Frankfurt am Main, roughly 80\Nkilometers. So an hour by car or an hour Dialogue: 0,0:03:00.84,0:03:07.45,Default,,0000,0000,0000,,by train, approximately. And again, it's\Nquite dominated by the university that is Dialogue: 0,0:03:07.45,0:03:12.07,Default,,0000,0000,0000,,located there, and that can be seen simply\Nin terms of, for instance, numbers. There Dialogue: 0,0:03:12.07,0:03:19.10,Default,,0000,0000,0000,,are roughly 25,000 students for an overall\Npopulation of 77,000 residents in total, Dialogue: 0,0:03:19.10,0:03:26.54,Default,,0000,0000,0000,,which is quite substantial, obviously. You\Ncan see a quite popular picture here of a Dialogue: 0,0:03:26.54,0:03:32.60,Default,,0000,0000,0000,,picturesque scene in Marburg. We can see\Nthe castle and then the river Lahn, as Dialogue: 0,0:03:32.60,0:03:37.29,Default,,0000,0000,0000,,well as a few houses and a bit of green.\NAnd the bike rentals are currently Dialogue: 0,0:03:37.29,0:03:44.43,Default,,0000,0000,0000,,provided at the time of recording this by\Nthe company called Nextbike. Before now Dialogue: 0,0:03:44.43,0:03:49.79,Default,,0000,0000,0000,,diving into a bit more technical details,\NI would like to motivate my story or my Dialogue: 0,0:03:49.79,0:03:54.87,Default,,0000,0000,0000,,study by the story of Anna. Anna is a\Nuniversity... is a university student at Dialogue: 0,0:03:54.87,0:03:59.78,Default,,0000,0000,0000,,the University of Marburg, and she lives a\Nbit outside the city, so she typically Dialogue: 0,0:03:59.78,0:04:06.91,Default,,0000,0000,0000,,does not walk to the place that she needs\Nto be or study at. But she takes the bus Dialogue: 0,0:04:06.91,0:04:13.31,Default,,0000,0000,0000,,from her... from her flat to the\Nuniversity, to the city. And then does the Dialogue: 0,0:04:13.31,0:04:19.96,Default,,0000,0000,0000,,last mile by walking or cycling or\Nwhatever. And she's also quite an eager Dialogue: 0,0:04:19.96,0:04:24.22,Default,,0000,0000,0000,,student, so she very often studies quite\Nlate. As you can see here, that's a Dialogue: 0,0:04:24.22,0:04:29.94,Default,,0000,0000,0000,,picture of late Marburg, so to say, and\Njust as it happens now, she needs to catch Dialogue: 0,0:04:29.94,0:04:34.62,Default,,0000,0000,0000,,a bus now because she's a bit late. She\Nforgot to pack in her... her fancy MacBook Dialogue: 0,0:04:34.62,0:04:41.11,Default,,0000,0000,0000,,in time, so she needs to hurry up a\Nbit and, well, didn't really make it. So Dialogue: 0,0:04:41.11,0:04:43.72,Default,,0000,0000,0000,,therefore, she thought maybe Dialogue: 0,0:04:43.72,0:04:47.13,Default,,0000,0000,0000,,taking a Nextbike for the last mile\Nto the bus station is a good idea Dialogue: 0,0:04:47.13,0:04:51.29,Default,,0000,0000,0000,,so she can safely take then subsequently \Nthe bus home. And normally the bus… Dialogue: 0,0:04:51.29,0:04:55.71,Default,,0000,0000,0000,,The Nextbike stations look like\Nthat here. So there are plenty of bikes. Dialogue: 0,0:04:55.71,0:05:02.53,Default,,0000,0000,0000,,It's very easy to go there, grab a bike\Nand go to your destination. Now Anna must Dialogue: 0,0:05:02.53,0:05:07.55,Default,,0000,0000,0000,,be a very unlucky student today because\Nshe arrives at the bike station, and it Dialogue: 0,0:05:07.55,0:05:12.61,Default,,0000,0000,0000,,turns out that the station is empty, so\Nultimately she misses at least this bus Dialogue: 0,0:05:12.61,0:05:19.72,Default,,0000,0000,0000,,and therefore only arrives at home a bit\Nlater. Her cooking plans and her Netflix Dialogue: 0,0:05:19.72,0:05:26.46,Default,,0000,0000,0000,,plans, all that stuff postponed a bit\Nbecause, well, she arrives a bit later. Dialogue: 0,0:05:26.46,0:05:32.60,Default,,0000,0000,0000,,And that's, of course, a very, very sad\Nstory, and maybe it happens to multiple Dialogue: 0,0:05:32.60,0:05:38.06,Default,,0000,0000,0000,,people, not only Anna. And in fact, it\Nalso happened to me a few times, and every Dialogue: 0,0:05:38.06,0:05:41.92,Default,,0000,0000,0000,,time it happened to me, I thought, well, I\Nmust be the most unlucky person in whole Dialogue: 0,0:05:41.92,0:05:46.50,Default,,0000,0000,0000,,Marburg going to a normally completely\Nfully packed bike station and now it's Dialogue: 0,0:05:46.50,0:05:51.51,Default,,0000,0000,0000,,completely empty. Missing, for instance,\Nsubsequent public transportation. Dialogue: 0,0:05:51.51,0:05:56.71,Default,,0000,0000,0000,,After it happened to me a few times, I\Nthought, well, maybe I'm not that unlucky. Dialogue: 0,0:05:56.71,0:06:02.55,Default,,0000,0000,0000,,So is there may be a system to empty bike\Nstations in Marburg. And given all my Dialogue: 0,0:06:02.55,0:06:06.53,Default,,0000,0000,0000,,my spare time interest of analyzing and\Ncapturing data, I thought, well, data to Dialogue: 0,0:06:06.53,0:06:12.55,Default,,0000,0000,0000,,the rescue, of course. And therefore, the\Nidea for this talk now was to build a web Dialogue: 0,0:06:12.55,0:06:17.90,Default,,0000,0000,0000,,scraper in order to acquire Nextbike data.\NCollect the data, store the data, analyze Dialogue: 0,0:06:17.90,0:06:23.07,Default,,0000,0000,0000,,the data and then hopefully finally help\NAnna, me, and other students to figure out Dialogue: 0,0:06:23.07,0:06:28.70,Default,,0000,0000,0000,,which stations maybe to avoid and which\Nstations are safe to go to if you're in Dialogue: 0,0:06:28.70,0:06:31.23,Default,,0000,0000,0000,,desperate need for a bike. Dialogue: 0,0:06:31.90,0:06:35.52,Default,,0000,0000,0000,,The tech stack that I'm using here, \Nit's based on a Docker container Dialogue: 0,0:06:35.52,0:06:39.56,Default,,0000,0000,0000,,in which a python scraper runs \Nevery 30 seconds that queries the Dialogue: 0,0:06:39.56,0:06:44.98,Default,,0000,0000,0000,,Nextbike API. It downloads the data, it\Nparses the data, and then saves the data Dialogue: 0,0:06:44.98,0:06:51.36,Default,,0000,0000,0000,,outside the Docker container in order to\Nbe evaluated later on. And it turns out Dialogue: 0,0:06:51.36,0:06:56.18,Default,,0000,0000,0000,,that the whole concept of what I just\Ndescribed also has a name. It's called Dialogue: 0,0:06:56.18,0:07:02.39,Default,,0000,0000,0000,,Extract, Transform, Load Pipeline or ETL\Nin short. And what I again wrote here is Dialogue: 0,0:07:02.39,0:07:06.33,Default,,0000,0000,0000,,an ETL pipeline in Python, and then I\Nwrote an analysis code also written in Dialogue: 0,0:07:06.33,0:07:13.78,Default,,0000,0000,0000,,Python and all that was running on a small\Nhome server in my flat. The data that I Dialogue: 0,0:07:13.78,0:07:19.63,Default,,0000,0000,0000,,captured consists of the bikes identified\Nthrough IDs and then also the locations of Dialogue: 0,0:07:19.63,0:07:23.78,Default,,0000,0000,0000,,those bikes, typically at stations, but\Nsome of them were also freestanding and Dialogue: 0,0:07:23.78,0:07:29.35,Default,,0000,0000,0000,,last but not least, the station locations,\Nand of course, obviously also a list of of Dialogue: 0,0:07:29.35,0:07:38.89,Default,,0000,0000,0000,,stations. And then with it, I went ahead\Nand did a few pictures that I'm about to Dialogue: 0,0:07:38.89,0:07:43.90,Default,,0000,0000,0000,,show now and a few analyses. And if you're\Ninterested in that and there are slides Dialogue: 0,0:07:43.90,0:07:48.53,Default,,0000,0000,0000,,available on this website here, the\Nwebsite can be read through the QR code or Dialogue: 0,0:07:48.53,0:07:52.94,Default,,0000,0000,0000,,through that link and this website\Ncontains the slides that you'll see in Dialogue: 0,0:07:52.94,0:07:56.74,Default,,0000,0000,0000,,here, high resolution figures, a few\Ninteractive figures and all the Dialogue: 0,0:07:56.74,0:08:01.18,Default,,0000,0000,0000,,information on the previous blog articles\Nthat I wrote about this topic. Dialogue: 0,0:08:02.66,0:08:07.16,Default,,0000,0000,0000,,So the results of Anna, first of all, to\Nstart slowly. It turns out that there are Dialogue: 0,0:08:07.16,0:08:13.24,Default,,0000,0000,0000,,37 bike stations in Marburg, \Nwith roughly 230 bikes spread across Dialogue: 0,0:08:13.24,0:08:16.05,Default,,0000,0000,0000,,the whole Nextbike Marburg ecosystem. Dialogue: 0,0:08:17.10,0:08:20.66,Default,,0000,0000,0000,,And it's now, well, knowing that \Nthere are roughly 40 stations, Dialogue: 0,0:08:20.66,0:08:23.39,Default,,0000,0000,0000,,it's quite interesting to see\Nwhere these stations are, Dialogue: 0,0:08:23.39,0:08:25.29,Default,,0000,0000,0000,,because then Anna could, Dialogue: 0,0:08:25.29,0:08:28.64,Default,,0000,0000,0000,,for instance, already go to another \Nstation if one station is empty. Dialogue: 0,0:08:28.64,0:08:32.67,Default,,0000,0000,0000,,And what you can see here is now a map\Nof Marburg, where the stations are Dialogue: 0,0:08:32.67,0:08:36.36,Default,,0000,0000,0000,,annotated by these dots. \NAnd the area of the dot, Dialogue: 0,0:08:36.36,0:08:40.08,Default,,0000,0000,0000,,as well as the color code, \Ncorresponds to the average number of Dialogue: 0,0:08:40.08,0:08:46.64,Default,,0000,0000,0000,,parked bikes at that station. So let's see\Nan interactive version because it's a bit Dialogue: 0,0:08:46.64,0:08:53.50,Default,,0000,0000,0000,,nicer to see it in that way. So I click on\Nhere. Alright. OK, now we can pan around Dialogue: 0,0:08:53.50,0:08:59.85,Default,,0000,0000,0000,,and zoom as you can often do with these\Ninteractive graphics and also by clicking Dialogue: 0,0:08:59.85,0:09:04.68,Default,,0000,0000,0000,,on these buttons or on these these points,\Nyou can see the station name, as well as Dialogue: 0,0:09:04.68,0:09:11.70,Default,,0000,0000,0000,,the average number of bikes placed there.\NAnd becomes quite obvious that, well, most Dialogue: 0,0:09:11.70,0:09:17.97,Default,,0000,0000,0000,,of the stations are in the central part of\Nthe city, a few in the outskirts here. And Dialogue: 0,0:09:17.97,0:09:22.98,Default,,0000,0000,0000,,it turns out that the largest station in\Nterms of the number of parked bikes on Dialogue: 0,0:09:22.98,0:09:27.76,Default,,0000,0000,0000,,average is the main train station\NHauptbahnhof. There are again a few more Dialogue: 0,0:09:27.76,0:09:30.68,Default,,0000,0000,0000,,spread around the \Ncentral part of the station, Dialogue: 0,0:09:30.68,0:09:34.29,Default,,0000,0000,0000,,such as the Elisabeth-Blochmann-Platz, \Nwhich is the second largest station. Dialogue: 0,0:09:34.29,0:09:38.30,Default,,0000,0000,0000,,And then if you continue the train \Nline here, you can see that there's Dialogue: 0,0:09:38.30,0:09:44.73,Default,,0000,0000,0000,,actually another set of stations, where \Nthe secondary train station is. Dialogue: 0,0:09:44.73,0:09:48.48,Default,,0000,0000,0000,,So that's another train station, \Nsmaller train station. Dialogue: 0,0:09:51.15,0:09:58.13,Default,,0000,0000,0000,,OK, so the first results for Anna\Nwould then be a day-hour usage histogram, Dialogue: 0,0:09:58.13,0:10:03.74,Default,,0000,0000,0000,,because it's the kind of the first order\Napproach, I would say, in order to see how Dialogue: 0,0:10:03.74,0:10:11.98,Default,,0000,0000,0000,,the ecosystem of Nextbikes is in use\Nagainst day as well as hour. And therefore Dialogue: 0,0:10:11.98,0:10:19.09,Default,,0000,0000,0000,,Anna will based on this figure here, she\Nwill understand when to maybe plan for a Dialogue: 0,0:10:19.09,0:10:23.99,Default,,0000,0000,0000,,bit more time when looking for a bike in a\Ndesperate fashion. And since this figure Dialogue: 0,0:10:23.99,0:10:27.96,Default,,0000,0000,0000,,is a bit more difficult to understand, I\Nwould like to take a moment to explain it Dialogue: 0,0:10:27.96,0:10:31.60,Default,,0000,0000,0000,,and we are going to start with the top\Nfigure here. What you can see on the x Dialogue: 0,0:10:31.60,0:10:35.75,Default,,0000,0000,0000,,axis is the hour of the day and on the y\Naxis, and that's shown in the whole Dialogue: 0,0:10:35.75,0:10:40.28,Default,,0000,0000,0000,,figure. So each of the the numbers that\Nyou see is the following: it's the Dialogue: 0,0:10:40.28,0:10:46.94,Default,,0000,0000,0000,,average. And well it's the number of\Nparked bikes and then you subtract the Dialogue: 0,0:10:46.94,0:10:51.56,Default,,0000,0000,0000,,average of the number of parked bikes in\Nthe whole ecosystem of Marburg. So that Dialogue: 0,0:10:51.56,0:10:55.93,Default,,0000,0000,0000,,means if a number of zero is encountered\Nlike roughly here, it means that the Dialogue: 0,0:10:55.93,0:11:01.11,Default,,0000,0000,0000,,average number of parked bikes simply in\Nthe system at that point in time. When the Dialogue: 0,0:11:01.11,0:11:05.92,Default,,0000,0000,0000,,number is larger, it's above the average,\Nif it's smaller, it's below the average. Dialogue: 0,0:11:05.92,0:11:10.71,Default,,0000,0000,0000,,And you can clearly see from this small\Nfigure here already that in the morning, Dialogue: 0,0:11:10.71,0:11:15.43,Default,,0000,0000,0000,,more bikes are typically parked. And then\Nin the evenings or around noon, you can Dialogue: 0,0:11:15.43,0:11:21.75,Default,,0000,0000,0000,,see two dips, a bimodal distribution so to\Nsay. Where people, well, obviously use Dialogue: 0,0:11:21.75,0:11:28.13,Default,,0000,0000,0000,,bikes around noon and six p.m. roughly\Nwhere these used bikes, of course, are not Dialogue: 0,0:11:28.13,0:11:32.05,Default,,0000,0000,0000,,parked, and therefore these numbers are\Nsmaller. And the same thing can be done Dialogue: 0,0:11:32.05,0:11:37.17,Default,,0000,0000,0000,,for the day of the week. Here and here you\Ncan see that the Monday, well, the Dialogue: 0,0:11:37.17,0:11:40.19,Default,,0000,0000,0000,,beginning of the week and the end of the\Nweek, meaning Monday, Tuesday and Saturday Dialogue: 0,0:11:40.19,0:11:46.99,Default,,0000,0000,0000,,Sunday are a bit more popular, so more\Npeople ride a bike and therefore fewer Dialogue: 0,0:11:46.99,0:11:49.95,Default,,0000,0000,0000,,bikes are parked and therefore this is\Nnegative. And then in the middle of the Dialogue: 0,0:11:49.95,0:11:55.65,Default,,0000,0000,0000,,week, fewer people seem to ride the bike,\Nthe bikes in general. And if you combine Dialogue: 0,0:11:55.65,0:11:59.84,Default,,0000,0000,0000,,these figures now, you can see the the\Njoint histogram here, where you can not Dialogue: 0,0:11:59.84,0:12:05.14,Default,,0000,0000,0000,,only look for time or day separately, but\Nalso in a combined fashion. So you would, Dialogue: 0,0:12:05.14,0:12:09.58,Default,,0000,0000,0000,,for instance, see that Monday morning is\Nthe time where many people use bikes Dialogue: 0,0:12:09.58,0:12:13.82,Default,,0000,0000,0000,,because they are not as many bikes parked.\NAnd then also on a Saturday, you can see Dialogue: 0,0:12:13.82,0:12:20.88,Default,,0000,0000,0000,,the same, so around afternoon many people\Nseem to use the bikes. Last but not least Dialogue: 0,0:12:20.88,0:12:24.85,Default,,0000,0000,0000,,on Friday mornings, it's quite easy to get\Na bike because many bikes appear to be Dialogue: 0,0:12:24.85,0:12:29.50,Default,,0000,0000,0000,,parked, maybe because people envision\Nalready the weekend. So that's the first Dialogue: 0,0:12:29.50,0:12:36.53,Default,,0000,0000,0000,,outcome for Anna. Well try to avoid times\Naround six and around noon when Dialogue: 0,0:12:36.53,0:12:41.35,Default,,0000,0000,0000,,desperately looking for bike. And although\Neven more interesting part for Anna is the Dialogue: 0,0:12:41.35,0:12:45.90,Default,,0000,0000,0000,,probability to find a specific station to\Nbe empty. For that, I took the time series Dialogue: 0,0:12:45.90,0:12:51.39,Default,,0000,0000,0000,,of the number of parked bikes and counted\Nthe occasions where there was no bike for Dialogue: 0,0:12:51.39,0:12:56.02,Default,,0000,0000,0000,,each of the stations here. And that has\Nbeen done again for each station Dialogue: 0,0:12:56.02,0:12:59.95,Default,,0000,0000,0000,,separately, so for each station, at the\Nend of the day, you get a number that Dialogue: 0,0:12:59.95,0:13:03.81,Default,,0000,0000,0000,,denotes the probability of finding that\Nstation empty. And clearly, for instance, Dialogue: 0,0:13:03.81,0:13:08.24,Default,,0000,0000,0000,,the Hauptbahnhof, the main train station,\Nwhich was the largest station. It's Dialogue: 0,0:13:10.04,0:13:14.79,Default,,0000,0000,0000,,quite unlikely to find it empty,\Nand contrary, if you go to these Dialogue: 0,0:13:14.79,0:13:18.45,Default,,0000,0000,0000,,stations down here, for instance \Nthe Am Plan / Wirtschaftswissenschaften Dialogue: 0,0:13:18.45,0:13:23.77,Default,,0000,0000,0000,,it turns out that these are empty at about\N70 percent of the time, which is quite Dialogue: 0,0:13:23.77,0:13:28.91,Default,,0000,0000,0000,,substantial, I would say. And\Ninterestingly, if you now look for the the Dialogue: 0,0:13:28.91,0:13:33.13,Default,,0000,0000,0000,,secondary train station in Marburg, the\NSüdbahnhof, you can see that this has Dialogue: 0,0:13:33.13,0:13:37.82,Default,,0000,0000,0000,,quite a substantial probability of \Nrunning empty at about 30 to 40 percent. Dialogue: 0,0:13:37.82,0:13:41.89,Default,,0000,0000,0000,,In particular, in comparison to the main \Ntrain station, which is essentially almost Dialogue: 0,0:13:41.89,0:13:50.99,Default,,0000,0000,0000,,never empty. Also interestingly, you can\Nthen plot these probabilities against the Dialogue: 0,0:13:50.99,0:13:54.92,Default,,0000,0000,0000,,average number of parked bikes at the\Nstation and you find an antiproportional Dialogue: 0,0:13:54.92,0:13:59.35,Default,,0000,0000,0000,,relation between those two. It means that\Nthe larger the stations, the more unlikely Dialogue: 0,0:13:59.35,0:14:02.81,Default,,0000,0000,0000,,it is that it's empty, which is quite a\Nreasonable outcome, I would say. Dialogue: 0,0:14:02.81,0:14:05.75,Default,,0000,0000,0000,,So finally, to conclude for Anna, Dialogue: 0,0:14:05.75,0:14:08.81,Default,,0000,0000,0000,,she should try to avoid small stations Dialogue: 0,0:14:08.81,0:14:11.87,Default,,0000,0000,0000,,and in particular, she should try\Nto avoid the stations that are Dialogue: 0,0:14:11.87,0:14:14.60,Default,,0000,0000,0000,,well, annotated here with\Nthe sad smiley, because these Dialogue: 0,0:14:14.60,0:14:18.57,Default,,0000,0000,0000,,tend to run empty quite often. Dialogue: 0,0:14:21.36,0:14:25.04,Default,,0000,0000,0000,,OK, so I have all this ETL pipeline \Nstuff already set up, Dialogue: 0,0:14:25.04,0:14:27.56,Default,,0000,0000,0000,,I have collected \Nover a million data points Dialogue: 0,0:14:27.56,0:14:32.58,Default,,0000,0000,0000,,and then I thought, well, maybe there's\Nmore in the data then only helping Anna. Dialogue: 0,0:14:32.58,0:14:37.74,Default,,0000,0000,0000,,So everything that I've shown you so far,\Nit's from the perspective of a user. Dialogue: 0,0:14:37.74,0:14:40.95,Default,,0000,0000,0000,,And now I would like to turn to \Nwhat's the perspective of a city. Dialogue: 0,0:14:40.95,0:14:42.87,Default,,0000,0000,0000,,And there I would like to \Nask a few questions, like… Dialogue: 0,0:14:42.87,0:14:45.54,Default,,0000,0000,0000,,How is Nextbike used in Marburg?\Nfirst of all, Dialogue: 0,0:14:45.54,0:14:48.54,Default,,0000,0000,0000,,and then, in general, \NIs cycling a good thing for a city? Dialogue: 0,0:14:48.54,0:14:52.85,Default,,0000,0000,0000,,How can, or,\NCan cycling contribute to a better city? Dialogue: 0,0:14:52.85,0:14:57.53,Default,,0000,0000,0000,,And now–better is of course first a quite\Nvague term–and then last, but not least, Dialogue: 0,0:14:57.53,0:15:01.34,Default,,0000,0000,0000,,is it worth improving \Nbike infrastructure for a city? Dialogue: 0,0:15:02.80,0:15:10.20,Default,,0000,0000,0000,,And all this again, is now from the\Nperspective of a city instead of a user. Dialogue: 0,0:15:10.20,0:15:14.83,Default,,0000,0000,0000,,The first thing that I would like to start\Nwith is something that I call the distance Dialogue: 0,0:15:14.83,0:15:21.71,Default,,0000,0000,0000,,matrix in which I concentrated on the\Npositions of the bike stations and Dialogue: 0,0:15:21.71,0:15:26.03,Default,,0000,0000,0000,,computed the pairwise distances for all of\Nthem. And since the distance is, of Dialogue: 0,0:15:26.03,0:15:32.04,Default,,0000,0000,0000,,course, symmetric, also the stored matrix\Nis now in the end also symmetric. And, Dialogue: 0,0:15:32.04,0:15:36.47,Default,,0000,0000,0000,,It turns out that there are roughly 600\Ncombinations, and these combinations can Dialogue: 0,0:15:36.47,0:15:41.76,Default,,0000,0000,0000,,be shown in a symmetric matrix, as shown\Nhere, where on the x axis this one here Dialogue: 0,0:15:41.76,0:15:47.71,Default,,0000,0000,0000,,and the y axis you can see the stations\Nand then each combination denotes Dialogue: 0,0:15:47.71,0:15:52.62,Default,,0000,0000,0000,,the distance between that one station and\Nthe other station. It turns out that the Dialogue: 0,0:15:52.62,0:15:57.32,Default,,0000,0000,0000,,range of these distances is between zero\Nand roughly nine kilometers. And of Dialogue: 0,0:15:57.32,0:16:03.41,Default,,0000,0000,0000,,course, those that have a zero distance to\Nother stations are essentially the… Dialogue: 0,0:16:03.41,0:16:07.92,Default,,0000,0000,0000,,the stations themselves. So if you pick a\Nstation, obviously the distance to itself Dialogue: 0,0:16:07.92,0:16:12.37,Default,,0000,0000,0000,,is zero and therefore the diagonal is\Nexactly zero. And then again, all the Dialogue: 0,0:16:12.37,0:16:20.38,Default,,0000,0000,0000,,remaining part is a symmetric copy of the\Nother diagonal part. The other thing and Dialogue: 0,0:16:20.38,0:16:26.56,Default,,0000,0000,0000,,that is now the main treasure, I would say\Nof this study, so the main base for Dialogue: 0,0:16:26.56,0:16:31.49,Default,,0000,0000,0000,,everything that follows is what I call the\Ntransition matrix, where I counted the Dialogue: 0,0:16:31.49,0:16:35.75,Default,,0000,0000,0000,,number of transition of bikes from one\Nstation to the other station. That is now, Dialogue: 0,0:16:35.75,0:16:40.39,Default,,0000,0000,0000,,of course, not symmetric anymore because\Njust because, say, five bikes go from one to Dialogue: 0,0:16:40.39,0:16:44.21,Default,,0000,0000,0000,,the other station, it does not mean that\Nthese five bikes really come back again. Dialogue: 0,0:16:44.21,0:16:50.60,Default,,0000,0000,0000,,And therefore, the number of entries \Nis roughly 1400. Again, it can be shown Dialogue: 0,0:16:50.60,0:16:58.47,Default,,0000,0000,0000,,or visualized in the same fashion.\NSo you again have the stations on the one Dialogue: 0,0:16:58.47,0:17:03.19,Default,,0000,0000,0000,,axis and the same stations on the other\Naxis, and now each entry here in the Dialogue: 0,0:17:03.19,0:17:07.15,Default,,0000,0000,0000,,matrix corresponds to the number of\Ntransitions of bikes from one to the Dialogue: 0,0:17:07.15,0:17:14.65,Default,,0000,0000,0000,,other. And the range is from zero to over\N3000. And it turns out that actually the Dialogue: 0,0:17:14.65,0:17:19.01,Default,,0000,0000,0000,,self transitions, meaning somebody takes a\Nbike from a station, does something with a Dialogue: 0,0:17:19.01,0:17:23.46,Default,,0000,0000,0000,,bike, maybe grocery shop, grocery shopping\Nor so, and then the person comes back to Dialogue: 0,0:17:23.46,0:17:30.07,Default,,0000,0000,0000,,the same station. These events occur the\Nmost frequent and therefore the largest Dialogue: 0,0:17:30.07,0:17:36.42,Default,,0000,0000,0000,,entry are on the diagonal, typically.\NSometimes it is not so interesting what Dialogue: 0,0:17:36.42,0:17:41.17,Default,,0000,0000,0000,,happens regarding the self transitions and\Ntherefore another matrix can be derived Dialogue: 0,0:17:41.17,0:17:46.01,Default,,0000,0000,0000,,from the first one, namely a transition\Nmatrix without diagonal elements where Dialogue: 0,0:17:46.01,0:17:51.62,Default,,0000,0000,0000,,those elements have been set to zero as\Nyou can see here, if you look closely. Dialogue: 0,0:17:51.62,0:17:57.57,Default,,0000,0000,0000,,Speaking of looking closely, it's quite\Neducational if you not only see the Dialogue: 0,0:17:57.57,0:18:02.14,Default,,0000,0000,0000,,figures, but also can explore them a bit,\Nand therefore I rendered an interactive Dialogue: 0,0:18:02.14,0:18:07.45,Default,,0000,0000,0000,,version of it. Let's... let's visit it. So\Nthat's now again, the matrix without the Dialogue: 0,0:18:07.45,0:18:11.88,Default,,0000,0000,0000,,diagonal and one with the diagonal. And\Nnow by hovering over these entries so you Dialogue: 0,0:18:11.88,0:18:16.74,Default,,0000,0000,0000,,can see that, for instance, from Am\NSchülerpark to Ockershäuser Allee zero Dialogue: 0,0:18:16.74,0:18:20.96,Default,,0000,0000,0000,,transitions happened. And then a bit\Nlarger one, for instance, Biegenstraße to Dialogue: 0,0:18:20.96,0:18:28.12,Default,,0000,0000,0000,,Hauptbahnhof over 800 transitions happened\Nin the time of capturing the data. So feel Dialogue: 0,0:18:28.12,0:18:35.21,Default,,0000,0000,0000,,free to explore a bit, maybe identify the\Nmost, most interesting, most used popular Dialogue: 0,0:18:35.21,0:18:44.56,Default,,0000,0000,0000,,routes. Ok, such a transition matrix can\Nactually also be shown as a network graph Dialogue: 0,0:18:44.56,0:18:49.31,Default,,0000,0000,0000,,where here I concentrate only on the\Nlargest entry because it turns out the Dialogue: 0,0:18:49.31,0:18:55.52,Default,,0000,0000,0000,,full transition matrix is a bit too dense.\NAnd what is shown out here is as blue Dialogue: 0,0:18:55.52,0:19:04.34,Default,,0000,0000,0000,,circles, it corresponds to a station and\Nthen these edges here are drawn whenever Dialogue: 0,0:19:04.34,0:19:08.44,Default,,0000,0000,0000,,there happens a transition. And you can\Nalready see here that there are a few Dialogue: 0,0:19:08.44,0:19:13.01,Default,,0000,0000,0000,,stations that are quite isolated, like\Nthose and then many stations have a self Dialogue: 0,0:19:13.01,0:19:16.33,Default,,0000,0000,0000,,transition and mostly feed to a more\Ncentral station. Dialogue: 0,0:19:16.33,0:19:20.24,Default,,0000,0000,0000,,And since that is also more\Ninteresting in an interactive fashion, Dialogue: 0,0:19:20.24,0:19:22.61,Default,,0000,0000,0000,,I also rendered \Nan interactive version of that. Dialogue: 0,0:19:22.61,0:19:29.31,Default,,0000,0000,0000,,Now again, we can zoom, pan around\Nand drag the graph around a bit. Dialogue: 0,0:19:29.31,0:19:33.76,Default,,0000,0000,0000,,And interestingly, if you click on a\Nstation, you can see from where Dialogue: 0,0:19:33.76,0:19:39.94,Default,,0000,0000,0000,,transitions happen to that station. So\Nlike those interconnected central ones, Dialogue: 0,0:19:39.94,0:19:43.44,Default,,0000,0000,0000,,like the Hauptbahnhof, the main train\Nstation, it's quite connected in the Dialogue: 0,0:19:43.44,0:19:46.94,Default,,0000,0000,0000,,graph. And then there are a few like\NFriedrichplatz which are not connected at Dialogue: 0,0:19:46.94,0:19:53.94,Default,,0000,0000,0000,,all. Interestingly, that one here, for\Ninstance, the Cafe Trauma/Aföllerwiesen it Dialogue: 0,0:19:53.94,0:19:58.12,Default,,0000,0000,0000,,doesn't even have a self connection. So it\Nturns out that, well, people apparently Dialogue: 0,0:19:58.12,0:20:01.52,Default,,0000,0000,0000,,mostly use it for taking a bike going into\Nthe city. Dialogue: 0,0:20:01.52,0:20:08.22,Default,,0000,0000,0000,,And most dominantly, \Nthe Elisabeth-Blochmann-Platz, actually. Dialogue: 0,0:20:12.18,0:20:17.91,Default,,0000,0000,0000,,OK, so if you now take \Nthese transition matrices, Dialogue: 0,0:20:17.91,0:20:22.50,Default,,0000,0000,0000,,as well as the distance matrices\Ninto account and mix them, first of all, Dialogue: 0,0:20:22.50,0:20:29.08,Default,,0000,0000,0000,,you can get a few interesting numbers. So\Nhere I calculated the overall number of Dialogue: 0,0:20:29.08,0:20:35.28,Default,,0000,0000,0000,,trips, which turned out to be 210,000\Ntrips in the time of capturing the data, Dialogue: 0,0:20:35.28,0:20:39.55,Default,,0000,0000,0000,,which is quite some essential number for\Nsuch a small city like Marburg. And this Dialogue: 0,0:20:39.55,0:20:44.03,Default,,0000,0000,0000,,is, of course, computed by taking the sum\Nof the transition matrix elements. And Dialogue: 0,0:20:44.03,0:20:48.28,Default,,0000,0000,0000,,then if you weigh these sums or these\Nentries with the distances between those Dialogue: 0,0:20:48.28,0:20:54.38,Default,,0000,0000,0000,,stations, it turns out that those\Ntransitions or those trips essentially Dialogue: 0,0:20:54.38,0:20:58.61,Default,,0000,0000,0000,,correspond to a distance of 320,000\Nkilometers that have been traveled, which Dialogue: 0,0:20:58.61,0:21:02.30,Default,,0000,0000,0000,,is a few times around the Earth actually. Dialogue: 0,0:21:02.30,0:21:05.47,Default,,0000,0000,0000,,Now, when these two basic numbers and the Dialogue: 0,0:21:05.47,0:21:10.69,Default,,0000,0000,0000,,the matrices that I introduced earlier are\Ncombined with a few statistical details – Dialogue: 0,0:21:10.69,0:21:14.65,Default,,0000,0000,0000,,like, for instance, the average\Nconsumption of fuel of a car or how much Dialogue: 0,0:21:14.65,0:21:21.05,Default,,0000,0000,0000,,CO2 it produces while driving – a few\Necological, economic and social benefits Dialogue: 0,0:21:21.05,0:21:25.55,Default,,0000,0000,0000,,of a bike system or cycling in general can\Nbe derived. First of all, I found it quite Dialogue: 0,0:21:25.55,0:21:33.21,Default,,0000,0000,0000,,entertaining that the overall number of\Ncalories burned corresponds to 8.6 million Dialogue: 0,0:21:33.21,0:21:40.33,Default,,0000,0000,0000,,kilocalories. And to convert that to a bit\Nmore, well, real life number, I would say Dialogue: 0,0:21:40.33,0:21:44.03,Default,,0000,0000,0000,,I calculated how many Nutella jars \Nthose are, and it turns out that Dialogue: 0,0:21:44.03,0:21:47.76,Default,,0000,0000,0000,,it's roughly 4,000 Nutella jars that\Nhave been burned in terms of calories Dialogue: 0,0:21:47.76,0:21:56.26,Default,,0000,0000,0000,,just by this system of cycling. And then \Nalso, it can be found that this distance Dialogue: 0,0:21:56.26,0:22:00.24,Default,,0000,0000,0000,,here, if you would have driven it \Nby a car, you would have, Dialogue: 0,0:22:00.24,0:22:06.28,Default,,0000,0000,0000,,well, used almost 26,000 liters of fuel. \NYou would have produced 40 tons of CO2. Dialogue: 0,0:22:06.28,0:22:13.16,Default,,0000,0000,0000,,And that fuel that you would have bought\Nwould have cost 34,000 €, actually. Dialogue: 0,0:22:13.16,0:22:18.19,Default,,0000,0000,0000,,Interestingly, that number here \Nof 40 tons of saved CO2 Dialogue: 0,0:22:18.19,0:22:23.01,Default,,0000,0000,0000,,corresponds to an average\NGerman who lives for 4 years Dialogue: 0,0:22:23.01,0:22:27.50,Default,,0000,0000,0000,,or 4 Germans that live for one year.\NSo a typical German produces Dialogue: 0,0:22:27.50,0:22:31.06,Default,,0000,0000,0000,,roughly 10 tons, and therefore \Nit's four times that, obviously. Dialogue: 0,0:22:32.80,0:22:36.25,Default,,0000,0000,0000,,Ok, so again, from the transition matrix, Dialogue: 0,0:22:36.25,0:22:40.13,Default,,0000,0000,0000,,you can derive a few more interesting\Ndetails like, for instance, details that Dialogue: 0,0:22:40.13,0:22:44.06,Default,,0000,0000,0000,,are interesting from the perspective \Nof traffic management. Dialogue: 0,0:22:44.06,0:22:48.65,Default,,0000,0000,0000,,Like, here I calculated the most popular\Nroutes by finding the maximal elements Dialogue: 0,0:22:48.65,0:22:54.14,Default,,0000,0000,0000,,of the transition matrix. And it turns out\Nthat the most popular route has been used Dialogue: 0,0:22:54.14,0:22:58.94,Default,,0000,0000,0000,,well over 2000 times a year from the\NHauptbahnhof to the Ginseldorfer Weg. And Dialogue: 0,0:22:58.94,0:23:02.82,Default,,0000,0000,0000,,if you look closely, you can see that the\Nmain train station or the Hauptbahnhof, Dialogue: 0,0:23:02.82,0:23:07.26,Default,,0000,0000,0000,,as well as the Elisabeth-Blochmann-Platz\Nis involved in many of those top row routes. Dialogue: 0,0:23:07.26,0:23:12.58,Default,,0000,0000,0000,,And that's now again interesting. For\Ninstance, if a city would like to improve Dialogue: 0,0:23:12.58,0:23:18.73,Default,,0000,0000,0000,,the bike system because we've now seen\Nit has quite a good impact for social, Dialogue: 0,0:23:18.73,0:23:23.21,Default,,0000,0000,0000,,ecological, and economical aspects. Dialogue: 0,0:23:23.21,0:23:27.26,Default,,0000,0000,0000,,But let's say the the city has maybe \Nlimited financial resources. Dialogue: 0,0:23:27.26,0:23:30.49,Default,,0000,0000,0000,,It would be interesting to simply\Ncalculate the most popular routes, Dialogue: 0,0:23:30.49,0:23:33.69,Default,,0000,0000,0000,,and then start fixing \Nor improving them first. Dialogue: 0,0:23:35.69,0:23:38.82,Default,,0000,0000,0000,,OK, now at that point, \Nyou might ask yourself, Dialogue: 0,0:23:38.82,0:23:41.88,Default,,0000,0000,0000,,Well, what kind of data did he scrape? Dialogue: 0,0:23:41.88,0:23:44.45,Default,,0000,0000,0000,,And for that, I would like to\Nshow you this graph. It shows Dialogue: 0,0:23:44.45,0:23:48.44,Default,,0000,0000,0000,,the number of parked bikes in the whole \Necosystem of Marburg against time. Dialogue: 0,0:23:48.44,0:23:50.88,Default,,0000,0000,0000,,And as you can see, \NI did it in two batches. Dialogue: 0,0:23:50.88,0:23:55.70,Default,,0000,0000,0000,,The first one has been obtained from \NMarch to December 2020. So last year. Dialogue: 0,0:23:55.70,0:24:01.44,Default,,0000,0000,0000,,And then I restarted the scraping at the\Nend of April and finished just a few days Dialogue: 0,0:24:01.44,0:24:06.66,Default,,0000,0000,0000,,ago in December 2021. And you can clearly\Nsee that the number of parked bikes Dialogue: 0,0:24:06.66,0:24:12.26,Default,,0000,0000,0000,,decreases when the weather is good or when\Nthere are summer months and therefore most Dialogue: 0,0:24:12.26,0:24:17.74,Default,,0000,0000,0000,,likely because the weather is good. And of\Ncourse, it suggests itself a bit given Dialogue: 0,0:24:17.74,0:24:22.90,Default,,0000,0000,0000,,that I captured this in 2020 and that one\Nyear in 2021 and taking the corona Dialogue: 0,0:24:22.90,0:24:25.31,Default,,0000,0000,0000,,pandemic into account. Well, how does it\Ncompare? Dialogue: 0,0:24:25.31,0:24:31.33,Default,,0000,0000,0000,,And therefore, I concentrated on the \Noverlapping month of the two data sets Dialogue: 0,0:24:31.33,0:24:34.81,Default,,0000,0000,0000,,and calculated, well, \Nthe comparison, as you can see here. Dialogue: 0,0:24:34.81,0:24:40.21,Default,,0000,0000,0000,,Now in blue, it's 2021 this year \Nand 2021, sorry 2020 is shown in red. Dialogue: 0,0:24:40.21,0:24:43.95,Default,,0000,0000,0000,,And you can see that the number of\Nparked bikes increased actually. Dialogue: 0,0:24:43.95,0:24:49.68,Default,,0000,0000,0000,,There might be a multitude \Nof explanations for that. I don't know. Dialogue: 0,0:24:49.68,0:24:54.91,Default,,0000,0000,0000,,Maybe one explanation could be that people \Ntook more advantage of working from home. Dialogue: 0,0:24:56.40,0:25:00.55,Default,,0000,0000,0000,,OK, so everything that I've shown you so far, Dialogue: 0,0:25:00.55,0:25:05.49,Default,,0000,0000,0000,,it's been mostly statistical statements, \Naverages, sums and stuff like that, Dialogue: 0,0:25:05.49,0:25:10.36,Default,,0000,0000,0000,,and now I was interested if it's possible \Nto do also more precise predictions. Dialogue: 0,0:25:10.36,0:25:12.98,Default,,0000,0000,0000,,And therefore I turn \Ntowards a machine learning or Dialogue: 0,0:25:12.98,0:25:17.54,Default,,0000,0000,0000,,artificial intelligence task where I\Npredicted the num… where I tried to Dialogue: 0,0:25:17.54,0:25:21.22,Default,,0000,0000,0000,,predict the number of parked bikes,\Nmeaning the quantity that I've shown over Dialogue: 0,0:25:21.22,0:25:26.06,Default,,0000,0000,0000,,and over again in the in the last few\Nminutes. So is it possible to predict that Dialogue: 0,0:25:26.06,0:25:31.34,Default,,0000,0000,0000,,number based on the hour of the day, the\Nweekday and the temperature that is shown Dialogue: 0,0:25:31.34,0:25:36.76,Default,,0000,0000,0000,,here for 2020? And when starting such a\Ntask, it's always, first of all, very Dialogue: 0,0:25:36.76,0:25:41.22,Default,,0000,0000,0000,,useful to investigate the training data.\NAnd therefore well I try to plot it. And Dialogue: 0,0:25:41.22,0:25:44.70,Default,,0000,0000,0000,,And because it's a three dimensional face\Nspace, it's also very simple to plot it. Dialogue: 0,0:25:44.70,0:25:49.41,Default,,0000,0000,0000,,So you can essentially plot it as a\Nscatterplot. And the color coding here has Dialogue: 0,0:25:49.41,0:25:53.93,Default,,0000,0000,0000,,been chosen to denote the target variable,\Nmeaning the number of parked bikes. Dialogue: 0,0:25:53.93,0:25:57.47,Default,,0000,0000,0000,,And just by inspecting the data, you can\Nalready see that the smaller the Dialogue: 0,0:25:57.47,0:26:02.81,Default,,0000,0000,0000,,temperatures are, the fewer… sorry, the\Nmore bikes are parked and therefore the Dialogue: 0,0:26:02.81,0:26:07.71,Default,,0000,0000,0000,,fewer bikes are used. I use a random\Nforest machine learning model, which Dialogue: 0,0:26:07.71,0:26:12.87,Default,,0000,0000,0000,,consists... which is an ensemble model of\Ndecision trees, of randomized decision Dialogue: 0,0:26:12.87,0:26:18.01,Default,,0000,0000,0000,,trees. And this model is quite powerful\Nbecause it can work with little data. It Dialogue: 0,0:26:18.01,0:26:22.88,Default,,0000,0000,0000,,can work with a lot of data, and it's also\Nvery flexible. If you would ever like to Dialogue: 0,0:26:22.88,0:26:28.32,Default,,0000,0000,0000,,extend the face space, like maybe it would\Nbe interesting to see if one could predict Dialogue: 0,0:26:28.32,0:26:33.22,Default,,0000,0000,0000,,the number of parked bikes given a bank\Nholiday or given weekend. And all these Dialogue: 0,0:26:33.22,0:26:38.35,Default,,0000,0000,0000,,aspects could be added to the random\Nforest relatively easily. And that's now Dialogue: 0,0:26:38.35,0:26:42.13,Default,,0000,0000,0000,,the outcome: So I show the measured data,\Nwell that's been data that hasn't been Dialogue: 0,0:26:42.13,0:26:49.61,Default,,0000,0000,0000,,seen by the model before, and I show that\Ndata here and then the densely covered, Dialogue: 0,0:26:49.61,0:26:53.41,Default,,0000,0000,0000,,face-based prediction of the machine\Nlearning model here. And you can see that Dialogue: 0,0:26:53.41,0:26:57.96,Default,,0000,0000,0000,,the color trends, they correspond quite\Nwell to each other. Like you can, for Dialogue: 0,0:26:57.96,0:27:03.13,Default,,0000,0000,0000,,instance, see the smaller numbers or\Nlarger parked numbers in the regime of Dialogue: 0,0:27:03.13,0:27:07.67,Default,,0000,0000,0000,,small temperature and also from a\Nquantitative perspective, the prediction Dialogue: 0,0:27:07.67,0:27:12.05,Default,,0000,0000,0000,,is quite decent as the square root of the\Nmean squared error corresponds to a Dialogue: 0,0:27:12.05,0:27:15.68,Default,,0000,0000,0000,,roughly a tenth of the average value of\Nthe parked bikes. Dialogue: 0,0:27:15.68,0:27:22.54,Default,,0000,0000,0000,,Which, again in this context is quite a \Ndecent prediction performance, Dialogue: 0,0:27:22.54,0:27:26.58,Default,,0000,0000,0000,,given how naive the\Napproach was in general. Dialogue: 0,0:27:26.58,0:27:31.34,Default,,0000,0000,0000,,OK, I did a bit more on machine learning, \Nbut I'm not showing that here. Dialogue: 0,0:27:31.34,0:27:37.05,Default,,0000,0000,0000,,I calculated the Markov steady state\Nfor the same data essentially. Dialogue: 0,0:27:37.05,0:27:42.53,Default,,0000,0000,0000,,And if you're interested in that, well, \Nfeel free to check out this link here. Dialogue: 0,0:27:44.27,0:27:47.11,Default,,0000,0000,0000,,OK, last but not least, I would, \Nof course, like to come to Dialogue: 0,0:27:47.11,0:27:50.58,Default,,0000,0000,0000,,the summary for Anna, me, \Nand maybe other students. Dialogue: 0,0:27:50.58,0:27:57.14,Default,,0000,0000,0000,,So first of all, what I did was to scrape \NNextbike data in Marburg in order to find, Dialogue: 0,0:27:59.34,0:28:03.57,Default,,0000,0000,0000,,which stations to potentially avoid when \Nyou're in desperate need for a Nextbike. Dialogue: 0,0:28:03.57,0:28:09.34,Default,,0000,0000,0000,,And for that, I calculated \Nthe probabilities of empty stations Dialogue: 0,0:28:09.34,0:28:13.85,Default,,0000,0000,0000,,and found that the larger the station, \Nthe less likely it is to run out of bikes. Dialogue: 0,0:28:13.85,0:28:17.37,Default,,0000,0000,0000,,So the general recommendation \Nfrom my side would be: Dialogue: 0,0:28:17.37,0:28:20.79,Default,,0000,0000,0000,,try to find larger stations if you're \Nin desperate need for an Nextbike. Dialogue: 0,0:28:20.79,0:28:25.85,Default,,0000,0000,0000,,And feel free to go back to \Nthe interactive map to see the Dialogue: 0,0:28:25.85,0:28:30.63,Default,,0000,0000,0000,,the locations of these stations, which is\Nquite interesting in itself, I would say. Dialogue: 0,0:28:30.63,0:28:34.20,Default,,0000,0000,0000,,And then I turned towards \Nthe perspective of a city, and Dialogue: 0,0:28:34.20,0:28:39.72,Default,,0000,0000,0000,,investigated a bit the usage patterns\Nof Nextbikes and therefore representative Dialogue: 0,0:28:39.72,0:28:44.52,Default,,0000,0000,0000,,most likely also cycling in Marburg, where\NI calculated the day-hour usage. Dialogue: 0,0:28:44.52,0:28:49.40,Default,,0000,0000,0000,,So when is the system quite busy \Nand generally the most popular routes, Dialogue: 0,0:28:49.40,0:28:56.19,Default,,0000,0000,0000,,which might be of use for city planning \Nand also social, economical, and Dialogue: 0,0:28:56.19,0:28:59.10,Default,,0000,0000,0000,,ecological benefits of the whole system. Dialogue: 0,0:28:59.92,0:29:01.55,Default,,0000,0000,0000,,Last but not least, I showed that Dialogue: 0,0:29:01.55,0:29:05.66,Default,,0000,0000,0000,,more precise predictions are possible when\Nmaybe a statistical statement is not Dialogue: 0,0:29:05.66,0:29:09.35,Default,,0000,0000,0000,,enough and you would like \Nto do per case predictions. Dialogue: 0,0:29:10.15,0:29:14.49,Default,,0000,0000,0000,,Last but not least, I was fortunate \Nenough to work with AstA Marburg. Dialogue: 0,0:29:14.49,0:29:19.63,Default,,0000,0000,0000,,In particular, Lucas and David, \Nthank you very much for your trust Dialogue: 0,0:29:19.63,0:29:24.89,Default,,0000,0000,0000,,in that project where we try to optimize \Nthe placement of the bikes in the future. Dialogue: 0,0:29:26.47,0:29:28.67,Default,,0000,0000,0000,,The take home messages are now, \Nfirst of all: Dialogue: 0,0:29:28.67,0:29:32.39,Default,,0000,0000,0000,,Bikes are amazing! And not only are they\Namazing for you and the environment, Dialogue: 0,0:29:32.39,0:29:37.62,Default,,0000,0000,0000,,but also for your wallet.\NSo you save essentially money on gas. Dialogue: 0,0:29:38.35,0:29:41.09,Default,,0000,0000,0000,,And also, I would like to, Dialogue: 0,0:29:41.62,0:29:45.12,Default,,0000,0000,0000,,well, highlight that those data-driven \Noptimizations of public transport Dialogue: 0,0:29:45.12,0:29:49.64,Default,,0000,0000,0000,,have the potential to, well, \Nincrease the life, the quality of life of Dialogue: 0,0:29:49.64,0:29:54.52,Default,,0000,0000,0000,,many of us at moderate cost. So again, I\Nwould like to come back to a case where Dialogue: 0,0:29:54.52,0:29:56.98,Default,,0000,0000,0000,,maybe a city would like to \Nimprove bike infrastructure Dialogue: 0,0:29:56.98,0:29:59.91,Default,,0000,0000,0000,,that doesn't have enough \Nmoney to do it in one go. Dialogue: 0,0:29:59.91,0:30:04.48,Default,,0000,0000,0000,,So then it might be interesting \Nto first find–in a data-driven way–which Dialogue: 0,0:30:04.48,0:30:12.72,Default,,0000,0000,0000,,combinations of, now in Nextbike terms, \Nmaybe stations or in general streets Dialogue: 0,0:30:12.72,0:30:17.08,Default,,0000,0000,0000,,are popular, and then these might be worth\Nbeing fixed first with a limited budget. Dialogue: 0,0:30:18.35,0:30:23.24,Default,,0000,0000,0000,,OK, if you're interested in more, I was \Nvery fortunate to be able to speak at the Dialogue: 0,0:30:23.24,0:30:28.61,Default,,0000,0000,0000,,last rC3 already about data in Marburg, \Nbut last year I spoke about parking Dialogue: 0,0:30:28.61,0:30:32.99,Default,,0000,0000,0000,,in Marburg. If you like to, well, read the \Nblog articles corresponding to that Dialogue: 0,0:30:32.99,0:30:39.06,Default,,0000,0000,0000,,or just see the official CCC video, \Njust follow these links shown here. Dialogue: 0,0:30:39.38,0:30:41.37,Default,,0000,0000,0000,,Thank you very much for your attention. Dialogue: 0,0:30:41.37,0:30:45.76,Default,,0000,0000,0000,,If you have anything to get in contact \Nwith me, reach out to my e-mail address. Dialogue: 0,0:30:45.76,0:30:49.70,Default,,0000,0000,0000,,Maybe some ideas on how to improve \Na talk or what else to evaluate. Dialogue: 0,0:30:49.70,0:30:52.98,Default,,0000,0000,0000,,And then all the supplementary \Nmaterials that I mentioned, Dialogue: 0,0:30:52.98,0:30:56.57,Default,,0000,0000,0000,,and what I've shown here, \Ncan be found again on this link here. Dialogue: 0,0:30:56.57,0:30:59.75,Default,,0000,0000,0000,,In particular, thank you very much\Nto all the people who reached out to me Dialogue: 0,0:30:59.75,0:31:03.43,Default,,0000,0000,0000,,based on my last year's talk. I haven't\Ncome about to respond properly, but Dialogue: 0,0:31:03.43,0:31:06.88,Default,,0000,0000,0000,,I'm 100 percent certain that I will do so. Dialogue: 0,0:31:06.88,0:31:10.97,Default,,0000,0000,0000,,Thank you very much for your attention, \Nand have a good year. Dialogue: 0,0:31:15.97,0:31:21.49,Default,,0000,0000,0000,,Herald: Alright, welcome back. It's time\Nfor the Q&A now. You probably know the Dialogue: 0,0:31:21.49,0:31:26.11,Default,,0000,0000,0000,,drill, but I repeat it anyway. If you're\Non Twitter, on Mastodon or on the Dialogue: 0,0:31:26.11,0:31:32.95,Default,,0000,0000,0000,,Fediverse in general, the hashtag is\N#rc3cwtv to ask any questions. And if Dialogue: 0,0:31:32.95,0:31:37.60,Default,,0000,0000,0000,,you're in the hackint IRC, the channel\Nname is the same except there's a dash in Dialogue: 0,0:31:37.60,0:31:43.45,Default,,0000,0000,0000,,between the rc3 and the cwtv. And we\Napparently already have some questions, so Dialogue: 0,0:31:43.45,0:31:46.41,Default,,0000,0000,0000,,I'll just get started now. Dialogue: 0,0:31:46.41,0:31:49.95,Default,,0000,0000,0000,,First question:\NIs the Nextbike API free to use? Dialogue: 0,0:31:49.95,0:31:53.90,Default,,0000,0000,0000,,Does Nextbike even know \Nthat you did this scraping? Dialogue: 0,0:31:53.90,0:32:00.02,Default,,0000,0000,0000,,Martin: Yes, so as far as I know, the\NNextbike API has been reverse engineered Dialogue: 0,0:32:00.02,0:32:05.55,Default,,0000,0000,0000,,from the iOS app and there's a Github repo\Nby ubahnverleih and he documents lots of Dialogue: 0,0:32:05.55,0:32:16.16,Default,,0000,0000,0000,,APIs of public transport companies like\NNextbike or some companies that also Dialogue: 0,0:32:16.16,0:32:25.06,Default,,0000,0000,0000,,produce the scooters. And since it's the\Npublic, since it's the official iOS API, Dialogue: 0,0:32:25.06,0:32:29.80,Default,,0000,0000,0000,,it's more or less public, so to say, \Nit's free and it's pretty much quota unlimited Dialogue: 0,0:32:29.80,0:32:33.60,Default,,0000,0000,0000,,because normally all the iPhones \Naccess it. But again, I can only recommend Dialogue: 0,0:32:33.60,0:32:37.08,Default,,0000,0000,0000,,the ubahnverleih repository \Non that on Github. Dialogue: 0,0:32:37.08,0:32:39.83,Default,,0000,0000,0000,,Herald: And you don't need \Nany credentials to access it? Dialogue: 0,0:32:39.83,0:32:45.98,Default,,0000,0000,0000,,Martin: No. Actually, you can, as far as \NI checked, you can pretty much access the Dialogue: 0,0:32:45.98,0:32:53.18,Default,,0000,0000,0000,,whole world. So you can access stations \Nin Poland in, well, all of Germany now. Dialogue: 0,0:32:54.14,0:32:58.68,Default,,0000,0000,0000,,Herald: That's cool. It's probably \Naccidental, but it's quite cool anyway. Dialogue: 0,0:32:58.68,0:33:00.40,Default,,0000,0000,0000,,Martin: {\i1}laughs{\i0} Yeah. Dialogue: 0,0:33:00.40,0:33:03.89,Default,,0000,0000,0000,,Herald: Ok. What software did you use for\Nthe machine learning stuff? Dialogue: 0,0:33:04.12,0:33:07.21,Default,,0000,0000,0000,,Martin: The machine learning stuff \Nhas been done with Python, Dialogue: 0,0:33:07.21,0:33:11.80,Default,,0000,0000,0000,,and then specifically with sklearn, \Nwhich is a quite popular machine learning Dialogue: 0,0:33:11.80,0:33:15.96,Default,,0000,0000,0000,,framework for Python. Dialogue: 0,0:33:16.56,0:33:20.44,Default,,0000,0000,0000,,Herald: The working horse of the machine\Nlearning community, I would say. Dialogue: 0,0:33:20.44,0:33:22.38,Default,,0000,0000,0000,,Martin: Yes, exactly yeah. Dialogue: 0,0:33:22.38,0:33:26.91,Default,,0000,0000,0000,,Herald: Do you know if the Nextbike adds\Nor removes bikes from the stations? Dialogue: 0,0:33:26.91,0:33:31.44,Default,,0000,0000,0000,,Or do they relocate the bikes?\NOr do… I mean, do they do that? Dialogue: 0,0:33:31.44,0:33:34.87,Default,,0000,0000,0000,,Or does it just happen \Nas an emergent behavior? Dialogue: 0,0:33:35.80,0:33:40.51,Default,,0000,0000,0000,,Martin: I would say that… \NSo, I had the chance to speak Dialogue: 0,0:33:40.51,0:33:46.16,Default,,0000,0000,0000,,with a person of Nextbike while\NI was working for the Marburg-ASTA Dialogue: 0,0:33:46.16,0:33:51.31,Default,,0000,0000,0000,,and he said that first of all, it's not\Nnot very technical yet. Well, not very Dialogue: 0,0:33:51.31,0:33:57.61,Default,,0000,0000,0000,,digitalized yet, and they essentially\Ndrive around. So I'm pretty sure that they Dialogue: 0,0:33:57.61,0:34:01.30,Default,,0000,0000,0000,,certainly collect bikes that need\Nmaintenance, but then logically, Dialogue: 0,0:34:01.30,0:34:03.94,Default,,0000,0000,0000,,logically, probably also \Nrelocate them where necessary. Dialogue: 0,0:34:05.69,0:34:11.41,Default,,0000,0000,0000,,Herald: All right. OK, someone wants to\Nknow if the scripts that you use would be Dialogue: 0,0:34:11.41,0:34:16.65,Default,,0000,0000,0000,,public? I assume the main part with the\NAPI is already answered if you gave the Dialogue: 0,0:34:16.65,0:34:20.08,Default,,0000,0000,0000,,Github repo. But are you planning to open\Nsource anything else? Dialogue: 0,0:34:21.06,0:34:26.20,Default,,0000,0000,0000,,Martin: Potentially so I have no plans on\Ndoing so just because it's additional Dialogue: 0,0:34:26.20,0:34:33.13,Default,,0000,0000,0000,,work, to be honest. If you're… well, I\Ncan just do the same, well offer the same Dialogue: 0,0:34:33.13,0:34:37.72,Default,,0000,0000,0000,,same thing as last year: Just write me an\Nemail and if there's enough people who are Dialogue: 0,0:34:37.72,0:34:43.82,Default,,0000,0000,0000,,interested, I probably strip down to my\Ninternal repository. But since in the Dialogue: 0,0:34:43.82,0:34:48.91,Default,,0000,0000,0000,,internal repository there are a few\Nprivate notes, that one is not published Dialogue: 0,0:34:48.91,0:34:49.85,Default,,0000,0000,0000,,for sure right now. Dialogue: 0,0:34:51.75,0:34:54.40,Default,,0000,0000,0000,,Herald: All right. Anything else? Dialogue: 0,0:34:55.40,0:34:59.14,Default,,0000,0000,0000,,Dear listeners, \Nyou have maybe 30 seconds to comply. Dialogue: 0,0:35:00.10,0:35:04.20,Default,,0000,0000,0000,,So there's one question, about \Nthe time period of data that you have, Dialogue: 0,0:35:04.20,0:35:06.43,Default,,0000,0000,0000,,but I think you answered it in the talk.\NRight? Dialogue: 0,0:35:06.43,0:35:14.06,Default,,0000,0000,0000,,Martin: Yes, it's more or less whole 2020\Nand 1/2 to 2/3 of 2021 that I collected. Dialogue: 0,0:35:14.06,0:35:17.93,Default,,0000,0000,0000,,Herald: OK, so you're probably mostly has\Nlike a pandemic situation? Dialogue: 0,0:35:17.93,0:35:20.45,Default,,0000,0000,0000,,Martin: Yes, exclusively.\NPretty much, yeah Dialogue: 0,0:35:20.91,0:35:25.43,Default,,0000,0000,0000,,Herald: I wonder if that's more or less \Nusage than usual. I mean, it's less people Dialogue: 0,0:35:25.43,0:35:28.88,Default,,0000,0000,0000,,having to go places, but more people \Nwanting to not use public transport. Dialogue: 0,0:35:28.88,0:35:31.79,Default,,0000,0000,0000,,Martin: Yes, so based on my data, \NI can see that it's Dialogue: 0,0:35:31.79,0:35:36.44,Default,,0000,0000,0000,,the number of parked bikes and \Ntherefore the usage is going down, so Dialogue: 0,0:35:36.44,0:35:40.30,Default,,0000,0000,0000,,the number of parked bikes is going up.\NTherefore, the usage is going down and Dialogue: 0,0:35:40.30,0:35:45.84,Default,,0000,0000,0000,,that was also confirmed internally by some\NNextbike people. Now, one more thing, so Dialogue: 0,0:35:45.84,0:35:51.75,Default,,0000,0000,0000,,regarding the people who are interested in\Nthe code, regardless of if I am going to Dialogue: 0,0:35:51.75,0:35:56.58,Default,,0000,0000,0000,,publish it or not, they if you have\Nquestions, just drop me an email. I mean, Dialogue: 0,0:35:56.58,0:36:02.05,Default,,0000,0000,0000,,the writing, the scraper in particular,\Nit's it's absolutely trivial. And if it's Dialogue: 0,0:36:02.05,0:36:06.97,Default,,0000,0000,0000,,not trivial for you, then the code \Nwouldn't be of of value to you anyway. Dialogue: 0,0:36:07.85,0:36:14.12,Default,,0000,0000,0000,,Herald: All right. How does your data \Ninterpret broken / unavailable bikes at Dialogue: 0,0:36:14.12,0:36:18.51,Default,,0000,0000,0000,,the station? I mean, can you see that? \NOr do you take it into account? Dialogue: 0,0:36:19.03,0:36:21.78,Default,,0000,0000,0000,,Martin: Yes, so I don't see directly. Dialogue: 0,0:36:21.78,0:36:28.08,Default,,0000,0000,0000,,I mean, I have a list of of all the bikes\Nand if I would dig a little bit deeper, Dialogue: 0,0:36:28.08,0:36:33.32,Default,,0000,0000,0000,,I could probably, you know, compile a list\Nwhere I see where the bike, where a Dialogue: 0,0:36:33.32,0:36:37.54,Default,,0000,0000,0000,,particular bike is standing at the moment.\NAnd if that bike would be, for instance, Dialogue: 0,0:36:37.54,0:36:42.17,Default,,0000,0000,0000,,absent for a for a longer time, I could\Nconclude that it's maybe broken, Dialogue: 0,0:36:42.17,0:36:46.88,Default,,0000,0000,0000,,maintenance, maintained or something like\Nthat. But there's no direct data on that. Dialogue: 0,0:36:46.88,0:36:53.24,Default,,0000,0000,0000,,Herald: All right. Do you do you think\Nthat Nextbike moving the bikes has somehow Dialogue: 0,0:36:53.24,0:36:56.99,Default,,0000,0000,0000,,biased your data. \NLike if basically relocate them? Dialogue: 0,0:36:56.99,0:37:00.33,Default,,0000,0000,0000,,Martin: That's a good question. I have\Nabsolutely no idea. So I mean, what I what Dialogue: 0,0:37:00.33,0:37:07.66,Default,,0000,0000,0000,,I did calculate was that, so I defined a\Nterm that I, a term of activity, Dialogue: 0,0:37:07.66,0:37:13.18,Default,,0000,0000,0000,,I defined it as the number of bikes coming\Nin, divided by the number of bikes going Dialogue: 0,0:37:13.18,0:37:17.07,Default,,0000,0000,0000,,out, plus the number of bikes going in. So\Nit's so to say the activity and when Dialogue: 0,0:37:17.07,0:37:22.18,Default,,0000,0000,0000,,that number - it's obviously between zero\Nand one - and if it's far from zero point Dialogue: 0,0:37:22.18,0:37:26.82,Default,,0000,0000,0000,,five, that would mean that the station\Nruns empty essentially or overfills at Dialogue: 0,0:37:26.82,0:37:32.15,Default,,0000,0000,0000,,some point and there are a few stations\Nwhere it's a bit above zero point five. Dialogue: 0,0:37:32.15,0:37:38.78,Default,,0000,0000,0000,,But of course, that's only this well, the\Nthe data that I used has all only the Dialogue: 0,0:37:38.78,0:37:43.70,Default,,0000,0000,0000,,moved bikes incorporated already. So it's\Nnot really something that could be used Dialogue: 0,0:37:43.70,0:37:46.70,Default,,0000,0000,0000,,for really trying to find it. Dialogue: 0,0:37:47.50,0:37:51.60,Default,,0000,0000,0000,,Herald: Do you, I mean, is this just kind\Nof data also available for, Dialogue: 0,0:37:51.60,0:37:55.90,Default,,0000,0000,0000,,for bike sharing services \Nthat don't have docking? Dialogue: 0,0:37:55.90,0:37:59.22,Default,,0000,0000,0000,,If they even exist still in Germany? \NI kind of lost track. Dialogue: 0,0:37:59.22,0:38:01.70,Default,,0000,0000,0000,,I think maybe they \Nall went bankrupt, but of course… Dialogue: 0,0:38:01.70,0:38:03.59,Default,,0000,0000,0000,,Martin: What do you mean by docking? Dialogue: 0,0:38:03.59,0:38:07.10,Default,,0000,0000,0000,,Herald: By, you know, they don't have\Nfixed stations, but they are floating. Dialogue: 0,0:38:07.10,0:38:12.91,Default,,0000,0000,0000,,Martin: So I mean, all that I did was to\Nlook at the stations, but actually there Dialogue: 0,0:38:12.91,0:38:16.56,Default,,0000,0000,0000,,are a few free standing ones also in\NMarburg, and these people are typically Dialogue: 0,0:38:16.56,0:38:23.20,Default,,0000,0000,0000,,penalized, penalized by money, so they\Nhave to pay, pay a fee. I didn't analyze Dialogue: 0,0:38:23.20,0:38:26.90,Default,,0000,0000,0000,,it at all. Would be interesting for sure.\NAnd as far as I know, there are cities Dialogue: 0,0:38:26.90,0:38:32.80,Default,,0000,0000,0000,,where it's completely, well, there are \Nno stations for Nextbike, Dialogue: 0,0:38:32.80,0:38:36.07,Default,,0000,0000,0000,,where people can drop it off \Nwherever they like. Dialogue: 0,0:38:36.07,0:38:39.19,Default,,0000,0000,0000,,Don't quote me on that, it's \Njust something that I've heard. Dialogue: 0,0:38:39.19,0:38:43.04,Default,,0000,0000,0000,,Most likely in the large cities.\NSo maybe in Berlin could be. Dialogue: 0,0:38:43.04,0:38:47.67,Default,,0000,0000,0000,,Herald: Yeah, I think here there are like\Nsome locations where you have to drop the Dialogue: 0,0:38:47.67,0:38:50.39,Default,,0000,0000,0000,,bikes, but that's, \NI'm not sure if that's Nextbike. Dialogue: 0,0:38:50.39,0:38:54.64,Default,,0000,0000,0000,,I can never remember which ones\N{\i1}laughs{\i0} I actually end up using. Dialogue: 0,0:38:55.55,0:39:01.65,Default,,0000,0000,0000,,All right, everybody. Now is your last\Nchance to ask more questions. Dialogue: 0,0:39:01.65,0:39:07.21,Default,,0000,0000,0000,,I feel like at Teleshopping, like the rC3\NTeleshopping, which I highly recommend if Dialogue: 0,0:39:07.21,0:39:12.17,Default,,0000,0000,0000,,you haven't checked it out. It's probably\Nthe peak experience at the remote Congress Dialogue: 0,0:39:12.17,0:39:16.79,Default,,0000,0000,0000,,is the Teleshopping channel.\NAnd you should all have a look. Dialogue: 0,0:39:16.79,0:39:22.14,Default,,0000,0000,0000,,And maybe buy some… \Nsome extremely useful items that they sell Dialogue: 0,0:39:27.30,0:39:31.88,Default,,0000,0000,0000,,Herald: OK, so the chat confirms that \NNextbike does have cities without stations Dialogue: 0,0:39:31.88,0:39:33.43,Default,,0000,0000,0000,,Martin: Ah ja ja, very good. Dialogue: 0,0:39:34.41,0:39:36.44,Default,,0000,0000,0000,,Yet, I mean, I can only… Dialogue: 0,0:39:36.44,0:39:41.61,Default,,0000,0000,0000,,if you're remotely interested in all\Nthese public transport data studies, Dialogue: 0,0:39:41.61,0:39:45.75,Default,,0000,0000,0000,,definitely check out the \Nubahnverleih Github repository. Dialogue: 0,0:39:45.75,0:39:49.38,Default,,0000,0000,0000,,There's a large number \Nof systems documented there. Dialogue: 0,0:39:49.66,0:39:54.61,Default,,0000,0000,0000,,Herald: OK, and that's just ubahnverleih, \Njust as you would write it. Dialogue: 0,0:39:54.61,0:39:58.13,Default,,0000,0000,0000,,Martin: Yes, let me look it up \Nvery quickly, Ubahn… Dialogue: 0,0:40:02.58,0:40:07.71,Default,,0000,0000,0000,,Well, the person is from Ulm,\Nand he also contributed to the Dialogue: 0,0:40:07.71,0:40:13.99,Default,,0000,0000,0000,,CCC infrastructure. His name is\NConstantine and yes, it's ubahnverleih. Dialogue: 0,0:40:13.99,0:40:18.26,Default,,0000,0000,0000,,And I think it's like, I think the repo\Nname name is WoBike, as far as I know, Dialogue: 0,0:40:18.26,0:40:20.44,Default,,0000,0000,0000,,Herald: All right. Good. Thank you. Dialogue: 0,0:40:22.88,0:40:29.00,Default,,0000,0000,0000,,Alright. I think we've managed to exhaust\Nthe internet. So, people, where can they Dialogue: 0,0:40:29.00,0:40:33.22,Default,,0000,0000,0000,,find you have to have any further\Nquestions? Are you going to be wandering Dialogue: 0,0:40:33.22,0:40:36.76,Default,,0000,0000,0000,,the remote, the world or what it's called?\NYou know the… Dialogue: 0,0:40:36.76,0:40:41.04,Default,,0000,0000,0000,,Martin: Well, that's a good idea. I\Nhaven't planned, but I can. So I've no Dialogue: 0,0:40:41.04,0:40:46.14,Default,,0000,0000,0000,,idea how it works, but I'm sure I can\Nfigure it out. So I mean, in general, drop Dialogue: 0,0:40:46.14,0:40:52.86,Default,,0000,0000,0000,,me an email and you can find my email on\Nlellep dot xyz. It's my website. Dialogue: 0,0:40:54.90,0:40:59.22,Default,,0000,0000,0000,,Other than that, I could be online \Nin the 2D world adventure now, Dialogue: 0,0:40:59.22,0:41:01.80,Default,,0000,0000,0000,,if that's of of value to anybody. Dialogue: 0,0:41:01.80,0:41:05.29,Default,,0000,0000,0000,,Herald: People can maybe hunt you\Ndown if they really need to, you need to. Dialogue: 0,0:41:05.29,0:41:07.56,Default,,0000,0000,0000,,Martin: definitely ja. Dialogue: 0,0:41:07.56,0:41:12.02,Default,,0000,0000,0000,,Herald: OK, wonderful. Well, thank you for\Nyour talk and for answering the questions. Dialogue: 0,0:41:12.02,0:41:16.62,Default,,0000,0000,0000,,And thanks everyone for tuning in.\NHave a good remainder of Congress. Dialogue: 0,0:41:17.19,0:41:20.98,Default,,0000,0000,0000,,I think you should be able to at some\Npoint rate talks in the Fahrplan, Dialogue: 0,0:41:20.98,0:41:24.85,Default,,0000,0000,0000,,if that feature still exists, so if you \Nwant to see more of this kind of stuff, Dialogue: 0,0:41:24.85,0:41:27.44,Default,,0000,0000,0000,,maybe leave some feedback. Dialogue: 0,0:41:27.80,0:41:29.10,Default,,0000,0000,0000,,Bye bye. Dialogue: 0,0:41:29.59,0:41:30.58,Default,,0000,0000,0000,,Martin: Bye. Dialogue: 0,0:41:30.72,0:41:44.45,Default,,0000,0000,0000,,{\i1}rC3 postroll music{\i0} Dialogue: 0,0:41:44.45,0:41:52.24,Default,,0000,0000,0000,,Subtitles created by c3subtitles.de\Nin the year 2022. Join, and help us!