SlideShare a Scribd company logo
1 of 67
hook_future_alter()
A preview of Drupal 8, and how you can help.
June 22,2012 - Drupaldelphia
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?
WaT?


  A Drupal 8 talk?!
But I just started using
        Drupal 7!
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
Disclaimer: This stuff is actively undergoing
              development.
     100% accuracy not guaranteed.
Remember:
None of this happens
without YOUR help!
Time to kick
ass with
Drupal 8!
In Development for

End Users and
Clients
Mobile
Mobile
                 25X growth
               over next 5 years!




   All sites
All CMS
 sites
                  All Drupal
                     sites
What problems are we trying to
solve?




        Ooglay! :(
Responsive Design - Mobile
First




  http://groups.drupal.org/node/232653
Front-end
                     Performance++




                                               Source:
                http://www.stevesouders.com/blog/2012/02/10/the-performance-golden-rule/

http://drupal.org/project/issues/search/drupal?issue_tags=frontend+performance
How can I help?
          Lead        John Albin Wilkins

         Issue tag            mobile

          News       http://groups.drupal.org/mobile


           IRC          #drupal-mobile
                          Every other
        Meetings
                          Wednesday
Authoring Experience
Improvements
Authoring experience
 timeline
                       Authoring experience
                              timeline
                   Analysis Design Implementation
                    phase phase        phase
                   Apr-May Jun-July   Aug-Nov



2012                    2013

                Dec 1        Feb 1           Aug
                Feature freeze Code freeze    Release
Content creation page++
http://drupal.org/node/1510532
Spark



    http://drupal.org/project/spark
In-place Editing




http://buytaert.net/spark-update-in-line-editing-in-drupal
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
Proposed
changes for
site builders
Multilingual
It’s like i18n in core, but better
What’s the plan for
Drupal 8?
What’s the plan for Drupal
8?
How can I help?

           Lead           Gábor Hojsty

          Issue tag            d8mi

           News       http://groups.drupal.org/i18n


            IRC           #drupal-i18n
                           Every other
          Meetings
                           Wednesday
Blocks and Layouts
    (SCOTCH)




It’s like Panels in core, but better
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
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
UI?




      http://groups.drupal.org/node/227543
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
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
Views
OMG Views in CORE!!!
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
What problems are we trying to
solve?
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
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
Changes for designers
and front-end developers
HTML5 Form Elements
           $form['telephone'] = array(
             '#type' => 'tel',
             '#title' => t('Phone'),
           );



           $form['website'] = array(
             '#type' => 'url',
             '#title' => t('Website'),
           );



           $form['email'] = array(
             '#type' => 'email',
             '#title' => t('Email'),
           );



           $form['tickets'] = array(
             '#type' => 'number',
             '#title' => t('Tickets required '),
           );
Drupal 7                                                                                                    Drupal 8
                                                                                                                                   <!DOCTYPE html><html<?php print $html_attributes; ?>> <head> <?
                                                                                                                                   php print $head; ?> <?php if ($default_mobile_metatags): ?>
                                                                                                                                   <meta name="MobileOptimized" content="width" />         <meta
                                                                                                                                   name="HandheldFriendly" content="true" />       <meta name="viewport"
                                                                                                                                   content="width=device-width" />     <meta http-equiv="cleartype"
                                                                                                                                   content="on" /> <?php endif; ?> <title> <?php print $head_title; ?
                                                                                                                                   ></title> <?php print $styles; ?> <?php print $scripts; ?> </head>
                                                                                                                                   <body class="<?php print $classes; ?>" <?php print $body_attributes;?
                                                                                                                                   >> <div id="skip-link">     <a href="#main-content" class="element-
                                                                                                                                   invisible element-focusable"><?php print t('Skip to main content'); ?
                                                                                                                                   ></a> </div> <?php print $page_top; ?> <?php print $page; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd"><html
                                                                                                                                   <?php print $page_bottom; ?> </body></html>
xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php print $language->language; ?>" version="XHTML+RDFa 1.0" dir="<?
php print $language->dir; ?>"<?php print $rdf_namespaces; ?>><head profile="<?php print $grddl_profile; ?>"> <?php print
                                                                                                                                   <body class="<?php print $classes; ?>" <?php print $body_attributes;?
$head; ?> <title> <?php print $head_title; ?></title> <?php print $styles; ?> <?php print $scripts; ?></head><body class="<?
php print $classes; ?>" <?php print $attributes;?>> <div id="skip-link"> <a href="#main-content" class="element-invisible
                                                                                                                                   >> <div id="skip-link">     <a href="#main-content" class="element-
element-focusable"><?php print t('Skip to main content'); ?></a> </div> <?php print $page_top; ?> <?php print $page; ?> <?
php print $page_bottom; ?></body></html>
                                                                                                                                   invisible element-focusable"><?php print t('Skip to main content'); ?
?>" version="XHTML+RDFa 1.0" dir="<?php print $language->dir; ?>"<?php print $rdf_namespaces; ?>><head profile="<?php
print $grddl_profile; ?>"> <?php print $head; ?> <title> <?php print $head_title; ?></title> <?php print $styles; ?> <?php print
                                                                                                                                   ></a> </div> <?php print $page_top; ?> <?php print $page; ?>
$scripts; ?></head><body class="<?php print $classes; ?>" <?php print $attributes;?>> <div id="skip-link"> <a href="#main-
content" class="element-invisible element-focusable"><?php print t('Skip to main content'); ?></a> </div> <?php print
                                                                                                                                   <?php print $page_bottom; ?> </body></html>
$page_top; ?> <?php print $page; ?> <?php print $page_bottom; ?></body></html>
?>" version="XHTML+RDFa 1.0" dir="<?php print $language->dir; ?>"<?php print $rdf_namespaces; ?>><head profile="<?php
                                                                                                                                   <body class="<?php print $classes; ?>" <?php print $body_attributes;?
print $grddl_profile; ?>"> <?php print $head; ?> <title> <?php print $head_title; ?></title> <?php print $styles; ?> <?php print
$scripts; ?></head><body class="<?php print $classes; ?>" <?php print $attributes;?>> <div id="skip-link"> <a href="#main-
                                                                                                                                   >> <div id="skip-link">     <a href="#main-content" class="element-
content" class="element-invisible element-focusable"><?php print t('Skip to main content'); ?></a> </div> <?php print
$page_top; ?> <?php print $page; ?> <?php print $page_bottom; ?></body></html>
                                                                                                                                   invisible element-focusable"><?php print t('Skip to main content'); ?
                                                                                                                                   ></a> </div> <?php print $page_top; ?> <?php print $page; ?>
                                                                                                                                   <?php print $page_bottom; ?> </body></html>
                                                                                                                                   <body class="<?php print $classes; ?>" <?php print $body_attributes;?
                                                                                                                                   >> <div id="skip-link">     <a href="#main-content" class="element-
                                                                                                                                   invisible element-focusable"><?php print t('Skip to main content'); ?
                                                                                                                                   ></a> </div> <?php print $page_top; ?> <?php print $page; ?>
                                                                                                                                   <?php print $page_bottom; ?> </body></html>
                                                                                                                                   <body class="<?php print $classes; ?>" <?php print $body_attributes;?
                                                                                                                                   >> <div id="skip-link">     <a href="#main-content" class="element-
                                                                                                                                   invisible element-focusable"><?php print t('Skip to main content'); ?
                                                                                                                                   ></a> </div> <?php print $page_top; ?> <?php print $page; ?>
                                                                                                                                   <?php print $page_bottom; ?> </body></html>
Markup cleanup
Standard
              Components




http://jacine.github.com/drupal/demo/
Twig
  Drupal 7                                        Drupal 8
   region.tpl.php                                region.twig


  <?php if ($content): ?> <div class="<?php      {% if content %} <div {{ attributes }}>
  print $classes; ?>"> <?php print $content; ?     {{ content }}  </div>{% endif %}
  > </div><?php endif; ?>                         %}
  ?>                                              %}
  ?>




