 Mae'n gofyn, so ti'n gweithio. Rwy'n fawr i'n iddo i'r dyfodol i'r cyflawni. Felly, dyma'r Filipp, gyda Octovin Digital. Mae'r cwysig yng Nghymru i'i gynhyrchu'r cysig. Felly, mae'r cwysig o'r pwysig, mae'r ffrogexau. Mae'r ffrogexau gwneud, mae'r ffrogexau gwneud. Ond, mae'n gweithio'n gweithio'n gwybod, mae'r bwysig o ddweudio'r bwysig, But if you want me to expand anything else after the call of the call after the ting, just come and specifically speak to me and then we can share code, do all sorts of things. We're really open about sharing all sorts of things, just there is so much to go through if I start talking about the things and we won't get anywhere. Before we start, I am originally from the Czech Republic, so it's really nice to be here in Prague I've not seen much sort of Czech stuff going on, so I thought we'd start with a little exercise. So here we go. Here's the Czech alphabet everyone. So the Czech language is one of those languages that's known as a phonetic language, so it means that all the letters are always pronounced exactly the same way. So remember if you learnt how to speak when you first learned how to read or speak, you went ah, b, s, d, er, f, g, h, etc. So it's just like that. Now what they did a few hundred years ago is they brought in a few extra characters to make things shorter, so they put these little accents on top of the letters, then of course computers and keyboards came in which ruined everything, but they've got a s with a, a c with an accent is a c, an s with an accent is a c, and a z with an accent is a z. So we've got, and also we've got long lines above things which make them longer, so we've got an i which becomes an e, so it becomes e, a becomes a. So that's it. That's the Czech language. There are some really difficult ones with like r with accents, but this is a beginner's talk, so I thought as I'm billed as a beginner, then maybe, maybe we'll leave those out. So does anyone know what this is? Not quite. Anyone, anyone else who's not my team? It's an angel shark. So angel sharks are about two metres in size, 1.5 metres in size, and they're critically endangered. They live in the sand and they sort of come up and attack things. They don't have to move to keep breathing. They're amazing animals. We've done, we're going to talk about a project in a second, but most importantly the reason we're all here is this is shark in check. So I'm going to, now I've said z is a z, so I'm going to count to three. You can just not do this if you don't want to, and you're all going to say what this is. So one, two, three. Sherlock. Sherlock, you can speak Czech, this is great. Anyone can tell me what this is. Elephant, yeah? So this is a forest elephant. So I don't know if anyone has been involved in discussions about hot dogs, where it's like is it a sandwich? Is it not a sandwich? And forest elephants are this weird thing where they're not sure whether there's two types of elephant or three, so people argue about this a lot. So a forest elephant is one of these cases. We'll come across this sort of thing a bit later on as well, but most importantly, so I'm going to count to three. This one's really easy. One, two, three. Slon. Okay, that's elephant. Next. Okay, anyone tell me what this is? Turtle. Okay, it's a turtle. So turtles do this, have this unusual thing that happens, which is when it gets hot, turtles are more likely to, or pretty likely to give birth to female turtle eggs rather than male ones. So as we're screwing up the planet, it's getting hotter. There's a lot of female turtles being born, and if you're like a tech conference, more women, really good idea. If you're turtles, not so good. So especially if people are already like stealing your eggs and you're endangered in other ways. So it's not very good for that. We work on a turtle tracking project. That might come up a bit later, but the reason we're here is here. So a z with an accent to the z. So one, two, three. Gelba. Great, you can speak Czech. This is great. Okay, we've got this, which is a stalk. It's a white stalk. They come in flocks of about 10,000 stalks, and they travel about 12,000 kilometres. They're incredible animals. We worked on a bird migration system using Drupal about education about bird migration and tags and that sort of thing, or not tags, reporting where you see birds. But here we go. So we've got a z with an accent, which is a ch, a, which is a r. Now a little side note, if you're preparing a presentation, don't pick a font that doesn't have these characters because then you'll end up looking typography awfulness like this, but I tried. So one, two, three. Chop. Okay, and anyone know what this is? It's a sunburst diving beetle. So we don't have any projects on these folks because no one likes invertebrates. But when I used to work at London Zoo, which I did before I started this company, I used to come and visit these folks all the time. I absolutely loved them. If they were the size of cows, then everyone would be terrified of them. No, everyone would think they're amazing, but they're like that small so no one cares, and everyone just walks straight past, but they're amazing, graceful animals. So, in check. One, two, three. Broke. Okay, good. Thank you. So I'm Philip. I'm from a, that was fun wasn't it? You can go now, that's it. So I'm from Octovin Digital. We are an agency, a very small agency based in London, and we specialize in wildlife conservation. We basically do lots and lots of things for the conservation sector. We've all got some sort of background in it. We're a small team. We're very, very collaborative. We talk to our clients, work with lots of scientists and such. And another huge part of what we do is we train lots of people up. We do lots of mentoring. We are really like, I'm big on sponsoring diversity in all sorts of things. So, yeah, that's a big part of what we do. So what I'm going to go through is have little slides with lessons and things to think about. So the first one is this is a really important thing. If anyone runs an agency or anything like that and tired of us being so small and doing it so much, others should do it a bit more. Invest in staff, convert people into developers. Rowan over there is a former biologist who came to work with us and now is a great front-end developer. And pay interns, don't exploit them. Yeah, be good at things. So, yay. So, what I'm going to, how am I doing? I'm doing okay. So, what I'm going to talk about is sort of how we got started with Drupal, how I got started with Drupal and then go through lots and lots of case studies. So, I started using Drupal around 2008, something like that, a very long time ago. And the reason I got started was I was running an arts magazine. So, I was starting an arts magazine and I wanted to look up how to do things. And I didn't really know how to code. I knew some angel fire, that website that Dries showed yesterday with the flashing things. I used to do that sort of stuff. But this needs to be a bit more professional. So, what I did is I got Drupal installed and I managed to do so much with no code. I just panels, views, all of this sort of stuff. So, then I got jobs, all sorts of things like that. And I worked at London Zoo. And we had a situation at London Zoo where we had a membership system that was End of Life, a CRM system. And the company that was doing it was hundreds of staff, massive company was late and couldn't get it done. So, I was there as a digital communications officer and I thought, hold on, I know Drupal. I can build a membership system. This will be fine. So, I didn't know any PHP. Now, did anyone in this room, I don't know how long Drupal developers we are. Did anyone sort of use rules to build the most complex sites? I'm not going to learn how to code, but I'm going to use rules and do these really complex nested templates. It was amazing. So, I kind of did this and we got it working. So, lesson here is why write code when you can click a thousand buttons, drop downs and check boxes instead? Which is like the unofficial slogan of Drupal, I think. So, yeah, we did this and we launched it about six months after starting building it. It was membership, donations, fellowships, all sorts of things, hundreds and thousands of people, loads of money going into the system and it was meant to be there for a few weeks. So, this one, next one's a cliche. It's a cliche, but it's definitely, definitely true, which is there's nothing more permanent than a temporary solution. So, six years later and they're still using it. The other company, CRM company didn't deliver that product. We carried on supporting it. It only got replaced because we got commissioned to do a new donation system building something else and other things. So, that's a fun lesson. So, one other project that's similar to this is around the same era. We did a really nice project here for seal tracking. So, not seal tracking, seal tagging, seal reporting. So, when you see a seal in the Thames, you report it, this is all sightings from this year. So, we've got nice little bubbles telling what, am I have to refresh and see if we, like what people have, what people have, what stories people have done, will come up like I saw its head, that sort of thing, head popping up for a good 10, 20 seconds. This is all this year. So, I love this site. I keep on wanting them to get us to update it because it's got some old stuff on it. But they're not because it works and it was built in 2013. So, it's just, it's one of these things that build things to last a long time. It's a really good thing. So, what I'm going to do next. So, so, next project. This is a dribble one. So, while I was at London Zoo, my team will laugh at this one. We decided in two weeks come together and let's build a viral app of some sort, a little tiny thing where we would go, there are 300 somatron tigers in the wild. Let's see if we can map how many cats there are in London. Now, we didn't cap it to London, unfortunately, and it came out and I don't know if anyone knows cats plus internet. Somehow something happens. So, it became this hit that we just didn't understand international press. I was interviewed everywhere. We had 30,000 cats a day. It was just this ridiculous thing. So, we used dribble, used views. I didn't know what I was doing and the thing that happened was it couldn't cope. The server was just not coping. It fell apart. It was just a bit of a total mess. We had to take it down because it was just too many cats. People in Taiwan seem to love it for some reason. My favourite thing from the story of doing it was I was looking through Twitter and I found someone randomly who didn't know anything about it saying in America somewhere saying the guy in front of me in math class is looking at some map of cats and I was like I've made it. The random person is looking over someone's shoulder and seeing what we've done. So, the thing here is it kind of was a disaster because the caching, everything was really hard to do. Couldn't get the servers running. So, it was a disaster. However, lesson learnt here is releasing a total mess is the best way to learn how to code. So, while it was running I was trying to get it running before they shut it down. I learnt all about Drupal performance about caching, about how to do mapping a bit better all sorts of things like that. So, it was a really, really good thing. So, the lesson here is if you screw up yourself it's not a bad thing but also let people screw up in a team if you run a team because that's how they're going to learn and it's a really, really good opportunity. So, in contrast to this just after this project was done we spent about a year contrast to the two weeks building a game about tigers. So, this is I'm not going to play it, don't worry we'll start, let's see if it runs. So, this is one of my proudest achievements it's a really fun exercise in being a tiger does all sorts of fun things it's got a soundtrack that I composed all sorts of stuff. Now, when this launched we had Catmap and everyone was thinking oh, this is going to be another viral hit it's going to be really good everything's going to do so well and what happened was it kind of didn't get much press it was a little little thing and I got a bit disappointed and then I looked at the tracking that I put in so I put in tracking depending on what people were doing looking at how many achievements they got all sorts of things like that and I realised that even though we haven't got like thousands and thousands of people going on every second what we had was people playing it for an hour and it was when they play it for an hour they learn all about tiger conservation because if you don't learn about the tiger conservation you can't complete the game because you need to know where to go and so I thought this is amazing it's a much better project even though to the people looking at how many views that we've got how much press that we've got it wasn't that big an achievement so the lesson here is a few people loving your project feels a lot better than hundreds liking it so it's a really important lesson there I think we miss this a lot we look at analytics and we think there's not many people here we've only got a handful of customers or a handful of people looking at things but it is really important to think of what people are doing how people are engaging because those people are the people that matter and when you're doing educational games and things or edutainment the best word in the world then it's really important to see who's actually getting getting stuff out of it so while we're on games I'm just going to do a little side thing for another lesson which is we did a fishing game which was translated into Danish and and Greenlandic and it was about fishing agreement and it was again I'm going to call myself Alf and it was a lot of a lot of stuff going through and fishing for shrimp all sorts of things like this now it's quite fun but I'm going to not play it because that's there but what happened here was we went into schools and we spoke to people, spoke to kids and actually did workshops we worked very closely with the scientists to work out exactly what corals we should show how often they should appear and it was a success people still, we were doing interviews the other day and people mentioned this sort of game and some of the others it did get played by lots of people allegedly when it got released everyone in the organisation was pretending to be working while actually playing this fishing game so that was my success but the lesson here is test with your actual audience so even if it means a bunch of kids telling you you're doing it wrong and you need to change everything it is like if you don't do that then who are you building it for you might as well actually listen to the people so that involves we do a lot of stuff directly speaking to our clients and we speak to conservationists speak to scientists and suddenly go okay we have to complete these changes of structure but they're usually right they're the ones using it you should probably listen to them so that's on that side so good so what we did is when we started off when we started doing this sort of app and more javascript heavy things we got a bit distracted we did lots of front-end javascript lots of MongoDB all sorts of things and kind of forgot about Drupal for a bit and then because of the move to Drupal H from Drupal 7 I was a bit scared off because I knew Drupal 7 so well and as lots of our clients found upgrading sites was expensive so I went to the dark side and we spent a lot of years doing WordPress development so here's a little story in that WordPress is a wonderful platform and if you're building sites like this so this is for trillion trees it's got a little interactive map so really if you want to know how to do these curves or how we did these curves speak to Rowan it's the biggest nightmare in the world but we did them and it's one of those things where the client or someone gives you a design and you think yeah we can do that and then you realise it's actually really difficult to do so yeah this sort of site two or three administrators it's got a bit of a survey inside it where you can do some things to work out how your assessment is perfect for WordPress don't build this sort of site in Drupal WordPress is a lot better for it then however it starts getting a bit more complicated so you've got a site here which is about sustainable seafood and it's got a really complex interactive map which has lots and lots of different types of thing it's got members login areas all sorts of things and thinking back how we would have done this maybe Drupal would have been better sorted because WordPress is not very good at content structure in any way there's no content structure in WordPress and the APIs are just this was talking to an external Postgres server to get some data via GraphQL all sorts of the stuff that you've heard lots of talks about WordPress just is not great for that sort of stuff but it works it's there, it's okay so then we have the angel shark sightings map so this is a really nice little site where you can report sightings about they're not directly shown on the map because it's a critically endangered species so they can't show you exactly where the animals are but we've got baffymetric lines we've got all sorts of fun things here it's translated into I don't know how many languages now quite a few languages and the form the scientists start adding features and they go okay we want to add two different sightings forms and then we want to translate it into another language and again not sure Drupal might be better but it works, it's a really successful project it's fine, let's leave it as it is then we plunge even further we've got the conservation leadership program so this runs every year and it's a program where people apply for a scheme reviewers review their application people look through listings assign reviewers by profession to an application reviewers give feedback, all sorts of things and when showing this sort of project to someone I know who's also a developer he made fun of me for just turning WordPress into Drupal because the amount of hacking you need to do to get custom columns searches and filters this should be a Drupal site however it works it's really good and it's not going anywhere we built it in WordPress probably would have built it in Drupal but the lesson learned it's still okay, it still works then we get even more complicated so this is capacity for conservation another WordPress website this has assessments and people organizations fill out an assessment about people within an organization feel about their management all sorts of things anonymously there's a list of tools so if I go to resources there's a list of resources in cards with searches filters type of stuff you do in views none of this exists in WordPress so again it would be it would be nice to have thought about that but however it works it's fine so the lesson here is nobody cares what you build something with if it's good and it works so there's lots of groaning like oh no I only use Drupal or I only use WordPress or Node.js we use lots of things we're going back to Drupal using Drupal a lot a lot of these projects would have been good Drupal projects however it doesn't matter if the clients like it if it works it doesn't matter what you use so don't discount WordPress just because you're a Drupal developer for things like blogging and news stories it's superior it's much better than Drupal will ever be because that's what they do if you're doing more complex taxonomies want a database structure that makes any sense and doesn't just dump everything into a meta table then a templating system that isn't just PHP templating there is a twig library you can install called Timber that's really good so for more complex sites definitely Drupal is a good way to go however WordPress isn't bad in some ways so the greatest things about Drupal as I've said is its structure so the taxonomy system the flexibility that you can have putting all these different content types different taxonomies references to them a field system WordPress doesn't have a field system it has a plugin called advanced custom fields which tries to give WordPress a field system but Drupal is the best strength of Drupal there's so many other things that Drupal does but this is the reason you should use Drupal is the content structure it is just incredible the way we use it to map things out to do very complex taxonomies of things is really really important so what I'm going to do is I'm going to go through some examples of sites that we've built more complex sites using Drupal and point out some of the things I'm going to try not to say the content structure things so much but you'll hear it quite a lot it is the best thing about Drupal we use it so much and it's the reason we've come back to it because it's just it's world beating and no one else can catch up because there's so many years that we've spent doing it so I don't believe anyone will ever build a system that's better at it than Drupal so that is high praise so what we have next to show I'm going to close some tabs my team will laugh at me I'm a one tab person so this is my nightmare but I've set them all up so what we have here is the biggest site we've ever done it was a sort of year long two year long project it was really really hard work it's a social network basically it's a whole community site for for conservation technologists so there's a whole branch of things called conservation technology where people use technology to solve conservation issues so they build hardware, software all sorts of things we're a subset of that because we do digital things for conservation but there's a whole amazing world if you are doing tech and you want to move into conservation stuff go to this website chat to people because there's so many projects that are doing amazing things so what we've got here is a lot of different content types events, discussions people, groups all sorts of really really organisations people are part of all sorts of things going on we've got notifications on the top if I go here which lights up if people mention me if people like something that I've done if people reply to something we've got a full on discussion system going on so if I go to a discussion we've got people posting replies, doing all sorts of things notifications, subscriptions so there's a lot of content types but sometimes we've got some custom entities here as well so it's a difficult thing to work out when to do is when to do a custom content type through just managed content make a content type and when to do something that is that is just referenced as an entity created as an entity through the module system so the ones we used here I think there is some similarity between them is subscriptions so linking one thing to a piece of content likes so an emoji so we've got a nice little emoji picker so storing emojis on something and so referencing what was reacted to, who reacted what the emoji was and things like notifications so activity when something happens on the site whenever something happens on the site you have a piece of activity that's created and the activity is of various types so we've got a comment was posted, a reply was posted and it was called metadata about who was posted to who posted it, what happened that sort of thing so a reaction would have an activity associated with it and such and then people can subscribe to those and get a feed oh I've just got Chris, someone sent me a message okay so someone's just sent me a message on the messaging system to prove that we built like a slack like thing inside it as well so lovely live demo thank you so I didn't read what the message was so that is, those are really good they're really fast the entity system I would be, don't be afraid of using custom entities they are really powerful, there's no content also another decision to use them was ones where you don't want to edit them you don't want to go in and edit someone's likes or edit someone's descriptions you don't need a screen to manage them you just need a lightweight entity so we did a lot of those so other things that we did that were interesting here is we did a lot of CK editor type stuff so on the editing experience so what we've got here is when you edit an article so we there've been lots of talks in line editing that sort of thing what we did here is made it look a bit like the actual experience when something happens now this isn't using quick edit or anything funny like that it's please don't hate us for how hacky this is these are extra fields that when you type into them populate the real fields in Dribble so you've got a form and then you've got these dummy fields at the top and then you're writing to them but people love it and they can just go in and it looks the same so we've got CK editor 5 we jumped into CK editor 5 straight away like when it was really early early on when we were building this project because I saw it coming but CK editor 5 does we built mentions plugin on top of it using the mentions a nice little card hover that shows you when you hover over a card we've got the thing that they like the most if I go to Sneezing Panda my favourite YouTube video so if we go to Sneezing Panda and put it in I should just have it open in a window all the time so it just embeds it does really cool things code highlighting just anything that was CK editor is amazing there's lots of talk about it this time but CK editor 5 is just it's so far along from anyone else tiny mce all the others CK editor 4 it's a whole amazing beast the team have done such a good job and the Drupal stuff is really good for it as well what another really key part of this is search so I know there's Apache Solar for Drupal has been around for a long time it was so easy to configure and the client loved it so much if you give them spell check and just related things and you just tick buttons there's that checkbox joke about Drupal earlier there are so many checkboxes and you just read it and you do them the one that stung us so much and we couldn't work it out for hours was there's a checkbox which is a double negative it's like list all the types you want to exclude rather than include it's like why is it not working and you just need to read the page but there's Drupal loves doing that sort of stuff or hide something in an advanced setting somewhere but yeah it's all good so we've done lots of Apache Solar stuff on here it's out of the box we didn't write any special code we just installed some extra modules and it's beautiful it's really fast and the client just loves it and the community loves it so as you can probably tell there's a lot going on the site especially on the home page when we were about to launch performance was absolutely dreadful so it was really really hard to do we didn't know what to do and there was an amazing talk yesterday about performance that get the slides because the speakers are genius and it's just so much stuff that we're not even touching but one thing we did to solve this one is profiling so I installed XH Prof and I ran through the whole site and worked out what was the slow functions and within an afternoon the site was 90% quicker it was just it's a really useful tool I think there are those that is it black drop or the other thing that makes it easier to do I wish that's really good because that means less set up and more developers can get involved in this because it opened it just made you aware what was slow now a big lesson in slowness and Drupal all the bits of code that were slow and a few things that Drupal does out of the box and just hacking around things and if you do things the Drupal way then the caching kicks in it does things really nicely and it was all our weird pre-processes but we got it fast it was really nice so one final thing on this site that I want to mention is because I'm doing okay is that we did lots of JavaScript stuff so we did lots of things like the notifications that sort of thing now I'm a JavaScript developer I love my JavaScript that is like an area of expertise so I spend ages trying to get Drupal to do all sorts of JavaScript stuff I've always because of jQuery UI and all sorts of this weird thing in Drupal I've always ignored the Drupal JavaScript stuff because I just thought it was going to be terrible what happened was I was doing our Ajax notifications and sorry Ajax discussions like trying to update live update discussions to roll to the relevant bit and I was just in the office until that 2am and I just couldn't get it working and then I just gave up saw in the corner of my eye the Drupal 9 developer book and I thought let's just read the Ajax chapter two paragraphs in solved everything so please please know there are APIs available that do stuff very well so moving on to another site so this is a sourcing transparency platform it's about sustainable tuner what we've got here is databases of species we've got pages for species if I go through here we've got a nice little carousel we've got lots of maps lots of information so many different fields taxonomies all sorts of things we've got a database of fisheries we've got where the fisheries are various regions that you can do all sorts of things like that databases of tuner products in different types and I mentioned structure Drupal the best platform for this sort of stuff there are so many complex taxonomies so many things like we've got on if I go to companies we've got things like if I go to brands little distribution arrows as to where one person comes from the others they're just entity references and then we can map them using a jason feed this structure is as I'm going along you're going to see more and more complex taxonomies there are so many different types of vocabulary nested ones really complex things but the client understands it and they're managing some of this stuff it's amazing it's really good also the members log in they edit their pages this is a really good use case for the type of thing that we really use Drupal a lot with moving on to something where it's almost always the database almost entirely the database this is a very simple front end but what it is assessments on certain endangered species this is where that forest elephant issue comes in lots of weird edge cases lots of scraping of historical data going back hundreds of years 100 years and we spent three years on this project it doesn't look like a project we spent three years on but it was all CSV imports so it was all just matching ACSV to something changing the data structure data structure is essential when doing these sort of things and if you spend a lot of time on it you get it right and Drupal is perfect for prototyping this stuff so creating creating fields testing things out creating forms creating views it's wonderful so one little Drupal trick I went to the geolocation boff the other day and people were asking about how you do views and maps together we don't use any geolocation stuff in Drupal what we do is I do a views attachment which is a cheating thing which is hidden in CSS on the page and then is read by the map so that when you update the view you update the you update the feed at the same time there's probably better ways of doing it but it just passes everything to the client side keeps the filters the same and filters the map at the same time as it filters everything else we've used that on so many projects and it's getting JSON feeds syncing with the views filters is quite difficult so we just pump the JSON to the client side and read it there a very similar website is this again looks very simple this is a database of sustainable use of species so what we have here is what we have here is how species are used all sorts of things there about which species are what the use is for again this is a view very simple the database part was the hard bit so an interesting lesson here is if you go to contribute record we've got a very complex form now web form would have been brilliant for this but we wanted structured data so there's a really because Drupal is so good at structured data because we wanted to export it out we ended up having to use the entity system and the normal managed fields which is very behind what web form we're doing to do these forms and things it's just so that the naming was right everything could be exported so the structure is really the most important thing that draws us to Drupal especially working with scientists to do sites like this it's an essential thing so again importing data into both these red list applications and this one here lots of CSV importing Drupal's entity system worked wonderfully there's no need to use feeds or anything like that just go through a CSV import a symphony CSV tool or such and just go through the entity API in Drupal it's amazing, it's really good it's a database of seabird tracking at the moment so Chris, my colleague has been working on this importing loads of records or many many thousands of records from a Postgres database and it's just yeah, Drupal is amazing at this stuff so a similar project so what we've got here is another interactive map this is basically a single page app I'm going to just refresh this is about all sorts of layers about a certain region of ocean so what we have is I'm just going to add this weird thing going on there what we have is marine uses like wind farms oil wells so we've got oh look at all the oil wells isn't that great what we're doing for the environment and we've got really interesting things like over here let's see if I can find it I'm not going to be able to find it now this is no maybe not oh here we go I'll go zoom in there we go so this is chemical weapons being dumped into the sea so this is like all the little oh look they look like nice points and then you read that it was a ship that basically lost lots of its stuff and there's unknown an unknown quantity of chemical weapons just sitting in the ocean so what we've done here this is lots of map box stuff so map box is a piece of software that allows you to manage layers and mapping things we do lots with it and what we've got here again is lots and lots of taxonomies lots of subsets of things all the menus are generated generated by that so what was I going to mention I've got five minutes and we were going to do some questions but probably not what was I going to mention so we've got this is a website which is a bird migration site it's got a map of bird migrations, people, citizen science now the tricky thing here is it's translated into all these languages Drupal did it really well but it's not just translations each site has different content as well some of the content Drupal's groups module really good translations module really good but this was a difficult undertaking so I'm just going to run through that one quickly another, the final thing that I was going to mention is that we worked on some hardware things so this is a satellite connected network of camera traps and what we do is we built the tool that receives the images of dashboards, lots of filtering lots of reporting again, Drupal amazing for this sort of stuff sometimes not used to make dashboards it's brilliant for dashboards, the scientists love it they can add fields do all sorts of things there so a key part of this site this system here is the configuration that we allowed the user to do so there was lots of clicking buttons to configure things through JSON files through Drupal config we did a similar thing on a turtle tagging project where we built an open source tool this was to generate interfaces for managing any type of conservation hardware and again config type of device which form fields really good to generate things like that so we had, this is leading somewhere we had another project that we worked on which is another mapping project which has some really interesting mapping data about regions in Canada over time all sorts of things like that all of this whole interface is generated from a single YAML file that the scientists edit and they plug into their Python application so scientists love this configuration really really really powerful so which brings me on to my final point flexible configuration will make people fall in love of the sites they are looking after so those checkboxes that we talked about that feeling I had when I built the membership system using rules using all that site building stuff you can give it to clients you can do all that config and they'll love it if they have full control over a system which Drupal lets you do then it's amazing so don't hard code things just add checkboxes add config pages is an amazing module and Drupal lets you do this sort of stuff it's brilliant so final point because I am running out of time we do lots of good stuff for tech I see lots of people doing bad stuff for tech so there is no excuse at all to build evil technology or work of people who do stop it okay just don't do it because yeah you can do well with this stuff there are so many opportunities as I said the wild lab site conservation technology other tech for good stuff just don't do tech for bad it doesn't matter if it's tech for mediocre that's okay but there's so much tech for bad stuff going on just yeah I won't mention companies but there's some awful stuff going on so yeah that's me we're Octafin I've been Phillip Nest you can find me on Twitter but I just post about Taylor Swift and music stuff so there's almost no point following me there but please just email me talk to us we'll share any code anything that you want to look through and a little plug for my very good friend Anna who did all these illustrations designed our logo she's a pattern clothing designer in the Czech Republic and she's under an anemone so find her on Etsy she's amazing so inspiring talk especially about all the like performance stuff you did and saying that you should use or make custom entities and that kind of thing does that mean that you like for example because I see for the activities you use custom entities so do you use contract modules not as much there are contract modules for doing things like activity and that sort of thing we look to them and they seem to be very bloated with lots and lots of things so I would say for contract people making things make lightweight modules which then get extended with other things so that you don't have to install it and it comes with a messaging system and all this other stuff emails just keep it lightweight I think that would be we did use lots of contract modules like groups the wild lab site and the Springer live site would not be possible without the groups module lots and lots of less contract modules than I used to use because Drupal 8, 9, 10 is amazing but still still use some but the lightweight ones usually yeah okay thank you when you've got observation data do you sometimes use external databases yeah so we sometimes use so for the bird tracking information we're using at the moment we're going to possibly use a post-GIS server for that because it's just so much better at managing geolocation Drupal there was an interesting talk about the boff about geolocation Drupal only has certain field types so it's not going to do a polygon or not going to do point data in a specific way very well so that it's compatible with all the databases Drupal supports so sometimes you do need to use that is that like for the geolocation stuff is that what you're asking about well sometimes I work for scientists who already have strange databases you have to query manually I mean you have to query data to write SQL and it's really annoying and you end up not using caching so I ended up thinking that external entities is a wonderful module in that area yeah so I think we're using a second database feed could maybe work also putting it in an index server something like solar in between so that you're indexing it every now and then reading from it and then just updating it every now and then that's also possible it's a tricky thing but yeah sometimes using multiple databases just treat the other databases an API maybe that's maker we use GraphQL on one of these databases to give a feed that Drupal could read so anyone else feel free to talk to any of us we are open to any questions and such and check out some of these projects thank you