 Mae'r sefydlu. Mae'r gwlad sy'n fawr yng Nghaerfodol. Felly, mae'r fwrdd ar y gelaf. Yn y gweithio ar y mawr yng Nghaerfodol, a ddwi'n gweithio ar gyfer y gwahanol. Dwi'n gwybodiaeth i gychwyn i chi'n meddwl i chi, mae dyma'r gwahanol yn hollol. Mae'r gwaith i gyd wedi colli'r gwahanol. I can't hear you. I'm not pretty. Yn y troi cael Fionna, we decided that we should have a job for training my life to go. It should open in my language to teach you to help you again. Thank you for that. We didn't necessarily have a purpose for adopting the job for training my life to go. I know a lot of people that have probably commented on things like Saturday's Trains and all, so I don't know these at all. But, yes, triple draw script is very old, I think very mysterious, I have a number one here. I've only had a recap of John's face, I can imagine. It's very easy to have an opinion on what your favourite draw script of training on is. So we have a big meeting and decided to just choose something to show everyone about this video or something. And we decided to choose to react. Anyone want to use the app a little bit? So we chose to react because it's super popular, it's seen like the most popular drawing ever time. Also the people who were sat on our table, they even do react, so we're probably going to do the ones with the most voted at work, so that's seen like a good choice. Because there's about a billion react builds out there now, we wanted to give something to the community that would help everyone in the long run. So, as I say, we didn't know what we wanted to build, we didn't know that we wanted to improve Drupal's APIs. So we figured even if we build something rubbish, at least we can then improve the API first experience. So whatever we choose, we want to do something good. There's a lot of JavaScript of CMSs popping up now. Does anyone use any of the Cloud CMSs? Something like that. Do you want to try out the CMSs? Good to see what's there, but the CMSs don't. I always chuckle when I get into some client work and I turn up and they're like, now we need to cut off everything, we need to get rid of Drupal internally. I chuckle to myself because I'm like, I think if people really don't appreciate the policy that we've solved, so we need to do more clinical, we need to do workflows, and adding those together actually is a pretty hard problem that we've been rolling off for many, many years now. Does anyone here use Elasticsearch? Okay, keep your hand up if you use Elasticsearch. Right, now keep your hand up if you also programme job regularly. Yeah. There's another reason that people say, oh, I'm going to do this in Drupal, is that people say that PhD is a cool anymore, you just did a job, a script on a rast, I don't know, whatever it's called. You can build something that's kind of an API box for CMSs and most people aren't actually going to care when it's written in, and I can't see anything that really matters. You don't know Java, but you will use Elasticsearch so we can kind of have those little blackboards that are sitting there that we can use. As a community as well, we have a really deep knowledge of content strategy and molly problems that I think people can certainly under-appreciate, especially when you've got very complex content models, boxes that have experiences, looking at all those things together and all the consequences of having these, like, deeply linked and tested models. So I'm joking at, there were some angry people in my web-comments. Okay. How was it? Yes. You don't see the answers. Unfortunately right now, there's multiple web-comment libraries and they don't really have a degree standard, so it would be kind of hard for us to go with something like that. Personally as well, I find the lack of component model a bit harder to work with. It's kind of more of an imperative, like, top-down data support thing that you've got going on. And the other thing is all of our components are going to be very specific for Drupal. So we don't actually care how many we get to works on WordPress or stuff like that. We're only going to install more works with Drupal. We're not Google Maps, for example, because they have a work component and that's really cool because you can embed a work component on another site and you'll get all the controls and the CSS and JavaScript that comes in with that but that's a very specific application. Maybe you can embed a work component to one giant work component and you're going to get it embedded in some of my site. So, maybe, but... So, after we did that, we went on and we decided to build something. We had to build the game, but it's not going to be possible very well. But the first thing we decided to build was the emissions page and we did that because it was quite an isolated area of Drupal. It had quite a simple data model. Just logging messages, what time it happened. Oh, sorry. So, we did a local page and then we decided to do permissions which you can see up here and it has very interesting things that we can see in you guys. So, on the left is the permissions page. In the middle, you can see the control, the little check boxes so these are the permissions that you have enabled. Now, right now, when you hit those ADIs on Drupal, you can get the HR enabled. So, that's all we know who the creator is. What you can't tell you is all of those other things that are coming out. So, all permissions aren't enabled. They're not really stored that way. So, we had to be lower on the key on any point to give us that data. We don't think that's going forward anytime soon. But we... For a second. So, if you go on to your data you'll see we have this big ugly admin UI support module. And this, like that, we decided to start checking all of these random little API only points in. Because, as you know, going through the core can be quite a little process. So, we didn't want to be held up and stuff like that. So, we're just throwing it in and then later on we might figure out what goes into core. So, we built those. That was pretty good. So, what is it we could build an application JavaScript not surprising. And we also experimented with the rest of the company. I just just done everything. I've got to catch up. And you can embed with a little JavaScript application inside of it. So, Drupal loads its regular page and then you can load its JavaScript on top and have that little thing over here being all interactive. The problem with that log becomes its own mini JavaScript application. They're not really one cohesive application. So, you're mixing in lots of different unrelated bits of JavaScript. So, on top of that we're also mixing in Drupal's JavaScript which is still setting up being ugly and stealing stuff all over the place. So, we didn't find that was very good to work with from a developer's point of view and we didn't find... We didn't think it would be very good to work with if you were a React developer. So, one of the things we would love is that a React developer would be able to come to this project. They'd be able to see it. It would look really similar to how we've seen any other React project. We'd be able to get going really quickly. If we did it this way, then first we'd have to be like, okay, so this is a Drupal module and this is Yama files. So, first you have to figure out half of Drupal in the theming system and all this stuff and then you can embed your React application inside this quick template that will probably run on screaming by then. So, we want to make it nice and familiar to everyone. We also couldn't take advantage... Oh, there we go. We also... There's no chance of being bad. We can't take advantage of some of the things that JavaScript full JavaScript applications give us very easily. So, one of those things is a Drupal team. There's an example of this here. So, this is going to the podcast page. Okay, so I'm going to go to the podcast page community. When I click that link, the page didn't actually refresh. They just pulled in all of these little things that basically are on the right there. So, it's such a nice place to be around so that you don't have to pull in all the overhead of the shell of the application. I don't know if you've seen any stuff Google is pushing with the grassy web apps. Anyone? Very cool, yeah. So, P.W. Murray said, I don't really... I mean, I don't want to see a thing. I was going to say the last thing, but we are. This is a particular way of building an application so, an example of this is a performance and there's a ton of other things that you can do. They've got some really good tutorials if you want to go and check out that stuff and it doesn't really require you to have to learn the answer and stuff like that, but you can have DGs and some other variables. So, after that, we came up with three guidance principles for us. One, we wanted to simplify. Two, we wanted to develop anise, women's s. We wanted to make a JavaScript developer experience as familiar as possible to existing developers of our nation. So, the thing we're facing on our application right now is we'll create a reactor. So, we'll try it out. Yeah, I think that's cool. So, we'll try it out. We'll try it out. Yeah, I think that's cool. So, if you would like to do a reactor that's been such a creative reactor is the basis of the project and it kind of simplifies all the JavaScript tooling for you because that's for me, the most difficult part of getting started with these kind of projects. So, they can take care of all of that. One of the really nice things for us is that we don't have to maintain part as well if we're still using our application. So far, that's been working out really, really well for us. We had an issue quite a while ago now, but it was a dark type script. If you don't know type script, it's like dark script, it's just as types. This is what it is. It's really good. It helps with debugging. All that stuff. We talked about it for a while and we decided we didn't want to add it eventually but not necessarily move away from all the cool things the CR gave us. So, we put it to our site and then a few months later created our actual type script. So, all we did was upgrade and then we just got all these awesome new features and we didn't have to do anything and we didn't have to maintain it. So, we're very happy about that. And then, so, to embrace. Throughout, we're going to embrace the world's most tools and practices familiar to existing JavaScript developers with the aim to bring more of the people into the Drupal community, both users and approaches. So, we live on GitHub. Everyone needs GitHub every single day. Yeah. So, one of the things that really irritates me about working on Drupal of many is that I have to go on to Drupal and do stuff and spend my entire working day on GitHub and my head is just in those workloads I'm used to looking at issues I like to be able to do lots of stuff on there So, switching over to Drupal.org for me can be kind of irritating not that Drupal.org is bad if you spend a little bit on there and I'm sure you're irritated when you come to Drupal to GitHub but most of the JavaScript community is also on GitHub and one of the things we found was we get some really nice drive-by from our traditions so if people come across our repo there's the little thing you're in there send us a formal question off they go they're not necessarily interested in sticking around for ages that's totally fine we really appreciate that they were able to contribute so easily we're also using CircleCI which DrupalCI is very similar it just gives us a little bit more control over what we can deal with our continuous integration DrupalCI is very good but we can often require help people from the DA as soon as we want to customise it because it wasn't really built for these JavaScript and decoupled environments so we feel bad every time we have to bother them and be like oh can you try and make it do this because we added Nightwatch to Core in 8.6 I think there was lots of back and forth with people from the DA to try and get running on the taskbar so we just moved off to CircleCI another tool I really love that we have is called GreenKeeper I'm really mad and I don't keep up with this full request every time I find out-of-date things in our JavaScript dependencies it just flies by and makes a full request tells us that this all version is going to break your build so I'm going to go out on the test for us so someone can just come in and hit merge and hopefully you won't end up with loads of loads of out-of-date packages which is really nice ok, you should build one definitely use it so we then were building this demo for DrupalCI I'm going to show you the demo I'm going to just hit it forward to put it into the keynote so I think this was to let you listen because that is basically the most important part of Drupal we didn't have a design at this point so we based everything on the material for you which is all the design language and some of the limited lots of the out components in it so we were able to just grab those and put them in which is kind of nice so we can just cross we'll show you the demo we feel welcome on bar 19 Drupal's administration delay and we're very excited to show you what we feel so far in this demo we're using material design components and for the design experience by the Drupal community and currently using the new avenue it was really awesome to just play on my laptop or not yeah hi everybody we feel welcome on bar 19 Drupal's administration delay and we're very excited to show you what we feel so far in this demo we're using material design components and for the design experience by the Drupal community and currently using the new avenue on Drupal's demo it's the contact list changing pages sound specifically because there's no page local moving to the next page our theme magazine is open for guest recipes and it seems like there's some sandwich to eat our first skill is the link to only a few recipes those appear immediately because there's no separate page label let's select all of the sound content created confirmation dialog doesn't require a server request and so if there's need in the all the sound contents are deleted now next let's create some new content form is generated dynamically based on field configurations in the backend so just like before whenever changes are made to the data structure they're immediately visible on the avenue line other than that we're currently using this command center opening the other generation of the score by a supply and load endpoint which was introduced in Drupal 8.6 we've also added auto-saving if you get distracted whilst creating or editing content the application suggests retrieving the changes so we get back to the form let's now get back to the content the same to make sure that my colleague didn't already create this article content was created yet so we can go ahead and create it and now we can save the article we've implemented the new UI in a way that pages can be replaced gradually see how it fell back to the server in the case of a non-supported page I've got lots of bad reasons I've had a look at lots of spam recipes and if you go on to spam.org we have JNU and RFCs and it is horrifying it's been a while we've had designers working on figuring out what it is we should actually build this is some of the stuff they came to us with Drupal UI you can see the same format being here on the left saying inline and the back end and this turned out to be quite controversial maybe amongst the team that were in and I think in it as well there was a lot pushing to have a Gutenberg style editor it's the WordPress editor it's the WordPress 5 5 front page but the cms is it does actually have some structure content in it as well so it has a concept of locks and the structure it goes with locks so you should be able to drive it all around and it's going to look exactly the same when you say it of course so that was really nice product demos it doesn't really work so well for editors in the long run the other thing we it tells everyone who needs power to us and people really really love power to us so everyone who's here needs power to us literally everyone it's like getting caught with the game so it helps people a bit so we argue a lot about the stuff that we are open we ask people is the demo we built actually useful for you and everyone said no because it doesn't have power to us so it's actually we reduce just fair enough so at that point we decided to try to get people who are content strategy and the community is involved because they work across lots of different cmss and they're also generally around the projects that are kind of early in stage and they're figuring out what is the content strategy and why I'm for some or what not so this is a quote from one of them I've seen vendors we found in Avenue Island very plan fair enough you shouldn't do it, it's silly he said that is people, it's useful it has a lot of unique things and it's happened in space it kind of looks awful when you start out but it's actually very hard to build generic solutions for a problem you don't know it exists yet so when you're in trouble you can quickly build these better interfaces depending on what your partner model is wordpress on the other hand has been ripping on this one block content type for the 50 years so it's been really really good making a block because I know we're going into a client I know we just really like wordpress can we use wordpress it happens all the time it's really easy to write a block it's super nice in space it's good but if you want to make your own block and you have a content model I think some of my people is way more appropriate but like I said I think it's totally okay to not be for everybody so I think maybe seven years ago you should build this in Drupal and I go for Drupal look even general load but now there's so much options out there for them I think if someone had a flower shop which always used to be the example of a flower shop site I would say used to Squarespace you don't need to maintain a digital site it's kind of tricky and there's maintenance over there just go build a lot of resources that's fine I don't think we need to try and get into the same market that those kind of things are and that said it's actually very difficult to build a good editorial experience without being able to tailor a good editorial content but what we want to do is give you the tools so that you can build less of the interfaces and you can build a nice review and all that stuff the other major item that came about in these WordPress elements that we had a few weeks later someone from the WordPress facility team actually resigned as you know accessibility is a big thing it's a big thing in general can you probably be the most accessible TNS site or accessibility expert room and anyone work with government projects here awesome so in the UK I believe for government projects it has to be completely accessible for all the users Gutenberg what they were done from was found to be incredibly inaccessible but they got so far in the government cycle that they were like screw it, we're just going to release it and we can't really do anything about it now so as it's probably not appropriate some of those kinds of projects met up it's a little bit tough because I think that I'd like to say it has to be accessible for your users and so it was a bit of a debate about who those users are so you can make the front end still accessible to people but in my opinion if the editors aren't accessible we're freezing our people from being able to take those kind of jobs you should be able to edit those things and should be able to do this site building thank you very much it's a fun group there's also a usability test for us and some good people are focused on evolving web.ca we've had a lot of results with that they went up and they compared lots of the cnc they compared a temple, they crafted a website and WordPress and it turned out that one on the e-point was pre-u the WordPress Gutenberg there's so much like a front-end of the site that users are surprised at the bit of point here and they realise that the theme on a site is different and perhaps less good I think it might really massively go down because in order to so site by site preview is one of the things that we're looking at but the problem is that if we do site by site preview we're going to also have to build an app which renders Truthwell as well and so we've just massively leveled all of our work so we're going to see if we can do that in a basic way and maybe kind of leave the doors open and that you all can go and implement whatever you need to before your previewing stuff but for now we've decided to put that aside because it's just getting so so contentious that we weren't really able to move forward with any other stuff so if you have any of the thoughts about that please come and talk to us all and then one last and a quote from a usability test is that editors appreciate that a more complex why it is necessary for a more complex website and that doesn't mean that we don't need to create a new differently app in UI, it just means that some degree of complexity is required so we're going to be able to build a new front page in conclusion and we're going to keep coming back so it's structured content versus edit in place does anyone run edit in place and start with clients it's pretty sure it's like everyone says they want it and they start to implement it and they're like oh god we didn't want this at all but it was really awesome for the demos and the Drupal app interface is definitely something that I'm going to be hearing from all sorts of groups especially it's like a podcast that every time they get into pitch battles I guess with other CNNs they feel like we have way more functionality than them that they're having interface with it's so crap that they can't really see through them there's a really good article by Jeremy it's quite old now there's a little battle to the body to build and I love everyone in and age I don't really know who you have but it's a quick map HTML isn't expressive enough to describe content with new loss relationships and the full page is the way it makes it worse by editing to mask it editing to understand specific relationships in content and all and any tools to work with but I don't really know what you think of the Drupal app I don't really know what you think of the Drupal app so just trying to talk about kind of the gap in the meantime we think it's going to take a really, really long time to build something that's actually useful some of the initiatives I've come after to work are set on refresh and there's more to it so these are some of our I don't know what the sign is to use but this is actually my phone the lines we're actually going to be using these for the JavaScript application it's the idea to just be something that's simple and clean but this is alright I hope it doesn't work I don't know if this is actually fine so as you can see it's just a lot cleaner than so better if you all kind of be but if you like these things so kind of tie this over for now I just need to look at the Drupal app if you want to try it out I'll give you a look at the end but to talk about the Drupal app it's such a great app you can grab it with a closer require for now you need to run a couple of miles to build the JavaScript to see any of that and I'll shift with it but yeah that's pretty easy that's really nice so that should be I think that any of the next release is Drupal but in mind you'll need to be saying that that's true I actually do need to turn it up so the next thing we've got on the JavaScript side is extension points because obviously if we can't extend anything in it out anyway it's going to be useless because the reason we all love Drupal so much is we can go in and add whatever we want to do so I'm going to try and show you there over there and I can't talk about it because I'm trying to do this at the moment before so can you see that okay so this is the animal file that's going to tell you the components it's in your Drupal model right now we're going to apply to the component with the easy option buttons and you can have multiple multiple lines of those but you can go out that key and we're going to add the can I pass that on to your Drupal? the way it's about widget we need the JSX in the middle there just a simple form and we're going to set out a lot of options that are there so in real life this is actually perhaps just wonderful that you put in but I've now just been in the room so this is actually a few options and so I'm going to select check out some videos and then when we reach for ash it should give us what you want to be able to find over there so there's two options for the bar and then we can add it because it's all live loading and it's going to be cool and it's going to find its own background and it should be easy to do so that's what we're going to ask the other components in probably and the second one we're going to do is add it in different routes right now they're going to need to get some of your module so that's just what I love and you can get a route and if you go over here and add it with that ah that's so dumb it's a little worse well this is going to change the text and that's what I'm going to say find yourself because I can go on the journey with all this you can open your URL and add your widget so it's modeling and then test and it's going to be fine so you can add all your different pages on there so that's around two major essential points where you're going to be working on what we've seen a lot more to complete what the Drupal does probably the Drupal does a lot and we're a very small team and Drupal development is still happening and so we can't say everyone has to stop developing now or we can work on this for two years because that would be ridiculous so I think what we're going to do with it is going to be a much smaller subset of extension points so far, regular Drupal otherwise we've just never released anything because it would just be costly to check it out or everything that's going on so hopefully you can make something that's actually useful for you and the world so if you would like to tell us about what you only definitely do then you can come to our meetings they have been in Drupal's app there's a JavaScript channel and we have a meeting on Mondays and there's our MII channel which is mostly where they're working in Claro which is a new team I can't remember what day they had the meeting so I'm moving to someone in the audience who's arriving to know what was going on there's Slack meetings so they're all done with a text address so if you just want to hang around and read what's going on and catch up with what you can so I don't feel that to join a meeting you have to go on a video or anything like that you can go on our give-up and try the project out we actually have a composer's reading project command and I'll download Drupal for you install it with SQLite and give you the bundle version of our avenue line so you've got one command take a million years to run with Umami installed and our UIP interface and hopefully it's not broken and it'll work so try it out, let us know if it works and then that's where it's going to be fresh so thank you very much and do you have any questions?