http://symfony.com/doc/current/book/templating.html
                    http://drupal.org/node/1499460
Changes for
  coders




              01110111   01101001   01101100   01101100   00100000
              01100011   01101111   01100100   01100101   00100000
              01110000   01101000   01110000   00100000   01100110
              01101111   01110010   00100000   01100110   01101111
              01101111   01100100
Warning:
Things are about to get...
geeky.
Web Services (WSCCI)



It’s like Services
module in core, only
better.
What problems are we
trying to solve?
What problems are we trying to
           solve?
What’s the
      plan for
      Drupal 8?

                                   Tutorial:
http://fabien.potencier.org/article/50/create-your-own-framework-on-top-of-the
Web Services

          Lead       Larry “Crell” Garfield

         Issue tag          WSCCI

          News       http://groups.drupal.org/wscci


           IRC          #drupal-wscci
                          Every other
         Meetings
                           Tuesday
Configuration Management
It’s like Features module in core, only better.
What problems are we trying to
solve?
          node/4        node/4




                           Danger
                             !
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()
What’s the plan for Drupal
8?




http://heyrocker.com/how-use-drupal-8-configuration-system
What’s the plan for Drupal 8?




http://heyrocker.com/how-use-drupal-8-configuration-system
Configuration
Management
                      Greg “heyrocker”
          Lead
                           Dunlap
                     Configuration system
         Issue tag

          News       http://groups.drupal.org/cmi


           IRC           #drupal-cmi
                          Every other
         Meetings
                           Tuesday
