SlideShare une entreprise Scribd logo
1  sur  76
Energy.gov Case Study
               DrupalCampNYC 10
               December 10, 2011
               Roger López




Sunday, December 11, 11
Energy.gov

               Roger López
                   ‣ VP, Engineering at
                     Treehouse Agency
                   ‣ Drupal.org member
                     since July 2006
                   ‣ @zroger




                                          DrupalCampNYC 2011, Roger López
Sunday, December 11, 11
Sunday, December 11, 11
Energy.gov

               Project Goals
                   ‣ Consolidation of 100’s of sub-sites
                   ‣ Sub-site creation should not require
                     developer intervention.
                   ‣ Content should be easily shared
                     between sub-sites.
                   ‣ Maintain a uniform style across all
                     sub-sites.

                                         DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Drupal 7
                   ‣ Released January 5, 2011
                   ‣ Target launch date: August 4, 2011
                   ‣ Drupal 6 will stopped being
                     supported in about 2-3 years




                                       DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               What about contrib?
                   ‣ Entities and fields
                   ‣ DB API and EntityFieldQuery
                   ‣ Image styles
                   ‣ ...




                                          DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Organic groups
                   ‣ Create groups
                   ‣ Content is added to groups
                   ‣ Users are members of groups
                   ‣ Membership-based access control




                                       DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Sunday, December 11, 11
Sunday, December 11, 11
Energy.gov

               Group Type




                            DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Group Membership




                             DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               OG Usage
                   ‣ Group type
                          ‣ Office vocabulary terms
                   ‣ Group content
                          ‣ Articles
                          ‣ Pages
                          ‣ Blocks*

                                             DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov
               Not all terms are created
               equal
                   ‣ Internal sites are groups
                   ‣ External sites are not
                   ‣ Otherwise the same




                                          DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Sunday, December 11, 11
Energy.gov

               OG Tasks




                          DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov




               http://drupal.org/project/og_tasks




                                  DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Blocks




Sunday, December 11, 11
Energy.gov




                          Block Creator
                               !=
                          Administrator


                                  DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               User generated Blocks
                   ‣ Node-like blocks
                          ‣ Fields
                          ‣ Templates
                   ‣ Listing blocks
                          ‣ User-defined filters
                          ‣ Pre-defined styles

                                            DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Sunday, December 11, 11
Sunday, December 11, 11
screenshot of listing
                          block example, with
                          highlights like previous
                          slide




Sunday, December 11, 11
screenshot of listing
                          block example, with
                          highlights like previous
                          slide




Sunday, December 11, 11
Energy.gov




                             Beans
                          (Block Entities)




                                    DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Block Entities
                   ‣ Block types
                   ‣ Fieldable
                   ‣ Simple data storage for settings
                   ‣ Non-admin permissions
                   ‣ Data entry is familiar to users



                                         DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Sunday, December 11, 11
Sunday, December 11, 11
Input form for a listing
                          bean. Explain how non-
                          field beans work.




Sunday, December 11, 11
Sunday, December 11, 11
Energy.gov

               View modes
                   ‣ Previously called “Build modes”
                   ‣ Provides multiple display options
                   ‣ Out of the box
                          ‣ Full content
                          ‣ Teaser
                          ‣ RSS

                                           DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Named styles

                   ‣ Block teaser   ‣ Related items




                                    DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Editorial listings
                   ‣ Hand-selected listings of nodes
                   ‣ Multiple Node Reference field
                   ‣ View mode set in the Node
                     Reference field settings
                   ‣ Additional fields
                          ‣ More link, Header text, etc.


                                              DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov




                          Block Placement




                                   DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Pages vs Nodes
                   ‣ Users think about Pages
                   ‣ Pages with only blocks
                   ‣ Publishing workflow doesn’t include
                     block placements




                                        DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Block References
                   ‣ Block reference fields to emulate
                     regions
                   ‣ “Landing page” node types for each
                     page layout
                   ‣ Can be combined with other
                     methods (context, core block
                     module, etc.)


                                        DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Sunday, December 11, 11
Sunday, December 11, 11
Sunday, December 11, 11
Block reference fields




Sunday, December 11, 11
Text fields


Sunday, December 11, 11
Sunday, December 11, 11
Sunday, December 11, 11
Sunday, December 11, 11
Block Reference fields




Sunday, December 11, 11
Context




