SlideShare a Scribd company logo
Drupal 7 - The Top 40 Core Modules and
             What They Mean for You


Dries Buytaert                 Barry Jaspan       Jacob Singh
CTO, Founder -Drupal project   Senior Architect   Principal Engineer, DrupalGardens
Acquia                         Acquia             Acquia
@dries                         @bjaspan           @jacobsingh
Webinar Audio Options
 Listen to streaming audio via
 your computer’s audio
– WebEx Audio Broadcast pop-up
 Unable to listen via your
 computer’s audio
– Request phone access
 Technical support
– US & Canada 866-229-3239
– International support 408-435-7088
 International phone access
 numbers:
– http://support.webex.com/support/
  phone-numbers.html
Upcoming Webinars



Thursday August 12th
- Drupal Commons - The open source alternative to Social
  Business Software


 Thursday Acquia 19th
 – Acquia Search - Wildcards, multisite, & fuzzy search... oh my!


      Register Today - http://acquia.com/webinars
Introduction


           Dries Buytaert
           –CTO, Acquia, Founder, Drupal project


           Jacob Singh
           –Principal Engineer, Acquia


           Barry Jaspan
           –Senior Architect, Acquia
Agenda



 Drupal 7, from the beginning
 Improvements for Developers
 Performance and Scalability
 Summary
 Q&A
But First...



 Update on Drupal 7 status

 Targets
  –Beta release by Drupalcon Copenhagen
  –RC in the fall
Drupal 7 - Where We Started


 Drupal 7 survey

 Objectives
 –Remove barriers to adoption
 –Improve performance and scalability
 –Move key modules (i.e. Fields) into core
Amazing Contributions
Recorded Webinar on Drupal 7 Usability




 http://acquia.com/resources/webinars/making-
 drupal-7-simple-use-everyone
Dries Buytaert
–CTO, Acquia, Founder, Drupal project


Jacob Singh
–Principal Engineer, Acquia


Barry Jaspan
–Senior Architect, Acquia
Field of Dreams

 If you build it, it will have fields.
 – Users
 – Comments
 – Nodes
 – Terms
 – What will you build next? Entity API
 EntityQueryAPI
 Replacing: content_profile, node_comments, node
 auto term (NAT), countless others.
Geeks are people too. DX++
 Massive improvements in the names of hooks / API
 functions
 – No more node_api
 – No more hook_block
 DBTNG makes working with your database a joy
 – Hint: no more SQL.
 – $query =
   db_select(‘node’, ‘n’)
    ->fields(‘n’, ‘title’)
    ->condition(‘n.created’, time() - 60 * 60, ‘>’);
 Install profiles are like modules
 Private AND public file handling.
Not just a nerdfest, also a pretty face!


 jQuery UI in core!
 New flexibility in theming, pre_process hooks, page
 array.
 Color module in core.
 Admin theme in core, consistent design and
 predictable user experience
 Stark - base theme in core, good starting point.
Dries Buytaert
–CTO, Acquia, Founder, Drupal project


Jacob Singh
–Principal Engineer, Acquia


Barry Jaspan
–Senior Architect, Acquia
Scaling and Performance


 Scaling: Growing bigger
 – More data
 – More users
 – More traffic
 Performance: Going faster
 – Fewer queries
 – Faster queries
 – Faster page loads
Scaling = Handling Big Data

 Web nodes are generally stateless and thus easy to
 scale
 Long term trend in scalability has been the ability
 to manage more data
 – Single SQL server
 – Master/slave SQL
 – Memory-based key/value stores (memcached)
 – Non-relational persistent databases (MongoDB,
   Cassandra, ...)
Scaling with Drupal 7

 More ways to put more data in more places
 – Slave database servers
    Modules identify which queries are slave-able
     – db_select(‘node’, ‘n’, array(‘target’ => ‘slave’))
 – Multiple cache back-ends
    Session in memcache, watchdog in MongoDB, page cache in
    SQL, ...
 – Pluggable Field API data storage
    Store in SQL or NoSQL engines
    Store in different locations by field / type
    Access completely remote data as a field
Performance
 Faster content writes and reads with Field API
 pluggable storage
 Caching proxy support (e.g. Varnish)
 – Session-less anonymous users
 – HTTP Cache-Control headers
 Multi-load queries
 – SELECT cols WHERE id IN (a, b, c, ...)
 – Reduces number of queries per page load
 Block caching
 – Blocks declare themselves as cacheable globally, by page,
   role, or user, or not at all
