 So, welcome to Docs Office Hours. It's the 7th of December. Let's capture our agenda and then we'll discuss from there what we need to do. So, action items, jinkus.io poll request, we should probably talk about that. Is that anything further we need to discuss about the changes to use the official image? I saw that your poll was accepted to update to 2.263.1. So, that's good work. Anything else on that topic? Well, just I'm thinking about do we need to make such synchronization between installation of Docker and downloads automatic, trying to write some kind of script which will grab the latest LTS version from this page and include it in installation or something like similar to this. Yeah, so let's put it on the agenda. That's a very good one because I can give some guidance there on some things that already exist that we might be able to leverage to make that happen. Very good. Yeah. Okay. Mark, can I ask a dumb question, Vlad? Close your ears. I ask questions like this and Mark filters them. But when you get into pipelines, the agent statement takes Docker and Dockerfile options. Is there anything there with keeping those up to current or does it not matter? Is it so generic that we just make sure that the pipeline docs don't ever specify our version? I think in the case of Dockerfile, what it's saying, so let's see agent, pipeline, agent, Docker and updates, Docker, Dockerfile and more. Let's just put that on the agenda, Meg, and we'll talk through it because I think it's a good question and it's worth highlighting something that the platform SIG has been discussing and discussing and how that matters for docs. Okay, because I was just starting to look at that and we've sort of slimmed over, we just always use an agent, a label agent and that and sort of slim by quickly all the other stuff and I think that's a problem. Yeah, so let's discuss it and that's a really good one. Okay. You see, Vlad, how nice he is to me when I come up with these stupid things and he makes me feel good anyhow. So I noticed that he is always nice. Isn't he amazing? When I grow up, I want to be just like him, but it's a long people, people we are being recorded. We don't want to be lying on recorded devices. That's really bad. We are not. Okay. All right, so do we want a topic for what's next? I suspect we could probably benefit from it. Yes, okay, there's one it's been a long time since I've, I've last reviewed feedback from users so let's, how about we do that let's take. Meg, did you want to report anything further on pipeline docs improvements? No, I'm making I'm not ready to report but I am seeing a couple things so. All right, so then I'm just going to put what's next and copy a few things in, whoops, like end of the year and end of the year and feedback from users. In particular, because we've got a docs online meetup on Wednesday. Okay, good. So those are the topics that are on my mind any other topics we should add just in case if we'll have some time. I'm not sure if you want to discuss one of the latest issue on Jenkins.io, which was opened and a leg made a comment on this. It's regarding providing some link from installation page to Jenkins LTS, what LTS is, and maybe they should be linked from glossary. There is like discussion on this. In the issue. So it's about the content of the page. Yeah, I like that. That's a good one. That's a very good one. Let's let me go grab that issue because I had seen that and seeing his comments and was interested in them. So how about Jenkins, oh, it's GitHub. And then the issue was raised by Josh Soroff. Here we go. Okay, so I'll just link to that. It was 3991. Anything else Vlad? No. Okay. See, and those two action items are actually done and I submitted the 2.270 change load just minutes ago so we're set there. Okay, that may be a low bar, but but we've improved we were previously 32 or 33 and not keeping up. So still more work to do. Jonathan's, for instance, pull requests haven't yet completed processing and Z not work on Google season of docs as a significant pull request that needs needs some further changes. Keep working it of Vlad I think this is one where we had originally said it, we might want to consider granting you merge permission. Are you feeling like you're ready to have merge permission or would you like to give it another month or two before we grant you merge provision on Jenkins.io. I'm not sure what kind of corpse because it was involved for me. So I, well, I'm okay. Well, like waiting for one or two months. Yeah, and I think that for me that the question is, what's the risk of you merging something prematurely. And that's not it's not that high of a risk. And having an extra reviewer might be a real, a real benefit, but giving you another one or two months might be good as well to assure that everybody's confident that you're continuing to contribute that we can entrust you with permission to merge to the to the dock site like that 21 at okay with you glad. Yeah. Alright, so then Docker changes to use the official image. And I'm going to go grab a link to your pull request that was just merged today. So that we have the example. Go ahead and describe what what happened Vlad that way makes aware of it. Yeah, so it was a kind of minor thing. We have download page in our documentation. If you go to Jenkins.io, there is download page available. And it mentions LTS releases and weekly releases on download page. Yes. And so on the left gen download Jenkins LTS it mentions specific version. In this case it was to 263 one. And we have now installation. For instance for Docker on the same side. It mentions specific version later in installing like in Docker file. It mentions this version to 261.1. Right now it is already merged. So it is, I guess, right now it is in sync. But before it was mentioning the version which was not in sync with download and just the proposal was to sync them. And right now it is done manual and they're not sure if it makes sense or if it would be possible to do this in automatic way. So this is this issue is about which Mark agreed to discuss. We can see that there are actually two, two version numbers in this page, right? There's the one for Jenkins and then there's the one for the Blue Ocean plug-in release. Jenkins, this one will roll every month. This one will change every month. This one changes sporadically. It may be once a week. It may be once every six months or longer. So then, and I think it's a very good question because the downloads page does perform the update automatically. And so since the downloads page dates automatically, we should be able to update the documentation page, the installing page automatically as well. However, should is a famous last words problem. Downloads page. Downloads page. Page is written in a Ruby-based templating markup language called Hamel. H-A-M-L. A Ruby-based HTML markup. Or it's at page generation time, there is a program clearly running and the thing uses that programming context to go out and query the update center and ask what's the most recent LTS version. So it actually programmatically goes out and asks that question. The installing Jenkins page is ASCII doc. And can only do simple variable substitution. There isn't much. There isn't much programming available to do inside an ADOC file. We could, I guess, write our own extension. Let's see, we could. We could write an ADOC extension. We've got one of those already. Set a variable in ADOC somewhere. And read it into the installing Jenkins page. That might be another concept. I'm not sure if ADOC can use values and environment variables, but those are the kinds of options we have. Oh, we could, there's another one. We could rewrite the page and rewrite the page in Hamel. Then it becomes challenging to maintain because it would be the one page written in Hamel when all the rest are ASCII doc. So Vlad, if you're, if this is a, if you're interested in the doc generation system, then this is a great project. We could also consider offering this as a, maybe it may not be big enough for a Google summer of code project, because it's probably, I would guess not more than a week or two of work. Maybe you would like Google summer of code to be eight or 10 weeks of work. Crazy idea. I need to look at this more to see if I really want to argue for this. But it seems to me tough that we've got two separate pages that are telling people how to do the same thing that maybe the documentation at the download should say go to this page and follow the instructions to download. Completely out of it. For me, the cut the two contexts are so different that I think they would have to remain remain separate but let's let's try your idea so let's let's talk through it so this is the download page. And what its goal is to help people find the package that's right for their environment. A simple war file, a Docker image, one of three or four or five different operating system images. So this one for me is is intentionally broad, and it's covering both LTS and weekly. Oh and the other one we're looking at is just a baby steps right. Is is micro precise detailed steps and intentionally detailed. You need to do this in order to specifically use Docker to run, in this case blue ocean. It's going to get you Docker and Jenkins and blue ocean all installed. It's not really a general purpose installation it's a specific right right this is very specific, whereas this one is is maximally general right. This is the one that adults should use once they know what they're doing the other one is for getting started. Yeah, that's another way to say it and yeah that's this this is the this is the. You can always make this go. This one is is a this will get you a much much further. And it really is amazing how much further this gets you thanks to Vlad's brilliant work with this particular step right here right and this thing. So these these steps here have just worked wonders for the simplicity of this of this documentation. Thank you again, Vlad. I, well, I personally I can describe how I was doing before before providing this PR, I was mainly looking for specific to. One different releases, and I wanted to find release which contains LTS inside it, besides the version number, and also we use slim edition before due to the like lower size of the image. So, I was able to find it. I'm not sure if we'll be able to find it in future releases and how automatic others like things created on the Docker Hub because those are located on the side which is not controlled by Jenkins. And also, I manually looked at the plugins dot Jenkins.io and found that the latest bluish release is exactly one. 233 so it hadn't changed that is why I included it here. So, it may involve like several, well, explorations, I guess, before automating this, but I'm not sure if we want to do this in automatic way right now, or just wait and see how we want to do this. I think that in case he will do this just for Docker in Hamilton installation, and the rest will be in a dog. It will be kind of inconsistency for the entire installation page. I just wanted to ask community would like to do this, like create this inconsistency so it will force all other sections to either switch to format or somehow address this question so this may be another issue. I think you're right because this, this is not for, I'm in charge of this facility where I'm going to have 1000 Jenkins instances and I need to know how to install this is how I can get, I'm new to Jenkins and I want something I can experiment with. And this gets me through right. Right, right that's. So if they end up getting a back revved download I'm not sure I even care that much. Right. Yeah, the, the risk is quite low if this one is out of date. The risk is is very low it's it's inconvenient it's a little awkward for us. And this one is maintained update automatically. So, so the, the high risk when is automatically updated this one. Certainly it's not a it's not a huge risk. Right. The risk does not have very serious consequences I think. Right. Correct. Because, hey, the previous version would still work. Right. The version that was here before Vlad's most recent pull request was a functional usable working version it just happened to be one LPS out of date. Right. So, I agree. No, no, go ahead, Vlad. Just, I agree with Mac that well in case if you don't have the same thing, it is very low risk, which will probably not affect a lot of complaints. I think just my, yeah, my views. Okay, good. So, so it's fine that we do this interactively will we know we'll see we'll have to make this that change in mid January, when the 2.236 263.2 release comes out mid February and mid March so once a month we're going to see it. I have one other alternative that came to mind. I think it might be even worse than any of the well, let me put it up above here. We could write a test that complains, and the page is wrong, and include the test in page generation. Thinking about it, that's not a lot different, that's still code that's not a lot different than writing an ASCII extension, or setting a variable I mean in either case, all this one does is tell us we have a problem whereas these actually fix the problem, they automatically resolve it. So, I'm not sure that's. Yeah, actually I'm going to delete it because it just having thought through it, it doesn't make sense to just test for it. If we can test for it and we have enough code to test for it, we can, we can figure out how to write the rest of the code to replace it to write the correct value. The, the one concern I have is, okay, so there's three of us sitting here who now understand the situation. Let's say there's two of you because I'm kind I partially understand it. What happens if we all go on to other fields. Is this documented any of this, you know, the people who come behind us how are they going to understand with this just this is right now it's manual, you could do something else we didn't think it was worth it. I guess for that sort of stuff or basically if this group ever goes on to other fields is everything host. We certainly could document it somewhere but for me, the reality is, even if we don't document it, it will sit there. It'll sit there, it's not the end of it will continue working. And I don't know where we would put that documentation that a new person would be more likely to detect it than they would be to detect it right here in the in line. Right. If, if anything and I'm not this may be a bad idea. We could put a read me file in the source directory of this file that explains it so if somebody finds it and they say with these people total idiots that they left this, you know or something to say this is a manual thing and we considered these other ways of doing it and decided it wasn't worth it or something. I don't know. Well, and certainly, even one step further there is the ability to put comments in ASCII doc. Oh, yeah, that might even be right and we could embed a comment in this ASCII doc page saying this is currently maintained by humans who update the version when a new release arrives. Yeah. Yeah. Because that's at least an explicit statement. Yes, this is not automatic. Right. And glad to remember quickly it's two places. Right. Right now it is in two places both installation and tutorials. I guess it is tutorials. Yeah, it is. Yeah, but that I'm confident of it appears in here. Let's just do this. We'll put a tutorials because it's right here, for example. There it is. This is unfortunately the best link I have is that. Yeah. Yeah, so that one's only one sample it goes into three or four of them right. Okay, so for now, for now the decision is continue interactive edits edits until we have time to automate. Time and will automate. And just just minor issues since you touched mark the possibility of testing. Should we test when we'll update the tutor or the tutorials or installation documentation with new version latest version of and we will test it automatically or like many old as before it would be enough. I don't need to provide some automatic testing. I'm not sure if we have this done before. We don't but that certainly is a there's a famous project the Python project. The Python doc style. automated tests might be interesting. What they do is they have in their source code there are times when the developers will write a comment. They write the comment in a very specific way and the comment can then be extracted and converted into an executable automated test. So they actually make executable documentation. And, and we could consider something like that in this case, this would be the only occurrence and I'm not yet personally persuaded that the Python experiment and that actually has worked successfully. I know they do it. I just don't know if their developers actually consider it valuable. And I just sorted for bringing this item I thought maybe this like it has some more simpler solution but yeah. You're right. Too complex right now to address. Good. Very good question very very good. Anything else on Docker changes to use the official image. Not from me. I'll go ahead and make what. No, I just did nice work. Excellent. So make you asked about pipeline agent updates. So, so tell some of the story here. So the, the platform said, as realized, we have more Docker images and people to support me. For example, we have devian 10, nine. 10 has sent those seven. Alpine 3.12. And that's just for Jenkins for make your question wasn't about Jenkins for it was about. What about the agents. So then we have the inbound agent, and they have, I believe it's devian nine, devian 10. And I believe they also have Alpine 3.12. Then we have the SSH agents, which might call the outbound agents or yeah. And there I believe it's also devian nine and then 10, and Alpine 3.12. And I think we've got at least one other variant, other agent variants like WebSocket, etc. And it works. Yeah, how do you know that. I mean, if they're for somebody else, how would they find out if you just sit, you know, what are the variants. That's a good question. It's not documented someplace. It's just some. No, no, it actually is documented. And what I've described is a flawed and imperfect description because we should go to the authoritative documentation. Like this one right here Jenkins slash Jenkins. And if we look at the tags here, this lists the tags. And so let people decode which things are supported and which are not. So looking at the pipeline reference, they may have actually, I think there's a bigger issue, but we may be able to say they've asked it looks like what you do there is you put the images you want into your my registry. And then they are just referencing what's in my registry. Right. So at the point that I'm doing my pipeline, I don't have to actually deal with this so becomes an administrative task of setting up that registry to have the agents that are needed for my pipeline developers. Right. And that's really a really important topic and it's a big ugly one and I think I've got uglier things or other things first to deal with so I may just want to forget about that. It is a different topic, and it certainly is interestingly complex, complex, dealing with, let's see if we can find. Here we go Jenkins slash inbound dash agent. If we look at its tags. Yeah, actually, this is a good, a good one already. Nice view of it. And so just to prove the point here. Here's latest latest JDK 11 and alpine I completely missed in my list that these existing variations of JDK eight and JDK 11. And you can imagine the combinatorial explosion when we have here. Yep. And the fact that each of these images may need security updates when the operating system vendor needs to make a change. Yep. So, lots of things like that. What I what I suspect is that our users are grossly under using the flexibility of the agents. I suspect that people are doing sort of simple agents that work for them and they're missing out on a lot of benefits, but they're working. Yep. And that all of this other stuff could get very, very complicated. And they can always read the source code it may be for a very small group of sophisticates that get into it anyhow so. Okay, shutting up now. I'm going to take a look at at the other one because there should be at here is SSH agent. Yeah, and I think that is the. Yep. This is the, the inbound or the outbound agent. Yep. Now, given all those variants. So that that was the, the scare scare people into realizing that there's an awful lot of variation and not an awful lot of people maintaining it. So right now what the proposal is that the platform SIG will be reviewing the Jenkins enhancement proposal. We're going to use the support. Dr. And to create a process so that we know who is maintaining those doctor images by image tag. I can say I'm going to maintain Debbie and 10 is maintained by person a centos. Eight is maintained by B. And it may be that Alpine is unmaintained is up for adoption. And using the adoptive plugin concept already exists in Jenkins so those are the kinds of. That is that that's not fact that that's just like a possibility. That's these are. Or is that is that fact. No, these are just examples. Yeah. Okay and none of these doctor images are going to contain Maven or Gradle or anything like that right that'll be separate. They usually do not, they don't contain specific tools because the user needs to decide which tool they want. Okay, so if they want tools embedded inside their agent, then they need to create their own doctor image derived. So it's really just a matrix of operating system release and JDK version. Right. Okay, cool. So Meg, does that answer your question on pipeline agent updates. Yes, yes. And I think the pipeline documentation is it works. There's other subjects that aren't touched but we don't have it doesn't need to be updated they're not referencing specific versions. Good. Okay. Very good. Alright, so then next topic was issue of 3991 LTS description on Jenkins location on Jenkins.io so I like this one because it's about how do we do a better job of structuring the dogs. This one was Josh Sora, the author who originally created the tables divs transition said hey, I was looking for the definition of LTS, and saw there's this page, and there's this page, and neither of them tell me what the meaning of this word that three is. And he's right. Absolutely, there is no hint what is what is LTS mean in this case. If you have to ask. Right. So then we checked this page. And it doesn't talk about LTS. And then he checked this page that glossary. And the glossary doesn't mention LTS. It's not this acronym that we all know what it means and yet nowhere do we know where on in the pages in search. Do we actually define it. Right. Now we do have a place that that does define it. And if we go to the downloads page. This learn more takes me to a very nice page that describes the LTS and its process in detail. But that's, that's, you have to know it's better click here to find it. Do we have the ability to have like the type the LTS when it's in a title whatever to have that be a link to this page. Sure, sure, that's that's, I think a very reasonable thing we could, we could certainly make I think anyway we make this, because this page is a, what do you call it this page is I believe, camel and generated. And so we could change this quite easily to be a hyperlink or have the LTS be a hyperlink. Or that sometimes there's funny things about what you can do in a title if not, you can add a sentence afterwards it says this is a change log. This is the automatically generated, you know, and make LTS link there. Well, yeah, we could make it a link here or we could make it a link here. You know, there are lots of. I think it's a good insight that, hey, we probably don't have enough places that guide users to understand what is what is the meaning of LTS for Jenkins. I think actually Tammy is starting an initiative for internal docs to use a lot more. I mean, this is a big bad one but all over we use we throw out these terms that people don't necessarily know what they mean. It's just be links to, you know, I don't know everything links back to the glossary and then the glossary has all the links of where to go for more information or if we all, you know, implementation details but we should have a lot more. You know, terminology links throughout everything. Yeah, build what's a project I just saw the definition of build is related to project well that helps me a lot. And a project doesn't tell me that that could be defined by a pipeline or a freestyle job. And this glossary looks like too many other glossaries it's like too vague to be useful really good. Yeah, okay. That's part of the same issue is like the question do want to link installation page. Change the content on installation page and probably link somewhere to LTS. This is something which is addressed in the common to this. And it, that makes sense I think as well that link to the to the definition of LTS. Absolutely. I think that would make sense. My experience is once you have this in your mind every page you read you're going to see 10 things that should be linked. So, so, are we envisioning then steps we could take to be things like add LTS to the glossary seems easy. The link the full on the glossary to the full description as the glossary seems to be sort of less than a pair of paragraph or less of description of each term and the LTS, the LTS docs description is where we go is here is paragraphs and paragraphs of description. Right. We certainly don't want that in the glossary but a link to this would be very nice. Right. So then would we also propose links from at least the body tags. As Jenkins LTS to the full description. Or should it link to the to the glossary and then they have to jump one more time. Right. You did mention the question which one do you think it should be full description or glossary. From a structural standpoint I would say glossary from a usability don't why do I have to do that extra click to get nothing in the middle. Yeah okay you're you you voice to it for me okay glad your opinion because I buy us words link to the full description. What do you think glad. I think the full description was fine. If they, I mean I think the glossary as it is this kind of useless actually. And I think most glossaries in the industry are I've gotten so you know I'm sort of opposed to glossaries because I don't see anybody who does them right. So. Okay, yeah so link from the body text that seems pretty obvious. We can consider a link from the heading. LTS to the full description so that they know they can, they could click that and learn what is the meaning of the word yes. Right. Now if we start doing this and more stuff like if I mentioned a project. There I might like a lot of different links and that might be something that could be put into a glossary of we made the glossary usable. But here's how you set up a project with freestyle here's how you do with the clarity pipeline here's how you do it with scripted pipeline. Here's how you debug. How you fix performance problems in your project, you know, there's a zillion links and I, I like I would like a document that had all those relative links that would be nice. And there's a whole bunch of like that. It would have inside instead of, I think make what you're saying is instead of glossary saying here that a project is just a user defines prescription of work it would also have several additional sentences said saying the some of the project types include freestyle type or pipeline freestyle matrix. Is job in the in the glossary. It is and job is a deprecated term synonymous with project project okay good and build what do they say for build build build just goes to result. Actually, I think I'm sometimes saying that you can use a pipeline to define your build. And that's my sense of this particular glossary is it's mostly used to resolve those types of legal disputes. Yeah, which word am I allowed to use your honor. And her honor says you are allowed to use this. Yeah. Oh, this is a nasty little rattle we could go down we probably want to resist that. Right. You know what you know what the thing is so now that we've discussed it we're not going to be able to forget every time I look at a page I'm going to go gee I wish that was a link and that was a link and that was a link. But, but for me I think that thought process is valuable because there are times when pages become so overwhelmed with links that I find them more difficult to read. So, so there's some, at least from my reading there's some balance. I don't know what the balance is that there's some balance between enough links and overuse of links. Right, because at the other end to I have seen some pages that in lack of links start explaining every term in gross detail. And if I know what those terms mean it's hard for me to read the page and find out what I'm trying to learn on the page, because all the other stuff is there. That's why I in a, in a previous life I did I call it an encyclopedia, but it was basically a Wikipedia sort of thing that and that was all my links went there. And each article there then had links and links in links to everything you might possibly want. And that kept it fairly clean actually, because I can read over a link. And if, if I'm reading a sentence and it makes perfectly good sense without clicking the link then I just ignore that the link is there so. Right. Good. Yeah. I'm talking about LTS, I can mention that, well reference mark your latest presentation on video where you described difference between LTS and weekly releases. So clarifying how often those are made. Oh yeah. It was good. It was last week. Yeah. Yeah, so that was Aaron, Aaron and Mark. Yeah, that that was that's a good. That's at least a good source to see if one did I say something false. And two, if, if somebody would prefer to have a video instead of a, instead of reading the. The rigorous definition, we can link to the video if you want it. Right. And some people just want to vaguely know what LTS is okay I should never put anything but LTS and my production environment I'm done another. How are these people determining what's an LTS and what does it mean and you know, some people need or care more. And I'm not sure if it is possible to provide this late cut from the entire video which last I guess one hour or more, just this 30 seconds part where Mark is explaining what LTS means and how often it is produced. You know that's. Yeah, we, we haven't used clips like that before but adding a video clip extracted from Yeah, I've done. I've done those kind of clips before where I cropped something you know trimmed it back to exactly the segment that I want. Yeah. I, I don't know, there, there are people who they're, there are specific voices in the community that very much prefer written written over anything else. And other things are just a distraction so I, it might generate some pushback from some of my colleagues so I don't think I want you putting video. But there's an answer, but you bring you pull out the phrase learning styles and different different learning styles. Yeah, and I admit that I enjoy a good video but I have a hard time learning from a video I'm a words person. But, but I've also worked with some brilliant people who would do great reviews of the documentation if I would come to their office and read it to them. I don't read it. It wasn't that they were functionally illiterate they just do not take information from the written page. And if I came in and read it to them they would give me fabulous previews. So, and everything in between. There are also people who are only going to learn if they can tinker and there we get into, you know, having little training videos with a little lab that they can go to and say if you need to do this to this is, you know, we're not quite there where we can offer that yet but we may be close. Right. For training purposes I guess video would be great source and resource but in case of who just reach internalization for instance it will be hard I guess to internalize video. The biggest problem is that video is harder to is more work to update like this one is going to stay solid. But for instance if we did I mean something that would be nice would be to have a video that goes along with your tutorial on Dick and Jane install Jenkins. But you do you want to have to recut that every month it's one thing to go in and change one string. Right. And then you get into the maintenance and when, and there's, and there's some ways where you can cut it where it's immune to it where you sort of say whatever your releases and blur it out or something. But there's others where you can't get away from it so I think it's always going to have to be a mix and a priority. I'm having a hard time because as far as I'm concerned if it's in word if it's written down it's good. And, but the world is not that way and the world is getting less that way actually so. All right, anything else on that topic LTS, and what we do with that I think we've got some rough ideas, these are things that we could do that would be reasonable. Anything else there. That's good. To get you prepared for the season of docs. And we reviewed that today with Zina. Vlad was there as well thanks for joining us lab thanks very much. I'm glad I saw that you had also asked to view the seed questions document, you're welcome to put questions in there. Zina will review them tomorrow I'm sure some of them. She will say, she will decide I don't want to even be asked this question, or if it's asked I want it answered by Markey or by Kristen not by me. And that will, that will all be fine. I just put together a couple questions, but yeah, in case if she will have some time or she will have time to read this, that will be fine, whatever. Something what what is next. Our plan to do this stuff related to documentation and. Yeah, component that she addresses, and to code and training. Yeah, almost. The last topic was this review feedback from users and I propose given the time we're at that we just ignore that one for now. It needs much more time. It's this worksheet that's automatically generated from user feedback. And we occasionally get it get feedback on it it's becoming less often. So today we had some feedback yesterday we had some in three days ago. So we are still getting a little bit of feedback from this. I wonder why it's slowing is it because people are finding out that it doesn't happen that nothing happens quickly or. No, no, it's because there, there isn't a better way to do it now. So if I'm on, let's say I'm on the installing Jenkins page and then the doctor page. When I jumped to the bottom of this page there's the wasn't was this page helpful right that interest data into the sheet but right below it is improved this. Which will let me edit directly and report a problem which takes me right to a get of issue. Right. And so we've given them in a very short space, three different ways that they could share something with. Okay. So thankfully, this one, this one is actually the most difficult to manage. It's still relatively simple. But these are the are much better when they're available on a particular page. Right. For instance, when I click report a problem here, it has filled in the page that had that I was looking at, and the source file of the page that I was looking at. So, so the report a problem is much, much better for the first time submitter, because when they submit something into this page, all we get is what page they were on, not where the source code is that is for it, and they're their hint of or not. Oh, this is nice. All right. Any other topics we should review before we close today. Not for you. All right, recording will be available in probably an hour or so. Thanks both of you. Thank you. Thank you. Next week.