 Thank you So Tanya send her apologies. She was double-bucketed so she couldn't come So my name is Hanari Silver most of the time online. I'm use RGA I ACS as my username So if you looking to find me online, that's my username And Tanya that's her contact if you want to find her online. She's pretty active it on Twitter so how this triple proposal Kind of a start was last year on this same city in Edinburgh So there is a project from Arizona 2020. That's a big Grand project from the European Union and one project on the death umbrella is the open doing kit. So The idea for this project is to work on infrastructure for researchers and one of the goals is to strength Virtually research and environment. So for example Jupyter's notebooks and all the Jupyter ecosystems and Last year as I was saying we had a meeting that was the computational Mathematicals with Jupyter and at the International Center for Mathematicals science. So the institutes Suffer sustainability Institute where I work. We have some fellows and one of the fellows is Alexander Konal Love and he's one of the co eyes Co-investigators for the open doing kit project. So he kindly Invite me to join the teams For this one week half talks half Hockey day Which was kind of quite nice So during all the conversation that people was having we sat in talking about How to develop the lessons because most of people they was interested in that so At some point was like we want to have lessons in a website that looks nice Not exactly as nice as this one because this is an old one But I got involved in software carpentry That's a nonprofit organization that teaches people in academia how to code in Python And version control that's that software and this is a screenshot for how that lessons was looking like in 2014 What you can see on the screen is that they have a title for this lesson So it's making choices and they have at a little below a series of objectives for that lesson. So for example Readers supposed to know how to create a single image made out of color blocks at the end of that lesson So it's a little not too long lesson, but you can see some codes at the first Section so image grids you can see some Python codes in some cells so The idea that was discussing on the workshop is like will be really nice to end up with some lessons that has This kind of look look a little more professional and with some colors that make readers find things easily But that you could write the lesson in Jupiter's notebook Because if there's some code and some output you don't want to copy and paste every time that you change especially if you have 100 cells on your lesson So we was looking on Jupiter. So this is the same lesson That doesn't have the title, but you can see that the objectives are the same and the same Python codes So this is Jupiter at that time 2014 We didn't use the word Jupiter was Python notebooks at that time. So it's the same Notebook that was generated in that previous image, but just on Jupiter and was like so this is how You have on Jupiter and this is how you writing which most people on academia that use that too is already familiar with but This is when you're trying to export this you can choose someone that's going to read the lesson can say oh I can use any view. That's a nice tool I just need to send that link and this is how you're going to see on and reveal which is Okay, but as you see you still have like the numbers of the cells here Which as you see start on six on this example and why they really can think why start on six and not one if they start of the lesson And there is no color so it can be a little hard for people to follow in the lesson because doesn't make very Highlighting things and it was keeping these discussions like okay, so what you can do and If you ever use Jupiter Notebook you might have come across with the option to download your notebook in Different formats so you can download as the notebook itself But you can also download as a python script. That was something that I mentioned yesterday on the beginner's day for someone that That person was asking like if I went to get just a script from the notebook So you can just go and download you can download as a HTML file or a markdown or Restructure stacks or latex or get a PDF via latex. So there's a couple of options and Was like, okay, so let's see how and up if you decide to download as a HTML because you can upload the HTML to many websites and they just render and Looks exactly as any review because that's basically what any review was doing and it's like, okay We still have this kind of same problems. You want to remove some things and add some things So keep on that Discussion are not thing that people kind of phrase was like sometimes you have one lesson But you want to split the lesson in sub-lessons So maybe once you split in like day one and day two because it's a two-day's workshop or morning or afternoon And you might have extra contents not just two pen notebooks. You might have Python script because it explained for people how they going to use scripts or you might have some file formats That's when to download because you have some chemistry Files that people need to read and so on and you want to make easy for people to download all this file So you want to organize all the lesson in some format So this is screenshot was something that Tanya was end up working during that week one one year and half ago here in Edinburgh and It's kind of a good nice prototype. It's you can actually use But still was discussing how we can use better Jupyter notebooks And the main thing that was like why do you want to use Jupyter notebooks? It's because the environment is familiar to authors and It's part at this moment mode 40 program language So it's not just Python if someone is writing a lesson in are they can use the same infrastructure if someone's writing a lesson in see the same thing they just can build on top of everyone what everyone else already contributed and And What pieces of the pipeline? We kind of was beauty on top. So there's a big convert Can you raise your hand if you know I read what the NB convert X is so let's half of the room So and we convert is what's behind all that options that I was showing before on Jupyter notebook that you can download the notebook in different formats and The other things any start site generator like Sphinx Hugo or Jacko so that was the two pieces of work that you need to build on top and Tonya was again working on other ideas on mixing Jupyter notebooks and Jacko. So that's one of the git repositories and First foreworsening a little bit. This is the Travis Todd is sorry on this time machine from dr. Who so you are in England. So I want to put this image I Was I end up in Eopitone last year. So that's the photo of some discussions what not on the discussion But some of the people was close by so was Thomas Thomas is in the back Here and I was in one of the helping desk and someone show up saying so Can you help me with something on Jupyter notebooks and it's like yes so what do you need and That attend was like so I have to Create some reports, but every time I need to put some logo on my reports because my boss need those parts to be archiving something and All the analysis for the reports are on Jupyter notebooks but at the end I just want to like Include the logo and I want to save time because I don't want to keep doing that every time that and it was like because at the moment I Generates the later code and then I need to edit the later code So I don't want to keep editing the files every time because as you might know As a software developer if you need to keep doing things every time again, it's a whole problem so that's why you want to automate and At that time on the table. I was like, yeah, you could like Create a latex class and try to avoid to do much of the editing and Thomas was like, oh, no But you can have customs Templates for NB convert and I was like, oh, yeah, that's true So for so that's was like, it's funny because I never I was using that option a long time ago, but I kind of forgot what was so this is Demo time just to give you an idea of how and we convert and the custom templates work So So going to do this on the shell Things do it's okay for people on the audience to read so there's a few files here The zero four Minus cone dot I pie NB. It's just a Jupiter notebook. So if I do less on that file It's just JSON format if you ever open that file without it's just a plain text so there's nothing extra space from that one and There was a template here this food template that I basically just download from the source code From the note and be convert. So it's exactly same file and They use a ginger to so if you ever Added to any of the gender files to template. So you're going to be familiar with this Instructions extend so it's just saying that's extended one previous template and those blockers and so on and not going To dip on this one, but it can create Can use that template to generate the HTML file from the I Python notebook so I can type to NB convert and I can pass the file I can use template and I can pass a file so Foo tpl and I can pass the fire name and It's going to generate saying that it convert. So I just going to switch the screen to open on the browser So it's this one yeah So that's the output I Just refresh so you can see and it's pretty similar of One of the screens that I showed you before on the Jupiter notebook But if I want to say, oh, I want you to add some extra information I can build on top of that template So I have a person a here and they're just going to show you a diff So you can see what I make the change so food and P and Don't pay TNP. So I just add this line So it's just saying you're Python 2018. So it's just before all the notebook information And I can use Jupiter again and be convert Template and now I going to change the template to custom a dot tpl and I want Output as 0 for Custom a and the notebook itself so it's Sorry, there's a type of here and it's using now the template my custom template and Converting the notebook so was writing and they're going to open on the browser So This is the new one just refreshing so be sure that's going there So there is a your Python 2018 here on the top So in as a any minimal example, I can do something I can customize at my template And then I want to do something more Interesting just like not just a tax. I can maybe add our image. So that's the second one. So the difference between the Food and the custom be So I just add an image here So you can see here. So just our HTML tag with the image and you can Convert using the same command just changing the template here This one and I'm going to switch to the other one So then I have the logo of the Europe Python 2018 here So the idea is like if I can do this with like just changing one line of code I might be able to add any other kind of information that my employee might want to have on the reports the Load that address any email or anything So that's what Thomas had suggested to her to use just feature from any big convert and it was like this looks very good, but It's kind of Uses are just accessing the Jupyter notebook and see some at the top of the iceberg and That's just 10% The 19% of everything is under the water and no one's kind of seen that was the case of that attending and the same attending that was like yesterday on the on beginners day. It's like maybe you can See if you can prove that and they make that my more visible in terms of templates and so on And that's what I end up talking with Thomas on last year It's like what I can do and it was like maybe you can send a proposal And I was like, okay, I know that like Python has proposals They have their peps and I was already kind of familiar. I read a few of them special pep eight. That's about coding formats It's like, okay Thomas told me that there is a Jupyter enlistment proposal. So I started looking online and it's like, okay There's a kid repository. That's from the Jupyter organization and it's called enlistment proposals and it's like Reading the read me and it's like, yeah, that's the procedure if you want to just something you can copy one of your files Create one directory open a pull request So That's what I decide to do. I decide to open a pull request in like, can you add templates as metadata? And this is an enlistment proposal for this pull request and you can see that Thomas had a comment just left to me so my idea was Because I want to reuse the same template over and over again every time that they're going to export is It's supposed to be saved somewhere. So that's why you need to be something On the notebook format, not just the note got Jupyter interface. So that's why I end up sending the proposal There was a few comments below and I include like I image a screenshot a look This is how I envision the idea. You can go to the Jupyter Interface and you can say this is I want to set a template That's my template go some template that I want to use and later you can just go and download that at the end We had some discussions on the issue, but I end up being too busy to just portion get like a kind of prototype and Explore more the ideas and if you propose something and you're really not able to take Forward with lots of time. It's kind of keep open People was very welcome from everyone from the Jupyter community sending feedbacks and so on so it's kind of my fault You're not to have too much time But that it was what I want to share with you today I want to thank special Thomas for all their contributions and push me to share this and If you have questions, I open to having questions now If you want to make questions later on Twitter or anything, that's my AD and Tanya's ID. Thank you very much to listen Thanks. Are there any questions? No What kind of You run out of time to sort of fully implement it how how big of a job do you think it is? Implement one of these proposals this Main challenge was just like learn how the insides of like how any big convert works and The order that it breeds files Because the challenge is like if I start it Any not The name of the template that I want to use it's inside the notebook But the any big convert he's starting doing some things before Open the notebook. So I kind of was like I'm Changing this part. It's like not super trivial You kind of need to open a notebook and at that moment you kind of pass that and later you can say Okay, I have that piece of information and now I need to go back and change the default one Okay, so that was the most like time consuming that they didn't have time to devote too much Is it already in Python the the end be called. Yeah, and be converters in Python. It's fully Python The templates they have a service of templates and those templates are in danger too. Okay. Yeah, that's your Python And there's the Jupyter notebook is that fully Python or other other bits of no Jupyter notebook There's lots of JavaScript using the face. Yeah makes sense. Yeah Anyone any questions before we wrap up? Okay, well, thank you. Thank you very again. Thank you for listening. Enjoy