Sunday, December 11, 11
Energy.gov




                          Workflows




                               DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Standard Workflow




                           DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Standard Workflow
                   ‣ Draft




                             DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Standard Workflow
                   ‣ Draft
                          ‣ Needs Review




                                           DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Standard Workflow
                   ‣ Draft
                          ‣ Needs Review
                           ‣ Approved




                                           DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Standard Workflow
                   ‣ Draft
                          ‣ Needs Review
                           ‣ Approved
                             ‣ Published




                                           DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Standard Workflow
                   ‣ Draft
                          ‣ Needs Review
                           ‣ Approved
                             ‣ Published
                              ‣ Unpublished



                                              DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Other Requirements
                   ‣ Workflow setup in code
                          ‣ Exportable, API, etc.
                   ‣ Multiple concurrent revisions
                          ‣ Draft revisions subject to workflow
                          ‣ Published revision is not editable



                                              DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Options
                   ‣ Workflow
                   ‣ Rules
                   ‣ Workbench moderation




                                     DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov




                          StateFlow




                                DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Revisions
                   ‣ New nodes start as Drafts
                   ‣ Published revisions are not editable
                   ‣ Editing a published node creates a
                     new draft revision
                   ‣ Publishing a revision archives the
                     current revision


                                         DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov




                          DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov



             New Draft




                          DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov



             New Draft
                          Reviewed




                                     DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov



             New Draft
                          Reviewed
                                     Published




                                     DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov



             New Draft
                           Reviewed
                                      Published

                          Edit
             New Draft



                                      DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov



             New Draft
                           Reviewed
                                      Published

                          Edit
             New Draft
                           Reviewed



                                      DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov



             New Draft
                           Reviewed
                                      Published
                                                       Archived
                          Edit
             New Draft
                           Reviewed
                                      Published


                                      DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Sunday, December 11, 11
Energy.gov

               API First
                   ‣ 100% implementable from code
                   ‣ State Machine
                   ‣ Customize by extending
                          ‣ Workflow
                          ‣ States
                          ‣ Events

                                      DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov




    http://drupal.org/project/state_machine




                          DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov




                          Data Visualizations




                                     DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Libraries
                   ‣ jqPlot
                          ‣ jqplot.com
                   ‣ The Jit
                          ‣ thejit.org
                   ‣ High Charts
                          ‣ highcharts.com

                                             DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov




                           DataVis
                          formatted
                             data



                           JSON

                                  DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov




                           DataVis
                                                   DataVis
                          formatted
                                                   Adapter
                             data



                           JSON                 Javascript

                                  DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov




                           DataVis
             Drupal                                DataVis
                          formatted
             Module                                Adapter
                             data



              PHP          JSON                 Javascript

                                  DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov




                          DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov




                          DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Sunday, December 11, 11
Energy.gov

               Resources
                   ‣ Bean
                     http://drupal.org/project/bean
                   ‣ OG Tasks
                     http://drupal.org/project/og_tasks
                   ‣ DataViz Javascript Adapters
                     http://github.com/treehouseagency/dataviz-adapters
                   ‣ Data Visualization API for Drupal
                     http://drupal.org/sandbox/LSU_JBob/1299606
                   ‣ StateFlow
                     http://drupal.org/sandbox/fmitchell/1298244

                                               DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11
Energy.gov

               Plugs
                   ‣ Treehouse Agency Blog
                     http://treehouseagency.com/blog
                   ‣




                                         DrupalCampNYC, 2011, Roger López
Sunday, December 11, 11

Contenu connexe

Similaire à DruplCampNYC 10 - Energy.gov Case Study

Your first rails app - 2
 Your first rails app - 2 Your first rails app - 2
Your first rails app - 2Blazing Cloud
 
Drupal and the rise of the documents
Drupal and the rise of the documentsDrupal and the rise of the documents
Drupal and the rise of the documentsClaudio Beatrice
 
Apcug 2011 07-17-intro_to_drupal_jeff_schuler
Apcug 2011 07-17-intro_to_drupal_jeff_schulerApcug 2011 07-17-intro_to_drupal_jeff_schuler
Apcug 2011 07-17-intro_to_drupal_jeff_schulerhewie
 
CloudFoundry and MongoDb, a marriage made in heaven
CloudFoundry and MongoDb, a marriage made in heavenCloudFoundry and MongoDb, a marriage made in heaven
CloudFoundry and MongoDb, a marriage made in heavenPatrick Chanezon
 
