SlideShare a Scribd company logo
Kristjan Jansen
Drupal 8


Drupalcamp Tallinn
2012
About me
Using Drupal since version 2.0
    Worked on Drupal UX,
    theming and branding
Consulting, talking, blogging
Drupal 8
timeline
2011   2012   2013
Mar 2011
  Dev.
 started


2011       2012   2013
Mar 2011
  Dev.
 started


2011               2012   2013

           June 2012
            We are
             here
Mar 2011               Dec 1 2012
  Dev.                  Feature
 started                Freeze


2011               2012             2013

           June 2012
            We are
             here
Mar 2011               Dec 1 2012
  Dev.                  Feature
 started                Freeze


2011               2012                 2013

           June 2012       Feb 1 2013
            We are            Code
             here            Freeze
Mar 2011               Dec 1 2012   Aug 2013
  Dev.                  Feature     Drupal 8
 started                Freeze      released


2011               2012                 2013

           June 2012       Feb 1 2013
            We are            Code
             here            Freeze
Official initiatives
Lets go back to
Drupalcamp Tallinn 2011
Core initiatives
   Configuration
   Web Services
      Design
Internationalization
      HTML5
Core initiatives
   Configuration
   Web Services
      Design
Internationalization
      HTML5
      many more
Configuration
Management
Saving conf in Drupal 7
// mymodule/mymodule.module
variable_set("mymodule_variable", 1);


Saving conf in Drupal 8
// mymodule/mymodule.module
config('mymodule.config')->set('myvalue', 1)->save();


// mymodule/config/mymodule.config.yml
myvalue: 1
Help out in
  drupal.org/community-
initiatives/drupal-core#cmi
Web services
Drupal should generate
 output in any format
  "Services in core"
Drupalcamp Tallinn - Drupal 8
Introducing...
Drupalcamp Tallinn - Drupal 8
Symfony is
   PHP framework
to create frameworks
Modular object-oriented
components for PHP 5.3
Drupal only uses a small
 subset of components
Historic commit: 1 June 2012
define(‘DRUPAL_ROOT’, getcwd());
require_once DRUPAL_ROOT . ‘/core/includes/bootstrap.inc’;

drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);

menu_execute_active_handler();




      index.php for many years
use SymfonyComponentHttpFoundationRequest;
define('DRUPAL_ROOT', getcwd());
require_once DRUPAL_ROOT . '/core/includes/bootstrap.inc';



drupal_bootstrap(DRUPAL_BOOTSTRAP_CODE);

$kernel = drupal_container()->get('httpkernel');
$response = $kernel->handle($request)->prepare($request)->send();
$kernel->terminate($request, $response);




             index.php in future
What next?
 Cleanup and performance
    New menu / router
Event dispatcher vs hooks
install.php and update.php
Help out in
    drupal.org/community-
initiatives/drupal-core#wscci
Internationalization
Mostly about cleaning up
      language APIs
Might use Symfony pieces
In works: config translation
Help out in
   drupal.org/community-
initiatives/drupal-core#d8mi
HTML5
Most core templates
          converted
	
    New HTML5 form elements
Help out in
   drupal.org/community-
initiatives/drupal-core/html5
And now the
new initiatives
Blocks & Layouts
   Everywhere
Spin-off from Web Services

     "Panels in core"
groups.drupal.org/node/227543
Help out in
     drupal.org/community-
initiatives/drupal-core#layouts
Mobile
Drupalcamp Tallinn - Drupal 8
Help out in
     drupal.org/community-
initiatives/drupal-core#mobile
Non-official
 initiatives
PSR-0
Cleanly separate procedural
 and object-oriented code
  Support namespacing
  and class lazy-loading
Drupal 7 module classes
mymodule/mymodule.module
mymodule/mymodule.inc


Drupal 8 module classes
mymodule/mymodule.module
mymodule/lib/Drupal/mymodule/firstClass.php
mymodule/lib/Drupal/mymodule/secondClass.php
User experience
 improvements
New create content page
Latest overview in bojhan.nl
Theming cleanup +
      Twig
Drupal theming is a mess
Some theme problems
     No consistency
   Too many templates
 Complex data structurea
  Too much _process()ing
Twig
.tpl.php
<?php if ($content): ?>
  <div class=”<?php print $classes; ?>”>
    <?php print $content; ?>
  </div>
<?php endif; ?>




.twig
{% if content %}
  <div {{ attributes }}>
    {{ contents }}
	</div>
{% endif %}
Help out in
groups.drupal.org/theme-
     development
One more thing
Photo: Dries Buytaert




 Views
in core
Task list
     PSR-0 conversion
  Re-use new configuration
      and plugin APIs
 Convert (some) core views
Move some UI widgets to core
Help out in
  drupal.org/community-
initiatives/drupal-core/vdc
Lots of smaller
improvements
All Drupal files under /core
      Better Entity API
  cron.php → cron.module
xmlrpc.php → xmlrpc.module
profile.module blog.module
How to track
  all this?
groups.drupal.org/core
drupal.org/list-changes
Again, all this happens
 only when YOU help
Thanks!

           kika.trip.ee
  twitter.com/kristjanjansen
facebook.com/kristjanjansen

More Related Content

Viewers also liked (6)

PDF
Migrating University of Tartu websites to Drupal
drupalcampest
 
PDF
Drupalcamp Estonia - Drupal 7
drupalcampest
 
PPTX
Joplin memorial slide show
melelkins
 
PPTX
Remote control operation
suzyq1102
 
PDF
Kekurangan akal dan agama pada wanita
Hani Harahap
 
PPTX
Mobile Channels in eZ Publish
lserwatka
 