List of Contrib Modules in Drupal 7
•   404 Blocks                       •   File field                        •   Preview
•   Admin Role                       •   Filter Default                   •   RDF
•   Admin:hover                      •   Image                            •   Seven
•   AHAH helper                      •   Image API                        •   Simpletest
•   Archive::Tar                     •   Image Cache                      •   Site Configuration Permissions
•   Auto Menu                        •   Image Field                      •   Taxidermy
•   Auto Menu Title                  •   Input Format Permissions         •   Taxonomy Delegate
•   Autoload                         •   jQ                               •   Term fields
•   AutomaticMenu                    •   jQuery Cookie                    •   Token
•   Block edit                       •   jQuery Plugin Handler (JQP)      •   Transaction
•   Block Node Visibility            •   jQuery plugin manager            •   Upload element
•   Checkbox Validate                •   jQuery UI                        •   Upload preview
•   Comment Display                  •   JS Alter                         •   URL alter
•   Content Construction Kit (CCK)   •   Login Security                   •   User Cancellation
•   Content Taxonomy                 •   Menu Settings per Content Type   •   User Default Filter
•   DBTNG                            •   Menuless Node Type               •   User Delete
•   Drupal Queue                     •   Node Preview by Content type     •   Vertical Tabs
•   Element theme hook               •   Permissions API                  •   View unpublished
•   Elements                         •   Plugin Manager                   •   Vocabulary Permissions
•   Field Taxonomy                   •   Poor man's cron

    http://www.unleashedmind.com/en/blog/sun/more-than-50-drupal-modules-moved-into-drupal-7
Drupal 7 in Action Today



 Drupal Gardens running on D7 HEAD
 – http://acquia.com/blog/how-acquia-keeps-ahead-drupal-7




 > 15,000 D7 sites exist already
Now its Your Turn, Get Involved!


 Play with Drupal 7
 –Squash bugs dead!
 Write documentation
 Spread the word
 – Drupal 7 is not the Drupal you used to know
 Update your modules
Questions

 For more information, visit:
 – http://acquia.com
 – http://twitter.com/acquia
 – http://acquia.com/facebook
 Contact us:
                                  Recording of today’s event and slides
  – sales@acquia.com                       will be posted at:
                                          http://acquia.com/resources/
  – 888.9.ACQUIA                                recorded_webinars

 Try Drupal 7 today, for free
  – Sign up at http://drupalgardens.com

 Sign up for a free 30-day Acquia Network Trial
  – http://acquia.com/trial

More Related Content