Other stuff
   PSR-0
   Getting OOPy with it!
   Entity API++
   More fasterer testbot!
   File/Media API improvements
   and more!
Gotta catch ‘em all!




      http://drupal.org/list-changes
Huge round of applause




       ...to Over 600 contributors
Obligatory picture of
    scary clouds and
       dire
warnings.
.
.
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!
Most Important Stuff




 http://drupal.org/community-initiatives/drupal-core
Time to kick
ass with
Drupal 8!
Slide Credits
     Angela “webchick” Byron
     Kristof De Jaeger
     Jen Lampton
     Dries Buytaert
     Gábor Hojtsy
     Larry Garfield
Thank you!
Questions? :)

More Related Content

Similar to The State of Drupal 8

Drupalcamp Tallinn - Drupal 8
Drupalcamp Tallinn - Drupal 8Drupalcamp Tallinn - Drupal 8
Drupalcamp Tallinn - Drupal 8drupalcampest
 
Drupal7 Release Party in Luxembourg
Drupal7 Release Party in LuxembourgDrupal7 Release Party in Luxembourg
Drupal7 Release Party in Luxembourgnvisionagency
 
Drupal 7 Release Party - Yogyakarta
Drupal 7 Release Party - YogyakartaDrupal 7 Release Party - Yogyakarta
Drupal 7 Release Party - YogyakartaRoy Gunawan
 
Building Drupal 8 Sites
Building Drupal 8 SitesBuilding Drupal 8 Sites
Building Drupal 8 SitesExove
 
Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Jay Epstein
 
Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Jay Epstein
 
From Drupal 7 to Drupal 8 - Drupal Intensive Course Overview
From Drupal 7 to Drupal 8 - Drupal Intensive Course OverviewFrom Drupal 7 to Drupal 8 - Drupal Intensive Course Overview
From Drupal 7 to Drupal 8 - Drupal Intensive Course OverviewItalo Mairo
 
Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Acquia
 
Anton Faibyshev - Drupal 8: lazy builder. What we need to build a house - we ...
Anton Faibyshev - Drupal 8: lazy builder. What we need to build a house - we ...Anton Faibyshev - Drupal 8: lazy builder. What we need to build a house - we ...
Anton Faibyshev - Drupal 8: lazy builder. What we need to build a house - we ...DrupalCamp Kyiv
 
UMD User's Group: DrupalCon 2011, Chicago
UMD User's Group: DrupalCon 2011, ChicagoUMD User's Group: DrupalCon 2011, Chicago
UMD User's Group: DrupalCon 2011, Chicagobrockfanning
 
Drupal
DrupalDrupal
Drupalbtopro
 
Drupal 8 - Core and API Changes
Drupal 8 - Core and API ChangesDrupal 8 - Core and API Changes
Drupal 8 - Core and API ChangesShabir Ahmad
 
Choosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management FrameworkChoosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management FrameworkMediacurrent
 
Drupal Theme Development - DrupalCon Chicago 2011
Drupal Theme Development - DrupalCon Chicago 2011Drupal Theme Development - DrupalCon Chicago 2011
Drupal Theme Development - DrupalCon Chicago 2011Ryan Price
 
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...Eric Sembrat
 
Drupal7 Theming session on the occassion of Drupal7 release party in Delhi NCR
Drupal7 Theming session on the occassion of  Drupal7 release party in Delhi NCRDrupal7 Theming session on the occassion of  Drupal7 release party in Delhi NCR
Drupal7 Theming session on the occassion of Drupal7 release party in Delhi NCRGaurav Mishra
 
