Welcome to GSOC meeting for Jenkins. We have a number of project proposals and a number of students and mentors online with us today which is great. Hopefully we'll get slayed in. We're just discussing, hopefully we'll get slayed in to mentor. Yeah, sure definitely. Have you had a chance to look at the the proposals that are up on our listing? And then we also have an additional one that Vibhap has put in. Yeah, I seen the one, you know, the cloud events. So I've been in the cloud native, you know, the SIG for a long time and that that's one area that interests me and I've not had a chance to talk with, I had a chance to talk with Vibhap a long time ago but then I got busy so that's one, you know that's one project that I'm looking forward to, you know. Yeah, definitely. And the cloud native CIG is every Friday. So yeah, I'll hop in on one of those. Yeah, you'll see me from now on. Okay, awesome. Good, glad to hear it. Good. And SIGAR was looking into a number of things from last week related to Jenkins and getting used to Jenkins but has had to study so it was a little bit, that's more than okay, we're very happy that you prioritized your studies. Do we have any other questions from our students on the call or mentors? We have some new new individuals on the call today which is great. Nilma, if you'd like to introduce yourselves that would be, that would be wonderful. I'm Cara, and I work with the Jenkins Project helping to organize GSOC. I am willing to introduce myself. I'm part of the Jenkins Project have been for a while and delighted to be part of it. It's been a lot of fun. Last year's Google Summer of Code experience for me was my first and it was intense and interesting and we did some pretty bold things and it was a lot of fun and we've shipped those bold things. So really, really pleased. Thank you very much for being willing to contribute. Thank you very much for being willing to help us do interesting things in Jenkins. So do we have any questions from the attendees of this meeting on any of the proposals or how to make a proposal or how to work on a project idea to develop your own proposal? This is a good time to ask. Yeah, so so far I'm from last week. Max has been to look into the project and I looked into the project and but when I tried to run I faced some errors but maybe I still have to figure out more on that pipeline but I have to look into this step dog generator. But so should I have to just currently I'm a little bit concerned about how to make proposals or just currently should I just in this fab should I just focus on okay that's what I need to do more on the exploration or is it I mean should I focus on how I need to lay down the proposal also or is it fine to for this to explore more? I think your exploration work is is really important and will be foundational for the work you do it's you suck and really will help you make your proposal. So the proposal is you take a project idea and you really develop it as your own and you know we want it to be something that you're very excited to work on. So hopefully the exploration work that you're doing will help you finding that space. I'm sorry for introduction now but you can like what I did that kind of helped me in my GSOT last year it was my first time you know just like Max so it was a crazy experience but what you can do is when you're exploring you can put those things in a dog and you know whoever is your mentor whoever it may be you can just share that dog or you can even put it in the public SIG channels in whichever is pertaining so that if you know it shows that you've done your background research and it helps you make the proposal stronger. So just keep documenting bugs errors whatever you can even maintain a log a daily log of what you've done that helps as well. I'm speaking of that like last year you contributed but I know what to do in that project every you know steps but I don't know what to do in course in code part so you are at that time when we are making the proposal so you have mentioned all the coding part but you're going to do in each and every week do you already have all that mindset already is it? Not necessarily you don't need to know every single thing first of all you're starting quite early so that's a good thing and if you're starting early you have a fair idea of what needs to be done. My proposal last year had a lot of coding because I knew because the project was pretty familiar to me but if you see other proposals they not necessarily included code snippets so if you have the time and you know you can always introduce pseudo code like just what's in your head that this week I'm going to write this parser or this you don't have to go in detail about how the parser is going to work but you just can write down hey this is my parser or this is where I'm going to put the parser in you know it shows that you know like a surgeon where exactly what thing goes and as the time progresses trust me you will know what exactly the parser is going to do as you reach the deadline and you can just put it in there. Makes sense so it seems you were kind of telling me like just make a kind of prototype like Olex said to me I believe a few weeks back yeah makes sense yeah. Well and it accepts that many of the things that you're working that you're looking at now will be in the I don't know category right and that's perfectly reasonable for you to say I don't know how this works and I don't know how this works and I don't know how this works and I'm going to explore a narrow part of one of my I don't knows and learn something about it and then explore another narrow part and and you get to choose which so so I think I think for instance Segar you you're a good example of one of the one of the parts was hey how does this how does this rest API specification generator actually get invoked how is it run and and the exploration on pipeline steps doc generator is one one way it might be invoked okay so exploring that one one question is a is a good okay how would this thing be run now there's still the question like where will it be displayed where where will the results be presented and what tool will be used to present the results and generate the pages for that and each of those for me is a is a is sort of a separate topic of I don't know and I have to have to decode it I have to understand it so so I think exploration like that it's okay to stop an exploration say I don't know everything but I know a lot more than I did before and I think I will understand it reasonably yeah makes sense when this and previously can I start explore that project I mean it doesn't make any sense currently that code I mean how could I I mean trying to make sense out of that source code because I don't know currently anything about that source code that pipeline so what do you suggest me to how should I start looking into I start looking into from the main function and then I reading the code and okay this is calling this this is making instance and and but it doesn't make any sense to me currently to be honest yeah and that particular area we might actually enlist the help of one of the original creators of it and just have a session Kristen wetstone who created that may be willing to say hey let's have a 15 minute session 20 minute session to talk about what does it do and how does it do it and Kristen's been she was a mentor last year I believe she's been a mentor in years prior she was a Google season of docs mentor as well so so I think we might just be able to get her to offer us a coaching session to to review the structure of the thing so that you get a handle of oh this is what's happening and this is why it's doing it that way oh yeah that makes sense and I texted Oleg also maybe I mean he's busy yeah he's well and Chris that's that's why I recommend Kristen Oleg Oleg is universally capable he can do all sorts of amazing things but Kristen actually wrote the original code in that particular thing and because she wrote the original code we could ask her and I suspect she'd say oh sure I'm happy to come have a session and let's talk yeah um yeah I will then text her maybe next week maybe if she is available yeah yeah and that that's that's a that's a at least for me it's an easy thing to try for this session next week we ask hey Kristen could you come talk to us about pipeline doc step pipeline steps doc generator because it may be and a framework we would use to do the next thing the rest API spec generate yeah that will be a good yeah until I'm just looking at the source code I am I've just been messaging with no mind not in the chat memo was asking about the projects that are listed right now for do you suck and so we have we currently have five on our Jenkins you suck page but and I can put the link actually in the chat so you all have it and in addition there's another draft one that we were speaking of before the meeting and that's on the tecton client plug-in and if you purpose proposed it on the Jenkins you suck mailing list so you can see it there for now it should be PR relatively soon it's an interesting project but in addition and students are welcome to take these proposed ideas and and really make them their own so they they work on something that is good for the Jenkins project but is really in their area of interest and you are not in any way constricted to these if there is something else you're interested in working on and proposing for your application we can help you we can help you you know in the community we'll try and help find mentors for you you won't we will need to you will need to have a well-spec application and proposal but and you will need to have ideas of who your mentors could be but we can help you develop that and organize that so just to let you know it's not it's not a constraint you have a lot of creative freedom and it is a really a moment for you to to do something interesting and creative and contribute open source through the Jenkins project and Cara if if you're willing I could take some time and introduce more details about one of those ideas we're sliding on the line and nilma I would love to try to persuade both of them that this is the best idea of the five sure that would be great go for it Mike so so I'm going to share my screen and let's take a look at it if that's alright so on you should see my screen and on the Jenkins IO site in sub projects Google summer of code GSOC 2021 project ideas and here we've got this one so it's get current credentials binding for SH bat and PowerShell and I need to add additional mentors on to this one this is the number three most requested enhancement in in the Jenkins project right now it's got the most number its third place in number of votes on the Jenkins bug tracker and so for me there's there's significant interest in doing this the the bug report that tracks it is right here pipeline step to run git commands and you can read that in detail but what the idea is is that Jenkins users sometimes need more powerful access to the git command line than the git plug-in ads they may need to use different settings than the git plug-in supports they may need to use different techniques than the git plug-in supports they may need to insert calls to git at places or to do things that the plug-in just doesn't allow for example they may say I would like to be able to push a change to this repository and to this other repository I would like to check out two or three and when I do the checkout I need these very specific command line options all of that we could we could conceptually do by making the git plug-in increasingly more complicated or as proposed here what we would create is a credentials wrapper that allows the user to state the credentials they want to use and then use any git command inside an sh bat or PowerShell step so the idea is that that many git operations need credentials and many of those credential and those credentials are known to Jenkins but we don't want them shared outside the Jenkins credential system so what the idea is you will we will take a a wrapper let's see if we've got the example here it's not in the there isn't a picture of the syntax so let's look at the original draft document that I had assembled because it has a sample that shows how you use these various options to pass in let's see Jenkins out there it's good okay so let's look at the mailing list discussion and here's the Google doc so no example here either oh that's sad Kara shame on me all right so there there's this is what what it's doing is taking the Jenkins technique called with credentials and let's find that pipeline step okay this plug-in the credentials binding plug-in allows us to do things like this where we say using the following credentials I want to run these shell commands and and the idea here is that we need some way of saying to with credentials that the thing we're going to pass to it is intended to be a git credential which means it uses get ask pass and it sets private keys in the right locations and it knows how to do pass phrases and those kinds of those kinds of adjustments will then allow users to use this with credentials and instead of this set plus x they'll say get push something or get tag or get clone and and it will use those credentials in that get operation so the the challenging and interesting part here is not so much the code because the code that's needed to do this actually already exists in many ways we've got we've got code that shows how to do with credentials knows how to do it and knows how to set environment variables like this environment variable and knows how to write files but what we need is someone who will take those those samples of existing code and use them specifically to check that command line get is behaving as it should with those credentials and that means command line git needs to behave as expected when working with git 1.8 on CentOS 7 and git 2.30 on Debian testing and all the versions in between so so for me this one is a it's an interesting challenge in testing and it's a relatively straightforward coding activity before we get into the oh we need to do this massive set of testing to be sure it works in all the expected places now hopefully you're all persuaded oh yes this is exactly the best project choice Mark's got it and if you're not I'm happy to keep shamelessly trying to trying to persuade you okay so did that did that help are there questions yeah that was a good demo Mark yeah it looks like for me first time looking at it that was yeah that's a lot of information to process but yeah I'll definitely read the doc and you know see if I have some ideas Mark as you've mentioned testing so much did you have opinions on how this should be tested do you want to speak to them yeah well I assume that that the testing the plan to test it would include interactive checks because human beings use this and we want to check it the way they would do it but then if issues are found so let's see I guess I should describe it first I assume that any code you write you write starting with tests as the first activity right we think about okay how do we do it and being test-driven is very healthy so but usually when I'm writing test-driven code I fail to think of all the other places that I should have tested and I discover problems interactively that I then have to go back and add more tests so so for me the the the usual experience is I start with a little bit of code and a few unit tests and then I tested interactively and then it shows me that I didn't understand the interactive code and I clearly didn't understand how to write the test so I need to write more interactive put more code and I need to write more tests and I just iterate on those and in this case this one will require someone with some docker experience or docker use docker to run various various distributions of Linux I need to see how does it feel to run CentOS 7 how does it feel to run Debian 10 with these various versions of Git and it's a good thing to learn docker docker running a docker image either on your Windows computer or on a Linux computer on a Mac computer is a great experience because it helps you see which which things I can get without having to actually change my computer I can still I can have the full experience of CentOS 7 and not be running anything but my Windows computer so did that answer your question Kara or did I do a bad job of answering the question no no there's a great presentation good it good answers so now we have we have been joined by one more and Rick is actually from if I recall correctly Rick you're based in in a piece of china right so so your your time zone is rather uncomfortable for this time of night or day that you're in thanks for being with us Rick yeah I I hope I can participate the the meeting in the later yeah I'm based in China uh in Beijing yeah excellent thank you everyone welcome so the Rick Rick has been a key leader in the Chinese localization special interest group and in assuring that the Jenkins is is in wide use throughout China we're delighted it's it's marvelous thank you very much Rick for your contribution there you're welcome yeah also it was uh it was my mentor last time for the and one of the you know the core people who bought up the custom distribution service idea so yeah excellent mentor thanks Rick nice good to hear Rick would you be interested in mentoring this year because we hear you're such an excellent mentor um I just uh try to catch up with you guys so uh I will take take a look at the the project proposals if I'm interested in one of them I will talk to you thank you absolutely that's great and you're welcome to propose one as well should you wish you um yeah we we look forward to your involvement yeah of course of course I've got another project idea in mind from from that was not accepted in last year's set but I think it's still a viable idea it's a get get caching system that Jim Klimov from the Czech Republic actually has has been working on something related to it recently has done some very good in investigation has a code proposal in and I think I think we may have even more opportunity this year so but that's probably at least a week away before I'm ready to submit it excellent that would be great Mark yeah I am I'm thinking of submitting one two on a docker file builder I had a play and it was really fun to do and and then we were discussing it um with the team and and it was it was suggested as maybe a good good g-soft project um so I might put that together too because docker is awesome can I add a question is is Jenkins X participating this time or no no sadly not and it's mostly to do with mentors because it's quite hard to find you know we want to make sure the students are really well supported um and so we we just need we need more than one mentor per project and we need to make sure everyone's prepared to offer enough time to really support the students so we weren't I don't think that Jing is ex will be participating this year we're just you know quite unfortunate but yeah they've been they've been deeply involved in getting Jenkins X3 ready to go general availability and and google summer of code just can't sacrifice that we can't sacrifice that for for they're getting it ready to ship yeah James is it the James Rowling's and James Schrecken have been very very focused on three they're very excited about it it looks and it's an amazing piece of work they are they are impressive at every level yeah are there any okay let me let me ask a question for and I'm not saying you're you're going to be up for proposing this but just out of curiosity are there any other project ideas that you would be interested in seeing for GSoc that aren't on the list yet or not proposed yet so I would I would love to see further refinement of or at least an investigation of the github checks checks experience that went last year went surprisingly well and it may be that it's already done but you know it may be so well it's so so complete my suspicion though is usually projects from google summer of code would just would justify and a supplemental project the next time custom distribution servers another one that slayton's work last year was it was an excellent beginning but to get all the way to production would need more work and and so that's another candidate where you say hey if we want to do custom distributions we need more work and and google summer of code is a great place to do that work yeah yeah the scope like the project for custom distribution service is was huge like for a single GSoc so like we even the team realized we couldn't quite get it complete the huge piece of work completed in an entire you know internet session of GSoc so maybe yeah maybe this time around I can discuss with Kristen maybe we can put it up this year as well it has some technologies that the current you know generation of coders like react it has that's pretty it's pretty cool stuff so yeah it's a good idea nice I like that and the deadlines to apply for GSoc as an organization not for the students but as an organization are the 19th of February so we would need to see it in the next two weeks yeah so could you remind us of the various timeline pieces that's one that okay February 19 we submit we we submit our final proposal as a project to google summer of code that's about the time that the students start there that the students are allowed to submit project ideas then what's the next deadline for the students no so we we submit as an organization with our project ideas and the proposed ideas and then the organizations which are chosen from google as part of the GSoc program ARMA announced on March 9th and at that point students be in discussing with project ideas with the accepted mental organizations however in practice we will continue to have these office hours and we really we welcome your participation and and developing the ideas that you're interested in and answering your questions and becoming more familiar with the project and then after March 9th a student application period is from March 29th until April 13th so at that point students register and submit their applications okay so the the actual window of time that google allows is about two weeks is all two or three weeks where they say submit your applications during this so we're we're already in the prep period and we'll be in the prep period now and we'll continue preparing up until application time okay yes but application time is the final applications from students are April 13th so there is there's some time from a student perspective right so it's good to be engaged now you're definitely like well on schedule it's good and then of course google is going to review them and then the student projects are announced themselves on May 17th and then the actual the actual development starts is it end of May let's no then this is a multi-stage process so then community bonding is from May 17th until June 7th and the coding period is from June 7th to August 16th Cara can you please explain a little bit about community bonding what that actually it is I mean in many ways it's it's what you're doing now you're just at the very early stages of it so you get to know the community the community's norms and more about the project but you do so with both yourself as the student and the organization knowing that you will be moving forward into the coding phase so it's a little bit more directed more engaged you'll be meeting with your mentor and getting ready for the coding phase yeah so wait at least for me the the success pattern was we met twice a week with our student during community bonding and we we expected that they would achieve certain results at every one of those meetings and if they didn't it was sort of a red flag it so so community bonding is much more intense for me than the than these you know here we meet once a week and it's a whole group there it's twice a week and a team of two or three or four mentors focused on you as the student assuring that you're successful in getting ready to start coding at the official beginning of coding yeah yeah and so the coding is from the beginning of June until mid-August but your amount of hours as we were saying earlier your amount of hours that you're expected to do as a student are reduced this year so for student applicants you should know that if you if you still have exams or you have something you need to do in the summer you can discuss this with your mentors and the time is literally built into the program to enable you to say I need to take this week off or I need you know the first week I'm still finishing up my schoolwork whatever that is for you we can work out your schedule the only hard and fast ones from Google's perspective is the halfway the first evaluations are in mid-July and you do need to have made significant progress pretty close to the halfway mark and that's when your first payment I think is released as well if your evaluations go well so you can't you can't say I can't do anything for the first half I will do it all in the second half that that wouldn't work from from Google's perspective basically that's a good explanation thanks plus laden are there any more questions on creating your applications as students just want to make sure that that's that you feel well placed to do that that you have no outstanding questions oh yeah I mean I'm just excited to work hard again I mean I'll just as soon as I have to accept I think it sounds like we're done then I propose we call an end thanks very much Sagar thanks Neelma Rick thank you very much as well looking forward to interaction thank you Mark thank you everyone bye thank you


