 Well, hello, everyone. Welcome to another developer meeting. Every three months, we have these developer meetings, and it is now three months since the last one, and it's January. And so therefore, we're having one. We've got a number of people here to talk. We've got an agenda, which is on the Moodle Docs page. If you search for Moodle Developer Meeting January, you'll probably find it. So we're going to go through that agenda pretty much. I don't think I'm talking very much, and I should probably get that up in front of me, too. Who is first up? Tim is first up, but he's not in yet. He said he might be a bit late. We will have to delay his item on the agenda. Sam, you want to kick us off. A bit of a chat about your work on conditional activities. Yeah, that's right. I've actually got a PowerPoint. Let me see if I can screen share it. He says, hopefully. Oh, gosh. Right, let's see if this works. Oops, I believe I've just managed to share a PowerPoint. Can anyone see that? Can you see that? Yeah. Brilliant. So I want to just quickly, in case anyone's watching, who doesn't know what conditional availability means, it's about how you restrict access to activities, depending on all those things listed there, such as date. And I am supposedly the maintainer of this area, although recently I've not done all that much, except respond to bug reports and sort of say to people, yeah, go ahead and develop that and I'll code review it for you. But I am proposing to actually do some work in the area, hopefully, for me, the 2.7. This hasn't yet been approved by the OU, as in, I don't yet have confirmed that I can do this, but I'm quite hopeful that I am. So if everybody could touch the wood-shaped area of screen, then maybe it will actually happen. So the basic summary for changes is, at the moment, the conditional availability only works with and conditions. So, for example, let's say you put date condition and you put a grouping condition, then somebody has got to be in both that. They've got to meet both the date and the grouping condition. You can't say you've got to either belong to this grouping or it's got to be after that date. So there's no support for all conditions at the moment. So basically, that's the kind of key thing we'd like to add support for all conditions. Also, obviously, Boolean Not and the ability to sort of nest conditions so that you can ever basically make it as complicated as you feel like. Then the other changes I want to make as well. At the moment, each restriction is sort of hard coded. So in other words, there's specific code in the main library about, say, date conditions. So I'd like to make those pluggable instead so that people can make up new conditions without having to change the core code, basically. The interface sucks, so I'd like to make it suck a bit less. There's also some confusion about grouping, which I'll come to in a minute. And in the process of doing this, I think I'm going to reduce some database tables, get rid of some fields. And it should be possible to do all this and keep it 100% backward compatible so that it just updates from your middle 2.6, 2.7, or where the release this goes in without any difference in behavior. The thing I mentioned about groupings is bit of a niche area. So some people might not be aware of it, but basically groupings currently are used for two things. So one is if you've got a group activity, like, say, a forum, you can select which list of groups to use. So that could be that you've got different types of groups. So for example, you might have Cheetah groups and you might have groups to do with people in different areas or different countries. And for certain forums, you want to split them in country and for certain ones, you want to split them in Cheetah groups. So that's one use of groupings. And then the other use is to restrict access to an activity for which you have to use this. It's currently still an experimental feature, although it's worked for about five years, called group members only. And there's sort of a slight issue of the way these works, which is that the grouping option is in the groups section, which totally makes sense for the list of groups for groups activity, but it doesn't make so much sense for restricting access where you'd expect it probably to be in the restrict access section. So basically I'm proposing to sort of do that, get rid of group members only and sort of automatically convert all of the existing things we've got a grouping set to sort of add a restrict, a standard restrict access thing on grouping. So it should allow us to sort of remove these sort of stupid option and some stuff there. Right, so the main thing about changes to it, so this is a current interface for restrict access. This is when you haven't even set any restrictions. So this is just a default on the form and I feel it's a little bit bloated. So what I'm proposing is this one, which is if you can't work out my pictures, it's supposed to be lean and mean. Sorry. I was thinking it was sort of fancy and beautiful. Very good. Anyway, so basically it starts off just saying there aren't any access restrictions. You've got a button to add one and that will be a JavaScript Ajax type button. So you click the button, you'll immediately better choose from a menu or a dialogue, which type of restriction you want to add and then you'll get a restriction like this one. So just immediately in this, you can see basically the grade, this is it, let's assume they clicked out and then they picked grade. So you can see it's pretty much the same as the current one in terms of how it actually displays a grade condition. You've got a few, so you've got X so you can get rid of the condition and you've got that must drop down is because you can do not condition so you could switch it to must not. I don't really want to go into detail about the interface because really this is just a sort of to let people know that I want to do this. So here's an example of the complicated interface if you have set really difficult conditions. So in this one, we've got a top level condition where it's got a match all of the following and then there are three things, one of which the bottom one hasn't been set up yet. The other two is they've got to have a certain grade and then the next one is a nested or condition so they've got to either be in the maths department or the media studies department. So that's the kind of, that's probably quite a stupid example but you could have other ways of combining conditions. So you could say, for example, either it's got to be this date or you've got to be in a particular grouping or something like that. So I haven't covered the complicated stuff. I do have a really detailed spec but I want to wait until the people here are sort of all right with it and there's a high uncertainty that I'm actually going to be able to develop it but I hope that people in the Moodle community are going to like it because basically there's a bunch of tracker issues about this particularly every so often someone reports another due because of the you can't do all conditions problem which is really the main one. But also I think by splitting out these different types of conditions into plugins I think that will improve code quality as well as meaning that we can have obviously be easier to add other features. So if somebody wants to add a condition on something else or even a local one then they can go ahead and do that. And that is I believe the end. So I'll see if I can stop screen sharing. So Sam that looks pretty cool at first blush really, really nice. And in the chat some people were asking about had some questions. So I'll let you deal with them. I suppose you can see the chat. Oh, can I? Oh, but the first one would be what's the tracker issue for that? Well, there isn't a tracker issue just yet because well, basically I haven't gone around to following one. I mean, there are loads of tracker issues for all the individual things which I've sort of, I know which numbers they are, I've made a list. So I'm hoping to basically I'll follow one but I'm sort of waiting for the go ahead that we're actually gonna be able to do that a bit which I should get soon, I hope. If anyone doesn't like it they should say so now or for overhaul the piece. Yeah, definitely. But yeah, two thoughts that come to mind for me in seeing this is it's gonna be a really beneficial thing. Tata kind of relies on conditional things. We've been looking at that recently as well at Moodle HQ. One thing I would, looking at your fabulous forms which look like a real improvement because they're a bit of a bug at the moment like I say, would be to keep in mind accessibility that's gonna be quite a task to try and have something logical that still works for people on ultimate browsers. Yeah, just to say on that, I have thought about accessibility and as a brief mention of it in my spec so I'm gonna hope for you to do it but this is gonna be, I think I'm correct in thinking that we don't need to make a non-Java script version so as long as it's accessible it can still rely on Java script in 2.7. Is that correct? Is that correct? Yep, great. But you should also, you need to check also now on two base themes to make sure it looks on standard steel and new clean bootstrap base so it can be responsive. I was just wondering if there's parallels with the plugins that we've got for badges for awarding badges and actually I was just about to log into Moodle to remind myself of what the criteria you can have to open badges. I mean, yeah, you know, like, I think there might be some similarities between the two. Yeah, I'm actually, Tim's just wrote on the chat that I thought badges used conditional activities and that might be the case. I don't actually know either, I'll have a look at it but there are some sort of specific requirements. Basically this stuff has to be quite high performance because it tends to run on every single page because it is used for the navigation block. So I don't, you know, if there is existing stuff it would depend on how sort of quick it is and stuff like that. But also obviously I need to be able to reproduce exactly what the current system does before we add bits. So I don't know, but I'll have a look at the badges stuff. Thanks. All right, thanks, Sam. One thing I thought we could do before we move on to the next item and Tim is here now so he can sort of take over from me in a second. But I'd like to ask everybody who's listening or watching this and who's in the developer chat to please say hi. And this will probably take a couple of minutes but we won't pause while that's happening but just a bit of a roll call if everyone wants to say hello there and maybe where they're from. And then while that's happening I'll hand over to Tim. So I guess that un-mutes my microphone. Hooray, hello from me. I'm sitting about five meters away from Sam. So I can't remember if I've mentioned what I'm about to talk at at a previous developer meeting but these are some changes to the quiz setup, mainly to the quiz setup page. Shall I see if I can share my screen? Ooh, which of these buttons means share screen? Hmm. One with a green arrow. Okay. Don't quite see that. Right, that looks like a browser window. There we go. Right, that's very boring but that's the tracker issue where we're tracking this and as you can see we've broken it down into a lot of subtasks. Joint effort between Mahmoud and Colin and myself. There are some peripheral bits like some changes to the question bank like how you make a copy of an existing question with some small changes and some of these small changes we're about to push into integration. Well, that one has been integrated this week. Fingers crossed being integrated. The other bits, we have some mockups. So it's about the edit quiz page where you add questions to a quiz and the only one that's really gonna be visible to students is this one, here's a mockup of a quiz page. We're just gonna allow you to put section headings in the question navigation so if you have a long quiz, students can find their way around a bit more easily. The other things are mostly behind the scenes, here's my next mockup. That's roughly the quiz editing page. So as you can see, obviously, if you're having section headings, you need to be able to add them and edit them. The other thing, what the hell are we doing? Right, yes, of course. We want the option, sometimes you have a linked sequence of questions and you ask question one and you get the students to give an answer and then you want to ask question two and the only way to ask question two is gonna give away the answer to question one. So to be able to do this, we want the option that students can only attempt question two after they've attempted question one. So you can link sequences of questions into a sort of strand that you have to work through in order. Slight risk maybe we're duplicating the lesson but I don't think we are really, I think it's worth adding this to the quiz. Another thing is at the moment with random questions, you can randomize you can randomize an individual question but sometimes what you want to do is you wanna have a whole sequence of questions with the same random choice. So maybe you have some questions about frogs and some questions about toads and for question one, you want to randomly pick either frog or toad and then for questions two, three, four or five, you want students to get the same random follow on question. Yeah, the same thing either five questions about frogs or five questions about toads. So that's this sort of yellow bit here. Not sure if it, I mean, it's very hard to actually get all this. So not, this may change in development but so you have a sort of sequence of, in this case, there are five choices and if you get this question eight, then you'll get the following question nine, question 10 and so on. And the third one sounds very weird when you first hear it but is actually very good if you're having a quiz for students to practice. You have the option that in a practice quiz, if the student's done a question and got it wrong, they can just immediately say, well, and it give me another go at this question. And when the question has random variance, say a calculated question, when they have another go at another question, you know, another question, give me another question too, I wanna try again. It picks another random variant. So where you have a quiz designed to let students practice. You know, at the moment, if they wanna have another go at question two, they have to finish the entire quiz attempt, start a whole new quiz attempt and that's not what we want. It sounds really weird but we've had this feature in another assessment system for some years and it's really useful when you want to use it. So basically we have this quiz edit page that's really very complicated. We're adding even more stuff into it. And so as well as just sticking this new stuff in, we're also kind of hopefully starting from scratch on this page and building something that overall is easier to use while adding these new features. So we're also thinking about usability as we do this. And we're obviously trying to steal a lot from the way you edit the course page because building a course as a sequence of activities and a quiz as a sequence of questions, there are some similarities. So let's try and give users familiar idioms and the changes in the course page in Moodle 2.6 are pretty good. That's kind of, other things being equal, we want it to work like the course page. I hope that makes sense. So I say there's the tracker issue. Should I put that in the text chat? Assuming no one else has. And there's a related forum thread from quite a long time ago where we talked about the ideas that's linked from the tracker issue. And the tracker issue has lots of UI mockups and lots of linked issues in an epic. So hopefully that gives people enough information about what's going on. Our current work in progress is a real building site. So we weren't brave enough to actually show it because it's not very helpful yet. But that was actually a question I had with prototype.moodle.org or whatever it is. Would we be able to put our stuff there when we have something ready to show? Is that available to people outside HQ if they're proposing something for core? I hope we can. Yeah, I mean, right now it'd be trust to people for sure. No problem. It's only sort of a temporary site right now. The plan is to make it something where it can, we can securely open up new sites with that at the moment kind of everything's sort of in the same place. So, but sure, that's no problem. I would hope eventually that once a developer has a branch in Git, you can sort of spin up a prototype site from that quite easily and let people try it. You know, that would be the, where we would aim it at, yeah. Yeah, we're in the process of rewiring all of our systems with LDAP or LDAP controls so we can do some cool things there. But that's cool. So there's one question in the text chat from Tomek. The dependency is defined within a particular quiz and we've decided thinking about the user interface, you'll only be able to let, say, question two depend on question one. You could imagine a theoretical thing where to answer question 10, you'll have to have answered questions three, seven and nine but we decided that would be crazy. We'll just, you can sort of put a link from one question to the next and that's within this quiz. So I hope that makes sense to people. Actually, I've got a question, Tim. I was pleased to hear you say you're working on usability and something I hear a bit is the quiz can be a bit daunting and one of the examples is something like the close question type which still requires people to type quite arcane things to do that question. Is there any work either from you guys or the community in making nice GUIs for that stuff? Oh, I'm glad you asked that. Not a GUI for close but just in the autumn, we released a new add-on question type called the combined question type which is kind of a re-implementation of close but with a better editing form and but also it's kind of what we want. So it uses all the other OU add-on question types. It doesn't use many of the standard question types but actually it's also designed in a more pluggable way so in theory any question type can by implementing an extra interface can add itself to make itself available to the combined question type. That's quite cool. So right now though, if someone wants to do a lot of close question types, there's no option. They're going to have to learn this in tax, yeah. And to... That would be a really nice project for a Google Summer Code student. Well, it might be but the trouble... There are other issues with close like the accessibility and if you want to do significant work on close, there are a lot of questions out there you'd have to maintain backwards compatibility. So I guess that was one of the reasons we went for our own new question type because we could start from scratch in a way that made sense to us. Okay, so... Or if it allows some questions people want then great. Yeah. I'll have a look at that when I head in a second, yeah. Thanks. Another thing, we're not quite ready. You can have a sort of pre-announcement. Am I still sharing my screen? No. No, I can't think of the URL off the top of my head. Yes, I can. I'll do. Maybe. My colleague Phil Butcher has just made, just publishing in the process of publishing a course about writing quiz questions, particularly for formative assessment and you learning are starting with the standard moodle questions and then going on to some of the OU add-ons. We'll be sort of probably announcing that more widely next week, but hopefully that's a useful resource to people. We're gonna put it in obviously moodle.net as well. So anyway, I just thought I'd give you a sneak preview of that, because it's quite cool when I proofread it. It seemed good to me. Okay, cool. Actually, just to finish the combinable one, are you planning to add the combinable code to the core question types? Or is that something that you put out there for the community? We haven't because, for example, we've added it to our variable numeric type, which is sort of, again, like calculated question, but by not having to be backwards compatible, we've built something we think is nicer. Because we've got that, we actually think it would be confusing to add it to the standard numerical type, possibly. Unless maybe, I suppose you could build an admin interface that says, although the code's there, which of these question types do you actually want to be combinable or something? Basically, to optimize the interface, we've only added it to the minimum set of question types that gives us the functionality we want. But it's a public API. If someone else wants to implement it for other question types, they can. Well, I just meant, I understand, from the OU point of view, how that works. But as it's a maintainer of the quiz module in core, also core should also look quite nice. So is it maybe a matter of integrating some of those OU modules? Yeah, that's a good point. That's something I've been thinking about. And particularly the ones I would add first are our four drag and drop types. Because they're really nice, really quite easy for teachers to understand the news. The main block of there is they don't work on Android phones because of a UI bug that Andrew Nichols, I mean, Colin found this bug deep in the UI code and then talked to Andrew Nichols, who's on the case trying to get UE to integrate the fix. It's a sort of simple one line fix. I think once that fixes in and these do work on basically all browsers we can test on, then I think that's a strong candidate to add those. Some of the others, I mean, I would really like to hear feedback from the community, from partners, you know, of these question types that are currently sitting in Contrib, which should stay in Contrib and which belong in Moodle Core. And I don't really want to be me. I don't want to be me pushing, you know, it's very easy for me as quiz maintainer to shove this in. I'd rather do it in response to requests from the community. So yeah, I think that's a conversation we should have, but I suppose not much to facilitate it. Something to start up, yeah. No, just a thought. Cool, thanks, very interesting. Any other questions from anyone? Damien's just made the point, drag and drops tough on screen readers. There is keyboard alternatives to everything. Yes, I don't know what we do about screen readers. And again, that might be a conversation to have with the Moodle accessibility folks. What's the lesson activity? Tim, are we not going towards the lesson activity? It's almost similar to what we're doing now. Well, the trouble with lesson is that it's completely unloved, or at least no one's had the resources to work on it for a very long time. I'd love to see someone take on the project of converting lesson to use all the question types from the question bank. But I'm afraid I can't see myself ever having time to do that. Well, I'm just wondering if we go with this solution, there's no lesson to be there anymore, and it can tire, because it basically do, after this patch or after this enhancement, everything is going to be similar to what lesson do. And screen is more powerful than what lesson is right now. I still think there is something lesson does that you can't do with the quiz even after this. And so the best outcome would be for someone to really take on lesson and build a really good module for building that kind of sequence of linked, sort of linked sequence activity where you choose your path. But I can't, it's clearly never going to happen. So maybe it's only ever going to happen in Contrib or something. Well, you have discussed it a bit. Yeah. I would say that it'd be good if there could be more of a distinction between what quiz and lesson are doing. And if we can shift some of the things that people are doing in a summative way, that's of assessment stuff from lesson to quiz and then just a little lesson to focus on the formative assessment. Yeah. Anyway, I mean, and over the years, it's become easier to use questions elsewhere. And it's even documented, I just put the link in the chat. If someone wanted to convert the lesson to use standard question types from the question bank, it shouldn't be too hard. And last summer, we had a Google Summer of Code student who built an act, built the question practice activity using the question bank. It's quite doable. Well, and the bigger question for lesson is the UI needs over here. Yeah, yeah, yeah, exactly. We can all imagine the flowchart type thing where you draw lines between. Yeah, yeah, yeah, absolutely. It could be a one-year project for someone, for the right developer, it'd be really cool, but that's a huge commitment. Anyway. If someone out there wants to step up to that, you're very welcome. And in the meantime, I'll just keep working on increasing funding to that outer onion ring. Okay, well, shall I stop screen sharing if I can? What's the magic? I've done it. Right, that was easy. Okay, thanks. Good. Well, next up on the list, we've got Moodle 2.7 progress. We have a bunch of people talking about different things. First up, and I already kind of, we already mentioned it a little bit, but I suppose you've mostly all seen the prototype.moodle.net, which is not a major thing, but it is, I think, a good step forward. I'll just put it up on the screen. So we have a site where we can now share prototypes. Before this, we had a lot of prototypes that people were running themselves and then sharing, and that means there's a lot of different navigation and security required. But we've had some pretty very good feedback, actually, on the ones that are already out there, and that's definitely informing the kinds of thinking on different things. So there's one on navigation and the clean bootstrap-based thing where actually we were talking about some of the difficulties with the navigation block. Now, those of you who've been here for a while remember that the navigation block was originally invented as a way to bring all the little pieces of navigation back into one place. But in many cases, having all the navigation in one place is not very usable or accessible for everybody. So the prototype shows a few options that we're looking at to simplify that. There's one on outcomes. We've got the outcomes code from Moodle rooms that's being evaluated still. The key things with outcomes is that it needs to integrate with assessment. And it also needs to eventually integrate with higher level things such as full learning plans and that kind of stuff at a very high level. So for each user, you want to keep track of what they know, what they don't know, and have all of that managed, perhaps in a corporate way, for a whole organization. So this all has to dovetail together. So we're just looking at the whole thing from top to bottom and making sure that everything's gonna work together. There's forum anonymity. There's one smaller thing here about making forums anonymous, which is one of the very big, highly requested features on the tracker. But part of many other forum things. And there's an editor comparison which we'll be talking about later. So that's it. Like I said, currently it's a pretty basic site. We're just giving people access to it with SSH public keys, but eventually it will be much more an LDAP control thing. And we'll have lots and lots of sites here. And it'll be really nice if we can automatically pull from git branches and so on and so on. So I'll get off the stage and hand over to... First up, Jerome's gonna talk about the clean thing and a number of stuff going on there. So, it's Jerome there. Hi, do you hear me? Sure. Okay, so while we started to clean as default, it's because Moodle is limited on the current default thing stand out for mobile. So the solution to make it work well on mobile was clean. So I'm going to present what we need to do and what we think we need to do to put clean as default. So first we need to resolve all the bugs that are related to clean and we already started and we've got about something more to go. Then there's a question that should we hide the standard thing on French install or should we move some theme into Moodle.org plugin repository? So I invite you to go on issue. Yeah, that is it. I will pass the link into the chat for you. You can click on the link. So you've got access to the presentation. Then it was suggested we should also add some customization settings into the UI to set stuff for clean. So like logo or colors, background colors and links colors and all that. We conclude that we will need to compile list in PHP. And if we can do that, we can use less in plugins. We thought as well if we should be great to bootstrap three. So if it looks like a good idea, we thought that it would not be possible for 2.7. It would be a bit short time. So maybe we will implement some issues that will accelerate transition to bootstrap three later. But we don't think it's going to be possible for 2.7. So we thought as well about implementing a new navigation system, which is in a prototype you can have a look at. And we thought as well that we need to have a clean user-friendly for mobile 100%. So the main things that we need to do, it blocks great book editor. We talk about the Element Library. We, if you were at a hack fest, we already talked about the Element Library it was done by 2Tera. So it's a great tool for a team developer. Then we need to work on a team developer probably do more quick start, remove what's concerned standard, and other stuff, it's right on the issue. And finally, we talked about improving integration with bootstrap casts for 100% compatibility with boot swatch. So at this moment, some element like file picker, file manager, editor, they don't have bootstrap casts. So if ever you want to use boot swatch theme for bootstrap, they are not going to work 100%. I can do a quick demonstration of that. So here we are on a prototype site. And we are in illustration appearance theme and it's a theme created by Fred. And here we added a boot swatch theme settings who let you switch between a boot swatch theme. So basically you put the CSS and less file from the swatch and you can have like a sub theme into your theme and you can select a new theme. And so it's great for changing all the bootstrap theme and with addition of the custom settings, you could greatly set the theme of your site without being very technical. And what I was talking in the previous problem you see here is a file manager and it all looks okay but if I switch back to another swatch, you can see that they look a bit odd in a theme because there's a lot of bootstrap casts. That's it. So it's all the way we talked about and finally, yeah, you've got the main document for our study that you can have looked. So I invite you to look at all this issue if you're interested and participate in the discussion into this issue. That's all. So I'll give you back the end. Thanks, Troy. Well, you guys must just keep on going right through it. But that's, there's a question actually in chat. Did Starski more about less compiling? We all have our own scripts for fixing the bootstrap when we do mergers and cherry picks, especially in integration, but yeah, it is a pain. Okay, well, I guess we'll keep going as if we wait for the leg. We're gonna have massive four minute, five minute gaps in between. So, Damian, the editors. So, we, one of the other projects that you would have seen, well, it was listed on that demo site that the prototype.net that Martin showed. And that was this editor for Moodle 2.7. So, the reason that we started this is because TinyMT2 is, TinyMT3 is now out of support. And there are cherry picks going back to it, but it's not being actively worked on. And I think it's only really super critical things that they're even changing anything on now. So we need to move on from that version of TinyMT3. TinyMT4 is not backwards compatible with TinyMT3. They've changed a lot of things. And so at this point, we have to do a bit of work to move to TinyMT4. So we are looking around to pick the best thing and whether that's TinyMT4 or something else or something that we wanted to think about rather than just accepting the default. There's some other reasons that we wanted to have a look at it. And the other one is that the text editor is a critical part of Moodle and whether that works nicely or not has a huge impact on the user experience for students and teachers using Moodle. It's used on every activity. It's used on all the settings pages. If the text editor is not nice to use then that affects everything about Moodle. So it really is important. Some of the other things that we looked at early on was basically we have to choose something that's got a license that's compatible with Moodle, the GBL or compatible. No, we back-end dependencies like ASP it's got to be accessible, both producing accessible text and also the interface, the entering text has to be accessible. It's got to have active support and it's got to match our list of supported browsers. So we looked at a whole bunch of different editors and based on just those very simple, critical requirements, we chopped a lot of them out very quickly. And we were basically that with three main contenders that looked realistic. One was TinyMC4, one was CK Editor and the other one was Atto. So Atto is the text editor that came from some work that I did after seeing some posts on a discussion forum. So it's basically a content editable text area with all the buttons built by UE and all the interaction built by UE. So it's in the plug-in database now and we did briefly think about adding that to Moodle as a second option for a text editor for 2.6 which is what we pulled it back out. Which is probably a good thing because I think we really can think about it carefully and have a clear message about the text editors going forwards. Sorry, I can't use the macro long. So what we did is we got those three text editors and we hacked a version of each of them and put it on that prototype site. And when I say hacked, I mean, we had most things working. So they had language strings, they were all real plug-ins. They loaded things by UE. The only kind of hacks were bits that were just going to take a lot of work for us to finish off. So we just left them as they were and noted that this is going to be something we have to do later if we choose this text editor. And we tried to get them all sort of about on the same standing in terms of integration with Moodle. So we set that up and then we invited people to test them all out and fill out a survey. It was interesting when we look at the results of the survey. We had about 40 other people fill out the survey and a lot of those would have been developers. So that means that there would have been some, I guess, teachers who were testing it, probably not many, mostly. I'd say almost all of them would have been developers. So it's kind of a slightly skewed population. But the developers had good opinions as well. The result that came out of it was that there was no clear winner. They were all about equal. Some were slightly better in some areas. But on a whole, that was nothing that stood out as this one is a definite no. This one is a definite yes based on the survey data. We did get a lot of good feedback about things that annoyed people about all the different editors. So whichever one we pick, we've got that list of things that we can work on to improve them before we release the first version. The other thing that came out is that there was a lot of discussion and a lot of people commenting on the maths features of the text editor. In TinyMZ3, we have DragMath, which is a Java applet. While the people like the interface of it, but the fact that it's a Java applet is getting more and more of a problem because you keep getting all these security warnings and there's nothing that you can do about them. Even if you have a science certificate, you still get security warnings. And the fact that people have to have Java installed is a security hole in the first place. And it would be nice to replace that with a JavaScript version of something. But people do like the user interface of the DragMath editor. So we can build something new, no matter what editor that we choose, something JavaScript-based that basically does the same thing. So one half of that is the actual editor that you use for maths equations and the other half is how you render them. So there's the latex plugin. As part of this work, I wrote a MathJax plugin. I know people were already using MathJax by adding custom code to the header of each page, which is another option that they can do now. I found the MathJax library itself to be really good. So we could possibly look at integrating MathJax as a standard way of displaying these equations. But the display of the equations is separate from the editor that we used to create them. And that's separate from the text editor and there's sort of three separate things that we need to figure out of this. But I do like the look of MathJax and some people in the community have done some work like Daniel, I can't remember his last name, wrote a version, wrote an equation editor that gives you a library of things that you can add similar to what DragMath does but it's all JavaScript-based. And he wrote one of those for Tony MC3 and one for Atto, but we could do that for whatever text editor we choose. It's going to be something that we have to do to have it follow up. So the only other thing that's important is the technical side of it. So when we did all these prototypes, we found out how much hacking we had to do to integrate each one of them. And TK, whether they're in Atto, we're both fine, but Tony MC4 was a huge amount of work to even get it working. And the language string integration is just horrible. And for that reason, I think at this stage we wrote about Tony MC4, mainly on the base of the language string integration that was required. So the two remaining editors are Atto and CK, and we haven't quite made a decision between them. The final decision on that is up to Martin. And we'll pick that very soon because we're going to start working on it in order to get it ready for 2.7. So we'll probably be working on that in the next sprint, whichever one of those we choose. Now, I can't see the chat, but there's probably lots of questions or maybe a couple. There's a fair bit of discussion about plugins going on. Summary. Okay, are there any unanswered questions? Maybe someone can repeat that at the end. I guess just the point that's being asked is will the plugins that have been created need to be updated? Yes, no matter what we choose. Even if we choose Tony MC4, none of the Tony MC3 plugins we tried worked in Tony MC4. So whatever we choose, people are going to have work to do on the text editor plugins. I'll tell you honestly where my head is at the moment and it's that we kind of need a simple editor that's very standard and for 90 plus percent of people, really that's all they're ever going to need. If you go to any other website on the internet, you don't get fancy editors with three rows of buttons. In fact, very often you get no buttons at all. You just have a text box. So we were trying to fix that in the last editing, the last Tony MCE revision with having a simple and a complex tool bar switch there. But really, most people really don't need most of those. One way forward is to have ATO as the core default editor and to also support CK editor with all its huge community of plugins. But perhaps it's not in core, but it's in the plugins database supported by us and the community as the full editor. And it should be quite easy to install both and the user can then choose because we already have all that mechanism for choosing editors, vastly improved in recent versions. So at the moment, that's where my head's at, but it's not fully decided yet. The thing with choosing ATO is it's going to cost a lot of money to not just Moodle HQ, but to the Moodle community in a way. So it's a tough decision. If it didn't cost money, it would be an easy decision, I think, but it does. But ATO is very clean. It's Moodle code. It's clean, written for Moodle. It's all Moodle plugins and any Moodle developer can quite easily get into it. Whereas the other ones just learn a whole different framework. So obviously a toss up. Anyone, any other questions sticking out for anyone there? There was no table plugin for ATO, which I released an update last week which adds a table plugin. That's one more thing across stuff. Actually, I had a look at your table plugin today and it's quite nice how it has all these accessibility features like the captions and stuff. I've not seen anywhere else maybe I've just looked closer. Yeah, I know this. We can create a non-accessible table. So you can't merge sales, for example. That's what I like about ATO particularly is that if we can make accessible, we can make it really accessible in the UI and in the code it produces by basically limiting options. So we can almost force accessible code to be generated out of it and we do it once and it works everywhere. And I don't think CK Editor has quite that same focus. I know they've done a lot of work on accessibility but I'm not sure that's happening in the code it's producing. It's mostly in the UI. Okay. Well, that's out there. The issue, did you post the... We should have all the tracker items on the agenda. Someone should add them at some point. Well, there's no tracker. There's the dev docs page which I listed. The dev docs, yeah. As soon as you choose one, you'll create a tracker and all the sub-tasks. Which is a question from Eric about ATO. No, no, it's not licensed there. Cost is just developer time. It's going to cost us more developer time which means less work on other things. It's costing money out of the Moodle HQ funds which come from partners. And I have been talking to the accessibility group a lot with Martin and Andrew Nichols. Yeah, Jason, I've spoken to them as well before and I wrote a huge post today actually to them. Okay, we should keep moving. So, Damien, I think you're on next anyway. So, the next thing I was going to talk about is that we got rid of assignment 2.2 in the 2.7 branch this week, last week. So, it's gone now. There is a stub left. So, if you try and restore a 2.2 backup, all the restore code is still there. It'll restore it and then immediately upgrade it to the new assignment module. The other thing that we changed is that if you run the assignment upgrade tool now, it will remember the CMID of the old assignment module and the ID that it got upgraded to and any attempts to access the old assignment module will redirect to the new one automatically. So, what this means for upgrade is if you've still got lingering instances of mod assignment when you upgrade, that will become hidden and in order for you to see them again, you'll have to finish running the upgrade tool. And then everything will just work. The only exception to that is if you've got an old 2.2 assignment module custom subtype that hasn't been converted to the new one yet. So, if you write a plug-in for the new mod assignment, you have the option of adding support for upgrading from an old plug-in type. So, if there's no candidate for you to upgrade to, you still have the option for running the old mod assignment in 2.7, but you'll have to basically replace the whole mod assignment folder with the one from 2.6 as part of your upgrade. And that will go in the plug-ins DB as the old assignment module in case anybody wants to get the code for it. But we won't be... We'll be maintaining it on the 2.6 branch, but not on the 2.7. This is our minute silence, I think. Everybody do the moodle sign for it. Okay, so is there any... It doesn't seem to be any questions. It's pretty straightforward. Andrew, do you want to... Is Andrew here? He's going to talk a bit about the outcomes, I think. Sorry, I wasn't sure if you were about me. Yes. Your name's on the list. I don't know if you're aware of that. Yeah, well, I saw outcomes was on there. For those who haven't been sort of keeping up with the story, prior to the release of 2.6, there was a lot of work done to try and get a new outcome system from moodle rooms into core that was ultimately unsuccessful. A lot of work was done on it, but it just didn't make it in time to the standard that we were all happy with. At the moment, we've kind of gone back to the drawing board a little, where we're getting to know Tatara and Ellis and sort of looking at what they do and trying to come up with sort of a bit of a best-of-breed system that we can put into a future version of moodle. So at the moment, it's all kind of actually gone back from code back to more documents at this point. Yes, I'm not sure. Is there anything specific you want me to talk about, Martin? No, that's it. That's pretty much what I already said also. So, yeah, that's really it. I didn't put it on the agenda, but it's something we're working on, so worth mentioning. Yeah, I think probably in the next couple of days, I'll produce a document with what's come out of our discussions, what I think is probably worth us adopting from these different systems we're looking at. And then we can have all have a bit of a discussion about how right I am or wrong I am and try and come up with then break that down into tracker items and start writing some actual code. Cool. Thanks, Andrew. We'll keep on moving to the logging stuff, and run a large topic. Raj, in the backend team. I'm just representing logging on behalf of the backend team, what we have done in 2.6 now. As you all know, we have a couple of issues with the backing. I'm just going to share the logging specs now. As you all know, we started this work back in 2.6 because we wanted some consistent behavior and good, rich information for logs and do analysis of a rate that can be used and fed in different systems. We started working on events in 2.6, converted a lot of add-to-log and legacy events which were inconsistent and not very rich, and they were not reliable as well. So we converted them and we introduced events API in 2.6 which seems to be working very well now when we are converting the events to logs. What we have done now is we have come up with a logging framework which basically reads everything which stores the events and then you can read and do context checks, do a lot of filtering on the events and show them what user wants. I'll just go straight to the demo first. If we just enroll users, this is logging site. It automatically gets updated with what we are doing. We have the context where exactly the event has happened. What event is happening and who did it. At the same time, we have more information about if you are logged in as someone else or what level of information is retained. We have all that information in the events which is visible here. So if I want to see the login, what's exactly happening. I know admin user was logged in as student. He did something on the assignment with online text and if you want more information, it's there in the event and it can be manipulated. We have more filtering levels now. We can filter the logs with the basis of educational level which we never had previously. Now events can be grouped together in certain educational levels which people can take advantage of later. We can have more of actions which are work defined in the event system. So we have different events, works and they are strongly guided by the documentation and login events. So we know what kind of events can happen. We can group them together and with this information, we can actually go further and put this information in the LRS which can later be harmless and static sticks can be gained out of it. So this is what we have done till now. I'll just look at the dev chat and see what's going on there. Well, the performance will always be an issue with the number of events being captured at this point and we have to feed and store that information. But with the new event system, we have the functionality to push it to the external database or any other system external to move and then sharp it and do whatever we want to do to the external database which will be faster. One thing I'd like to add is that you destroyed the issue of offering up records. So instead of doing like 10 inserts for one page, it would be covered and in the end, it would do just one single insert if you are using the new standard database for this standard store for the current instance. Yeah, so it will just fill out the events and do it. With the current system what we have is we can write whatever store we want to write and that would all the information of events to that. So we don't have to worry about where the event is going. So yes, we can put it to file or wherever, but it's going to be slow. Wait a second. I'm just looking at the login box. Where is that? How do I go to this? I want to see this video. One of the slowest things now is accessing the log table. Well, accessing the log table is always slow. That's why what we are trying to do is we are trying to avoid any usage of log tables where possible. Like recent activity report which Marina is working on, we'll try not to use and read log tables and try to have that information stored locally for recent activities. So when you're writing something heavily to a table, reading that back is always going to be slow. Like logs, it happens for everything. You view it, you create, delete any action happening from any user that's being logged. We try not to use it when possible. And that's possible through event observers and having your own storage. We will try to have that optimization. Yes, if you don't have anything joined to log table, you can always disable it. I'll suggest create your own plugin and push that information somewhere so it can be reused, harnessed. Yeah, and I'm just trying to get my window back so I can show you the plugins which... Oh, it's not here. I don't know where it's gone. Let's start a new spreadsheet. It's this. No, it's Chrome. Is it Chrome? It's Chrome. It's not Chrome. Oh, yeah, I got it back. So we have these and we have the plugins. Logging is just next to plugins where you can disable, enable, manage your own stuff, add things to it. So we can define whether you want standard plugins, standard logs, legacy logs, external database, file, or even LRS. Custom LRS can be used where you can push this data to something which is going to be faster. And with the current event structure which we have implemented, it seems to be very promising because converting a standard log or legacy log from the old one to the new took hardly a day's time. So it's very promising the way event structure has come up and the data we have now. I think that's enough from us. Anyone else? Do you want to add something? No. That's all from the logging team. If you have any questions, feel free to put it in the dev chat. I'll pass that back to Michael. Hey guys, thank you for that, Raj. I think it was good coverage of the new logging API. I think you already answered all the questions. Yeah, it's still a lot of work to go and we'll have to keep in touch with everyone as we go because we don't want this to be another rollout. 1.7. Next on the list is... Ah, Juan. He's going to give us an update on what's happening with Moodle Mobile. Maybe Tim feels these questions not answered. Well, yes, let me share my screen first. We'll do it on the chat, Tim. Go ahead, Juan. Do you hear me? Yes. Okay, fine. First, I'm going to share my screen. Not sure if you see my browser. Do you see my browser? No? Yes, fine. First, we are trying to release a new version of Moodle Mobile every month. As you can see, we released a version in September, one in October, and the last one in December. This week, I'm planning to release a new version of Moodle Mobile that has some bugs and minor improvements. We used to release minor versions like Moodle. This one is a minor version. 1.3.1 is a minor version. 1.3.2 is also a minor version with minor new features and mainly bug fixes. So the next version is going to be 1.3.3. That's going to have some bug fixes. We have some bugs regarding the new version of Android. They are using now Chromium. I'm not sure what they were using previously. This change broke some one of them. Also, I have fixed some problems regarding all Android versions. The application statistics for Android shows that the most used versions are Android 4, still there are a lot of people using Android 2.1 and 2.3. So we have a little support for this. Juan, you're breaking up for me. I don't know if it's just me. Anyone else? Juan, we can't hear you. Your voice just disappeared almost to nothing. Can you hear me okay? You sort of degenerated into a nice art piece. It might be worth reconnecting perhaps. Juan, try talking. Yes, did you hear me now? Yes, that's great. You have to share your screen again. Well, yes, a quick summary. I was talking that we are planning to release a new version of Moodle Mobile every month. The next version is going to be released in a couple of days. It has some backfixes and also it has a new phone that can make the application work in desktop, in Windows and Mac or Linux, using an application that is called Node WebKit. I'm going to show you how this works. As you can see, it's like in desktop application, you open and it opens the application. You can browse, for example, the course contents, and you can download a file like a PDF. Once the file is downloaded, you can open it using the native application in your computer. Also, you can use the audio, camera, and photo albums functionality so you can browse your files and upload an image to Moodle easily. This may be interesting for people that want to run Moodle in desktop and also offline because you can disconnect and the application is going to still work in. You are going to be able to view the documents you previously would love it. I think that this may be interesting for some institutions with limited internet connection. We are focusing now in working in the push notification system so we can receive push notifications from Moodle. We have installed an iNotify instance that is the software that is going to connect a Moodle instance with our mobile database. This is here in message.moodle.net. It is running OK and I am developing the plugin. It is a local plugin. This one. This was developed originally by Jerome and I am going to make some changes in order to make it work in the new push notification infrastructure that we made. That is all if you have any questions. I am not sure if you hear me well. Thanks Juan. I can hear and see you well but some others are having a little bit of problems. I think it is the usual thing with Hangouts is that after some time it tends to degrade or something. That is really cool. I did not hear the Node Kit version of the app to run on desktops. Is that already available anywhere or you will be releasing that? Yes. You have to load Node with Kit that is the software to open an HTML5 application. In fact there are two ways. You can use Node with Kit for open any web application that is prepared to run in Node with Kit. Also you can build a package and distribute a version of your application. I just write a document in the wiki or let me find it. That is cool. It will be nice to package it up. Let me find the document one second. I am going to write the link in the chat because I am not sure where I want the document. Actually if you get a moment to put it on the agenda of the developer meeting that will be great. That is really helpful. Thanks for coming in. In the chat mostly it is still arguing about logs. I do not think there were any other questions apart from the information about where to find the Node Kit stuff. I will move on. Thanks Juan. Dan was going to give a bit of an update about what is happening in integration. Some interesting stuff there. Dan, the man. Hello, hi everyone. Let me share my wonderful presentation. I am just going to paste all the links for what I am talking about into the chat now so you can follow along later. I am just talking about a few different things that we have been doing in the integration team and thinking about making decisions on what we are expecting from code coming into integration and that kind of thing. The first thing is the continuous integration bot which is now running automated checks on all issues in was I muted then. Actually I got kicked myself so I do not know what happened. I thought the noise was someone unmuting me and I had just been talking away on my own without anyone hearing. Sorry about that. Where was I? The continuous integration bot is something that we have been working on for a while, probably a couple of years now and always wanting to get it working. I have only just recently started it. Basically the idea of this is to run automated tests on your code submitted for integration before the integrators get to do it so it is the bot side of it. It tries to merge your changes and then it will run the code checker and the PHP docs checker the same ones that we have are linked off the coding style document and will report problems if any are discovered as part of your merge changes as part of your branch. We are doing that on three different states so if an issue is waiting for integration it will get the CI bot and run those checks. If it is waiting for peer review it will also run on that and there is also a special syntax you can put in on your issue the label CIME which I have put as point number 2 when you add the CIME label there is a job running on our integration server which will pick those up and run the code checker and the PHP docs checker to check how it merges. One of the advantages of this over running the code checker on your own is that it will only report differences found in the diff of your changes so if you are modifying Lib Moodle Lib it has got hundreds of coding style violations or maybe that was one that was cleaned up recently but most of the library files were only slowly getting there so the idea is to only see the coding style issues that apply to what you have changed it is still a work in progress there is a few things going on the tracker issue is Moodle site 2662 that is link number 1 I have seen a few people using CIME so they add the label to their issue and then the CI bot runs every it looks for new issues every 30 minutes I think and if you add that label it will go around hunting for CIME and then produce the report post it on the issue and it will remove the label so obviously the aim there is that code submitted to integration does not have any coding style issues and it merges cleanly and that kind of thing I mean there are it is not perfect on that Moodle site issue that I have pasted there is a number of sub tasks and there is like a suggestion from Tim Tim Hunt to Run Shifter and the less compiler on the issues and report those problems but anyway that is the first issue the second thing I wanted to talk about was our testing requirements so hopefully you know that Moodle now comes with two different testing suites we have got the PHP unit tests and the B-HAT acceptance tests which use Selenium to run UI tests on it and we have got about 300 B-HAT scenarios and 10,000 steps at the moment and about 2,500 PHP unit tests and about 45,000 assertions so we are also picking up many issues with the unit tests and the acceptance tests we and the integration team and Moodle HQ think that having this suite of tests really brings massive benefits to us in stability so our guidelines are at the moment any new changes must not break the unit test suite that's a non-negotiable thing if you end up breaking the test suite we either fix it or revert it so be very conscious of that and run the tests in the code area that your Moodle find before you submit it for integration new features must be accompanied by unit tests and acceptance tests so if you are adding a major new feature you should be factoring in the time to create these tests as part of your the scoping for your development work and bug fixes with the company automated tests are also strongly encouraged now having said that the reason that I want to kind of wanted to talk about it today is these are like the guidelines the first principles that we work from but the reason that we've got the integration team there as humans rather than CI bot is to actually use our common sense and you know apply the rules where they make sense so if you submit code for integration which doesn't meet those guidelines then it runs the risk of being rejected so examples of situations where we'll be more flexible new and inexperienced contributors of Moodle and people who aren't sending things frequently or when the developer has demonstrated an attempt to include tests but has hit a blocker outside of their control so we'd like to see you discuss why you haven't written tests that will increase your chances of success getting through integration but conversely examples of situations where we'll be less flexible about these requirements large changes if you're submitting a massive amount of code for integration well you're effectively handing it over to us to maintain to some extent and you know that's what we want with it also if you're making a change to a code area that is already massively covered by unit tests well you may not have had time to do it but we've got near 100% coverage in that area and we prefer to keep it that way and also lack of time like I say this should be part of your estimating time for submitting code for integration having said that about the code areas we also want to increase our code coverage so just because an area hasn't been tested before doesn't mean that you should avoid it in future just looking a bit at the chat logs well I'll go on to the next item Behats so point number three on my list of links is an update on some information on the browsers that Behats works with recently we've got Behats working very stably on Firefox Chrome and Phantom.js which is a headless webkit based browser which runs on the command line and if you're integrating with automated scripts it's sort of nicer because you don't have a browser window popping up IE is also working but not 100% of the time there are weird edge cases and Safari is kind of highly experimental David will probably comment on what the status of that is actually we're spending quite a lot of time getting David spending quite a lot of time on stabilizing the support between all the browsers there's quite a lot of investment going into that the next item on Behats which was to make you aware of a new feature that was added last week I think which is number four on my list of links it's config.behats.screenshots.path now if you define that path when Behats hits a failure it'll take a screenshot and place it in the folder that you've specified there so that's kind of useful there's also recently Petter sort of really simplified the configuration for Behats that was so originally we thought that running well we made quite a lot of allowances to stop Behats from being used in production environments and there were quite a lot of switches to enable Behats in your config.phb files now all you need to define is Behats www root which has to be different from your normal ww root so a lot of us for example have used for our production site or a hostname like dan.moodle.local and then used 127.0.0.1 for the Behats config final item on Behats is that there's some work going on to parallel allow let's see if I can say the word the running of Behats runs because as I say there's 10,000 steps at the moment it takes quite a long time to run always quicker than me typing those myself and yeah well let's read the chat back it's not overnight Tim we're running it multiple times a day it doesn't always have to be overnight next one so just some other bits and pieces that I thought I would highlight the back porting policy that's point number 5 on my list of links the general policy is bug fixes should get back ported into all stable branches so for example at the moment your bug fix would go into master moodle 2.7 sorry that's moodle 2.7 moodle 2.6.2 and moodle 2.5 whatever the latest release is there there are a few cases kind of particularly identified PHP docs only issues so if you want to fix PHP docs or add PHP docs we'll accept fixes for all the branches but if you're adding new doc blocks we request them on master only the main reason is to reduce the risk of conflicts and with testing for example adding unit tests or adding features to the testing frameworks we try and back port those as far as possible without being too risky so we're a little bit more accepting of improvements to the testing frameworks for the benefit of increased unit testing and that kind of thing next thing was the integration schedule point number 6 on my item just a reminder that our schedule in normal operation is Monday and Tuesday we're integrating new changes and it really if you can respond to any comments that we have on Monday and Tuesday it really increases your chances of success because on Wednesday we switched to testing mode from an integrator's point of view if there's issues outstanding without any feedback from the developer on Wednesday that means we either reject it or test it ourselves or find volunteers and also we're aiming to always release on Thursdays and that doesn't happen very often these days so if you can respond quickly to our heavy needs then that's good. I've talked about this in other areas we realize it's kind of is a little bit unfair on you guys because we have our schedule we enforce you sticking to it and we don't really abide to any guidelines to review your changes but that's life freeze the integration team I think we thought we could have frozen better last release and we're going to really pump it up again the freeze up this release so please get your changes in before the code freeze will be less relaxed about it that's it from me I'm just going to read the questions thanks Dan I don't think there's any other unanswered questions that's a very good summary and nice slides too, interesting thanks the next one's I didn't put that in but long term support so as you probably already know we were aiming towards 2.7 being a long term support release and that has not changed so it still is aimed to be a long term support it's long term support really just means that we're not going to stop porting fixes to it after 18 months which is the current policy but to keep it longer longer being probably 3 years I guess but that's not fully decided yet and it may even change perhaps we keep it until some metric happens people are no longer installing it or using it or something but it will be much longer than the usual so again that will cost us but a lot of people have been wanting it and it's why are we doing a lot of sort of infrastructure type things still in this release to try and get them in for that so it's always the case where you can always think well the next version would be better because then we'll have this and we'll have that and we'll have that that happens every release basically so we have to just draw a line at some point well no because we want infrastructure changes so that people can build a plug-ins ecosystem on top of those infrastructure changes and we don't want people stuck in the dark ages for years like 1.9 so but I do get that point there probably will be increased momentum on the new releases after 2.7 as well so yeah so currently just answering the question there from Eric the Volatius version need backports for bugs that's the idea is that the devs will be required to backport bug fixes to that version for some years which is a pain in the butt but needs to be done, a lot of people want to stabilize on that release to do big projects lots of things and we don't want to be updating very often well you know what a lot of support release is so yeah we're going to have to have some sort of policy I don't think we've decided yet what that policy will be I don't think all the bugs are going to be possible but right now we have the policy that all bug fixes are supposed to go back for the last two releases before the current one three releases total for 18 months and not all bugs are going are actually being backported because some of them are too difficult or for whatever reason so it's a bit of a judgment call but in general that's what we're trying to always do backport security stuff obviously very important but I would say even any data loss has to happen some it's a usability problems that are being fixed in current versions and it's not too hard to backport them, we should backport them so it's not a bad idea Justin so we're trying to label it a problem but it's not a huge difference from our current policy it's just adding one version to that that's not going to time out I did say it would be at least three years I think three years is probably what people would really be asking for any longer than that we'll decide when we get there but that's a way off ok so moving on the next question there's some questions at the bottom but I don't know how much we can answer this but Michael maybe you want to just take this are you still there about a better solution we really need this solution is a bit odd with it's flag and all sort of works so Dan, Michael we're going to marry three months now and the involvement is increasing which is great we're also trying to involve people outside as well and have the focus shift for each meeting the solutions that we've used in the past we tried big blue button and that was ok it was able to cater for a large group of people which was good technical problems people trying to get in didn't work very well under Linux and screen sharing was rather poor and the recordings also were a bit problematic we couldn't capture them for long term records of what was going on these hangouts with streaming the video through YouTube seems to be working a bit more solidly but then there are other limitations for example we can only have 10 or up to 10 people able to speak in the meeting so we have to be selective about that and so the rest of the people are viewing it through YouTube and there is a delay for those people a bit of a lag so they get it there a few minutes behind when they actually see what's going on live so I guess what I'm asking is are there solutions that other people have come across that could be up for consideration for these meetings things that are being used elsewhere that you like we could try I guess if you have suggestions please type them in the dev chat and comment on the actual developer meeting wikipage at some stage in the future or send your suggestions to me directly people already suggesting something F-lux I'm not sure what that is but we'll have to check it out I haven't tried go to a meeting it would also have to be able to be used without any specific software requirements and it would have to be cross platform obviously yeah guys so really what we're interested in is something that can handle a large group of people we're talking between 50 and 100 and maybe even more because we're getting a lot of people watching this video afterwards something that can be recorded and something that can screen if we have something that more people can participate in can anyone else hear me not critical fabulous alright well up on and if there's more smoke signals could work yeah please keep going suggesting things if you had F-lux you wouldn't have this problem I don't know what it is something's just cutting you off the government damn government yes the NSA better than that well I think we covered that pretty much so keep your eyes open everyone and if you see something please just let Michael know and ideally if we could have open source I would love it a big blue button maybe just needs a bit of work to help it it's so close I actually think it's interface is perfect it's just quality it's not quite hanging in there okay those last questions on the list so okay so what are the plans 2.7 for grade book improvements there is a big discussion in forums about that there was a bunch of smaller things have happened already just was mentioned today in our own HQ chat about more interface type improvements have already landed but in terms of larger things there's three main things going on that I know of and we need to do a big project to bring them all together and it's not going to be in 2.7 it'll be probably 2.8 so the three things that are happening one there is a project among a bunch of universities in Australia who are looking at grade book stuff with net spot and they came up with a load of improvements that they're going to develop and throw back towards core most of them are all plug-in type things and they're non-controversial quite nice interface fixes but fairly light more interface stuff the second group is Louisiana State University obviously in the USA and Robert Russo and over the years he's been hacking away at grade book and has come up with lots of interface fixes and changes and stuff that a lot of people are already using in production and it's quite well regarded so there is all that it's not clear yet how much of that works for people outside the US it's not clear how good the code is in terms of unit tests and all the things for integration so there's that and the third one is that Petta finally put to paper rather in the chat some ideas for the grade book which are much more core type things a bit of a refactor of stuff and if you're interested in that then I suggest you go and read it there is a tracker issue but this is the page in the in the Moodle docs that's covering it so have a read about that it's too much to summarize it all now but all those things kind of we're going to have to take all together I think and have a big grade book project at some point soon it's getting urgent but it's not going to be in this release at all I'll just check the chat ok so I missed something team do they have an epic for it in the tracker there are issues for it ah yes well yes so Petta the thing I just attribute to Petta David Mudrak came up with a lot of that too I believe they have Tim I will do a quick search and try and find it so here is the here's the chat in the Moodle forums and I thought there was an issue for that I think there's some issues mentioned amongst this chat of hand I don't know exactly where it is look there I'm pretty sure you've already seen that yeah we'll add them later ok next thing here will the base team no longer receive updates or be actively worked on I don't know who asked that but yes I mean it is being sort of phased out it's really deprecated it's been kept there obviously for long term support and a lot of themes are based on base so it will get bug fixes I imagine but it's not going to be getting a lot of love as we're moving to Bootstrap for the the new main framework at some point base might go away in some future version that's not clear when that will be when I say go away it might become an option option to install or something but there's no harm in keeping it the I mean once you start just a bit more on that once you start using a clean theme or a bootstrap theme it's pretty hard to go back to the old theme so I think you'll all agree so it really is the way for the future any more changes to the event system I think Raj pretty much covered that maybe someone wants to maybe want to cut in there from HQ as far as I know no changes apart from extensions and there was one rename of something there was some field called level which is a reserved word in SQL I think it's been changed to EDU level was there another one Dan can someone else cover that question so now I was going to cover the question alright well I think I must have answered it so there was a someone in the chat said there was one other small change but there's no other major changes expected the event system is pretty much was set in stone 2.6 and it's just a matter of extending it what's the next page global search now that's an interesting one I put that I think I saw Thomas here before Tomas Murek global 2 this window I'm sharing so this is the issue for that and the code has been written and it has now been in the backlog of the backend team for review because well it needs to be reviewed I haven't personally I have no idea about code at all and I haven't seen it running yet so quite keen to play with it there's a demo there so but it looks like it's really made a lot of progress so I'm pretty happy to see that that's global search so I hope the backend team will get to it in this cycle very soon of course they are dealing with a lot of logging events right now that's it for the list I saw a question a bit further up here from Sam about namespaces I guess that's chat this is going to be really weird because I'm reading off chat and responding and it's really out of sync so I don't know hopefully it'll make sense in the end but Tim's saying there is no mention of the events changes in the 2.6 release notes I find that hard to believe almost certain it's there if it's not there that is a terrible, terrible oversight well the second one there's a new events infrastructure true it could be a lot clearer than it is but it is at least there yeah no I agree that probably should have been more highlighted yeah so there's the link to the docs well there is these docs I guess there is a section here on migration but is it covered? Not really probably should be. A Moodle site bug would be great Tim thank you yes no it should be it should be right there on the front page Moodle dev docs page speaking of which actually this page although slightly wanting is going to be really the main page for developers the starting page so if there's things that need to be added here then please suggest them but we are going to give a bit of an overhaul here you'll see on the new Moodle.org page which maybe you haven't already seen it yet which looks a bit like this so the new Moodle.org homepage has a bunch of things and links and has some forum stuff being surfaced out to the front page it's very language aware and so on but at the top here we have a site bar and the site bar points to the major sites that we have and not without some thought so the development link here goes to that developer homepage on Moodle docs as the front page of development and the color of development is this sort of blue bluey purple color so you'll see that there's sort of highlighting on all the developer stuff it'll all be blueish so the tracker also will have some blue tinting and the development stuff translations are sort of red Moodle.net it's this kind of bright orange the demos are grey the downloads are green and so on documentation is purple so yeah everything's going to be a bit color coded so all that developer stuff will be this nice sort of a bluey color and it will be pretty nifty but Cassie yeah maybe you haven't seen the new page yet it's still being not quite ready for production but soon we hope and at the same time Moodle.org is moving towards server in Germany which should hopefully make it stable it's a bunch of rambling from me any other questions to talk about before we close up it's been two hours well I guess not the good thing is that the conversation isn't end so please come into the dev chat here anytime if you're there already then you know you belong there so we'll keep on talking and thanks very much for all your various work on Moodle those of you in the hangout want to say any final words Michael anything you've forgotten HQ Michael I'll have notes and all sorts of chat log and we'll have the recording up on this on the developer meeting on the wiki tomorrow morning well thanks all cheers have a lovely day or night wherever you are and thank you see you later bye