Building and Maintaining a Distribution in Drupal 7 with Features
Building and Maintaining a  Distribution in Drupal 7 with FeaturesBuilding and Maintaining a  Distribution in Drupal 7 with Features
Building and Maintaining a Distribution in Drupal 7 with FeaturesNuvole
 
Making The Drupal Pill Easier To Swallow
Making The Drupal Pill Easier To SwallowMaking The Drupal Pill Easier To Swallow
Making The Drupal Pill Easier To SwallowPhilip Norton
 
Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Angela Byron
 

Similar to The State of Drupal 8 (20)

Drupalcamp Tallinn - Drupal 8
Drupalcamp Tallinn - Drupal 8Drupalcamp Tallinn - Drupal 8
Drupalcamp Tallinn - Drupal 8
 
Drupal7 Release Party in Luxembourg
Drupal7 Release Party in LuxembourgDrupal7 Release Party in Luxembourg
Drupal7 Release Party in Luxembourg
 
Drupal 7 Release Party - Yogyakarta
Drupal 7 Release Party - YogyakartaDrupal 7 Release Party - Yogyakarta
Drupal 7 Release Party - Yogyakarta
 
Building Drupal 8 Sites
Building Drupal 8 SitesBuilding Drupal 8 Sites
Building Drupal 8 Sites
 
Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7
 
Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7Building Websites of the Future With Drupal 7
Building Websites of the Future With Drupal 7
 
From Drupal 7 to Drupal 8 - Drupal Intensive Course Overview
From Drupal 7 to Drupal 8 - Drupal Intensive Course OverviewFrom Drupal 7 to Drupal 8 - Drupal Intensive Course Overview
From Drupal 7 to Drupal 8 - Drupal Intensive Course Overview
 
Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8Everything You Need to Know About the Top Changes in Drupal 8
Everything You Need to Know About the Top Changes in Drupal 8
 
Anton Faibyshev - Drupal 8: lazy builder. What we need to build a house - we ...
Anton Faibyshev - Drupal 8: lazy builder. What we need to build a house - we ...Anton Faibyshev - Drupal 8: lazy builder. What we need to build a house - we ...
Anton Faibyshev - Drupal 8: lazy builder. What we need to build a house - we ...
 
Drupalcampatl d7
Drupalcampatl d7Drupalcampatl d7
Drupalcampatl d7
 
UMD User's Group: DrupalCon 2011, Chicago
UMD User's Group: DrupalCon 2011, ChicagoUMD User's Group: DrupalCon 2011, Chicago
UMD User's Group: DrupalCon 2011, Chicago
 
Drupal
DrupalDrupal
Drupal
 
Drupal 8 - Core and API Changes
Drupal 8 - Core and API ChangesDrupal 8 - Core and API Changes
Drupal 8 - Core and API Changes
 
Choosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management FrameworkChoosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management Framework
 
Drupal Theme Development - DrupalCon Chicago 2011
Drupal Theme Development - DrupalCon Chicago 2011Drupal Theme Development - DrupalCon Chicago 2011
Drupal Theme Development - DrupalCon Chicago 2011
 
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
 
Drupal7 Theming session on the occassion of Drupal7 release party in Delhi NCR
Drupal7 Theming session on the occassion of  Drupal7 release party in Delhi NCRDrupal7 Theming session on the occassion of  Drupal7 release party in Delhi NCR
Drupal7 Theming session on the occassion of Drupal7 release party in Delhi NCR
 
Building and Maintaining a Distribution in Drupal 7 with Features
Building and Maintaining a  Distribution in Drupal 7 with FeaturesBuilding and Maintaining a  Distribution in Drupal 7 with Features
Building and Maintaining a Distribution in Drupal 7 with Features
 
Making The Drupal Pill Easier To Swallow
Making The Drupal Pill Easier To SwallowMaking The Drupal Pill Easier To Swallow
Making The Drupal Pill Easier To Swallow
 
Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8
 

More from nyccamp

Drupal As A Jigsaw
Drupal As A JigsawDrupal As A Jigsaw
Drupal As A Jigsawnyccamp
 
A/B Testing and Optimizely Module
A/B Testing and Optimizely ModuleA/B Testing and Optimizely Module
A/B Testing and Optimizely Modulenyccamp
 