Hi, everyone, Joe for Jaspy's case breaks.com. Happy Friday coming at you with a quick little randomizer Number block randomizer for NT pick your team number four brand new release for all of these teams right here Everyone knows about the number blocks. There's all the info right there if you're not familiar with it big Thanks to these folks. We're getting into it. There are the numbers right there. Let's roll it. Let's randomize each list 10 times 5 and a 5 hard 10 2 3 3 4 6 7 8 And 10th and final time after 10 we got Riza down to couple Krispies 10 times for the numbers here 2 3 9 and 10th and final time after 10 we've got 6 down to 2 All right, Riza with six Krispies with four Ryan with eight Tyler Brenner with zero So you get any and all redemptions for the following teams down there in the bottom tab where the mouse cursor is Including one of one redemptions and you'll get live one of ones though Krispies with three Patrick It's seven Jose with nine Krispies with five and two Get that sorted right there And in a separate video will be the break itself So there you go jaskies case breaks calm. We'll see you for the break. Bye. Bye


Note that this is the next version of 235 that will be released and it does have the bug that was introduced in 235.3, I believe, fixed there. If you're using 234 or below, this should work as well. But the demo instance, which does have this bug that causes an issue where the tracked entity layer appears to load for a very long time. Like this you can see here. So, let's go ahead and create this tracked entity layer. I'm going to remove this layer. I'm going to go ahead and click add layer, go to tracked entities, select a tracked entity type. In the demo instance we have malaria entity and the program malaria case diagnosis treatment and investigation. I am going to then also select display relationships so we can display tracked entity relationships from index case to cases. I'm going to go ahead and do that you see that there's also a case to focus relationship type, which would be between this program and another program which is malaria focus areas. But I'm going to use the index case to cases relationship type here. The index case doesn't really make a ton of sense necessarily in a malaria context but that this does show that you do have the ability to have relationships between different cases for epidemiology epidemiology investigation. I'm going to leave most of the rest of this the same except that I know that in this, this instance particularly there's no data in the last year. There's no data from 2019. So I will go ahead and move this back to other way. Move this back to April 2019. April 28, 2019. And this may be something that causes some issues for your, your, your own instance, but tracked entity data is at the lowest level so usually it's collected by the facility. And so it's only available at that facility. It's not available in an aggregate setting where you're at the visualizing Sierra Leone because no, there are no tracked entities in this data and at least that are collected with Sierra Leone as their org unit. In order to visualize all of the facilities and all of the data in all of Sierra Leone, I need to select the selected and all below option for arguments, which shows tracked entities in and all below Sierra Leone. So that means that all of the facilities in all of the Sierra Leone will be shown in this output. So I've selected 2019 to 2021 I've selected Sierra Leone and all its children or all the other org units in underneath it. I've selected the relationship type index case to cases, and I've selected malaria entity with the program malaria case diagnosis here. And I'm going to go ahead and add that layer. You can see that there, there is a little bit of data here there's not a lot, but you can see that you have a index case which is has a relationship with several subsequent cases. And you can see in the legend here that our index case is indicated with a red circle. So I'm going to go ahead again to indicate the relationship between that red circle and related cases, which are indicated as a small black dot. And the style tab for this layer you can also update the, the style of those points. So we can make the index case bigger. And I'm going to change the related entity style so right now it's black but I'm going to make that blue. And I'm going to change the point size to be the same so I'm going to make it 12 as well. And I'm going to change the line color to be red. So it's going to be a very colorful map that we're making here. So our index cases in green are related cases in blue or purple, and the line of the relationship between them in red. And you can take a picture of that if you wanted to. So this is just demonstration of the tracked entity layer. There is a bug in 235 latest patch, but the next patch that will be released in a few weeks I believe will be will have a fix for that bug. So it's just worth noting that this is a experimental feature for relationships, and you may not have the data available for it in your instances, but you can do that with the demo data on on plays on play when the this next patch comes up. Okay, I saw that there was a race and a couple questions I think it's time for a Q&A, and Bjorn did you want us to take over and start with the Q&A or did you did someone have a question that they wanted to raise down. I will just briefly before starting Q&A also mentioned a little bit about the earth engine layers. Take over. I see Tuzo has his hand raised. Tuzo if you can ask your question on the on the questions channel and slack. That would be good otherwise we'll we'll probably open it up for anyone to ask questions after Bjorn talks about the Google Earth engine layer in maybe 10 minutes or so. Okay. So Google Earth engine, which has not yet been covered. It has been around for a few releases so probably you also have access to these layers on your instance. I'll go back to 235 on the testing instance, workshop instance, and these layers are shown on this road. So they are not named Google Earth engine. They are just named by the topic it's more user friendly, but this layer are hosted by Google but provided by different organizations for free. It's greatly improved in 236, but you can still use them in earlier versions. So I've added some exercises that you can do on yourself, but I will just show you how you can do it. So one test is to see if Google Earth engine is enabled on the instance. And then I recommended you to try to add the elevation layer and just click add layer. If the layer loads, so you actually see some some elevation data coming here. It is enabled for instance, if not, you should talk to your system administrator. And ask them to the only thing is the set of process is to get some access permission from Google that you need to add to your instance. And this will be much, much more useful for when you upgrade to 236 when there are the capabilities are greatly improved. But what you can already do here and also part of the exercise is to check where you live. So to sort of zoom in, you can change to positive to this layer so you can also see the map below. And you can right click anywhere on this map and click elevation. And then you will see the elevation at that particular location. So here in Burundi, the place where I click is 16,000 1,600 meters above sea level. So you can try this yourself. Now I will move to the 236 that was released just two days ago. So it's available on our demo instance for 236. And what you can do here is that you can aggregate the data provided by Google Earth Engine to your own organization units and this is something we will look into in detail tomorrow. And then we will do it with a desktop program called QGIS. And the good thing we will do it there is that you don't need to upgrade to be able to do this exercise or to be able to use this data. So because I guess quite a few of you, you need to wait until you can upgrade instance 236. But then tomorrow we will show you another way to do the same. So for population, if you need to know the population within your org units, you could just add a population layer. You can select here how you want to aggregate it. Now I'm interested in the sum and then add layer. This will take a little bit more time to load because we now need to do this computation on the Google Earth Engine service and they can be quite intensive. But it will load. And then when you now click on one of your org units, you will see the estimated population within that org unit. And this is great if you have limited census data for your country. And of course, this data might not be is an estimate not not be correct, but tomorrow we will have this data set presented and and we will tell you the benefits and the shortcomings of these data sets here as well. You can drill down. And then we will load the next level the chief terms with the population inside. We can also open this data table here and see we can, for example, sort by population, we see that this district here has the highest population. And another improvement you can see here in this last latest release is that if you hover the table, we will highlight the org unit in the map so it's easy to see where it belongs. So we also got a special request for vaccination, COVID vaccination planning, and that is that often you would also like to know the age groups to within the different districts. So we also added a new layer with population age groups. You can select the age groups you would like to to use. So for example, if you would like to see the population about 80 years, you can select women about 80 and we could also select men. And then we use the same levels and add layer. So then this will only show the population about 80 years in each district. So we can see here that it's an estimated in the Mojamba district 680 to two people, about 80 years. And this can also be done for health facilities. So if I go back here, select organization unit, and instead of this street I select facilities and then in one, I will select Dharma in one of the chieftains. And then I can set a buffer. So I will still use this five kilometers buffer. What then will happen is that they will make these buffers and if you click them, you will see that in this hospital, there will be an estimated only 13 in this age group. Of course, these are estimates again, but we will look more into this tomorrow and you can see and check for your own country how accurate you think these numbers are. So we have an exercise for this. So the first one was the one I just mentioned with the elevation. So you can try yourself because also with it on the 236 you can check the highest elevation within your arguments. The last one I can show you which is a little bit different. That is the land cover data sets. So the question is what is the dominant land cover land use in one district. So if I go back to the maps app and I go new map, I will use this land cover. And then I will select an organization unit and select Western area and add layer. So this will also aggregate the data shown here. This is showing different land use so urban is red. So this is urban areas. So if I click on this, I will see that the most dominant land use or land cover in Western area is Savannah by almost 40%. So this is also now something you can do from 236 with your own country and organization units as these data sets are global. So that was a short demo. You can try this on your own afterwards. We will now look briefly at the questions. So I think I'll take this one over here. I saw that it was with some questions about the legends from Leslie. I had one question if you could create manual class divisions in thematic layers. So because we had have these automatic ones that are equal counts or equal intervals, and there are also other possibilities. There's something called natural breaks, for example, which sort of tries to read your data and, and make a best guess of, of how you should divide the classes. We also need some feedback for you if you would like to have more options than we have. If you want to set manual class divisions, you can't do that in the Maps app, but you can do it by creating a predefined legend. So I can just briefly show you where that is done. So if I go to the maintenance app, and then I can search for a legend. So here you have under other you have a legend entry where you can modify and create new legends. So I will just go and have a list view of these are all the legends on the demo instance that we have. And then so we, for example, see the weight in kilo, we can edit it. And here you can see that you can type in the start and end values as you like and basically create your own classes and you can also click on this and pick your own color. So here you have all flexibility of creating custom legends. And then if you are editing, and if I go back or editing an indicator. So I go back here. And if I'm editing an indicator, you will see that there is also a legend here so you can associate the legends that you would like to associate with with this indicator. I recommend only selecting one. And then this one will be selected by default in the map set to make it easier for your users. You see, so there was also a question if what happens if you drill down. Will the classes be the same. And I can show you that if I go back to the maps up. And then I'm adding a new layer. I use automatic color legend equal intervals for classes. Sorry, I went a little bit faster. And then if I then drill down you can see the classes here 53 starting from 53.9 146. And then if I drill down. It will be different. So I do see the need of the possibility of this legend to be the same. And you can achieve this by creating a predefined legends. The reason why we don't do this for automatic legends is that we don't know what the user will do. So, and we don't have all the data available when we create the legends. So that's why we need to adapt this when the user is is drilling up and down. So the way to fix this or find a way around it is to use a predefined legend. If you want them to stay the same. And then if you could change the colors and transparency of the buffers. I don't think you can. Our buffers support for different layers. But if we we use this for the facilities layer. So select facility type. Facility. And then turn on the buffer. So this will always have these blueish color. You can change the opacity by doing this, it will also change the opacity of the icon. If you would like to be able to change the color and maybe the opacity of only the buffer, please send us a feature request. And that is something we can can look into. If you have buffers for events. The event buffer will have the same color just brighter. With the same color as the event itself. Can you take over a bit Austin. Sure, I don't think there were a ton more questions but I saw two that came in that we could look at here. One is the most recent one what's the difference between the two options for period and tracked entity layer. And so beyond if I'm going to take over your screen. And I have this here. The question is about these two options in the period dialogue. When you're creating a tracked entity layer. So there are a number of different dates that we could be talking about when we're talking about events, particularly tracked entity events. So attract entity has an enrollment in a particular program. For instance, you might enroll a mother in the anti natal care program. You might enroll a person with a particular disease in the program for that disease. And the date when that person is added to that program or when they first visit a health facility in most cases is when they are enrolled in that program, which is this second option here. So we want to show, and all people that were enrolled in this in this case we're looking at malaria case diagnosis. So malaria entity, if we're showing the moment that that person was added to the malaria program, then we show the select the second option, and we can choose the dates that we care about. If we want to instead see the time the when that person or the tracked entity was last updated within this program, we can select this first option. And in that case, if someone is enrolled, for instance, in a malaria program, and then they are given anti malarial drugs at a later date, they might be enrolled on April the first. And then they're given a follow up visit on April the 15th, maybe the last updated to be the last time data was entered for that tracked entity or that person in that program, and that's when you would select this first option. So hopefully that makes that a little bit more clear. Any other questions here. There was another question which was quite good about using locations in data sets. Which is aggregate data that I believe is not currently supported in the maps application to visualize the data element from an aggregate program on the map. Bjorn, correct me if I'm wrong on that. I think that's correct. I think that's correct too. But if that is something that is useful and would be another good feature request that sounds like an interesting use case. You can of course collect that information in a tracker program, and then visualize it in that way, or or as anonymous events as well. So if you're collecting those in a data set in the data entry application, I believe there is not currently a way to visualize that on the map. There are some technical challenges in terms of how you determine what the geography associated with different values in that data element are. And that's not currently supported in DHS to I see there is one question about printing out a map. I'm not sure if I'm answering correctly, but I've not been covering that so I'll show you that in the maps up you can download we don't have a print option. But you can download the map. And then you have a few options here you can decide. It will be depending on the shape of your country where the which corner the legends should be. The name will only be shown if you have saved the map because then you actually add a name to it as well. And then you can click the download button. And if you click on this that will be just an image that you can print or use in your presentations or or whatever. This works so basically what you see on the screen is what you get in the print. So if you want a different ratio or a different view, you can just adapt what you see here. And whenever what you see when you click download is what you get downloaded. There was another question here in was asked in exercise for but it relates to something that was asked earlier as well. And that's about creating the the org unit geometries, which we did not cover today and maybe a little bit much to cover here in terms of what how you create that information. So that is something that would you would use the import export application to import a shape file or a geo JSON file for your boundaries of different levels different organization unit levels for your country so you might have boundaries for the operational level for the district level for the maybe the county level, and then also the points for individual facilities in your country, and you can import those into the DHS to system, not through the maps application that might be a little bit outside of scope for that today. So yeah, I agree and this is also so important that you have this in your on your instance because you can't use the maps without it or just very little of it. So I think what I would suggest here is you can contact us directly, we might also send out an email to this list and ask who are struggling with this part. And then I think we could have a separate workshop just for this group. Because it's not useful to have these all together because this is a one time task is only the system administrators who do it. But please give us some feedback if you would like us to have a separate workshop just on on adding coordinates to your audience. And we will help out. There was also a good response to that question so OSM which is the data source for the base maps is called it's an acronym for open street map. And you can anyone can suggest edits to that open street map data. It's not part of DHS to at all but you can contribute to open street map, I believe it's open street map dot org, that you can add or edit data if it is incorrect in that base map, and eventually it will show up also in the data that's coming into DHS2 system. But I would recommend if you're looking at targeting interventions or using things like county boundaries or facility locations in your DHS to in DHS to to target your health innovations or health interventions. And that you import that data directly to DHS to instead so that you can use it directly because otherwise it will just be kind of an image in the background of your system. I see that we get the suggestion to be able to support manual legends in the maps up and it's a good idea. So I will create a feature request for that and then we'll see you can you can load it up if it should be prioritized but it's something we can definitely add. I think it's also useful often in other GIS application you can see histogram which means you can see like a chart of of your distribution of your values and then how the classes will will affect that and I think that would also be a nice feature to have. And then we yes there has been quite a lot of things happening under the hood. In the database so there is a question now that the formats has changed. So the big change is that we have introduced something called post GIS, which is quite a long time ago. And then we have also switched so we are no longer storing coordinates in text fields that we did before, but in in the proper geometry fields, which have better control that they are correct that the latitude longitude is not out of about 180 and so on. So, and I think from the database directly you can export GML and CSV file but then you need database access, but you can download all your org units in do Jason format which is more used in GML, and that we will do tomorrow. That will be a big part of the of the program tomorrow. So, the presentation is shared in PDF. Is that okay. If not, I can also share it as a PowerPoint. I will do it here directly in the channel. Also, remember that we have a Q&A tomorrow at the same time so if you have more questions we can we also do tomorrow I know. And I'm sorry for that, but a few of you are hungry I saw there was a demand for for a lunch break. So we have this, they like this the three hours that this compulsory and then this part is is optional tomorrow we will do the same so please make sure you have a little bit food. Before we start tomorrow because we will run through the same program tomorrow. So lunch needs to be after we are done. So please keep some snack or something to keep you keep you going. I have a question about having to show data labels in the maps up so so far. We only show the names, and then you need to hover it to see the show the value so I think we could. We should improve that so you can also in, you can display the value directly on the map so it's not yet possible but it's I will I'm wondering if we should stop now and then if you have more questions please keep them for for tomorrow. Or do you have anything to add Austin. No, I haven't seen any major questions come up. I'm just want one thing to say about. I mentioned a couple times that people can create feature requests, they want to add something to do that you go to the DHS to Jira instance. So in order to do that you can go to DHS to dot org. There should be a link there to Jira, but you can also go directly to Jira jir a dot DHS to dot org maybe be on this if you have the shared map maybe you can share that. I can also share my screen. I'll stop sharing. So, as you can see here there is Jira dot DHS to dot org, you can then create an account or log in if you already have one. And you can create a new issue that you can bring up to us so if you create a new issue, you can select the, sorry, this will be the DHS to project is the one that is always here. Most people will only see this one I think you will then see the feature. You can have a description. The feature, you can select the maps application here, and then describe exactly in detail what what you want it and why. And also, if, once you've created this issue. You can also go to this the issue that is created here. And then you can also vote. So if you there is an issue that someone else has created you can search for it in using the search field. If there's an issue that someone else has created, or you know that other people would like the issue that you have created or the feature, you can vote for this as well. If you have created this this issue, I can't vote for it. But if more people vote, then we see it, and we know that it is something that a lot of people want. So that's something else that you can do. When you have created an issue or someone else has created an issue with a feature in Jira. Just wanted to point that out. I've shared now the presentation also in the questions thread. It is shared other places as well. And also remember that this is recorded and will be available on the YouTube channel. So if you missed some parts of the workshop today, you should be able to watch it later. So I don't suggest that we end here and meet again tomorrow. It's 10 o'clock our time so so thanks a lot for joining. You might still ask questions the slack slack will be open. So you can still ask questions here and we will try to reply or do it tomorrow. So, so I hope it was useful today and thank you for joining and then see you again. See you again tomorrow. Yep. Thank you all very much.