TripCase Unit Testing with Jasmine
TripCase Unit Testing with JasmineTripCase Unit Testing with Jasmine
TripCase Unit Testing with JasmineStephen Pond
 
soft-shake.ch - Data grids and Data Grids
soft-shake.ch - Data grids and Data Gridssoft-shake.ch - Data grids and Data Grids
soft-shake.ch - Data grids and Data Gridssoft-shake.ch
 
Layer 7 denial of services attack mitigation
Layer 7 denial of services attack mitigationLayer 7 denial of services attack mitigation
Layer 7 denial of services attack mitigationAmmar WK
 
DrupalCampNYC 10 - Native mobile apps with Drupal
DrupalCampNYC 10 - Native mobile apps with DrupalDrupalCampNYC 10 - Native mobile apps with Drupal
DrupalCampNYC 10 - Native mobile apps with Drupalzroger
 
MongoDB Hadoop and Humongous Data
MongoDB Hadoop and Humongous DataMongoDB Hadoop and Humongous Data
MongoDB Hadoop and Humongous DataMongoDB
 
Multiplatform, Promises and HTML5
Multiplatform, Promises and HTML5Multiplatform, Promises and HTML5
Multiplatform, Promises and HTML5C4Media
 
iOS Prototyping with Xcode Storyboards
iOS Prototyping with Xcode StoryboardsiOS Prototyping with Xcode Storyboards
iOS Prototyping with Xcode StoryboardsKyle Oba
 
Building Large Scale Services - LISA 2013
Building Large Scale Services - LISA 2013 Building Large Scale Services - LISA 2013
Building Large Scale Services - LISA 2013 Jennifer Davis
 
Rails ORM De-mystifying Active Record has_many
Rails ORM De-mystifying Active Record has_manyRails ORM De-mystifying Active Record has_many
Rails ORM De-mystifying Active Record has_manyBlazing Cloud
 
Conquistando el Servidor con Node.JS
Conquistando el Servidor con Node.JSConquistando el Servidor con Node.JS
Conquistando el Servidor con Node.JSCaridy Patino
 
Build successful sites fast with Drupal distributions like Commons, OpenPubli...
Build successful sites fast with Drupal distributions like Commons, OpenPubli...Build successful sites fast with Drupal distributions like Commons, OpenPubli...
Build successful sites fast with Drupal distributions like Commons, OpenPubli...Acquia
 
Build successful sites fast with Drupal Distributions
Build successful sites fast with Drupal DistributionsBuild successful sites fast with Drupal Distributions
Build successful sites fast with Drupal DistributionsAcquia
 
Optimizing your site for contextual ads: SEO, Design and Content
Optimizing your site for contextual ads: SEO, Design and ContentOptimizing your site for contextual ads: SEO, Design and Content
Optimizing your site for contextual ads: SEO, Design and ContentRaven Tools
 

Similaire à DruplCampNYC 10 - Energy.gov Case Study (20)

Your first rails app - 2
 Your first rails app - 2 Your first rails app - 2
Your first rails app - 2
 
Mobile? WT... F?
Mobile? WT... F?Mobile? WT... F?
Mobile? WT... F?
 
Drupal and the rise of the documents
Drupal and the rise of the documentsDrupal and the rise of the documents
Drupal and the rise of the documents
 
CSS Power Tools
CSS Power ToolsCSS Power Tools
CSS Power Tools
 
Apcug 2011 07-17-intro_to_drupal_jeff_schuler
Apcug 2011 07-17-intro_to_drupal_jeff_schulerApcug 2011 07-17-intro_to_drupal_jeff_schuler
Apcug 2011 07-17-intro_to_drupal_jeff_schuler
 
CloudFoundry and MongoDb, a marriage made in heaven
CloudFoundry and MongoDb, a marriage made in heavenCloudFoundry and MongoDb, a marriage made in heaven
CloudFoundry and MongoDb, a marriage made in heaven
 
TripCase Unit Testing with Jasmine
TripCase Unit Testing with JasmineTripCase Unit Testing with Jasmine
TripCase Unit Testing with Jasmine
 
soft-shake.ch - Data grids and Data Grids
soft-shake.ch - Data grids and Data Gridssoft-shake.ch - Data grids and Data Grids
soft-shake.ch - Data grids and Data Grids
 
Layer 7 denial of services attack mitigation
Layer 7 denial of services attack mitigationLayer 7 denial of services attack mitigation
Layer 7 denial of services attack mitigation
 