Behat - human-readable automated testing
Behat - human-readable automated testingBehat - human-readable automated testing
Behat - human-readable automated testingnyccamp
 
ALL YOUR BASE (THEMES) ARE BELONG TO US
ALL YOUR BASE (THEMES) ARE BELONG TO USALL YOUR BASE (THEMES) ARE BELONG TO US
ALL YOUR BASE (THEMES) ARE BELONG TO USnyccamp
 
Drupal Commerce - The Product vs Display Conundrum and How to Explain it to a...
Drupal Commerce - The Product vs Display Conundrum and How to Explain it to a...Drupal Commerce - The Product vs Display Conundrum and How to Explain it to a...
Drupal Commerce - The Product vs Display Conundrum and How to Explain it to a...nyccamp
 
Promotions Vouchers and Offers in Drupal Commerce
Promotions Vouchers and Offers in Drupal CommercePromotions Vouchers and Offers in Drupal Commerce
Promotions Vouchers and Offers in Drupal Commercenyccamp
 
Workbench: Managing Content Management
Workbench: Managing Content ManagementWorkbench: Managing Content Management
Workbench: Managing Content Managementnyccamp
 
Deployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and ConfigurationsDeployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and Configurationsnyccamp
 
Drupal Aware Design: Good Techniques for Better Themes
Drupal Aware Design: Good Techniques for Better ThemesDrupal Aware Design: Good Techniques for Better Themes
Drupal Aware Design: Good Techniques for Better Themesnyccamp
 
Drupal and Higher Education
Drupal and Higher EducationDrupal and Higher Education
Drupal and Higher Educationnyccamp
 
A New Theme Layer for Drupal 8
A New Theme Layer for Drupal 8A New Theme Layer for Drupal 8
A New Theme Layer for Drupal 8nyccamp
 
Mobile and Responsive Design with Sass
Mobile and Responsive Design with SassMobile and Responsive Design with Sass
Mobile and Responsive Design with Sassnyccamp
 
Drupal and Apache Solr Search Go Together Like Pizza and Beer for Your Site
Drupal and Apache Solr Search Go Together Like Pizza and Beer for Your SiteDrupal and Apache Solr Search Go Together Like Pizza and Beer for Your Site
Drupal and Apache Solr Search Go Together Like Pizza and Beer for Your Sitenyccamp
 
Building Social Networks
Building Social NetworksBuilding Social Networks
Building Social Networksnyccamp
 
Building Social Networks
Building Social NetworksBuilding Social Networks
Building Social Networksnyccamp
 
Move Into Drupal Using The Migrate Module
Move Into Drupal Using The Migrate ModuleMove Into Drupal Using The Migrate Module
Move Into Drupal Using The Migrate Modulenyccamp
 
Hack Into Drupal Sites (or, How to Secure Your Drupal Site)
Hack Into Drupal Sites (or, How to Secure Your Drupal Site)Hack Into Drupal Sites (or, How to Secure Your Drupal Site)
Hack Into Drupal Sites (or, How to Secure Your Drupal Site)nyccamp
 
Drulenium - Testing Made Easy
Drulenium - Testing Made EasyDrulenium - Testing Made Easy
Drulenium - Testing Made Easynyccamp
 
Node Access in Drupal 7 (and Drupal 8)
Node Access in Drupal 7 (and Drupal 8)Node Access in Drupal 7 (and Drupal 8)
Node Access in Drupal 7 (and Drupal 8)nyccamp
 

More from nyccamp (19)

Drupal As A Jigsaw
Drupal As A JigsawDrupal As A Jigsaw
Drupal As A Jigsaw
 
A/B Testing and Optimizely Module
A/B Testing and Optimizely ModuleA/B Testing and Optimizely Module
A/B Testing and Optimizely Module
 
Behat - human-readable automated testing
Behat - human-readable automated testingBehat - human-readable automated testing
Behat - human-readable automated testing
 
ALL YOUR BASE (THEMES) ARE BELONG TO US
ALL YOUR BASE (THEMES) ARE BELONG TO USALL YOUR BASE (THEMES) ARE BELONG TO US
ALL YOUR BASE (THEMES) ARE BELONG TO US
 
Drupal Commerce - The Product vs Display Conundrum and How to Explain it to a...
Drupal Commerce - The Product vs Display Conundrum and How to Explain it to a...Drupal Commerce - The Product vs Display Conundrum and How to Explain it to a...
Drupal Commerce - The Product vs Display Conundrum and How to Explain it to a...
 