Drupal 7 - The Top 40 Core Modules and What They Mean for You

  • 1. Drupal 7 - The Top 40 Core Modules and What They Mean for You Dries Buytaert Barry Jaspan Jacob Singh CTO, Founder -Drupal project Senior Architect Principal Engineer, DrupalGardens Acquia Acquia Acquia @dries @bjaspan @jacobsingh
  • 2. Webinar Audio Options Listen to streaming audio via your computer’s audio – WebEx Audio Broadcast pop-up Unable to listen via your computer’s audio – Request phone access Technical support – US & Canada 866-229-3239 – International support 408-435-7088 International phone access numbers: – http://support.webex.com/support/ phone-numbers.html
  • 3. Upcoming Webinars Thursday August 12th - Drupal Commons - The open source alternative to Social Business Software Thursday Acquia 19th – Acquia Search - Wildcards, multisite, & fuzzy search... oh my! Register Today - http://acquia.com/webinars
  • 4. Introduction Dries Buytaert –CTO, Acquia, Founder, Drupal project Jacob Singh –Principal Engineer, Acquia Barry Jaspan –Senior Architect, Acquia
  • 5. Agenda Drupal 7, from the beginning Improvements for Developers Performance and Scalability Summary Q&A
  • 6. But First... Update on Drupal 7 status Targets –Beta release by Drupalcon Copenhagen –RC in the fall
  • 7. Drupal 7 - Where We Started Drupal 7 survey Objectives –Remove barriers to adoption –Improve performance and scalability –Move key modules (i.e. Fields) into core
  • 9. Recorded Webinar on Drupal 7 Usability http://acquia.com/resources/webinars/making- drupal-7-simple-use-everyone
  • 10. Dries Buytaert –CTO, Acquia, Founder, Drupal project Jacob Singh –Principal Engineer, Acquia Barry Jaspan –Senior Architect, Acquia
  • 11. Field of Dreams If you build it, it will have fields. – Users – Comments – Nodes – Terms – What will you build next? Entity API EntityQueryAPI Replacing: content_profile, node_comments, node auto term (NAT), countless others.
  • 12. Geeks are people too. DX++ Massive improvements in the names of hooks / API functions – No more node_api – No more hook_block DBTNG makes working with your database a joy – Hint: no more SQL. – $query = db_select(‘node’, ‘n’) ->fields(‘n’, ‘title’) ->condition(‘n.created’, time() - 60 * 60, ‘>’); Install profiles are like modules Private AND public file handling.
  • 13. Not just a nerdfest, also a pretty face! jQuery UI in core! New flexibility in theming, pre_process hooks, page array. Color module in core. Admin theme in core, consistent design and predictable user experience Stark - base theme in core, good starting point.
  • 14. Dries Buytaert –CTO, Acquia, Founder, Drupal project Jacob Singh –Principal Engineer, Acquia Barry Jaspan –Senior Architect, Acquia
  • 15. Scaling and Performance Scaling: Growing bigger – More data – More users – More traffic Performance: Going faster – Fewer queries – Faster queries – Faster page loads
  • 16. Scaling = Handling Big Data Web nodes are generally stateless and thus easy to scale Long term trend in scalability has been the ability to manage more data – Single SQL server – Master/slave SQL – Memory-based key/value stores (memcached) – Non-relational persistent databases (MongoDB, Cassandra, ...)
  • 17. Scaling with Drupal 7 More ways to put more data in more places – Slave database servers Modules identify which queries are slave-able – db_select(‘node’, ‘n’, array(‘target’ => ‘slave’)) – Multiple cache back-ends Session in memcache, watchdog in MongoDB, page cache in SQL, ... – Pluggable Field API data storage Store in SQL or NoSQL engines Store in different locations by field / type Access completely remote data as a field
  • 18. Performance Faster content writes and reads with Field API pluggable storage Caching proxy support (e.g. Varnish) – Session-less anonymous users – HTTP Cache-Control headers Multi-load queries – SELECT cols WHERE id IN (a, b, c, ...) – Reduces number of queries per page load Block caching – Blocks declare themselves as cacheable globally, by page, role, or user, or not at all
  • 19. List of Contrib Modules in Drupal 7 • 404 Blocks • File field • Preview • Admin Role • Filter Default • RDF • Admin:hover • Image • Seven • AHAH helper • Image API • Simpletest • Archive::Tar • Image Cache • Site Configuration Permissions • Auto Menu • Image Field • Taxidermy • Auto Menu Title • Input Format Permissions • Taxonomy Delegate • Autoload • jQ • Term fields • AutomaticMenu • jQuery Cookie • Token • Block edit • jQuery Plugin Handler (JQP) • Transaction • Block Node Visibility • jQuery plugin manager • Upload element • Checkbox Validate • jQuery UI • Upload preview • Comment Display • JS Alter • URL alter • Content Construction Kit (CCK) • Login Security • User Cancellation • Content Taxonomy • Menu Settings per Content Type • User Default Filter • DBTNG • Menuless Node Type • User Delete • Drupal Queue • Node Preview by Content type • Vertical Tabs • Element theme hook • Permissions API • View unpublished • Elements • Plugin Manager • Vocabulary Permissions • Field Taxonomy • Poor man's cron http://www.unleashedmind.com/en/blog/sun/more-than-50-drupal-modules-moved-into-drupal-7
  • 20. Drupal 7 in Action Today Drupal Gardens running on D7 HEAD – http://acquia.com/blog/how-acquia-keeps-ahead-drupal-7 > 15,000 D7 sites exist already
  • 21. Now its Your Turn, Get Involved! Play with Drupal 7 –Squash bugs dead! Write documentation Spread the word – Drupal 7 is not the Drupal you used to know Update your modules
  • 22. Questions For more information, visit: – http://acquia.com – http://twitter.com/acquia – http://acquia.com/facebook Contact us: Recording of today’s event and slides – sales@acquia.com will be posted at: http://acquia.com/resources/ – 888.9.ACQUIA recorded_webinars Try Drupal 7 today, for free – Sign up at http://drupalgardens.com Sign up for a free 30-day Acquia Network Trial – http://acquia.com/trial