DrupalCampNYC 10 - Native mobile apps with Drupal
DrupalCampNYC 10 - Native mobile apps with DrupalDrupalCampNYC 10 - Native mobile apps with Drupal
DrupalCampNYC 10 - Native mobile apps with Drupal
 
MongoDB Hadoop and Humongous Data
MongoDB Hadoop and Humongous DataMongoDB Hadoop and Humongous Data
MongoDB Hadoop and Humongous Data
 
Multiplatform, Promises and HTML5
Multiplatform, Promises and HTML5Multiplatform, Promises and HTML5
Multiplatform, Promises and HTML5
 
iOS Prototyping with Xcode Storyboards
iOS Prototyping with Xcode StoryboardsiOS Prototyping with Xcode Storyboards
iOS Prototyping with Xcode Storyboards
 
Building Large Scale Services - LISA 2013
Building Large Scale Services - LISA 2013 Building Large Scale Services - LISA 2013
Building Large Scale Services - LISA 2013
 
Rails ORM De-mystifying Active Record has_many
Rails ORM De-mystifying Active Record has_manyRails ORM De-mystifying Active Record has_many
Rails ORM De-mystifying Active Record has_many
 
Caridy patino - node-js
Caridy patino - node-jsCaridy patino - node-js
Caridy patino - node-js
 
Conquistando el Servidor con Node.JS
Conquistando el Servidor con Node.JSConquistando el Servidor con Node.JS
Conquistando el Servidor con Node.JS
 
Build successful sites fast with Drupal distributions like Commons, OpenPubli...
Build successful sites fast with Drupal distributions like Commons, OpenPubli...Build successful sites fast with Drupal distributions like Commons, OpenPubli...
Build successful sites fast with Drupal distributions like Commons, OpenPubli...
 
Build successful sites fast with Drupal Distributions
Build successful sites fast with Drupal DistributionsBuild successful sites fast with Drupal Distributions
Build successful sites fast with Drupal Distributions
 
Optimizing your site for contextual ads: SEO, Design and Content
Optimizing your site for contextual ads: SEO, Design and ContentOptimizing your site for contextual ads: SEO, Design and Content
Optimizing your site for contextual ads: SEO, Design and Content
 

Dernier

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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
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)wesley chun
 
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...apidays
 
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
 
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
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024The Digital Insurer
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
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 CVKhem
 
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 educationjfdjdjcjdnsjd
 
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...apidays
 

Dernier (20)

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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
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)
 
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...
 
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
 
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
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
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
 
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
 
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...
 