Promotions Vouchers and Offers in Drupal Commerce
Promotions Vouchers and Offers in Drupal CommercePromotions Vouchers and Offers in Drupal Commerce
Promotions Vouchers and Offers in Drupal Commerce
 
Workbench: Managing Content Management
Workbench: Managing Content ManagementWorkbench: Managing Content Management
Workbench: Managing Content Management
 
Deployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and ConfigurationsDeployment Strategies: Managing Code, Content, and Configurations
Deployment Strategies: Managing Code, Content, and Configurations
 
Drupal Aware Design: Good Techniques for Better Themes
Drupal Aware Design: Good Techniques for Better ThemesDrupal Aware Design: Good Techniques for Better Themes
Drupal Aware Design: Good Techniques for Better Themes
 
Drupal and Higher Education
Drupal and Higher EducationDrupal and Higher Education
Drupal and Higher Education
 
A New Theme Layer for Drupal 8
A New Theme Layer for Drupal 8A New Theme Layer for Drupal 8
A New Theme Layer for Drupal 8
 
Mobile and Responsive Design with Sass
Mobile and Responsive Design with SassMobile and Responsive Design with Sass
Mobile and Responsive Design with Sass
 
Drupal and Apache Solr Search Go Together Like Pizza and Beer for Your Site
Drupal and Apache Solr Search Go Together Like Pizza and Beer for Your SiteDrupal and Apache Solr Search Go Together Like Pizza and Beer for Your Site
Drupal and Apache Solr Search Go Together Like Pizza and Beer for Your Site
 
Building Social Networks
Building Social NetworksBuilding Social Networks
Building Social Networks
 
Building Social Networks
Building Social NetworksBuilding Social Networks
Building Social Networks
 
Move Into Drupal Using The Migrate Module
Move Into Drupal Using The Migrate ModuleMove Into Drupal Using The Migrate Module
Move Into Drupal Using The Migrate Module
 
Hack Into Drupal Sites (or, How to Secure Your Drupal Site)
Hack Into Drupal Sites (or, How to Secure Your Drupal Site)Hack Into Drupal Sites (or, How to Secure Your Drupal Site)
Hack Into Drupal Sites (or, How to Secure Your Drupal Site)
 
Drulenium - Testing Made Easy
Drulenium - Testing Made EasyDrulenium - Testing Made Easy
Drulenium - Testing Made Easy
 
Node Access in Drupal 7 (and Drupal 8)
Node Access in Drupal 7 (and Drupal 8)Node Access in Drupal 7 (and Drupal 8)
Node Access in Drupal 7 (and Drupal 8)
 

Recently uploaded

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

