 Nice who is a Drupal service provider of some kind Excellent, so does everybody more or less do projects for Clients for other companies Yes, is there anybody who? Works inside an organization, but does the Drupal inside there? Okay, so and How many of you are? Accidental business people I mean you learn to code you found Drupal you did some stuff And you found yourself running a business you found yourself selling Instead of just writing code and then you have to You know you have to you You love what you do we have this beautiful system and we can make all these incredible experiences, right? But then you have to sort of Explain that to someone else and you get that blank stare across the table and they know they don't you figure They don't get why you're really enthusiastic about dependency injection or what have you right so As geeks right and I'm in this the same situation where I accidentally fell into Into selling Drupal in in some interesting ways We get excited about the wrong stuff to sell our wares We get really excited about semantically correct markup and reducing divs in the theme layer and Dependency injection and object-oriented code and how interfaces mean that we don't have to use you know the naming convention magic of hooks anymore That's all fantastic nobody else cares but us and So what I want to talk about today is We have this incredible new System called Drupal 8 that we can use to You know not only pay our own rent and and you know build beautiful things But we can help other people realize their vision get their business done and so on and I want to talk about How we tell those stories and I'm hoping that it'll help you you know win some more deals make Drupal bigger better for all of us Everybody pretty much calls me jam except my mother. I am the evangelist developer relations at Acquia, which is I like the title It's a it's a I like the job too Very active at the Acquia Podcast is this working? Haha, which we now have this thing called the I think we call it the developer portal dev dot Acquia dot com if you go there I write the Drupal 8 module of the week series Say I've been doing that since January. That's been really fun two things there go read it because it's Similar to some of the ideas that I'm talking about today And also if you have a module that you've upgraded to Drupal 8 and you think people should know about it I'm looking for my next series of these blog posts. So Drupal 8 modules that you love or that are yours come pitch them to me I would love to talk about that Yeah, I'm pretty easy to find on the web horn cologne at Twitter jam at Acquia calm and yeah, I'd love to talk with you any time So we're all here cuz Drupal 7 was a huge success Okay, something like 2% of the web is on Drupal something like 5% of websites where we can identify a CMS that's Drupal We have More than 35,000 active developer accounts on Drupal org more than Certainly more than it depends on how you slice it and dice it but say 80 a hundred thousand Active accounts on Drupal org that the membership number is kind of fun But I really don't think that there are a million people coming to Drupal org So so Drupal's Drupal's done really well and right away Selling Drupal. Okay. There are there are a couple of salient facts here One of them is not even on the slide But Drupal's been around for 15 years and in minute zero when you download Drupal and you start to work for someone else You can tell them that they haven't just hired you they've hired 30,000 other people who are taking care of this stuff and a group of people who've been building on their success on the web for 15 years okay, so millions of hours of coding and and Incredible amount of experience have gone into this So I like that and you can say hey this this was Drupal called Austin The group photo. That's me That is what 10% of our developer community looks like right that's about 3500 people there in Austin. That's what 10% of our developer community looks like that's what you're hiring And if you want to find out more about what Drupal 7 is done The case studies on Drupal calm and Drupal org tell a tiny piece of that story and it's a it's a useful resource now Who was incredibly happy when Drupal 8 came out last November? You're not putting your hand up And who was unbelievably relieved that it was finally out Oh so So this is a system that you know Dries was probably thinking about eight or ten years ago and and and put into you know Put the pieces into place seven years ago and cut the first code for Six six years ago, and we finally got it out in no in November And he had all these ideas and of course all of the core community and the people who touched the stuff Not just Dries, but he's a metaphor for us in this moment He thought about all this stuff and put it in motion five years ago so there's a huge risk people might ask you this there's a huge risk that You're building their stuff with the technology from five years ago five years ago Five years ago my pocket supercomputer was not as powerful five years ago People were still accessing the web the majority of the time on full-size monitors five years ago Drupal 7 and Every other system essentially was assuming that you were making a request getting a response to build an html Web page on a giant screen in a browser and you know our reality today is not like that so Are we getting yesterday's technology or is this something that that people should really invest in now and I Am certain that actually Drupal 8 is the right Technology at the right time it gives us an incredible amount of capabilities to to really not only do a great job with today's technology But it's been constructed in a way that it's gonna allow us to keep ourselves relevant to keep innovating much much faster And much more predictably within the project and deliver great experiences for The next however long Drupal 8 is our main release and and probably beyond there as well copy down this link, but The ultimate guide to Drupal 8 has just been rewritten Angie Byron and I spent about the last month redoing this book Next week I'm going to put up online the ultimate guide to Drupal 8 revised and updated for Drupal 8.1 We just finished it last week. I've got a blog post ready to go, but we're not releasing it during the Chaos of Drupal con and it's been a it's been a helpful resource. It's a it's a broad overview of a lot of the features from a Pretty good compromise position between technical and Non-technical people. It's a it's a good read. I think it's a valuable resource. You can you know print it out do whatever you want with it so I'm gonna go through a list now of ten Feature areas and some of them interlock and some of them are Relatively simple and some of them are relatively complex ten feature areas that are new things in Drupal 8 And all of this builds on Drupal 7 all of this builds on the success that we had and things that Drupal 7 already did Things that made us helped us be this successful. I'm not really going to talk about those So let's just assume for argument's sake that everything we could do in Drupal 7 We can do in Drupal 8 and we'll talk about the new parts and I'm talk about them in terms of Business value and and how how certain problems are solved and what we have from that And I just want to mention on the side as well. I'm doing a I want to turn this into a series of blog posts. I've done this presentation a couple times and Thankfully so far. There's been a really positive response. I hope you're not the exception today and The the the mental model that I have in the back of my head I'd like to put it in your mind as well because I don't say this explicitly when I'm talking about this now necessarily but there are a number of different audiences that we Can and are generating business value for so, you know for developers and for managers and for Drupal service providing companies There's a lot of value as well as for site owners and customers and clients and so on so I'm really hoping to turn this Talk into a series of posts that that say things in terms of like well this feature, you know can You know help you save this help you achieve that help you optimize that you know so That's my goal here is I want to help I want to I want to talk through the technical stuff in a way that non-technical people might be interested in and I'm really really hoping It'll help you sell this cool new toy that we have so a huge a huge big deal for us in Europe and and other places in the world where there are countries with multiple official languages Belgium has Switzerland has four or five depending on how you count it Belgium has three India has 22 there are a lot of places in the world where you need to be able to build multilingual sites and We did very very well with multilingual in Drupal 7, but you needed 30 modules all written in different ways at different times. They were hard to get to play nice with each other to get Close to having a fully translatable system and and a nice localized internationalized site in Drupal core instead of this really complex system in Drupal 7 where content translation and Entity translation are not the same thing even though their content and then variables and then localization and everything was spread out You know all over the place in Drupal 8. We've got this beautiful situation where there are four Core modules that break out the translation internationalization stuff, excuse me You could turn them on and it will let you model any given language model that you need including having multiple different Administrator languages in the back end and it's broken into four areas because there are so many different ways that that Translation and localization can happen that there are sites where the front end will have a number of languages But the back end only one or the front end only has one in the back Kind of has a bunch or you have a regional portal where the website is the same But the content is different in different languages and so on and so forth So being able to translate the language of all of the content in a sensible way and translate all of the Sorry, I've got that No, I could usually Can also be translatable so no stone has been left unturned anything that is language is Then also translatable. That's a huge value for people like amazing labs They live in Switzerland every site they do has two to four languages in it So we're going to be able to deliver multi-lingual sites more reliably with much much less configuration time That'll help us make more money and deliver better projects for people so You know mobile first is a big big selling point now and five years ago This was surprising and interesting that this was such a big deal, but now of course we do you know Mostly use the internet via our telephones and so Drupal 7 wasn't responsive out of the box Drupal had Drupal 7 had no Assumption of doing much of anything except delivering HTML to a regular browser on a big screen and you it you know we worked with Drupal 7 for five or six years and of course We ended up being able to turn out mobile apps that were powered by it and so on but the system was never designed to do that stuff So this mobile first initiative for Drupal 8 one of the things is that well our our default output is HTML 5 and That comes with a lot of mobile optimization built in we can throw videos in there without doing anything special at all We get offline caching for free which HTML 5 and this is an interesting. This is an interesting sub theme Around Drupal 8 a lot of the decisions and choices that have been made give us a bunch of benefits for free just because we adopt a Technology like HTML 5 just because we adopt a technology like twig and symphony which I'm going to get to We get all sorts of stuff for free which makes our lives easier and better And then also lets us deliver better projects for our clients So offline caching there's some really interesting stuff going on with that. There's some Dick Olson has been working on some stuff where you make Drupal Sort of app style applications that emulate couch base in the back end. It's really it's super interesting I think there's a lot more to explore in there Browser cross compatibility is pretty much built into HTML 5. Thank goodness and overall we get a lot of cleaner code So it's great for developers. It's great for delivering multimedia. It's great for a bunch of reasons and we just get that out of the box All of Drupal 8 space themes the admin area and so on are Responsive out of the box that means if we're on a tablet or a screen or big screen or a telephone or whatever we want It will be presented differently optimized for whatever it is that we're looking at and of course You know, you can customize all that but it is Responsive right out of the box who? had the enormous pleasure in their career of Editing content or changing a setting in a view in Drupal setting on a smartphone Because that was awesome So it looked like this it was very very painful Our back end in Drupal 8 is responsive out of the box and I've already worked on Drupal 8 sites like Drupal calm And made changes on the fly on my phone And it was I'm partly I just did it because I had to prove it to myself that it was work But it's really really nice and there's some really really nice sort of There's nice candy in the way that we've implement implemented responsive first so admin works out of the box and it's got some nice tricks like The words in the menu turn into icons in in this view things can move around There's a there's a great contributed module called Responsive and off canvas menu that switches you from an on-screen menu on a big browser to To a hidden menu that comes out when you hit the hamburger button on a mobile device very very nice implementation There's so there's lots of this is enabling us to innovate in all sorts of ways. I want to mention Responsive tables here So the admin interfaces when they when they include tables and you can do this in your own stuff You can have a table displaying stuff and you can declare priorities of the columns So as your viewport gets smaller the columns will drop off in the order that you tell them to and you can only Keep the importance on ones on there. It's nice and it's a nice bit of usability. I Don't think I'm going to talk about this as much as I want to but You could argue that the way Drupal 8 has been built is also restful first I have a lot of friends in the core developer team and Some of them hate that I use these words, but I'm in marketing so I'm hoping we can get a compromise but So Drupal has a Traditionally been a really really good at integration. So it's really good at ingesting web services taking data from wherever it's supplied Turning it into content and Managing that content, you know views and all that stuff and then outputting it again And we have also you know for a long time been able to make Drupal a web service an API provider okay, but now With Drupal 8 being restfully architected internally and externally and with a couple of amazingly cool tricks We turn on restful web services turn on a couple modules in core and Well, I've got this on a later slide, but I'm gonna give the game away now one of I think possibly for me the coolest thing in Drupal 8 is that It is a user interface for building API based businesses You know there are a lot of businesses a lot of stuff that's happening in the digital sphere And I'm trying not to say on the web or on the internet now Where you are managing data Wherever you're collecting it or generating it and outputting it to create value the that MTA the New York City Public Transit Authority they have an open data portal that's powered by Drupal But that data, you know powers 50 or 100 apps that consume it and deal with it and they so there's this idea that we turn Government data for example, that's just floating around we turn that into actual money like people can make money and feed their families By extracting economic value out of data. So Drupal 8 We can build with this UI without being without being coders Okay, which is another huge thing in Drupal that we've decided to take the power of this code and put it in the hands of people using the interface so we can Design a system that ingests data models it plays with it does whatever we want and then outputs it again There's doesn't even have to be a website behind it and we're building APIs with it We're building, you know, it's just a building blocks of having a digital business So the coolest thing in Drupal 8 of all who who doesn't know who doesn't know about views Very good so every every View in Drupal 8 you can check one checkbox and that view is a rest end point So literally whatever view you can build that can be that's a web service. So This is really powerful. I'm really really excited about it and the fact that we have this restful This restful capabilities that are very solid in Drupal 8 means makes integrations much faster and easier allows us This is a slide from my friends at Pantheon of different, you know, semi-coupled decoupled App-style CMS models, whatever we can model all of this stuff now in Drupal 8 I have been hanging around in the PHP and symphony worlds a lot in the last few years This is from a talk that Campbell Vartesi and I gave at Symphony Live in Berlin where this is a, you know A fictitious app design man, I wish I could take the mic with me Okay, I oh there we go. Well, that works. Hey, so this is fun so we designed this fictitious microservices style app where You can see that we have Drupal acting as a CMS storing and managing content and It's not even handling user authentications necessarily, you know, we've integrated an LDAP directory there We've got a CRM coming in We have a custom symphony app that's going through the symphony Drupal 8 wrapper which already exists It's there for you. So you write specialist app however you want to write it We've got it in, you know, we've got our native apps of course for iPhones And then we've got something really super trendy for the cool kids So we have like a hipster ember App it's still powered by this thing. This is all happening at the same time It still powers a regular old Website, okay, which is made beautiful by twig and our content admins they have a Single interface that they have to deal with you update something here. It's a canonical data source. It gets Fixed everywhere else. I don't have to have an m.version. I don't have to have a separate app Drupal 8 powers all of this through RESTful web services so I can build one thing in one place and It handles all my needs and this is really really powerful lesson. I'm pitching to the PHP people I'm saying stop writing single-use micro CMS is that's crazy. Don't do that work, right? We've got a loosely coupled really really powerful CMS written in a standards compliant modern way in PHP Just use us we're cool and come hang out with us because we're fun Robert Douglas did this slide in Stockholm. I could also stop at this point and say that the Drupal itself of course is the result of efforts of a lot of people and this presentation I've taken pieces from Gabar hoi chi and Robert Douglas and a lot of other people that I've Seen along the way and I'm trying to collect this information and and give it to you in a you know in a compact package so Robert Douglas's slide for this was better accessibility for 285 people Which is all please there are 285 visually impaired people in the world Which is not quite true? Drupal 7 was great for accessibility and if anybody remembers at Drupal con portland Vincenzo Rubano came and he's a young Italian guy who's visually impaired and he found our project and and fell in Love with the accessibility and used it to build an amazing thing in Italy. It's called in Italian It's T. Tango doc cure which means I have my eye on you so he tests websites and Software and then reviews them for accessibility and writes a blacklist and reports about the accessibility problems on his website And he reaches out to anyone who wants to to help them improve their applications So the point of that story is that you know he could only do this with open source because this is a case where proprietary would Never like give him a free site to build up. It's another another story. I tell but he fell in love with Drupal's accessibility back in the day and Drupal 8 has Why are you a markup throughout it so that? Screen readers know what they're looking at know how to talk about it And all these other things now the interesting thing if you do government work if you do university work If you do public sector work of any kind This is really a really important sales point for you that the government of Canada the United States Australia and many others They use Drupal. We have packages ready the the a gov and gov CMS in Australia the I guess whatever the successor to now public is I don't know if now public is still current in the US But accessibility and security and so on it's it's all well proven in Drupal So those of us who work in the public sector that's a it's a really big advantage Um, if you're not dealing with the public sector this stuff is still interesting for at least one reason and Vincenzo put it best He told me he said Accessibility is simply usability, you know Well-structured data easy to understand page layouts like that helps us and we're gonna come back to this a few times Because our page output is well-structured It turns out that the search engines really love us So just by throwing on Drupal, we're gonna get a better, you know better results in in the search engines if you're gonna build and a web application of any Consequence you're going to want to know out of the gate that it can scale and that it'll remain fast you know, you're hoping for traffic and if success hits you you you want to be ready for that and Drupal 8 has a lot to offer on this front if you look at the raw PHP benchmarking of Drupal 8 it's some Depending on how you set it up. It looks like it runs slower than Drupal 7 but I'm not really worried about that first of all the raw benchmarks are also improving over time, but Drupal 8 is great for scalability We have more precise caching the best page caching in Drupal essentially Cache the whole page and when the cache is invalidated it threw out the entire page cache and started rebuilding it so Drupal You know, that's a lot of work that takes a lot of time Drupal 8 out of the box Everything that's displayed has a cache tag. So we have granular caching And if you know if my friend list or the weather report or my shopping cart if my cache gets invalidated there Only the shopping cart cache is getting rebuilt when that when that time comes and not the rest of it So I can still get cached stuff back really really fast in Drupal 8 Even though that you know, I don't have to rebuild the whole page I just rebuild what I need to build now Cache invalidation is really really hard to solve in computer science as one of the you know the classic problems So so this is really big deal. I'm going to show you a couple of consequences of this Cache tagging and we really all should buy Fabian X and Wim Lear's a drink of their choice to say. Thank you Because this is amazing With HTML 5 we get to offload a bunch of caching in certain situations, which is nice And because we are completely or nearly completely compatible with PHP 7 Just because we're keeping up with our friends in PHP land We also get a huge performance benefit. This is the difference in performance between And I can't read these from here, but this is PHP 7, right? Is that PHP 7? Yeah, so even through the five series we can see that You know the PHP that we use for Drupal 3.4 and then the PHP that we you know that we've gone through in the last few years We've gotten a lot of performance benefit just by being compatible with an up-to-date version of PHP PHP 7 gives us another huge leap I we are usually I don't know the state this week, but we're usually completely Compatible with hip-hop virtual machine as well if anybody's running that so just by keeping up with PHP just by writing our thing in PHP And keeping up with what PHP is doing. We get a we get a performance boost, which is which is amazing. So You need to tell people that yes, we can scale yes, we're fast tell them that weather calm runs on On Drupal tell them that the winter Olympics that NBC runs well That's on Drupal as well tell them that the Grammys and the Brit Awards, you know with those massive traffic spikes every year Those also run on Drupal, you know, you're good. So Cache tagging allows us to do this incredibly cool thing Who's heard of big pipe? Right, so big pipe is fun essentially What this is showing here is any given page that we have Is made up of static elements that don't change very often and dynamic elements that can change in any time and in Drupal 7 previously We would make a request to load this page and Drupal would go build the entire page and then serve us that page and However long it took to get the last thing would be the time it took to get the whole page now With big pipe because Drupal's caching system knows exactly the state of any You know sub object in cash It knows that this image here and the text which is what my site visitor is actually coming to see It knows that that is already ready in cash and it delivers it instantly It then goes and renders all the other stuff. So in this case It checks my it checks my user role and my permissions. Am I allowed to make content comments? Yes Give me the content thing, you know, what's what are my friends doing? What's the music? I'm listening to so I get the static stuff instantly with big pipe effectively after a quarter of a second and Everything else comes over time the overall page load is exactly the same amount of time But my user is seeing exactly what my user wants to see and read Immediately and it feels really really wonderful. It feels much better So this is one wonderful consequence of this granular caching that we've got in Drupal 8 The next level of this go check it out in contrib Refresh less so oh and by the way big pipe is in Drupal 8.1 core as an experimental module You download Drupal 8.1 you turn it on Drupal is delivering your site automatically in with with big pipe so so and The experimental modules in core I know that big pipe works really really really well and the idea of the experimental phase in core is we need to test this at Scale find out what problems are, you know edge cases and solve for that so that we can move it into a full core status module the the the subsequent project is Called refresh less and it's I thought big pipe was cool when I heard about it refresh This takes this to the next level if you're on your Drupal site looking at a page And you click a link that's on the same Drupal site Drupal 8 site obviously Your site knows which elements on the page that you're looking at are also on the page that you want to go to and it doesn't Reload them at all. It just leaves them there and only only reloads the pieces of the page that are new saving Even more time saving even more requests saving electricity I mean if we want to think about this in a greenway one of the things that we'm leaders who one of the two developers who built this Talks about you know if we want to make the world a better place You know we need to make our CMS is more efficient right so if we're making less requests That's less electricity used by the service. It's so refresh list is kind of the next amazing level in that. Oh So There's another theme that I've touched upon But we're borrowing technology. This is open source, right? So we're open sourcing our open source project Quite a few years ago. We got burned by a bad By a bad security bug in another project and we decided that we were gonna write everything ourselves We were taking our ball and we were going home Because nobody else knows how to write code except us And we ended up with triple seven which is a wonderful idiot idiomatic mess of procedural code and some object orientation and some however Earl Miles felt on the day and you know It's great, but it was the result of years and years and years of evolution And it was kind of the ultimate expression of of of this procedural code paradigm So we decided to update the way we write code and we've decided to outsource a lot of risk and a lot of problems that we have um and So we had the not invented here syndrome and we've moved to the proudly invented elsewhere paradigm And this is all thanks to I'm only saying this because I wanted an excuse to use this slide This is thanks to a few things that have happened along the way But the PHP framework interoperability group has been defining standards that let us use Share code across projects in really really exciting ways This is not the Talk to go into any detail, but essentially since PHP 5.3. We've been able to share variables That have the same name thanks to namespacing that loud allowed us to build Dependency management in PHP via composer and it's allowed us to do things like put these nine Symphony components in Drupal 8 core It's allowed us to take the HTTP kernel and foundation and guzzle and throw out our old Drupal idiomatic HTTP request handler which was I forget how many lines of code I think it was Is it 400? lines of recursively executing code Which meant that it was I think it was untestable in the last until the heat test the universe or something I mean is the the cyclomatic complexity of this function was horrifying and we needed to get rid of it So thankfully our friends over in open-source land Invented all these nice things for us that we can use and we can focus on being good at what we're good at Which is content management, which is building web service-based API based businesses all that fun stuff We get a huge benefit out of Using all this open-source code not only because We get a better community a bigger better community. We get better security Management because we have to do less work. It also means that we can finally hire people Who know PHP and we can just sit them down with Drupal and they're gonna be able to cope without like trying to figure out how hooks work And hook menu alter and hook form alter and some of the crazy hairy ones that that that don't work in IDs and they're you know Kind of sort of undocumented We can get bringing people in there was somebody at the code sprint in Drupal, Cumbar Salona Who asked a question and ended up talking with a friend of mine? They're a PHP developer. They just came to Drupal Cumbar Salona to see what was going on They went to the code sprint they opened up Drupal for the first time ever in the code sprint And we're able to contribute a patch to Drupal 8 the same day, right? So this is a great sign that we can hire people Get more people interested in and using Drupal whether it's in their own applications are working for us But they're definitely proof points of this out in the wild already that we are now More accessible to other developers and that's really really good news for us in the long term twig itself twig is the theming default theming layer in Drupal 8 and It is built and maintained by the same people who build and maintain the symphony to framework in the symphony 3 framework now the sent CO labs and twig is the front end for By my count at least a hundred other projects. So this is an incredibly well known technology and Designers and themers from across the PHP space will be able to work for us easily It is also secure unless you're stupid enough to turn off the safety flag for this. It cannot touch the database Right. Don't do this As long as you don't do that It it can't touch the database which means your theme layer can't create the white screen of death So you can give your theme or access to your server to work on these files with a lot less fear because they can't execute that Kind of logic. They do execute theme logic. You can put loops in mitts. It's really really great Um and twig also works it with with grown-up developer tools. If anybody cares to see How nice the syntax is here are a few examples of this It's essentially human readable much much simpler than than our old PHP templating system PHP template. Oh, yes, the good old days um, so We can now very easily build great experiences for the people who live in the back end of our websites Whose day-to-day jobs is working within the things that we build and you know throw over the wall to them For the first time we have Whizzy wig in core and we have inline editing now the interesting thing is there's been this transformation where Drupal generally has a pattern of abstracting and abstracting and further abstracting how we do things to make more and more sort of Meta-solutions so that you can do absolutely anything you want and we always used to say well, you know You take it out of the box and of course it doesn't do anything right now But once we throw a few models in there, it's gonna be awesome We can I promise we can do anything so it's sort of like giving someone a giant tub of Legos instead of giving them The set that makes the spaceship with the picture on it, right? um One of the big changes in Drupal 8 is it's a lot more like a product now you turn it on and you can build quite powerful Websites it's got all the translation stuff in it. It's got a Whizzy wig editor in it for the first time the CK editor and we worked with the people who maintain CK editor It's very very very tightly integrated with Drupal and very highly Customizable within Drupal the for example the image handling is Drupal native image handling it respects roles and permissions and One of the new things in Drupal 8.1 it now includes a language and a spell checking button built in so CK editor is really really awesome, but we still have the API module in place in core so that if you don't like CK editor you can put in whatever you want tiny MCE or you know Any any other crazy choice? Who likes tiny MCE? Remember I think tiny MCE was was the code was was bigger than Drupal 5 core when you installed it That was exciting and we have this thing in line editing, which is really really neat so we haven't touched on it yet, but The data structures inside of Drupal 8 are very very consistent because we had a new starter to everything's entities and fields all the crud operations across the internal systems are the same so that's allowed us to Build inline editing into Drupal 8 where if I see a mistake or I want to add something or change something It doesn't matter if it's a view rendered in a block doesn't matter if it's in the content page It doesn't matter where I am I can click into that make the change and it gets saved And and and the change is updated everywhere It needs to be and that wasn't possible before and that's a really really handy feature for people for site editors for people Who live and work on our sites, so there's a ton of value in this Um everybody here Admitted that they know what views is and it's this Wonderful tool that allows us to make selections from our data based on whatever criteria we want and then output that selection in an amazing number of different ways can't lists and RSS feeds and slideshows and banners and so on and so forth and the really really exciting thing for me The most exciting thing I told you is every view can be a rest endpoint. That's fantastic The second most fantastic thing about having views in core Is it allowed us to throw out a lot of boilerplate code that used to run the admin back end through Drupal 7 now? Great number of the admin pages in the back end of Drupal 8 are themselves Views so if you are a Drupal site builder and you know how to run the views you I you can actually build a completely customized Drupal back end now you can design it to meet the needs of your users Put in take out language information avatar photos put in make them sortable make them whatever you can do with a view display You can now do that in Drupal 8 back end and that's huge And I'm really looking forward to seeing and I haven't seen them yet But for example simplified workflow oriented back ends that meet the needs of particular kinds of content authors or moderators I think there's a ton of potential to do that. It's very very very exciting to me Only one slide about this but configuration management It's kind of a big deal because it means that we kind of are like grown-up software now we can essentially we Took configuration data out of the database almost entirely so The database is now essentially content and we move configuration into text files, which are called YAML files It's another widely adopted Standard on the web these YAML files are just text which means that we can Import them export them and most importantly version control them so I can have Whether I'm using git flow or whatever else I can have any number of devs working on any number of copies of my site and they then have the ability to Throw the configuration along with the other code into the various sites and move through various stages of testing and so forth This is really really important and it solves a lot of the problems that we've had in the past with getting things between Staging and production and development and production There's a large debate going on which is very interesting to follow about what is Configuration management good for why do we still need features as well and there's some fine lines being drawn I think it's partly a style question. It's partly how you do your work It's worth looking into if you care about that sort of stuff but this Allows us as developers to work better and more consistently and use modern tools like our our git Version control more effectively. So there's a ton of value in that for us And there's a there's a ton to be explored and discovered, you know, just how to work better and more consistently for us Also for developers everything is entities and everything is fields now It's not that, you know nodes are a special citizen and users are another completely Separate unique kind of flower and near the twain shall meet Every entity is also fieldable so I can you know if I really want to I can put comments on comments now and You know in Drupal 7 you could only comment on nodes now. We've got a lot more power to this and So I can build I can model essentially now any sort of data that I want from the real world inside of Drupal and and then I have this wonderfully structured data that we can then process so because I I can put everything in a field and Fields are then semantically meaningful in displays and to views Right. We understand what content management is. It's just Semantic data very granular very well organized So this is superb and hey presto by the way, did you know that blocks are reusable in Drupal 8? That is pretty super cool. And not only are they reusable We now have block types which are just like content types for content, but I can define a block type And then make multiple instances of that and use them wherever I need to on my site So block types super interesting abstraction of of this class of object And I think we're coming much much closer to to what blocks should have always been in our system We've got some really powerful semantic field types that we can put on our content anywhere. We want email Entity so entity references interesting because we can refer to any other kind of entity along the way and build these sort of interesting networks Relationships a content relationship. So date what what have you? These are very valuable the fact that we have semantic field types Are really really valuable if you're using iOS 6 is that OS 6 or any other mobile operating system? An email address knows it's an email address and it'll do email address validation on it along the way for free If you're putting in a phone number it knows to put up the native number picker same for dates a native date picker So having semantic Field information in Drupal 8 gives us better user experiences also for free. So there's a huge amount of value in that Drupal's been really really good at SEO for a long time You know nice HTML output and so on and all the data in Drupal.org It incorporates a semantic in information based on schema org schema So these are a set of literally thousands. I believe at this point of different ways to describe Data so for example if I was in Munich when I made this slide, you know, I look for restaurants near me Um Google doesn't have an army of of tens of thousands of people in some country Typing in all of this information about this restaurant and all the other restaurants in Munich It is scraping that data from websites that are built well with semantic data So it gives it a price class. It knows it's opening hours. It has its phone number and so on and so forth Google just takes this from what we build and you can tell your customers if they choose to build with Drupal Okay, we have this semantic data built in and in this sort of thing when when we're when your website is becoming less Important when it has to appear in the in these listings when you know, we have these content summaries when we have review sites We have to make our data as available and as easily understandable as possible along the way and we get that For free we get that when we use Drupal 8 because we are subscribing to these schema org schema Schema.org is really really interesting to page through and read the different schemas and all the different, you know, all the different information Points that you can use to describe a restaurant or a horse stable or a, you know, a factory or I mean It's it's pretty fascinating all the stuff that's in there if you want to geek out on that stuff worth your time Pretty much the last point for today, and I'm pleased. We're doing relatively well on time April 20th Drupal 8.1 point x came out six months after Drupal 8.0 point x And this is not per se a new technical feature of Drupal, but it is a real Advance in how we do our work The last major technical feature that went into Drupal 7 the last significant feature that was added to Drupal 7 core Happened before Drupal 7 was released essentially So if you had a great idea for what should be in Drupal core the day after 7 released You might have had to wait until now to seed in Drupal core or you probably have given up by now So we have a mechanism so so This is this explanation is a little bit circular so We have a system now where a major release happens whenever we decide and I'll get to how that decision point happens We have every six months what's called a minor release and a minor release can include significant new non API breaking functionality So we have a mechanism that lets us innovate every six months And if you have a great idea now you could see it in core You know a year from now 18 months from now six months from now if you're really amazing Okay, so this is a retention and this is a retention model to keep our developers happy because we can make it better all the time and This keeps our project Relevant for much longer because we can innovate within a major version We can keep Drupal 8 relevant as long as we can keep Adding functionality to it that we need for the next for the next Internet of things innovations whatever's coming down the pipe we have an Release architecture also our code I would say but we have a release architecture that allows us to be extensible and so it allows us to be Have predictable innovation. This is very important when you're selling to people You can say you know Drupal is on top of this and now that we've made a minor point release and added new features to Drupal in it We're showing that we actually are going to keep our promise about keeping innovating with Drupal 8 So you can read more about that there What happened in Drupal 8.1.x? Well a lot of things happen in Drupal 8.1.x. It is you can read about it there There were more than 500 contributors who worked less than six months to get the new release out We have big pipe added and the migration suite of modules added as experimental modules Migration needs a lot of work if you know anybody who wants to help with that Especially the Drupal 7 to Drupal 8 migration path is not ready But it needs testing now. So that's why it's in core CQ editor got two new buttons Automated JavaScript testing will now be possible. This is this is really really exciting for the for the QA fans in the room And we have a new help page that's more flexible and it displays the core tours who knew about who had forgotten about tours in Drupal 8 Tours are a really really neat feature that allows us to build help systems into our websites. Go check it out I think it was it was a darling of everyone's sort of it was top of mind right at the beginning of the Release cycle and then it hasn't gotten any attention in a long time. It's very very cool and a ton of other things happened But so Drupal 8 Didn't have these things and now it does and Here's a model of what this semantic versioning looks like It doesn't mean that after 8.123 that Drupal 9 is going to happen. This is trying to show that essentially as long as Drupal 8 is out Drupal 7 will be security supported We're still going to Support two major versions in the community, but here every six months. We can add Significant features we can update what our system does in these minor point releases And we will do them as long as we want as long as we need until a change happens that needs an API break And when we have to break an API This is the promise we've made we'll see how it happens in practice right, but when we when we break an API That's when Drupal 9 to continue to innovate in a way that we agree is important That's when we cut Drupal 9 and start working on Drupal 9 now. There's an interesting consequence of this and one of my One thing that I personally really like we have Wonderful incredibly smart colleagues who've been working on Drupal core for any number of years and have never worked on a live Living breathing in production major version of Drupal They have always like the day after Drupal 6 came out Drupal 7 You know the Drupal 7 tag was cut and there are people who've never worked on a system that was in production and they you know and I mean this with all respect But we would get Drupal 5 and 6 and 7 thrown over the wall and everybody would go work on the cutting edge of the next thing But now our friends and colleagues who do all that smart work all the stuff that I'm absolutely will never be capable of doing They have to work with us. They have to have to work in here and we're all making we can give them Feedback that they can right within six months within a year react to and make our Drupal better now Before they're allowed to go and play in the theoretical Drupal 9 and 10 land I mean people are developing at least mentally features for the next two versions Drupal already But right now all of our innovation is in our living breathing release and that's really really really really powerful Two last things that I find really really interesting and these these are these are just a vision of what could happen typo 3 CMS 7 is unfortunately Kind of great and we're really lucky that adoption of typo 3 outside of Germany and German speaking Europe is very very poor They've done an amazing amount of work in the last few years. They have 200 core developers contributed to their release. We have 3300. I mean, it's a much smaller community, but their product is Unfortunately really good. They have really super easy upgrades. It's like a button click go between the thing take 20 minutes You're good like they've managed to solve a lot of the problems that we've never been good at and we've built a ton of risk into our lives By making our versions Really really like the upgrades are a lot of work. They're very expensive and we know this is a problem We don't like to talk about it out loud. We should never admit it to our clients in these terms, but It's there These these minor upgrades are supposed to be very very easily and painless as we go through our once We have a Drupal 8 site to keep up with this. There's the possibility now as we go through this that the Drupal 9 APIs to start with are simply the Drupal 8 APIs with whatever else Drupal 9 needs on top of it and Eventually cutting out to call it Drupal 9 will simply be a matter of turning off some of the old ones and Keeping the new ones so that you might have a phase where you have a Drupal 8 9 API and your compatibility upgrade of your module might just making it be compatible with both ends of that So that when upgrade time comes it's just as easy as a minor version release over time, right? Things that don't need to change shouldn't change So then you can have the same thing happening when a 9 10 9 10 double API and easy upgrades And if we can remove this inflection point the risk of non upgrade or changing to other platforms We would have a ton of benefit out of that as server spreaders if we can provide uninterrupted cheap upgrade paths huge Semantic versioning gives us that chance Standardized code Universal systems internally all the stuff that we've gotten with Drupal 8 gives us that chance. I'm really excited I'm absolutely convinced that Drupal 8 is the right technology for us at the right time I'm convinced that we haven't missed the boat, and I really really think that we're on the cusp of Remaining great and growing a lot for the next five ten years or what have you? Thank you all for coming Really really happy to be at Drupal again Drupal con again. I'm pretty easy to find online I will be here all week if you want to hang out have a beer or whatever And we could even have a couple questions right now If you're not all exhausted by listening to me for the last hour Just have to turn that on Hello, I'm not in any way a developer. I'm the other end of this, but I enjoyed your presentation So Drupal 8 seems as we all know dramatically different from Drupal 7 So as an owner of a good working Drupal 7 site, it seems like a big deal to change the Drupal 8 So why would I what should I really do that? Should I even really think about it? It's very expensive and very hard so over There's a multifaceted answer, and it's a it's a very very good question if your Drupal 7 website does everything that you need it to Do There's no reason for you to upgrade just because The moment Drupal so innovation in our community is shifting to the Drupal 8 release the moment You can't make your Drupal 7 thing do what you need and Drupal 8 does it is when you need to consider the upgrade Over time our migration paths will be really solid There'll be a lot more contributed modules available and the upgrade itself will be cheaper and easier And we've changed it from an upgrade path to a migration path to do that also in the future. So hang in there No pressure at all