Drupal 8 development is underway, and there are some very exciting things coming down the pipe. I'll bring you up to speed with what's going on in the major Drupal 8 Core initiatives and by the time we're finished, you will have tangible ways to get involved in the next iteration of Drupal.
This presentation is based on webchick's Drupal 8 slides. Since Drupal 8 is under very active development, the slides/presentation will change between now and the time I give it. I will upload the new version too.
2. Agenda
Drupal 8 timeline
What’s planned for Drupal 8 for...
End Users and Clients?
Site Builders?
Designers and Themers?
Developers?
How can YOU help?
3. WaT?
A Drupal 8 talk?!
But I just started using
Drupal 7!
4. Drupal 8 Timeline
Development
Begins now Code freeze
Mar 10, 2011 June, 2012 Feb 1, 2013
Jan 5, 2011 Aug, 2013
Dec 1, 2012
Drupal 7.0 Feature freeze Drupal 8.0
20. How can I help?
Bojhan Somers &
Leads
Roy Scholten
Issue tag Usability
News http://groups.drupal.org/usabili
IRC #drupal-usability
Every other
Meetings
Monday
27. What problems are we
trying to solve?
Inconsistency; some stuff
on page is blocks, others
special theme variables,
and then “content” area.
Only one (bendy) layout.
Layout built “inside out”;
blocks lack context of
overall page
Blocks can’t be re-used in
multiple instances
28. What’s the plan for Drupal
8?
Layout built “outside in”;
necessary context
provided to blocks
Everything on page is a
block (or a layout, or a
nested layout)
Blocks rendered
independently,
supporting ESI caching
30. What’s the plan for Drupal
8?
Panels in core; well, more or less
Page manager
Plugins system - CTools
Content types, access, context, relationship
See the code:
http://drupal.org/sandbox/eclipsegc/1441840
31. How can I help?
Kris “EclipseGc”
Lead
Vanderwater
Issue tag scotch
News http://groups.drupal.org/scotc
http://groups.drupal.org/scot
IRC #drupal-scotch
Meetings Every Friday, all day
33. it
People start using
July 2011
...
13 months!
Surpasses Drupal
Surpasses Drupal
Surpasses Drupal
Surpasses Drupal
6
6
6
6 Drupal 7 released
Drupal 7 released
Drupal 7 released
Drupal 7 released
February 2012
February 2012 January 2011
January 2011
solve?
What problems are we trying to
35. What’s the plan for Drupal
8?
It already works - 8.x branches alive and kicking!
Major parts of CTools in core
API hardening: Ensure configuration and plugin systems
work for Views’s use case
Incorporate Views UI patterns for core
36. How can I help?
Lead Earl Miles
Issue tag vdc
News http://drupal.org/community-initia
IRC #drupal-vdc
Meetings Every Friday, all day
http://www.angrydonuts.com/help-fund-views-in-core
55. What problems are we trying to
solve?
variable_set()
variable_get()
db_select()
hook_update_N() db_update()
db_delete()
$conf[...];
drush fu
ctools_export_object()
ctools_export_load_object()
56. What’s the plan for Drupal
8?
http://heyrocker.com/how-use-drupal-8-configuration-system
57. What’s the plan for Drupal 8?
http://heyrocker.com/how-use-drupal-8-configuration-system
58. Configuration
Management
Greg “heyrocker”
Lead
Dunlap
Configuration system
Issue tag
News http://groups.drupal.org/cmi
IRC #drupal-cmi
Every other
Meetings
Tuesday
59. Other stuff
PSR-0
Getting OOPy with it!
Entity API++
More fasterer testbot!
File/Media API improvements
and more!
63. Join us!
Tuesdays and Wednesdays in #drupal
★ Hand-holding for all of your newbie questions!
★ Tasks for non-coders as well!
http://drupal.org/core-mentoring-hours
Fridays in #drupal
★ Work on most important tasks for each
initiative with really smart people.
http://drupal.org/core-windsprints
Anytime, in #drupal-contribute on IRC!
So today, we’re going to talk about Drupal 8. Now some of you might be wondering why this talk is being given now? It was only earlier this year that Drupal 7 overtook the number of Drupal 6 sites. How many are using Drupal 7 ? how about Drupal 6 ? Drupal 5 or below? Sorry! :(
@todo move marker. (For reference, there are 40px/month in this timeline and there’s an offset of 160 px. To contextualize this talk, let’s look at the Drupal 8 timeline for a bit. Drupal 7.0 shipped in January of 2011 , and we had 326 parties in 96 countries to celebrate! It took awhile to recover from those parties (and also to migrate Drupal.org from CVS to Git ), and so we didn’t kick off development of Drupal 8 until March of 2011 , during DrupalCon Chicago. We’re currently in “code thaw,” or development phase . Development phase means that anything cool you have ever wanted to see in Drupal, anything that’s ever cheesed you off about Drupal that you want to see fixed, now’s the time to do it! At the end of this year, we’ll have a “Feature freeze” where the firehose of new features is shut off and we focus instead on stabilization . That’s followed by a “Code freeze” in February of next year where APIs get locked down so contributed modules can begin porting. And finally, the currently estimated release date for Drupal 8.0 will be in August of next year , during DrupalCon Europe 2013. So. Why are we talking about Drupal 8 now? Because this is where we’re at in the timeline now, and that means there’s only $NUM months left to make Drupal 8 awesome!
First is Drupal 8 is under /very/ active development so these slides might not be 100% accurate . Please don’t shoot me. :)
Second is that most of the stuff in here are things we would /like/ to do and people are actively working on, but is *by no means guaranteed* to happen. Can’t emphasize this enough; there are only a small handful of people trying to drive these changes into core and they desperately need help. So please keep your eyes and ears peeled for initiatives that sound interesting to you or that overlap with business interests. Regardless if you can code or not , there are lots of ways for literally everyone to help make Drupal 8 amazing.
Which means... It’s time to kick some ass in Drupal 8! This talk will hopefully give you the knowledge you need to understand what’s happening in Drupal 8 and where to jump in and help. (3 mins)
We’ll start with proposed changes for end users and clients , aka the “victims” of Drupal . :)
First up is Mobile .
We’re trying to push a big focus on mobile in Drupal 8 because it presents an enormous opportunity for Drupal if we can get this right. Small blue planet represents all Drupal sites , relative to orange planet which is all CMS sites , followed by all sites in general , and finally enormous mobile growth . This 5-year timeframe for mobile take-over means Drupal 8 needs to be mobile-ready out of the box .
Right now, when you load a stock Drupal 7 site in a mobile browser, the results are... less than spectacular. There are horizontal scrollbars on most pages, requiring zooming around, and tools on the backend provide an extremely poor mobile experience .
We are aiming to make Drupal 8 look more like this. This involves translating both Bartik and Seven themes to responsive design (Stark is done already), as well as creating mobile-friendly alternatives for administration tools such as the toolbar and contextual links. We need developer help to turn these prototypes into working code .
Another huge sub-initiative under Mobile is improving Drupal’s front-end performance . This graph shows how long it took to load various assets on a given page, including images, CSS, JavaScript, etc. Typically, over 80% of page serving time is spent in the browser , so improving this has a tremendous impact on the “snappiness” of a site This snappiness is even more critical on mobile because device less powerful and on thinner bandwidth . Tasks here include removing unnecessary code from loading, improving CSS selector performance , responsive images , and improving CSS/JS aggregation . If this area interests you, please get involved! (6 mins)
If you’d like to get involved in Mobile, here are the details!
Ah, content authors . The poor suckers who have to use the sites you build them day in and day out as their actual job . Drupal’s traditionally been behind the curve compared to other CMSes in terms of authoring experience , especially out of the box . This is quickly becoming an enormous problem for us, as content authors are more and more being put in charge of CMS decisions , rather than techies.
Here is the timeline for authoring experience improvements that Dries laid out in his DrupalCon Denver keynote. The goal is to allow time for exploring interface improvements we could make up until Munich, then hammer down on implementation . Here are some of the things going on there...
One of the major focuses within the community is on a revamped content creation screen. Better differentiate between “primary” fields and settings Move “primary” publishing settings (e.g. URL, status) to more prominent location . This new design has been shown to test well , and now we’re into implementation . (Shout out to Ryan)
Spark is a Drupal 7 distribution by Acquia that intends to act as an incubator for Drupal 8 authoring experience improvements. We’re trying to come up with features that put us at parity with competitors , but build on Drupal 7 so they can be tested in the real world . Sort of like Pressflow for authoring experience ; provide UX improvements today that can be put into future release , like Pressflow pioneered performance improvements in Drupal 6 that made their way into Drupal 7 .
First area of focus is in-place editing , or the ability to edit site content in “true” What You See Is What You Get. This post has a link to a video showing a prototype of what we envision there. Currently in active discussions with community on implementation strategy. (9 mins)
If you’d like to get involved in Usability , here are the details!
Next up, proposed changes for Drupal site builders , who spend their days in Drupal’s administrative interface .
First up is the Multilingual initiative. The goal is to fix Drupal’s language system once and for all .
Here’s what the Drupal 7 translation landscape looks like now. You can see that many modules are needed and the functionality each covers is scattered all over the place.
Interface and content translation built into core . Get translations directly from localize.drupal.org . More consistent APIs for developers. English no longer special . Usability improvements.
If you’d like to get involved in Multilingual , here are the details!
See above.
See above.
There’s current ongoing discussion about what best to use as a UI for all of this awesomeness. Please feel free to join in!
@TODO: Update meetings for local time zone.
Drupal’s default markup makes Jeffrey Zeldman cry.
Benefits: Increased security Proudly Found Elsewhere Separation of business / presentation logic And finally, on a slightly sadder note ...
I regret to announce the death of IE6 and IE7 support in Drupal 8 core. ... just kidding! APPLAUSE . :D
Right now, Drupal assumes that all requests it returns are going to be fully-themed HTML pages to a desktop browser .
To get it to output something other than a fully-themed HTML page, you need to exit out of the request before the theme system has a chance to take over . However, you still get the theme system, form API, and other subsystems loaded on each request .
Where we want to go is something like this. The plan for Drupal 8 is to allow Drupal to natively serve all kinds of requests . For example, JSON to an autocomplete field , or XML to a mobile application . Make Drupal a first-class REST server .
We plan to borrow a lot from the Symfony framework , which is already architected this way. Just * yesterday* , patch went in to re-work index.php to use HttpKernel and create a central Request object which holds contextual details . Exact impact on module developers is largely unknown at this point , but expect lots of changes at least to hook_menu()
It’s common to have at least two separate environments for your Drupal site: a “ live ” environment that your end users view and interact with, and a “ dev ” environment for testing . Most of configuring Drupal is pointy-clicky . That’s why we love it! The problem is, those clicks are saved to the database, alongside your site’s content , and there’s no separation between the two.
A variety of solutions have emerged to solve this problem, including CTools exportables, Features, update hooks, and the good ol’ “napkin” approach where you write down everything you did on dev and re-do it on prod by hand. :P Because configuration is scattered all over different APIs and subsystems , it’s difficult to manage, and none of the solutions that exist today solve the issue holistically. Variable system can get abused because the entire contents are read into memory on every request so they are available at all times.
asdasd sdsad Learn more at 3pm today!
If you’re curious about ALL of the API changes in Drupal 8, you can find a big list of them here .
Here are the contributors to Drupal 8 so far ! Let’s give them a huge round of applause ! And remember, kids: Drupal needs YOU, too!
Burn out People working on toughest problems in Drupal , but feel like they’re not getting enough help.
Which means... It’s time to kick some ass in Drupal 8! This talk will hopefully give you the knowledge you need to understand what’s happening in Drupal 8 and where to jump in and help. (3 mins)
These are all the folks who helped contribute in a major way to this presentation.