DruplCampNYC 10 - Energy.gov Case Study

  • 1. Energy.gov Case Study DrupalCampNYC 10 December 10, 2011 Roger López Sunday, December 11, 11
  • 2. Energy.gov Roger López ‣ VP, Engineering at Treehouse Agency ‣ Drupal.org member since July 2006 ‣ @zroger DrupalCampNYC 2011, Roger López Sunday, December 11, 11
  • 4. Energy.gov Project Goals ‣ Consolidation of 100’s of sub-sites ‣ Sub-site creation should not require developer intervention. ‣ Content should be easily shared between sub-sites. ‣ Maintain a uniform style across all sub-sites. DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 5. Energy.gov Drupal 7 ‣ Released January 5, 2011 ‣ Target launch date: August 4, 2011 ‣ Drupal 6 will stopped being supported in about 2-3 years DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 6. Energy.gov What about contrib? ‣ Entities and fields ‣ DB API and EntityFieldQuery ‣ Image styles ‣ ... DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 7. Energy.gov Organic groups ‣ Create groups ‣ Content is added to groups ‣ Users are members of groups ‣ Membership-based access control DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 10. Energy.gov Group Type DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 11. Energy.gov Group Membership DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 12. Energy.gov OG Usage ‣ Group type ‣ Office vocabulary terms ‣ Group content ‣ Articles ‣ Pages ‣ Blocks* DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 13. Energy.gov Not all terms are created equal ‣ Internal sites are groups ‣ External sites are not ‣ Otherwise the same DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 15. Energy.gov OG Tasks DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 16. Energy.gov http://drupal.org/project/og_tasks DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 18. Energy.gov Block Creator != Administrator DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 19. Energy.gov User generated Blocks ‣ Node-like blocks ‣ Fields ‣ Templates ‣ Listing blocks ‣ User-defined filters ‣ Pre-defined styles DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 22. screenshot of listing block example, with highlights like previous slide Sunday, December 11, 11
  • 23. screenshot of listing block example, with highlights like previous slide Sunday, December 11, 11
  • 24. Energy.gov Beans (Block Entities) DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 25. Energy.gov Block Entities ‣ Block types ‣ Fieldable ‣ Simple data storage for settings ‣ Non-admin permissions ‣ Data entry is familiar to users DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 28. Input form for a listing bean. Explain how non- field beans work. Sunday, December 11, 11
  • 30. Energy.gov View modes ‣ Previously called “Build modes” ‣ Provides multiple display options ‣ Out of the box ‣ Full content ‣ Teaser ‣ RSS DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 31. Energy.gov Named styles ‣ Block teaser ‣ Related items DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 32. Energy.gov Editorial listings ‣ Hand-selected listings of nodes ‣ Multiple Node Reference field ‣ View mode set in the Node Reference field settings ‣ Additional fields ‣ More link, Header text, etc. DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 33. Energy.gov Block Placement DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 34. Energy.gov Pages vs Nodes ‣ Users think about Pages ‣ Pages with only blocks ‣ Publishing workflow doesn’t include block placements DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 35. Energy.gov Block References ‣ Block reference fields to emulate regions ‣ “Landing page” node types for each page layout ‣ Can be combined with other methods (context, core block module, etc.) DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 46. Energy.gov Workflows DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 47. Energy.gov Standard Workflow DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 48. Energy.gov Standard Workflow ‣ Draft DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 49. Energy.gov Standard Workflow ‣ Draft ‣ Needs Review DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 50. Energy.gov Standard Workflow ‣ Draft ‣ Needs Review ‣ Approved DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 51. Energy.gov Standard Workflow ‣ Draft ‣ Needs Review ‣ Approved ‣ Published DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 52. Energy.gov Standard Workflow ‣ Draft ‣ Needs Review ‣ Approved ‣ Published ‣ Unpublished DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 53. Energy.gov Other Requirements ‣ Workflow setup in code ‣ Exportable, API, etc. ‣ Multiple concurrent revisions ‣ Draft revisions subject to workflow ‣ Published revision is not editable DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 54. Energy.gov Options ‣ Workflow ‣ Rules ‣ Workbench moderation DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 55. Energy.gov StateFlow DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 56. Energy.gov Revisions ‣ New nodes start as Drafts ‣ Published revisions are not editable ‣ Editing a published node creates a new draft revision ‣ Publishing a revision archives the current revision DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 57. Energy.gov DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 58. Energy.gov New Draft DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 59. Energy.gov New Draft Reviewed DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 60. Energy.gov New Draft Reviewed Published DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 61. Energy.gov New Draft Reviewed Published Edit New Draft DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 62. Energy.gov New Draft Reviewed Published Edit New Draft Reviewed DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 63. Energy.gov New Draft Reviewed Published Archived Edit New Draft Reviewed Published DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 65. Energy.gov API First ‣ 100% implementable from code ‣ State Machine ‣ Customize by extending ‣ Workflow ‣ States ‣ Events DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 66. Energy.gov http://drupal.org/project/state_machine DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 67. Energy.gov Data Visualizations DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 68. Energy.gov Libraries ‣ jqPlot ‣ jqplot.com ‣ The Jit ‣ thejit.org ‣ High Charts ‣ highcharts.com DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 69. Energy.gov DataVis formatted data JSON DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 70. Energy.gov DataVis DataVis formatted Adapter data JSON Javascript DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 71. Energy.gov DataVis Drupal DataVis formatted Module Adapter data PHP JSON Javascript DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 72. Energy.gov DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 73. Energy.gov DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 75. Energy.gov Resources ‣ Bean http://drupal.org/project/bean ‣ OG Tasks http://drupal.org/project/og_tasks ‣ DataViz Javascript Adapters http://github.com/treehouseagency/dataviz-adapters ‣ Data Visualization API for Drupal http://drupal.org/sandbox/LSU_JBob/1299606 ‣ StateFlow http://drupal.org/sandbox/fmitchell/1298244 DrupalCampNYC, 2011, Roger López Sunday, December 11, 11
  • 76. Energy.gov Plugs ‣ Treehouse Agency Blog http://treehouseagency.com/blog ‣ DrupalCampNYC, 2011, Roger López Sunday, December 11, 11