Migrating University of Tartu websites to Drupal
drupalcampest
 
Drupalcamp Estonia - Drupal 7
drupalcampest
 
Joplin memorial slide show
melelkins
 
Remote control operation
suzyq1102
 
Kekurangan akal dan agama pada wanita
Hani Harahap
 
Mobile Channels in eZ Publish
lserwatka
 

Similar to Drupalcamp Tallinn - Drupal 8 (20)

PPT
The State of Drupal 8
nyccamp
 
PPTX
Decoupled drupal
Ahmad Hassan
 
PPT
Drupal theming 101
Exove
 
PPTX
Drupalcampatl d7
Mediacurrent
 
PPT
Fronteers - Drupal 7 ux
Bojhan
 
DOCX
Drupal module development training delhi
unitedwebsoft
 
PDF
Choosing Drupal as your Content Management Framework
Mediacurrent
 
PPTX
Basic Introduction to Drupal
Murtaza Alvi
 
PDF
Drupal 8 - Core and API Changes
Shabir Ahmad
 
PDF
Drupal for beginners - Global Training Days - Cebu 2016
Luc Bézier
 
PDF
Decoupled drupal DcRuhr
Ahmad Hassan
 
PDF
DDAY2014 - Features per Drupal 8
DrupalDay
 
PDF
Building a Custom Theme in Drupal 8
Anne Tomasevich
 
PDF
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
Eric Sembrat
 
PDF
Building Your Own Drupal Distribution
Aniket Maithani
 
PDF
Drupal Community Involvement – Drupal 社区参与
Johanna Lindh
 
PPTX
Lazy Coder Camp Edition 1
phpfactory
 
PDF
Drupal 8 - A Brief Introduction
Jeff Geerling
 
PPTX
Drupal Center of Excellence
Blisstering Solutions
 
The State of Drupal 8
nyccamp
 
Decoupled drupal
Ahmad Hassan
 
Drupal theming 101
Exove
 
Drupalcampatl d7
Mediacurrent
 
Fronteers - Drupal 7 ux
Bojhan
 
Drupal module development training delhi
unitedwebsoft
 
Choosing Drupal as your Content Management Framework
Mediacurrent
 
Basic Introduction to Drupal
Murtaza Alvi
 
Drupal 8 - Core and API Changes
Shabir Ahmad
 
Drupal for beginners - Global Training Days - Cebu 2016
Luc Bézier
 
Decoupled drupal DcRuhr
Ahmad Hassan
 
DDAY2014 - Features per Drupal 8
DrupalDay
 
Building a Custom Theme in Drupal 8
Anne Tomasevich
 
October 2016 - USG Rock Eagle - Everything You Need to Know to Plan Your Drup...
Eric Sembrat
 
Building Your Own Drupal Distribution
Aniket Maithani
 
Drupal Community Involvement – Drupal 社区参与
Johanna Lindh
 
Lazy Coder Camp Edition 1
phpfactory
 
Drupal 8 - A Brief Introduction
Jeff Geerling
 
Drupal Center of Excellence
Blisstering Solutions
 
Ad

More from drupalcampest (9)

PDF
Advanced theming
drupalcampest
 
PDF
Developing realtime apps with Drupal and NodeJS
drupalcampest
 
PDF
Welcome to Drupalcamp Estonia 2012
drupalcampest
 
PDF
Implementing Drupalcamp sites
drupalcampest
 
PDF
Designing Drupalcamp sites
drupalcampest
 
PDF
Drupal vs. the Others
drupalcampest
 
PPT
Drupalcamp Estonia - High Performance Sites
drupalcampest
 
PDF
Drupalcamp Estonia - Introduction to Drupal
drupalcampest
 
PPT
Drupalcamp Estonia 2011 - Welcome
drupalcampest
 
Advanced theming
drupalcampest
 
Developing realtime apps with Drupal and NodeJS
drupalcampest
 
Welcome to Drupalcamp Estonia 2012
drupalcampest
 
Implementing Drupalcamp sites
drupalcampest
 
Designing Drupalcamp sites
drupalcampest
 
Drupal vs. the Others
drupalcampest
 
Drupalcamp Estonia - High Performance Sites
drupalcampest
 
Drupalcamp Estonia - Introduction to Drupal
drupalcampest
 
Drupalcamp Estonia 2011 - Welcome
drupalcampest
 
Ad

Recently uploaded (20)

PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PPTX
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
PDF
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PDF
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
PDF
Wojciech Ciemski for Top Cyber News MAGAZINE. June 2025
Dr. Ludmila Morozova-Buss
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PPT
Interview paper part 3, It is based on Interview Prep
SoumyadeepGhosh39
 
PPTX
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
PDF
Building Resilience with Digital Twins : Lessons from Korea
SANGHEE SHIN
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
Impact of IEEE Computer Society in Advancing Emerging Technologies including ...
Hironori Washizaki
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
OpenID AuthZEN - Analyst Briefing July 2025
David Brossard
 
Chris Elwell Woburn, MA - Passionate About IT Innovation
Chris Elwell Woburn, MA
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
NewMind AI Journal - Weekly Chronicles - July'25 Week II
NewMind AI
 
Wojciech Ciemski for Top Cyber News MAGAZINE. June 2025
Dr. Ludmila Morozova-Buss
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Human-centred design in online workplace learning and relationship to engagem...
Tracy Tang
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Interview paper part 3, It is based on Interview Prep
SoumyadeepGhosh39
 
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
Building Resilience with Digital Twins : Lessons from Korea
SANGHEE SHIN
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
Impact of IEEE Computer Society in Advancing Emerging Technologies including ...
Hironori Washizaki
 

Drupalcamp Tallinn - Drupal 8