 Okay, hello again, everyone. My name is Holly Ross, and I'm the very, I'd say, recently new Executive Director over at the Drupal Association. And I want to thank everyone for joining us today for the first in a webinar series. We're really excited to get this going today, and we're really pleased to have Aldi with us. Thanks for your patience while we made sure we got as many people as possible connected before we got underway. Today's webinar is Drupal 8 and Spark, Simplify Responsive Design, Mobile. And our presenters today are Kevin O'Leary and Jesse Beach. And I think, Kevin, you're going to get it started. Sure. So great. So I, let me just hop over to my keynote here. So today we're going to talk about, you know, what we've been doing in Spark in terms of improving both Drupal 7 and Drupal 8 for mobile, starting with, you know, the content author who's the real focus of Spark. But let me tell you a little bit about Spark first before I go into mobile and, you know, really dig into the details there. Spark is a distribution, but it's not really a distribution in the sense that distributions are usually, you know, made by, you know, companies who are making things in Drupal like Drupal Commerce or, you know, a lot of these other distros that have kind of a specific business purpose. Spark is really something that we initiated here at Acquia that Dries really wanted to put together to focus on just generally improving the content authoring experience for all of Drupal in Drupal 7. And because the release cycle of Drupal takes quite a lot of time, we wanted to have a place where we could take, you know, some real, you know, usability improvements and code improvements and move them into this distribution that would be sort of almost like, you know, a place where we could prove out and test, you know, some of the best concepts in usability and design and development so that we could get them kind of on deck for the next release of Drupal. And that's really what it's all about. It's, again, focused mainly on the authoring experience and just improving Drupal's overall usability and not necessarily focused on any kind of specific industry vertical or business purpose. And one of our hopes is that has always been that we could, you know, that other people out there would take Spark and then use it as kind of the baseline or kind of foundation for their own distributions so that they would all kind of inherit those great usability features. So why content authoring and how does that relate to mobile? Content authoring has been our focus because, you know, as we looked out across the landscape of all the other competitive CMSs, you know, back about a year ago when we first started working on Spark and some people who have seen some of Greece's presentations or my previous webinars will have maybe seen some of this before, but we looked at WordPress CQ5. I'm not sharing my screen, I'm told. We didn't really miss anything in my slides. It was really pretty much just, yeah, what is Spark and why content authoring and how does that relate to mobile? And again, so we started looking at our competitive content management systems both proprietary and open source and, you know, put together these spider graphs which kind of illustrate, you know, where we were falling behind or where the deficiencies of Drupal were and where the strengths of Drupal were. So in the technical area, Drupal was very strong against a lot of the other CMSs, but in the area of authoring experience, a lot of the other systems were really, really kind of killing us. WordPress always has, you know, been well known for a good content authoring experience, squizz and clone, some smaller, you know, CMSs have made some real advances in that area in terms of in-place editing and CQ5 is a big proprietary competitor that also has some really good authoring experience. So then we looked at these various different areas. Obviously, what we're talking about today is mobile authoring and you can see here that, you know, we were well behind in that area when we first started looking at Spark. What we're going to show you today is that we've really kind of, you know, come a long way since then. So our goal from the get-go was to, you know, build, as Angie says, a kick-ass authoring experience for Drupal 7 so that people can use it now. And then as I was mentioning earlier, and then sort of have those improvements on deck to be ported into Drupal Core. And we've actually done that. We've put a lot of them into Drupal Core and Jesse's going to demo, you know, a lot of those things that we've been working on in just a minute. So the audience for Spark, who will you, Spark? I kind of touched on that a little bit already in terms of, you know, we really, it's everybody. It's not any specific industry vertical. It's all users of Drupal, but particularly the users of Drupal who are doing the managing of the content on a day-to-day basis. This is a content management system. So, you know, the content author is really the person who we should be giving sort of the, you know, the king's chair to here. And in terms of who's working on Spark, this is the team. Obviously, Dries is, you know, intimately involved in everything that we're doing. Angie is managing the day-to-day project. That's me, the third one there. Kevin, I am, I'm leading up the UX and designing, you know, a lot of new types of patterns. Preston has been prototyping for us, doing HTML and JavaScript prototypes. Wim Lears in Belgium is one of the key developers behind the edit-in-place. Gabor, who you probably are very familiar with, is also developing a lot of the nitty-gritty back-end stuff, and Jesse is working primarily on front-end development, but also on, you know, a lot of the, really the application development now. And Darmesh is testing everything that we do. And Darmesh has actually been testing a lot of other things in Drupal as well, not just stuff that Spark has been working on, but just Drupal in general. Going back as far as the Minnesota usability study, he's been really intimately involved with Drupal. So what's on the roadmap? We've got content creation and editing is very important, obviously, primary to what we're talking about. And then dashboards and workflow, which we've spent a little bit of time on, mobile, which we're going to be talking about today. But then also, you know, going forward, we're going to be getting into much more heavily into media, as well as content staging and localization. Actually, we're just starting to kick off a real big localization project, taking the work that Gabor's done, and bringing that forward with better usability. So content creation and editing, a lot has been done in D8 core, and also in Spark, in the Drupal 7 version of Spark. So as we do these things, as we make improvements like edit module, we are back porting all of those things. Actually, also Theodore Baidala nod is another contributor who's been working on the team intermittently. And he's done a lot of work in back porting those things into D7. So you have edit module, you have toolbar in D7 now. Yeah, I think it's worth noting that we actually devote 20% of our time every week to back porting. That's right. Yeah, we have a full day. That's correct. Jesse is pointing out that we actually have a D7 day that's entirely devoted to just working on D7, and we're not entirely focused on D8, although the D8 stuff is obviously, because we're right in the middle of the cycle, very, very, very key. But so mobile authoring, a lot of the improvements that we've done in D8 core in terms of mobile authoring, and we and others also have been ported back into D7. Media management, we're still working on designs for that on improving media module. Content staging, we haven't started on that, but we know it's very key and localization again, like I said, we are working on that. So with that, I'd like to pass things over to to Jesse, and she's going to show you a lot of what we've done in both D7 and D8, and kind of demo how that's all working, and a lot of it is working incredibly smoothly and beautifully. Kudos to her and to all of the rest of the team for making all this work. I just paint pictures. I'm trying to figure out how to get this thing to share my screen. Do I need to pass it to you? No, it's already been, let's see, I'm getting, share my desktop application, looks like it's being shared. All right, so I'm Jesse Beach. I'm primarily a front-end developer, and I've been on the Spark team now for probably eight months since just before DrupalCon Munich, I joined the team. And I've only been in Drupal for about three and a half years now, about the same amount of time I've been with Acquia. So I've kind of grown up with Drupal 8 and the mature Drupal 7. So what I want to show here today is not necessarily, or is definitely not the work of just the Spark team. There are tens, if not hundreds, of developers that have been working on various aspects of the mobilization of Drupal 8. And we've had a small corner of that and I think our team has been involved in a lot of that work. But by no means have we done possibly even 10% of it. So what we're looking at now is stock D8 head as of this morning. And I just want to mention that this might get a little technical. I'm going to show some code and there might also be bugs. So a lot of the things that we're doing are very much inactive development. There are inconsistencies. We're working to iron those out. And what we're looking at today is essentially the state of the art in terms of Drupal 8 and its mobile support. And there are a couple of patches that I've applied to this demo that are under review or RTPC, but not quite committed yet. A few of them I'm hoping will be committed by the end of the day. So we'll see. So we're looking at the Drupal 8 demo. And the first thing I want to point out is that the Bartik theme itself from Drupal 7 has been, I guess, responsive as would be the best word for it. So if we take what is a desktop side site here and scrunch it down, we're going to start to notice that things change in the theme. We'll notice that the primary tabs go to buttons. And then as we get smaller and smaller, we notice that the main content and the sidebar is adjusting to a single column display. You'll also notice up at the top this new toolbar. So we have the primary tabs up top and then secondary tabs down below. And this is made to fit within a desktop or as we scrunch this down into a smaller screen. And everything adjusts as we get smaller. And I just want to compare this to the Drupal 7 version to really give that sense of, you know, how different this is. So this is a Drupal 7 site. This is just D7 head. And as we scrunch this down, you'll notice that the toolbar kind of breaks and wraps in a really ugly way. And one of the other pieces that we have running underneath here, you'll notice in the D7 site that when we scrunch it, the text, the title of the screen here is being overlapped by the toolbar. We have a new tool in Drupal 8 called the Displace Function. And I can pull it up really quickly. And the Displace Function is a new tool for front-end developers that allows you to push your content around the screen and out of the way of elements that are pegged to the edge of the viewport, like the sidebar and the toolbar up here. So the other theme that's been ported over to Responsive View is the 7th theme. And let's jump over into an admin view right now. So this is the standard 7th admin theme. And I think probably the most impressive example of a responsive development in Drupal 8 is the Views UI. This had, I don't think anyone on the Spark team touched this other than when I wrote the CSS for Views 3 like two years ago. But since then, we've had this very complex UI turn into a UI that you could work on your phone. It is pretty impressive, isn't it? Yeah, it's just amazing. That's actually the first time I've seen that. I haven't really been in Views for a while. That is pretty, that's pretty impressive. Yeah. In fact, I mentioned this yesterday and you were incredulous that it... I didn't believe it was true, but it is working beautifully. So when that worked, I was also quite thrilled. That's one of the most complex UIs I think we have in Drupal. And the fact that you can do it on your phone is really impressive. That's really great. And we can look at a couple more of them. So we have here the new modules page called Extend. And you'll notice there's been a lot of work done to take what is or has been a very overwhelming page if we were to go back to the Drupal 7 view of this just to get a good, fairly overwhelming and rich page. And back in the Drupal 8 view, we now have information while hidden. And we'll notice that when we take this screen down to a smaller size, the information starts to hide itself so that we can see these fields on a smaller screen. And you'll notice this link right here underneath the core header. When I'm at a larger size, that link isn't there. When I pull this back down, that link becomes available. And when I click on it, it takes what was a complex table and it shows me that full complexity again. So I can click in. And the idea here is that on a smaller screen, we can hide some information but not make it unavailable and provide the user a way to pull it back into view. And this was one of the first major patches I got to Drupal 8 back in Munich. And if we look at the way that this is implemented, essentially we're setting some classes on the table headers. So we have this stack variable right here, the responsive party medium and responsive party low. And these essentially map to media queries in the theme itself that hide these table rows when there isn't enough room on the screen. And this is done in a backwards compatible way. If you don't include these classes, then the full table in your module will be, all the columns will be visible. Only by adding them do you hide the columns in smaller screens. And there's just a little bit of JavaScript, this little table responsive script that has to be included in your module. And with those classes in the script, you have fully responsive tables. That is also very awesome. And we've got that in the content screen as well. I think this one's a little bit more impressive because we go from a table with a lot of columns. And this is the one that I think drove us to develop this behavior because it was just impossible to view the screen on a small device. But as we bring this down, we'll notice that we go from all of the columns to the medium priority columns to just the essential columns. And this works well on a small device. Let me see if I can actually bring that up. Come on, little paste button. Yep, so there is the screen on a small device. Ignore this little white gap on the side. That's just a little bug in the themes. Pay no attention to the hand behind the curtain. So, another piece on the mobile front. We've got our list of content here. If we go to the add content button. So, I think this is one of these forms that it's probably used the most in Drupal when it comes to content authors and people's daily interactions with Drupal. And most of this work was done, I think, who's it? Boyan, Yoroi. And did you say Ryan was working on this? Yeah, I believe Ryan did some design work originally on this. But I think it probably was mostly Yoroi who did the design work. And then Boyan did a lot of usability research into what the best practices were for separating out less important options but that nevertheless need to be there on the screen. And then Swentel I think was the person who did the primary development for this page. So again, we have a fairly complex screen that can get more complex as modules add in their separate pieces. Over on the side, we have what used to be the vertical tabs displayed now in a details and summaries. So this is one of my favorite editions. And then we see the responsiveness kicking in as the screen gets smaller. Now using the details element, which is newly introduced HTML5 elements, introduced I think for sort of general use in browsers only within the past couple of months. And that's come along. And there is, I believe, somewhere down deep a polyfill that gets these details to work on browsers that don't support them natively. But again, we have a nicely responsive UI that works well on a phone. This is one of my favorite screens. I think the people that worked on this did a really bang hop job on it. It's working really nicely. Yeah. So most of those things were not the primary focus of the Spark team. Those were just sort of very general and very important updates to Drupal 8 that get key pieces working on mobile phones or small devices, I should say. So let's have a look at some of the more focused efforts of the Spark team. And specifically, I want to talk about in-place editing. So let's go back to a front page. So the authoring experience was the, improving the authoring experience is the primary goal of our team's work. And one of the aspects of that was to introduce this idea of in-place editing. And what we want to do with in-place editing is allow someone to come in and make a quick edit to content on the screen without having to go into the full edit overlay or form. So we've now introduced these little contextual links. They exist before in Drupal 7. This is just the contextual links module, but we've put in an extra option for quick edit, which contrasts with full edit right here. So when we quick edit, the editable fields in an object become highlighted. And when we click into them, we get the text formatter that is associated with your user permissions to edit this piece of content. So we can go in and add something here. Not in a, also in a full node, because you're in a teaser mode presenting in the smaller window. There's two different kinds of things. Yeah. So we just edited that bit and we cancel out of that. And we'll go into the full node. Do the full edit there. And I think what Kevin wanted to show is that the editor itself goes to the full width of the screen. Yeah, exactly. That's what I was getting at. Yeah, marvelous. So that's for content. One of the things we're working on at the moment is the ability to quick edit any field in Drupal. The patches for this are still under development, but I've got one running live here. So we can quick edit a custom block. And this is the body block content for that custom block. And if we refresh the screen, we see that that change is still in place. So we're working on making essentially anything that is a field in place editable, including things that have never been fields. There's work underway to make the node title, the node author, the published date, all those little pieces that essentially part of the template and produced outside of the field system into fields. It's a touch more complicated than I think I understand, but when the date comes that they're made editable, I'll make them pretty. Jessica, can you show how the editing the full node looks when you go down to 320 width? Yeah, definitely. So we can bring that down, quick edit it, and we see that it's working. And in fact, if I pull that up over here on the phone, let me go to that same working side by side on the phone there. And also obviously with the CK editor installed and giving us a nice options there as well. Yeah, I can't believe I didn't even mention that. So what we're seeing is the CK editor above here. And in Drupal 7, we never had a default WYSIWYG editor in core. What we've done in Drupal 8 is introduce CK editor as the default editor. You no longer need to go and install a WYSIWYG editor in addition to Drupal installation. It's there for you. This is all baked in. The first thing you do when you create a new site is create a node and everything is set up to do quick editing and WYSIWYG editing. It's great. And that CK editor toolbar also, because of the way it's separated out into different little groups which are inline blocks, breaks nicely when it goes down to smaller sizes as well and doesn't act in an awkward way. I believe if I recall correctly, the tiny emcee does when you get it to smaller sizes because it's kind of awkward. Yeah, it might be. I'm not terribly familiar. All right. So we've talked about that and there's one last feature that I wanted to show and this one I have to load up really quickly. So I'm going to show this in Drupal 8. The responsive preview module is available for anyone to download at the moment and it's fairly well-baked at this point. So that's that responsive preview at Drupal.org slash projects. There's a beta release for the 7.x version and the 8.x version is available through Git clone. And if we go back to that. So before you get into the actual nitty-gritty of showing it, I'd like to just say just a couple of words about persona because a lot of people have talked about the fact that we're presenting device names and there's been some discussion about fluid responsive design and devices not being sort of appropriate. When we were putting this together, the target persona that we were really kind of thinking about is somebody who's not necessarily a developer or a themeer or somebody who's thinking about making their site responsive across all of these, across a fluid range of sizes which is totally the ideal in terms of design. But the persona is more the marketing person or the site owner or the business person who has a specific need to see a site displayed in a certain device because they have knowledge about who their audience is and what type of devices that their audience might be using. So I know, for instance, if I'm Hasbro, that most of my audience is on nooks and kindles or something like that. Whereas if I'm NBC universal, it's a very different kind of an audience. So people who are looking at their sites and putting them together and building them, that's not the same as the person who's theming a site who really wants a kind of a fluid representation of pixel sizes or viewport sizes. This is for users who want to just see, I want to see how my site looks in this specific device so I can make my content look right in that. And to that end, we've introduced this little menu up here which has just a couple devices by default. There's a discussion going on now about how we can expose this list to make it configurable. But let's have a look. So we're looking at what this page would look like in a device that has about the same dimensions and resolution as an iPhone 5. And let's have a look at the four. We see the height reduced a little bit. And then we can also look at iPad size, rotate that, and all the way up to typical desktop size for that. And just to give you a sense of what this looks like on a site that doesn't have a responsive theme, we have backported this module as I mentioned to Drupal 7. That looks so cool. We don't have the toolbar injection points to put a nice little drop down up here, so we just have a block over here and we can have a look at what this site looks like on an iPhone 5. Wim Lears did the lion's share of the development for, I guess, getting the aspect ratio correct on this so that we can accurately represent what this page would look like on this device by 2D scaling it down from its full size. That's cool. I did not know that. So it's not a perfect preview. I mean, there is no, there's no substitute for looking on something on a device. We're not emulating the device. We're not trying to tell you exactly what it would look like. But as you mentioned, for someone who wants to get a quick sense of what does this page look like on a smaller device, am I creating a layout in my node that's going to look bad? Where does the headline break? This is what the marketer wants to know. What word in the headline is it breaking down when it's showing on a phone and where is it breaking when it's showing on an iPod? So that's one of the features that will exist as a contributed module. It's in the queue as a proposed feature to Drupal 8, but the bar to introducing features now is very high. So time will tell what its fate is, but it's available and will be available for inclusion in people's projects. And in the one minute I have left to chat about these things, I wanted to mention that we're moving ahead with conversion of many of the JavaScript files in Drupal 8 to the backbone framework, which is a nice encapsulated and robust model view controller framework for JavaScript. And a lot of these features are already running off of backbone, and more and more we're getting to the point where we're converting previous scripts over to it. And this is one of those things that I feel like is going to be extremely exciting to people that are doing front-end development on Drupal over the next three and four years as we move more and more to single-page applications. So driving this underneath when I click on the iPhone 4 there, the same backbone model that's building this preview right here, is also driving the view here that does the drop-down. Sorry, I had to get 60 seconds of geek work for this. That's super cool. I think backbone is awesome. I mean, I, you know, Jesse will tell you I'm very much of a novice at JavaScript, but I can see the power of it and the value of it. It's just really going to provide some awesome stuff for us. I envy people who can understand it. Great, so that's pretty much everything I wanted to show really quickly. That was all awesome. I mean, like I said before, some of that I have not even seen yet. I've been so heads down in sort of new designs, but that is all really working so beautifully. It's just, when we think back to what D7 or even D6 look like, it's just like that. Yeah, this represents a lot of work. At least two years of solid work by John Albans mobile initiative and everyone that's been contributing to that. You know, the Fuse UI team, it's hard to express how many aspects of Drupal we had to touch and update to get it to all work so seamlessly. There's still more work to go. We're in the middle of the cleanup period where we're getting these disparate functions or features that we've introduced to all play nicely together. We're always running into cases where they don't quite work well, but I feel like we've hit a good pace of active development where things are starting to really click into place. From my perspective, just looking at it, just watching it come together, it's really beginning to gel in a big way. I think we could start to take some of those questions. Great. Yeah, thank you. Thank you so much for that overview, Jesse. I was totally amazed to see some of that, how simple that is to make some of that stuff work. I also just wanted to give you kudos on some of your lorem ipsum text over on the left. I don't know how you identified Tumblr, but I'm very interested in seeing what that means. That is hipster ipsum, if anyone is interested. Hipster ipsum, that's great. I've been going with bacon ipsum for a long time, it's my default. But we do have some questions. I want to make sure we get to as many of those as we possibly can. Just trying to get it to open. It was open before. I'm sorry, one second. That does not seem to want to open for me. I don't know, actually Hannah, I don't know if you can get it to open, but that block won't open for me right now. And if you have access, it would be great if maybe you could start in with some of the questions. I got it. Never mind. Good. So the first question that came in, one of our listeners here wanted to hear a little bit more about this place work that you were talking about. Can you give a more detailed example or point to a resource where there's more detailed example or overview? Yeah, so probably the best place to look is the source code of D8. But barring that, I would just say that what Displace is doing is looking in the DOM for elements that have certain attributes. And that attribute is a data offset top or data offset bottom. And it goes through the DOM and it collects all of these elements that have these attributes and attempts to calculate how far from the edge of the viewport something might want to displace itself. These are always suggestions. So there's an event attached to the document and your module can listen for that event when that event fires on a screen resize. You get an object back that has displace values for the four edges of the screen and your module can choose to use those values to perhaps position itself, you know, to the left, to the right. If I can just share my desktop, am I still sharing my desktop? I don't think I am. Can you make me the presenter? Yeah, you'll have to pull that back up. So what's happening here? If I open up the structure, the overlay module is implementing Drupal Displace in order to know how far from the edge of the screen it should position itself. So this is probably the best place to go look for an example, the overlay module. And as I adjust the screen, the overlay module adjusts itself. Great. Another quick question here. Where is the table responsive file located? Is that in the 17th? The table responsive is in MISC, so core MISC. It is the dumping ground indeed. That's the Island of Misfit script. Island of Misfit toys. Yep, they're my favorite toys too. Awesome. Good. And can you compare the Spark and Tanafully distros? I think they're complementary. Yeah, I think they don't really overlap. You could almost really install one and then install all of the modules from the other and have like a really kind of, you know, seamless experience. I don't think there are any big, like, you know, conflicts there. They've done some great awesome work with layout. They're mainly concerned with, you know, bringing panels to the sort of next level. And, you know, while we, you know, had spent some time working with layouts, again, our main focus has been this content authoring experience. And, you know, I think that the two are kind of really, like Jesse said, complementary to one another. Great. I was really excited to see the click edit function. That was really, really cool. And one question we had about that was, does it bypass, boy, does it bypass workflow? Or can you make it work in conjunction with workflow? No, it doesn't. The quick answer to that is no. It does not bypass workflow. Quick edit assumes only published content. So in other words, if it's on your site, you can go to your site page and start editing it. It's not a method for dealing with unpublished content or content that's in some kind of a workflow state, another workflow state. One of the things that we're going to start thinking about as we start working on stuff that's going to be in D8 contrib for D9 is a more robust workflow solution that perhaps, you know, goes in that direction. We really have to kind of do some more research testing and design in order to get to that, though. The edit in place is really for the user who has a piece of published content, wants to edit that content in place, and then immediately save it and have it be live right away. Okay. As a possible, you might be able to handle that with permissioning a little bit. Like, is that particular part of it not maybe available to all your users? Well, you know, yeah, there's a lot of ways that you can handle it. You know, I mean, for instance, a lot of users and certainly a lot of our enterprise users would have, for instance, a development environment or a staging environment. And obviously, if you're editing something which is, quote, live, but it's on your staging environment, it's not really live because, you know, you need to push those, you know, push that database stuff up to your live environment and then get that content live. And people use various different ways, you know, methods of doing that, deploy module or workbench, or there's lots of different ways in D7, you know, and there will be a lot of ways, I think, in D8 for people to do that. So, you know, there are certainly workarounds, but our primary focus was to allow people who have live content that they want to edit to edit that content, you know, right in place on their site. And how much is Spark is in the latest dev version of D8 core? Spark. I would say that anything we're doing with in-place editing with the toolbar module with, again, those to me would be the ones that were the most up-to-date on the responsive preview module that I showed is definitely not in the D8 dev at all. It's just a proposed patch at the moment. Okay. So, I mean, to say those things are in there, kind of glosses over the fact that there's a lot of code behind that. And we're often working in related modules to get our things to work correctly. So, dealing with fields and dealing with taxonomy and all sorts of other pieces of code. Okay. And Kelly, on the call, wanted to know why Backbone versus Twitter Bootstrap, for example? Great question. It's, yes, Backbone.js, which is different from anywhere. I'll let you do that. Right. So, these two things aren't incompatible, and there's quite a lively community around getting Twitter Bootstrap a module and theme for that ready for Drupal 8. Backbone to us represented one of the more mature NBC frameworks for JavaScript. There are others. The Backbone has, I think, the smallest footprint in terms of what it does to your DOM. You know, you post it to something like Angular, which, if I remember correctly, needs a bit more work in terms of massaging the DOM to get it to be able to attach views to the models. And it's one of the, I think, better documented and, you know, platforms out there. It makes very few assumptions. It doesn't assume a templating language. You know, there are just a lot of things about it that make it really light and really simple to use. You know, that being said, there are lots of other NBC frameworks out there. And one of the things we're discussing among the JavaScript team on Drupal is, you know, how do we, you know, make it possible to abstract Backbone out if perhaps something better comes along? So, you know, we're thinking about modularity even in that core subsystem. Now, when you say, what was the acronym you used? MVC. MVC. Yes. So, it means model view controller. A lot of people call these things MVs, just models and views, because there isn't really a concept of a controller. But I think MVC framework is probably the best, you know, name for this type of thing. So, I had been thinking about Backbone as just, you know, as just a JavaScript library rather than like a front-end development framework like Bootstrap or Zerb Foundation. Do they have like, you know, a full framework around Backbone or is it just really a JavaScript library? It's nothing like a framework like you would find in Zerb Foundation or Twitter Bootstrap that provides a lot of the front-end layout code and base styles and widgets and things like that. This is really when it comes down to it about associating data models with HTML on the front-end and more and more with auditory announcements. We're doing a lot with accessibility and hooking into these models that drive HTML announcements, spoken announcements as well that inform a screen reader user how the page is changing. Yeah, Jesse was demoing that to Dries earlier and it's just, it's amazing. I mean, it literally goes through your entire page and just tells you what's there. And even with really intricate changes of context like when an overlay opens or when different kinds of, you know, JavaScript events are fired on the page. It's really pretty cool. Yeah, we'll be talking about that in Portland in Wim if folks are there and want to come to that session. I think it's on Wednesday, maybe Tuesday, Tuesday or Wednesday. Great. And also, what theme have you guys been demoing today? This is just the stock Bartik theme out of Drupalian. Okay, great. And are other widely used themes also going to be responsive in DA? I can't answer that. I haven't been keeping up with theming efforts to update popular themes to DA, but I believe that most of them probably are responsive already, like the Zen theme and I'm sure. Omega, all of these framework themes. I'm certain that they all have, you know, adaptive theme, Omega, Zen, etc. They all have been looking at what, you know, what's being provided by the new enhancements like Twig, for instance, which is giving a new layout sort of functionality or engine, I guess you'd call it. I don't know if that's the right word. But yeah, I'm sure that they will, that they will all be, you know, developing, you know, DA versions that are responsive. Great. And so Spark is already available at the D7 distro. If you already have D7 site, can you just add some modules to get this functionality? Yeah, we're working very hard to make sure that these modules don't depend on anything in the Spark distro. So, Wim and I are undertaking an effort right now to introduce library's module to the navbar module, which is the backport of the toolbar, to the responsive preview module to edit, so that they can all be used independent of each other. But when combined, won't be duplicating assets like backbone and underscore. Okay. And in fact, I'm running, so right now on my screen, you'll notice I have an in-place edit operations and quick edit. This is just the edit module that I cloned from the project running in Drupal 7. This is not the Spark distro. Great. And that, here's another great question, what about responsive images? Yeah, that there's work being done on that definitely, but we are not working on that. There are other people who are doing a lot of really good work on that. Yeah, so ADIX has been leading that effort with the breakpoints module and the responsive images module. I didn't demo that because I didn't have enough time. You know, that effort, I think, has larger considerations. The picture element specification or proposal for specification is kind of stalled. You know, the effort to deal with responsive images at the user agent level is kind of in tatters. And what Drupal 8 might ship with will be some sort of polyfill solution to that, but we won't have an officially supported, you know, updated specification for Drupal 8, which doesn't look like those two projects or those two efforts are going to align in terms of time. Okay. Another question here is the device simulation already available in D7, because that was pretty cool. And if you ask where do you find it? Yes, it is. So it's the responsive preview module just right there on Drupal.org project slash responsive preview. And this is stock D7 site. There's a block that you have to place to get the controls for that. And that's the module running in Drupal 7. Nice. Yeah. There are a couple other preview modules as well. I think two other developers started this within a week of when we started this. Everyone just had the same idea at the same time. It was pretty amazing. So, you know, there's some other ones out there that I think are a bit flashier and perhaps check them all out and see which one you like the most. All right. So we have just a couple minutes left. Are you guys ready for a lightning round? Sure. Okay. Does edit in place work with translation? It will. That's our next task. Yep. Okay. Great. And where is the best place for novice conch reader to jump in with Spark? That's a great question. So we have a couple with the individual projects. If you want to jump into the modules themselves, they're issue queues for each one of those modules. We look at them once a week or more often respond to them. And we really appreciate people logging bugs and patches for the Drupal 7 versions because those inform the development of the Drupal 8 versions. If you want to get involved in the Drupal 8 work, every major effort toolbar edit has what we call a meta page. So if you search for bracket meta and bracket, you're going to find a page where we list all of the sub issues that relate to those efforts. And those are good jumping off places. So do an issue search for open bracket meta, closed bracket, you know, edit or toolbar and you'll find those meta issues. Great. So we do have a few more questions left in the queue. And what I would – I need to put you on the spot. Would you mind very much if we collected those? And perhaps in our blog post summary, you know, we could share those out with you guys and get some answers from you and put those up on the blog post just so we get them all answered at some point. Would that be all right? Absolutely. Not a problem. Excellent. Well, we just came to the top of the hour. So I really want to thank the two of you, Kevin and Jeffy, for a great bit of content there. It's really exciting to – I mean, I've seen this previewed a couple of times, but very briefly, it's really exciting to see all that this does. And, you know, for someone who lives and dies on her phone, I think this is going to be really great. I want it for the TA site now. So thank you. And for everyone else who's joining us for today, thank you so much again for taking the time to be here. We hope you got a lot out of it. As I mentioned at the beginning, we will post the recording as well as the slides. And now some follow-ups to the Q&A from Kevin and Jeffy. We'll get those up on a blog post on the TA website in the next couple of days. So look for those. But if you have any questions in the meantime, you know, feel free to email us. Megan has helped get this program off the ground is Megan at association.druple.org. And a big thanks to her for helping make this happen. And I can be reached at Holly at association.druple.org. And I will look forward to seeing you very shortly in Portland or wherever else we might cross tabs. Thanks everyone and have a great day.