SlideShare a Scribd company logo
1 of 95
10 Reasons why you should be using features


   Florian Lorétan
                                  24. aug 16:00
                                  Microsoft
Florian Lorétan
.net
10 Reasons
why you should be using
           Features
     or why you've been missing out so far
CCK
:-o
views
:-|
...
:-o
features
:-)
features?
features?
Reason




#1
Features puts configuration into code
What can be exported: exportables
   Default Views
   Imagecache Presets
   Ctools
       Panels
       Open Layers
   Rules
   Blocks (via context)
   Variables (via strongarm)
Default
Default
Overridden
 Default
Default
Overridden
 Default
Default
What can be exported: non-exportables
   Content Types, including fields and fieldgroups
   Roles & Permissions
   Menus
   Vocabularies
   Nodes, Terms & Users (using UUIDs) *
Default
Overridden
 Default
Default
Overridden
 Default
Default
What can't be exported
   Input formats
   Things that can only be
    identified using sequential numeric IDs
Reason




#2
Features lets you
organize your project
Reason




#3
drush

``
drush features-list
drush features-export
drush features-diff
drush features-revert
drush features-revert-all
drush features-update
drush features-update-all
drush features-list         features
drush features-export       fe
drush features-diff         fd
drush features-revert       fr
drush features-revert-all   fr-all
drush features-update       fu
drush features-update-all   fu-all
drush features-list         features
drush features-export       fe
drush features-diff         fd
drush features-revert       fr
drush features-revert-all   fr-all
drush features-update       fu
drush features-update-all   fu-all
Reason




#4
With features,
configuration can be version-controlled
Reason




#5
Features can be shared
         Central
        Repository
Features can be shared
            Central
           Repository




 Default
Features can be shared
            Central
           Repository




 Default                Default
Features can be shared
            Central
           Repository




 Default                Overridden
                         Default
Features can be shared
            Central
           Repository




 Default                Default
Features can be shared
                Central
               Repository




  Default
Needs Review                Default
Features can be shared
            Central
           Repository




 Default                Default
Reason




#6
Features make deployment easy




     Central
    Repository
Features make deployment easy




     Central
    Repository
Features make deployment easy




     Central
    Repository
Features make deployment easy




     Central
    Repository
Reason




#7
Features makes major upgrades possible
Drupal          Images
Modules         mp3
Themes          Attachments


Content types   Nodes
Roles           Users
Vocabularies    Terms
Functionality    Content

Drupal          Images
Modules         mp3
Themes          Attachments


Content types   Nodes
Roles           Users
Vocabularies    Terms
Drupal          Images
Modules         mp3
Themes          Attachments


Content types   Nodes
Roles           Users         DB
Vocabularies    Terms
Drupal          Images
Modules         mp3
Themes          Attachments


Content types   Nodes
Roles           Users         DB
Vocabularies    Terms
Reason




#8
Reason




#9
Fourth Law of Software Development:


       “When you let your clients change things,
                     they break.”
Fourth Law of Software Development:


       “When you let your clients change things,
                     they break.”
Fourth Law of Software Development:


       “When you let your clients change things,
                     they break.”
                         override
Reason




#10
You?
:-)
questions?
http://cph2010.drupal.org/node/15028

More Related Content

Similar to 10 Reasons why you should be using features for your Drupal project

Best practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini PatilBest practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini Patil
Roopa Nadkarni
 
Introduction To Drupal
Introduction To DrupalIntroduction To Drupal
Introduction To Drupal
Lauren Roth
 

Similar to 10 Reasons why you should be using features for your Drupal project (20)

Features
FeaturesFeatures
Features
 
Drupal
DrupalDrupal
Drupal
 
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
Strategies and Tips for Building Enterprise Drupal Applications - PNWDS 2013
 
Drupal in 30 Minutes
Drupal in 30 MinutesDrupal in 30 Minutes
Drupal in 30 Minutes
 
Drupal as a Programmer-Friendly CMS at ConFoo
Drupal as a Programmer-Friendly CMS at ConFooDrupal as a Programmer-Friendly CMS at ConFoo
Drupal as a Programmer-Friendly CMS at ConFoo
 
D7presentation
D7presentationD7presentation
D7presentation
 
Online Drupal Training Syllabus
Online Drupal Training SyllabusOnline Drupal Training Syllabus
Online Drupal Training Syllabus
 
Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8Top 8 Improvements in Drupal 8
Top 8 Improvements in Drupal 8
 
Anatomy of Drupal
Anatomy of DrupalAnatomy of Drupal
Anatomy of Drupal
 
Automation in Drupal
Automation in DrupalAutomation in Drupal
Automation in Drupal
 
Open Source CMS Certification
Open Source CMS CertificationOpen Source CMS Certification
Open Source CMS Certification
 
Best practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini PatilBest practices for effective doors implementation-Ashwini Patil
Best practices for effective doors implementation-Ashwini Patil
 
Recipes for Drupal distributions
Recipes for Drupal distributionsRecipes for Drupal distributions
Recipes for Drupal distributions
 
Drupal -Introduction to Drupal
Drupal -Introduction to DrupalDrupal -Introduction to Drupal
Drupal -Introduction to Drupal
 
44 Slides About 22 Modules
44 Slides About 22 Modules44 Slides About 22 Modules
44 Slides About 22 Modules
 
Drupal 8 - Core and API Changes
Drupal 8 - Core and API ChangesDrupal 8 - Core and API Changes
Drupal 8 - Core and API Changes
 
Domas monkus drupal module development
Domas monkus drupal module developmentDomas monkus drupal module development
Domas monkus drupal module development
 
Introduction To Drupal
Introduction To DrupalIntroduction To Drupal
Introduction To Drupal
 
IoT with Vaadin Elements
IoT with Vaadin ElementsIoT with Vaadin Elements
IoT with Vaadin Elements
 
Automating Drupal Deployment
Automating Drupal DeploymentAutomating Drupal Deployment
Automating Drupal Deployment
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Recently uploaded (20)

Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
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
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 

10 Reasons why you should be using features for your Drupal project

Editor's Notes

  1. Add animation for
  2. Screenshot from terribly confusing website
  3. Image source: http://www.superaction.com/website108/108/classic/
  4. Image source: http://www.superaction.com/website108/108/classic/
  5. Image source: http://www.superaction.com/website108/108/classic/