The State of Drupal 8

  • 1. hook_future_alter() A preview of Drupal 8, and how you can help. June 22,2012 - Drupaldelphia
  • 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
  • 5. Disclaimer: This stuff is actively undergoing development. 100% accuracy not guaranteed.
  • 6. Remember: None of this happens without YOUR help!
  • 7. Time to kick ass with Drupal 8!
  • 8. In Development for End Users and Clients
  • 10. Mobile 25X growth over next 5 years! All sites All CMS sites All Drupal sites
  • 11. What problems are we trying to solve? Ooglay! :(
  • 12. Responsive Design - Mobile First http://groups.drupal.org/node/232653
  • 13. Front-end Performance++ Source: http://www.stevesouders.com/blog/2012/02/10/the-performance-golden-rule/ http://drupal.org/project/issues/search/drupal?issue_tags=frontend+performance
  • 14. How can I help? Lead John Albin Wilkins Issue tag mobile News http://groups.drupal.org/mobile IRC #drupal-mobile Every other Meetings Wednesday
  • 16. Authoring experience timeline Authoring experience timeline Analysis Design Implementation phase phase phase Apr-May Jun-July Aug-Nov 2012 2013 Dec 1 Feb 1 Aug Feature freeze Code freeze Release
  • 18. Spark http://drupal.org/project/spark
  • 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
  • 22. Multilingual It’s like i18n in core, but better
  • 23. What’s the plan for Drupal 8?
  • 24. What’s the plan for Drupal 8?
  • 25. How can I help? Lead Gábor Hojsty Issue tag d8mi News http://groups.drupal.org/i18n IRC #drupal-i18n Every other Meetings Wednesday
  • 26. Blocks and Layouts (SCOTCH) It’s like Panels in core, but better
  • 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
  • 29. UI? http://groups.drupal.org/node/227543
  • 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
  • 34. What problems are we trying to solve?
  • 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
  • 37. Changes for designers and front-end developers
  • 38.
  • 39. HTML5 Form Elements $form['telephone'] = array( '#type' => 'tel', '#title' => t('Phone'), ); $form['website'] = array( '#type' => 'url', '#title' => t('Website'), ); $form['email'] = array( '#type' => 'email', '#title' => t('Email'), ); $form['tickets'] = array( '#type' => 'number', '#title' => t('Tickets required '), );
  • 40. Drupal 7 Drupal 8 <!DOCTYPE html><html<?php print $html_attributes; ?>> <head> <? php print $head; ?> <?php if ($default_mobile_metatags): ?> <meta name="MobileOptimized" content="width" /> <meta name="HandheldFriendly" content="true" /> <meta name="viewport" content="width=device-width" /> <meta http-equiv="cleartype" content="on" /> <?php endif; ?> <title> <?php print $head_title; ? ></title> <?php print $styles; ?> <?php print $scripts; ?> </head> <body class="<?php print $classes; ?>" <?php print $body_attributes;? >> <div id="skip-link"> <a href="#main-content" class="element- invisible element-focusable"><?php print t('Skip to main content'); ? ></a> </div> <?php print $page_top; ?> <?php print $page; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd"><html <?php print $page_bottom; ?> </body></html> xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php print $language->language; ?>" version="XHTML+RDFa 1.0" dir="<? php print $language->dir; ?>"<?php print $rdf_namespaces; ?>><head profile="<?php print $grddl_profile; ?>"> <?php print <body class="<?php print $classes; ?>" <?php print $body_attributes;? $head; ?> <title> <?php print $head_title; ?></title> <?php print $styles; ?> <?php print $scripts; ?></head><body class="<? php print $classes; ?>" <?php print $attributes;?>> <div id="skip-link"> <a href="#main-content" class="element-invisible >> <div id="skip-link"> <a href="#main-content" class="element- element-focusable"><?php print t('Skip to main content'); ?></a> </div> <?php print $page_top; ?> <?php print $page; ?> <? php print $page_bottom; ?></body></html> invisible element-focusable"><?php print t('Skip to main content'); ? ?>" version="XHTML+RDFa 1.0" dir="<?php print $language->dir; ?>"<?php print $rdf_namespaces; ?>><head profile="<?php print $grddl_profile; ?>"> <?php print $head; ?> <title> <?php print $head_title; ?></title> <?php print $styles; ?> <?php print ></a> </div> <?php print $page_top; ?> <?php print $page; ?> $scripts; ?></head><body class="<?php print $classes; ?>" <?php print $attributes;?>> <div id="skip-link"> <a href="#main- content" class="element-invisible element-focusable"><?php print t('Skip to main content'); ?></a> </div> <?php print <?php print $page_bottom; ?> </body></html> $page_top; ?> <?php print $page; ?> <?php print $page_bottom; ?></body></html> ?>" version="XHTML+RDFa 1.0" dir="<?php print $language->dir; ?>"<?php print $rdf_namespaces; ?>><head profile="<?php <body class="<?php print $classes; ?>" <?php print $body_attributes;? print $grddl_profile; ?>"> <?php print $head; ?> <title> <?php print $head_title; ?></title> <?php print $styles; ?> <?php print $scripts; ?></head><body class="<?php print $classes; ?>" <?php print $attributes;?>> <div id="skip-link"> <a href="#main- >> <div id="skip-link"> <a href="#main-content" class="element- content" class="element-invisible element-focusable"><?php print t('Skip to main content'); ?></a> </div> <?php print $page_top; ?> <?php print $page; ?> <?php print $page_bottom; ?></body></html> invisible element-focusable"><?php print t('Skip to main content'); ? ></a> </div> <?php print $page_top; ?> <?php print $page; ?> <?php print $page_bottom; ?> </body></html> <body class="<?php print $classes; ?>" <?php print $body_attributes;? >> <div id="skip-link"> <a href="#main-content" class="element- invisible element-focusable"><?php print t('Skip to main content'); ? ></a> </div> <?php print $page_top; ?> <?php print $page; ?> <?php print $page_bottom; ?> </body></html> <body class="<?php print $classes; ?>" <?php print $body_attributes;? >> <div id="skip-link"> <a href="#main-content" class="element- invisible element-focusable"><?php print t('Skip to main content'); ? ></a> </div> <?php print $page_top; ?> <?php print $page; ?> <?php print $page_bottom; ?> </body></html>
  • 42. Standard Components http://jacine.github.com/drupal/demo/
  • 43. Twig Drupal 7 Drupal 8 region.tpl.php region.twig <?php if ($content): ?> <div class="<?php {% if content %} <div {{ attributes }}> print $classes; ?>"> <?php print $content; ? {{ content }} </div>{% endif %} > </div><?php endif; ?> %} ?> %} ?> http://symfony.com/doc/current/book/templating.html http://drupal.org/node/1499460
  • 44.
  • 45. Changes for coders 01110111 01101001 01101100 01101100 00100000 01100011 01101111 01100100 01100101 00100000 01110000 01101000 01110000 00100000 01100110 01101111 01110010 00100000 01100110 01101111 01101111 01100100
  • 46. Warning: Things are about to get... geeky.
  • 47. Web Services (WSCCI) It’s like Services module in core, only better.
  • 48. What problems are we trying to solve?
  • 49. What problems are we trying to solve?
  • 50.
  • 51. What’s the plan for Drupal 8? Tutorial: http://fabien.potencier.org/article/50/create-your-own-framework-on-top-of-the
  • 52. Web Services Lead Larry “Crell” Garfield Issue tag WSCCI News http://groups.drupal.org/wscci IRC #drupal-wscci Every other Meetings Tuesday
  • 53. Configuration Management It’s like Features module in core, only better.
  • 54. What problems are we trying to solve? node/4 node/4 Danger !
  • 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!
  • 60. Gotta catch ‘em all! http://drupal.org/list-changes
  • 61. Huge round of applause ...to Over 600 contributors
  • 62. Obligatory picture of scary clouds and dire warnings. . .
  • 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!
  • 64. Most Important Stuff http://drupal.org/community-initiatives/drupal-core
  • 65. Time to kick ass with Drupal 8!
  • 66. Slide Credits Angela “webchick” Byron Kristof De Jaeger Jen Lampton Dries Buytaert Gábor Hojtsy Larry Garfield

