[00:00.000 --> 00:11.600] Hello, good morning everyone. I'm Christopher Peters and I'm going to present you Grotto [00:11.600 --> 00:18.440] Center. So first a bit about me. I'm from Belgium. I'm mostly working as a trainer [00:18.440 --> 00:24.400] and consultant in open source and DevOps. And in my free time I'm spending quite a lot [00:24.400 --> 00:29.880] of time doing outdoor adventure stuff such as for example I go into caves. By the way [00:29.880 --> 00:33.360] for the people who like to enjoy the pictures of my slides this is the only picture that [00:33.360 --> 00:40.040] I didn't take. So it's a bit difficult to take it when you're posing for it. So first [00:40.040 --> 00:45.920] a bit about caving or speleology. So what does it actually mean? It's mostly a scientific [00:45.920 --> 00:53.920] study where we are going into caves or outdoors and explore cast phenomena or caves in particular. [00:53.920 --> 01:00.600] If we are going into caves to study what is happening over there, there are different [01:00.600 --> 01:06.120] sciences that are involved. There is geology, there is biology, there is also a lot of physics [01:06.120 --> 01:11.320] and chemistry involved. But in general to get to the place that we want to study we need [01:11.320 --> 01:18.840] to go and pass certain obstacles. We have to crawl through some small passages. We have [01:18.840 --> 01:25.240] to descend into pits and for that we need a certain physical activity to get there. [01:25.240 --> 01:30.720] So there are some people who do this for science to actually research things that are happening [01:30.720 --> 01:35.160] down there. There are other people who just like to do the physical activity and so it's [01:35.160 --> 01:42.400] also a bit of a sport. For the people who are a bit familiar with other terminologies [01:42.400 --> 01:46.480] in English it's also known as caving, potholing, spelunking. So there are different words [01:46.480 --> 01:53.400] for it but in general the idea is we go into caves. Now if we go into caves of course there [01:53.400 --> 01:57.360] are a few things that we have to keep in mind and one of the things that I would like to [01:57.360 --> 02:03.480] present to you today is a problem that we often have to deal with. So when we go into [02:03.480 --> 02:08.520] caves on this picture you can see a person who is descending into a pit on a rope and [02:08.520 --> 02:15.960] this is something you don't do just like okay it's 10 o'clock let's go and see what's [02:15.960 --> 02:22.760] in this hole. We actually do some preparations. For that we are using a lot of information [02:22.760 --> 02:27.960] that we are consulting to make sure that we have the other equipment with us. We have [02:27.960 --> 02:35.560] also made sure that we are using the right tools that we are also making sure that we [02:35.560 --> 02:39.520] are not going in the wrong moments because sometimes also weather conditions can make [02:39.520 --> 02:48.560] a very bad influence on the conditions in a cave. Here you see an example of a survey. [02:48.560 --> 02:52.640] We have quite a lot of surveys that provide us with information on how the cave looks [02:52.640 --> 02:57.960] like if it has already been explored. And we can use these surveys to also make sure [02:57.960 --> 03:03.280] that we have all the rigging material with us that we make sure that we know where we [03:03.280 --> 03:09.880] are going, what we are going to do and what kind of dangers that could be involved in [03:09.880 --> 03:16.280] this in this trip. For this we have the surveys. They provide us with this information. There [03:16.280 --> 03:22.520] is also sometimes a description that is added to the survey which provides us more information [03:22.520 --> 03:28.080] of for example how to get to the entrance, maybe some particularities, special things [03:28.080 --> 03:34.800] we would like to see or special things we would like to avoid. And sometimes also separately [03:34.800 --> 03:39.920] we have rigging information. That's not always the case but depending on how well a cave [03:39.920 --> 03:47.440] has been researched and explored these documents are available. On this survey there is also [03:47.440 --> 03:53.680] here, over here you can see that there is an indication which actually also tells that [03:53.680 --> 03:58.800] this is a pit of 20 meters and so sometimes also this information is only available on [03:58.800 --> 04:05.160] the survey. Except for that we also have other information which is not very necessary to [04:05.160 --> 04:11.440] just facilitate the trip itself but which can give us some more background. For example [04:11.440 --> 04:17.360] scientific research that has been performed, some information about the region that could [04:17.360 --> 04:22.520] be geologically, that could be biologically. That could also be for example information [04:22.520 --> 04:28.760] about how rivers are flowing above and underground. There is also other kind of research that [04:28.760 --> 04:35.320] can have been performed that isn't necessarily limited to this specific cave we are going [04:35.320 --> 04:41.800] to visit but that could be more broad and give more information about also the region [04:41.800 --> 04:47.120] or maybe a particular kind of cave. And other documentation like for example when they made [04:47.120 --> 04:52.720] this survey they also took measurements. This survey has been made probably with compass [04:52.720 --> 04:58.800] and just measuring tape and thus they might have taken notes of that. They might have [04:58.800 --> 05:04.720] also saved them somewhere. These days we are also using more modern technologies such as [05:04.720 --> 05:10.560] radar and 3D scanners and also those data points that can be saved and they can also [05:10.560 --> 05:17.720] be archived. All this kind of information is available at a certain location. Most of [05:17.720 --> 05:24.600] the time it is the person who has generated this information who owns this information. [05:24.600 --> 05:31.760] But if we want to share this we are very much scattered around the world and there is not [05:31.760 --> 05:37.400] such a thing as a central database. That is the actual problem we have to deal with. [05:37.400 --> 05:42.360] So if you look at how we are going to share this information these days a lot of this [05:42.360 --> 05:49.480] happens by email or by websites or blogs. Sometimes also some file transfer services [05:49.480 --> 05:56.040] but in general all the information is at one specific organization, one specific person [05:56.040 --> 06:00.720] or group of persons and you have to know where you have to go to if you want to actually [06:00.720 --> 06:07.240] access the information. There are some countries who do have their central databases but this [06:07.240 --> 06:13.720] is not something which is also standardized or generalized. If we then have the information [06:13.720 --> 06:18.880] about the cave like for example the survey how also are we going to link this with scientific [06:18.880 --> 06:23.160] research that has been performed around this cave. That is also one of the problems we [06:23.160 --> 06:27.680] have to deal with. If we are contacting someone because we want to visit the cave very often [06:27.680 --> 06:32.800] we get a survey or we get a description or we get a combination of both but we don't [06:32.800 --> 06:37.720] get all the information that is available. Also because very often this information is [06:37.720 --> 06:44.800] not centralized in one sort of group of people. Some people have one part of the information [06:44.800 --> 06:50.440] other people have another part of the information. And then when I contact someone to obtain [06:50.440 --> 06:56.760] this information and if I have been using it for a while and then afterwards an update [06:56.760 --> 07:01.400] has been provided on this information how am I going to make sure that I am also getting [07:01.400 --> 07:07.440] this update. Because also in this world science is still moving on. We are still exploring [07:07.440 --> 07:13.880] new places underground. We are still finding new places, new caves and so all these kinds [07:13.880 --> 07:20.000] of information need to be shared as well because the survey that I was showing before is a [07:20.000 --> 07:24.960] very old one. There are already several newer versions of that available right now and so [07:24.960 --> 07:30.080] if I get this survey one day and a newer version is made the other day how am I going to make [07:30.080 --> 07:35.520] sure that I also get this if the person who sent me the first one is forgetting to also [07:35.520 --> 07:43.600] send me updates. For that there is a solution and this solution is GrottoCenter. So what [07:43.600 --> 07:49.640] is GrottoCenter? It is a sort of wiki database which is made for cavers and also mostly made [07:49.640 --> 07:57.440] by cavers. So there are a few people in France they have been starting developing a database [07:57.440 --> 08:02.840] which they use to store all the information and it is made public available so that everyone [08:02.840 --> 08:11.240] can use it. It is supported by the European Caving Federation and it is also supported [08:11.240 --> 08:17.760] by the International Caving Federation who also officially hosts some parts of this. [08:17.760 --> 08:22.400] The idea is to have a global source of all kinds of information about caves and caste [08:22.400 --> 08:27.680] phenomena and to have it with an open access so that everyone can access this information [08:27.680 --> 08:32.600] also with the idea to use standards so that all the information is saved in the same way [08:32.600 --> 08:39.320] and it is very easy for everyone to also add information and also query this. And because [08:39.320 --> 08:45.200] we are using standards we are also making it very easy to make it accessible by machines [08:45.200 --> 08:55.400] as well so that you can query this using APIs. How are we going to then use these kind of [08:55.400 --> 09:01.040] standards to make sure that everyone can access this information? For this we made a standard [09:01.040 --> 09:06.400] which is called CastLink and which enables us to link all the different documents to [09:06.400 --> 09:13.800] caves. For this we did not really try to reinvent the wheel, we just extended a tool which is [09:13.800 --> 09:21.160] from the W3C linked data and semantic web and this enables us to store the information [09:21.160 --> 09:30.800] in such a way that it is very easy to access also using machine readable ways such as APIs. [09:30.800 --> 09:35.560] And then you have Grotto Center itself so here you see the front page of the website [09:35.560 --> 09:42.600] where you have on the side menu bar which you can easily use to browse the information. [09:42.600 --> 09:46.880] If we then go, you can see there is a quick search and advanced search, I am going to [09:46.880 --> 09:52.320] skip those for a moment and I am going to skip to the map and then here you see a screenshot [09:52.320 --> 09:57.640] of a part of Belgium where you can also see all the hexagons which are indicating where [09:57.640 --> 10:03.720] our caves or cluster of caves. So these are just sort of caves bundled together, if you [10:03.720 --> 10:08.640] further zoom in then you can actually see over here you can see that there are also [10:08.640 --> 10:13.000] indicators which point where you can find certain caves and then you also have over [10:13.000 --> 10:19.040] there the pop-up which appears when you click on one of those points which provides us with [10:19.040 --> 10:23.800] some information like for example here which cave is being found at that location and then [10:23.800 --> 10:29.640] also a link to the data sheet of this cave. So this is the data sheet of that exact cave, [10:29.640 --> 10:33.840] you can see then where it is on the map, you can get some basic information such as for [10:33.840 --> 10:40.080] example the exact GPS coordinates, some information about how deep and how long the cave is when [10:40.080 --> 10:44.520] it's been discovered and then if you browse down here you can also find some information [10:44.520 --> 10:49.360] about for example the location, if you go down a bit more in the description you can [10:49.360 --> 10:55.480] also find documents such as the cave survey. Not all this information is of course very [10:55.480 --> 11:00.600] extended, it events very much on the people who add this information so this is one that [11:00.600 --> 11:09.760] has been created automatically using an import which is done during migration of Grotto Center [11:09.760 --> 11:17.880] from version 2 to version 3 but most of this information is being provided by users, it's [11:17.880 --> 11:22.600] just like Wikipedia, if I don't write a web page, a Wikipedia page about Grotto Center [11:22.600 --> 11:28.000] then there is no Wikipedia page available about Grotto Center. So this is information [11:28.000 --> 11:33.000] that can be shared by everyone, on the top there is also a login which enables you to [11:33.000 --> 11:40.280] add your information yourselves. How are we making this possible? We are using different [11:40.280 --> 11:46.520] technologies, the complete infrastructure is running on AWS and Microsoft Azure and [11:46.520 --> 11:52.360] we are using Docker to also host our application. For the rest we are using quite a lot of [11:52.360 --> 11:59.920] JavaScript, so there is NodeInvolved, there is Sales.js React. We are also using GitHub [11:59.920 --> 12:06.560] to host our code so you can also browse the code freely because this is of course, it's [12:06.560 --> 12:12.760] an open source project so the GitHub project is freely available, you can check out the [12:12.760 --> 12:18.600] code over there. For the rest you can also get in touch using our Slack channel. There [12:18.600 --> 12:24.800] is a wiki which explains how you can use this tool if you want to add information and then [12:24.800 --> 12:29.680] for the rest a few other links, for example here you have the wiki caves foundation. The [12:29.680 --> 12:36.800] wiki caves foundation is the foundation which is responsible for the project so Grotto Center [12:36.800 --> 12:43.360] is being officially organized by wiki caves. They are also making sure that all the funding [12:43.360 --> 12:53.360] and all the partners are being addressed. Then a link to what is called the documentation [12:53.360 --> 12:59.720] center of the International Caving Federation where you can find all the scientific documents. [12:59.720 --> 13:04.200] They have been imported into Grotto Center so these days if you are browsing information [13:04.200 --> 13:10.640] about specific caves then you can also find all the scientific bulletins linked to specific [13:10.640 --> 13:17.520] caves. And last link is one to the Cast Link project page where you can find more information [13:17.520 --> 13:26.880] as well as the current standard. So we are building this mostly with people who are doing [13:26.880 --> 13:34.640] a spillology and who are by accident also IT people but we are also very grateful that [13:34.640 --> 13:40.600] we from time to time get some interns from different schools that want to build on specific [13:40.600 --> 13:48.600] parts of our project to make it better and to also add more functionality. And for that [13:48.600 --> 13:55.000] we can rely on interns from the Polytech of Montpellier as well as the Epitech from Montpellier [13:55.000 --> 14:02.240] and the University of Grenoble. So many thanks to them as well. And now some of our partners [14:02.240 --> 14:06.880] I didn't list all of them because then my slide will be very full but there are quite [14:06.880 --> 14:13.760] a lot of caving clubs and caving associations, federations who are sponsoring the project [14:13.760 --> 14:20.320] and who are making it possible that we can build this and we can host this on an infrastructure [14:20.320 --> 14:27.480] that is also made that makes it possible that everyone can access this. So hereby I would [14:27.480 --> 14:33.280] like to conclude my presentation. If there are any questions and I am very eager to answer [14:33.280 --> 14:38.760] them and if you have any questions later you can also reach out to us on our Slack or GitHub [14:38.760 --> 15:04.080] or project pages. Thank you very much.