Editor's Notes

  1. 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! :(
  2. @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!
  3. First is Drupal 8 is under /very/ active development so these slides might not be 100% accurate . Please don’t shoot me. :)
  4. 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.
  5. 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)
  6. We’ll start with proposed changes for end users and clients , aka the “victims” of Drupal . :)
  7. First up is Mobile .
  8. 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 .
  9. 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 .
  10. 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 .
  11. 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)
  12. If you’d like to get involved in Mobile, here are the details!
  13. 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.
  14. 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...
  15. 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)
  16. 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 .
  17. 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)
  18. If you’d like to get involved in Usability , here are the details!
  19. Next up, proposed changes for Drupal site builders , who spend their days in Drupal’s administrative interface .
  20. First up is the Multilingual initiative. The goal is to fix Drupal’s language system once and for all .
  21. 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.
  22. 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.
  23. If you’d like to get involved in Multilingual , here are the details!
  24. See above.
  25. See above.
  26. There’s current ongoing discussion about what best to use as a UI for all of this awesomeness. Please feel free to join in!
  27. @TODO: Update meetings for local time zone.
  28. Drupal’s default markup makes Jeffrey Zeldman cry.
  29. Benefits: Increased security Proudly Found Elsewhere Separation of business / presentation logic And finally, on a slightly sadder note ...
  30. I regret to announce the death of IE6 and IE7 support in Drupal 8 core. ... just kidding! APPLAUSE . :D
  31. Right now, Drupal assumes that all requests it returns are going to be fully-themed HTML pages to a desktop browser .
  32. 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 .
  33. 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 .
  34. 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()
  35. 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.
  36. 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.
  37. asdasd sdsad Learn more at 3pm today!
  38. If you’re curious about ALL of the API changes in Drupal 8, you can find a big list of them here .
  39. 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!
  40. Burn out People working on toughest problems in Drupal , but feel like they’re not getting enough help.
  41. 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)
  42. These are all the folks who helped contribute in a major way to this presentation.
  43. Thanks for listening! Any questions? :)