SlideShare una empresa de Scribd logo
1 de 30
Descargar para leer sin conexión
DeCoupling Drupal
Aimee Maree Forsstrom
Software Engineer – Advocate
@aimee_maree aimee@linux.com
What is DeCoupled Drupal?
How can it help your deployment strategies?
Who am I
Aimee Maree Forsstrom
Software Engineer – Drupal Community Member since 2008
@aimee_maree aimee@linux.com
Worked in the field of Information Technology since 2000
Long list of work in Open Source Content Management Systems (PHPbb,
Coppermine, Joomla, WordPress, Drupal)
Drupal Community member since 2008
Drupal Solutions Designer since 2008
Drupal Community contributor (DrupalCon Copenhagen Volunteer,
DrupalCon Sydney Social Media
Started Learning Drupal Sydney
Provided Forum and irc support for Drupa and Drupal Mentor
Agenda
What is Decoupled Drupal
Traditional CMS technology stack
Decoupled CMS technology stack
Advantages of Decoupling
Traditional CMS Workflow
Decoupled CMS Workflow
Traditional CMS
Backend
CMS
Frontend
Content is King
Decoupled CMS
Frontend
CMS
Backend
Partial Decoupled
Frontend
CMS
Backend Frontend
Angular
Modern Pace
Front end moves faster then CMS Development can
Drupal Frontends can be messy and hard to hire
people who can rapidly work in the space
Drupal8 has been in development for 5years
Why? Because backends are complex systems but
Frontends are display systems
Front End 2005
Front End 2015
Technology Stack
CMS Backend
Content Database
PHP facilitates Data
.json .xml
JS receives data
Generates HTML
Web Services
Decoupling is achieved by enabling a Restful API
Content is output as .json or .xml
For Drupal you can enable this through services
module or through the Rest API module
Your CMS is now a JSON server and all
nodes/content can be consumed through by a json
file
Targeted Apps
Content
Xbox
Feeds
Smart
TV
Web
Mobile
Wearable
Microservices
Traditional CMS wants to deliver HTML
HTML is not good for custom Apps to consume
Drupal only provides the logic to run the web
application behind scenes
Rapid Adaptation
Front end is typically where the most rapid
changes need to take place
By decoupling the backend the frontend can now
keep up with modern frameworks
Enables new Design needs to be implemented
quickly
Advantages
Enables the CMS to be broken into Microservices
CMS Does what it is good at managing complex
content models
Content is consumed via JSON into separate Apps
Angular JS, Web Apps, Smart TV Apps
Re-Design tied into version upgrades goes away
Legacy Workflow
New CMS Version Upgrade Version Upgrade
New Design Re-Design Re-Design
Drupal 6.x
2008
Drupal 7.x
2011
Drupal 8.x
2015 ?
New Workflow
New CMS
New Design Re-Design Re-Design
Drupal X.x
20XX
Re-Design
Management
Separation of Frontend and Backend
Enables separate smaller Development Teams
Each Team have their own repo and release cycle
Stops teams interfering with deployment cycles
Separate CI/CD and release cycle for Backend
Components to Frontend Components
Version Control
CMS backend components can be stored in a
separate git repo that is connected and updated
via the main Drupal project repo
Enables the Front End, Mobile App code to be
maintained in their own repo
From this
Your Companies
Version Control Server
One Repo
Drupal core
Custom Drupal Modules
Frontend Template
Drupal
Project
Repo
Local Develop
Repos
To this
Your Companies
Version Control Server
Many Repo's
Drupal core Repo
Frontend
Repo
Mobile App
Repo
Drupal
Project
Repo
Local Develop
Repos
Separation
Frontend Development happens at a rapid rate
Web App and Frontend development can take place
without the need to commit into main CMS Repo
Separation of tasks allows development teams to
focus on their own repo tests / QA checks
Less interference between frontend and backend
Workflow Changes
Frontend
Developers
Backend
Developers
API
Components
Enables Backend Teams to build out and work on
larger components without interfering with
Frontend release cycles
CMS feature and Module updates can be applied
and tested without the need to modify frontend
Release Cycles
Frontend
Git Repo
Mobile
Git Repo
Now we have separate release cycles
Deploy Daily
Backend
Git Repo
Deploy Weekly
Deploy Monthly
Code Tests
Code Tests
Code Tests
Stays the same
Backend can stay the same version
Removes dependence to upgrade versions to
accommodate new Frontend features
Security updates can be isolated and tested on the
backend with no interference to the frontend repo
Content Editors can continue working in a familiar
environment
Future Proof
Now that our CMS has become Web Service
enabled Mobile Apps can be built and utilise our
CMS as their content backend
We can create new Development Teams and
Release Cycles to enable rapid development and
prototyping without effecting or current cycle
Examples are Mobile, IOT, Wearables, Smart TV
And whatever the future may hold
Conclusion
Easier to Manage
Easier to hire Frontend Developers
Allows for a higher ROI on the initial CMS build
Does enforce a change of approach to deployment
Nothing comes with disadvantages
Your can take a hybrid approach
Thank You
@aimee_maree
Credits
Logos of Technology projects shown are copyright
as per project guidelines

Más contenido relacionado

La actualidad más candente

What does a web based application do for your business
What does a web based application do for your businessWhat does a web based application do for your business
What does a web based application do for your businessKristina Parker
 
Webinar: DevOps - Redefining your IT Strategy
Webinar: DevOps - Redefining your IT StrategyWebinar: DevOps - Redefining your IT Strategy
Webinar: DevOps - Redefining your IT StrategyEdureka!
 
Using the Mule 4 SDK to build a connector : MuleSoft Virtual Muleys Meetups
Using the Mule 4 SDK to build a connector  : MuleSoft Virtual Muleys MeetupsUsing the Mule 4 SDK to build a connector  : MuleSoft Virtual Muleys Meetups
Using the Mule 4 SDK to build a connector : MuleSoft Virtual Muleys MeetupsAngel Alberici
 
Transporting Data at Warp Speed: How to Connect Spring Boot Apps Quickly, Pow...
Transporting Data at Warp Speed: How to Connect Spring Boot Apps Quickly, Pow...Transporting Data at Warp Speed: How to Connect Spring Boot Apps Quickly, Pow...
Transporting Data at Warp Speed: How to Connect Spring Boot Apps Quickly, Pow...VMware Tanzu
 
Discover Salesforce Commerce Cloud and Vlocity Integration Patterns
Discover Salesforce Commerce Cloud and Vlocity Integration PatternsDiscover Salesforce Commerce Cloud and Vlocity Integration Patterns
Discover Salesforce Commerce Cloud and Vlocity Integration PatternsEva Mave Ng
 
Roadshow to dev opsdays jakarta 2020 with linkaja announcement
Roadshow to dev opsdays jakarta 2020 with linkaja   announcementRoadshow to dev opsdays jakarta 2020 with linkaja   announcement
Roadshow to dev opsdays jakarta 2020 with linkaja announcementDevOps Indonesia
 
Case Study: USDA Maximizing Collaboration with NetBeans and Codebeamer
Case Study: USDA Maximizing Collaboration with NetBeans and CodebeamerCase Study: USDA Maximizing Collaboration with NetBeans and Codebeamer
Case Study: USDA Maximizing Collaboration with NetBeans and Codebeamertabithascatena
 
Api Lifecycle Operation with Open Source Products
Api Lifecycle Operation with Open Source ProductsApi Lifecycle Operation with Open Source Products
Api Lifecycle Operation with Open Source ProductsDevOps Indonesia
 
Business benefits of Drupal 8
Business benefits of Drupal 8Business benefits of Drupal 8
Business benefits of Drupal 8Mediacurrent
 
MuleSoft CloudHub API Versioning
MuleSoft CloudHub API VersioningMuleSoft CloudHub API Versioning
MuleSoft CloudHub API VersioningPatryk Bandurski
 
DevOps, A path to Enterprises to Adopt [Decoding DevOps Conference - InfoSep...
DevOps, A path to Enterprises to Adopt  [Decoding DevOps Conference - InfoSep...DevOps, A path to Enterprises to Adopt  [Decoding DevOps Conference - InfoSep...
DevOps, A path to Enterprises to Adopt [Decoding DevOps Conference - InfoSep...InfoSeption
 
Melbourne Virtual MuleSoft Meetup November 2020
Melbourne Virtual MuleSoft Meetup November 2020Melbourne Virtual MuleSoft Meetup November 2020
Melbourne Virtual MuleSoft Meetup November 2020Daniel Soffner
 
Reshaping Enterprise Architecture
Reshaping Enterprise Architecture Reshaping Enterprise Architecture
Reshaping Enterprise Architecture WSO2
 
Bootiful Azure Spring Cloud
Bootiful Azure Spring CloudBootiful Azure Spring Cloud
Bootiful Azure Spring CloudVMware Tanzu
 
ngStockholm #8 at NetEnt - Micro Frontend Architecture
ngStockholm #8 at NetEnt - Micro Frontend ArchitecturengStockholm #8 at NetEnt - Micro Frontend Architecture
ngStockholm #8 at NetEnt - Micro Frontend ArchitectureIshaan Puniani
 
Top Cordova Challenges and How to Tackle Them
Top Cordova Challenges and How to Tackle ThemTop Cordova Challenges and How to Tackle Them
Top Cordova Challenges and How to Tackle ThemIonic Framework
 
Sydney MuleSoft Meetup #16 - 19 November 2020
Sydney MuleSoft Meetup #16 - 19 November 2020Sydney MuleSoft Meetup #16 - 19 November 2020
Sydney MuleSoft Meetup #16 - 19 November 2020Royston Lobo
 
Modern Application Configuration in Kubernetes
Modern Application Configuration in KubernetesModern Application Configuration in Kubernetes
Modern Application Configuration in KubernetesVMware Tanzu
 

La actualidad más candente (20)

What does a web based application do for your business
What does a web based application do for your businessWhat does a web based application do for your business
What does a web based application do for your business
 
Hello cloud 6
Hello  cloud 6Hello  cloud 6
Hello cloud 6
 
Webinar: DevOps - Redefining your IT Strategy
Webinar: DevOps - Redefining your IT StrategyWebinar: DevOps - Redefining your IT Strategy
Webinar: DevOps - Redefining your IT Strategy
 
Using the Mule 4 SDK to build a connector : MuleSoft Virtual Muleys Meetups
Using the Mule 4 SDK to build a connector  : MuleSoft Virtual Muleys MeetupsUsing the Mule 4 SDK to build a connector  : MuleSoft Virtual Muleys Meetups
Using the Mule 4 SDK to build a connector : MuleSoft Virtual Muleys Meetups
 
Transporting Data at Warp Speed: How to Connect Spring Boot Apps Quickly, Pow...
Transporting Data at Warp Speed: How to Connect Spring Boot Apps Quickly, Pow...Transporting Data at Warp Speed: How to Connect Spring Boot Apps Quickly, Pow...
Transporting Data at Warp Speed: How to Connect Spring Boot Apps Quickly, Pow...
 
Discover Salesforce Commerce Cloud and Vlocity Integration Patterns
Discover Salesforce Commerce Cloud and Vlocity Integration PatternsDiscover Salesforce Commerce Cloud and Vlocity Integration Patterns
Discover Salesforce Commerce Cloud and Vlocity Integration Patterns
 
Roadshow to dev opsdays jakarta 2020 with linkaja announcement
Roadshow to dev opsdays jakarta 2020 with linkaja   announcementRoadshow to dev opsdays jakarta 2020 with linkaja   announcement
Roadshow to dev opsdays jakarta 2020 with linkaja announcement
 
React vs laravel
React vs laravelReact vs laravel
React vs laravel
 
Case Study: USDA Maximizing Collaboration with NetBeans and Codebeamer
Case Study: USDA Maximizing Collaboration with NetBeans and CodebeamerCase Study: USDA Maximizing Collaboration with NetBeans and Codebeamer
Case Study: USDA Maximizing Collaboration with NetBeans and Codebeamer
 
Api Lifecycle Operation with Open Source Products
Api Lifecycle Operation with Open Source ProductsApi Lifecycle Operation with Open Source Products
Api Lifecycle Operation with Open Source Products
 
Business benefits of Drupal 8
Business benefits of Drupal 8Business benefits of Drupal 8
Business benefits of Drupal 8
 
MuleSoft CloudHub API Versioning
MuleSoft CloudHub API VersioningMuleSoft CloudHub API Versioning
MuleSoft CloudHub API Versioning
 
DevOps, A path to Enterprises to Adopt [Decoding DevOps Conference - InfoSep...
DevOps, A path to Enterprises to Adopt  [Decoding DevOps Conference - InfoSep...DevOps, A path to Enterprises to Adopt  [Decoding DevOps Conference - InfoSep...
DevOps, A path to Enterprises to Adopt [Decoding DevOps Conference - InfoSep...
 
Melbourne Virtual MuleSoft Meetup November 2020
Melbourne Virtual MuleSoft Meetup November 2020Melbourne Virtual MuleSoft Meetup November 2020
Melbourne Virtual MuleSoft Meetup November 2020
 
Reshaping Enterprise Architecture
Reshaping Enterprise Architecture Reshaping Enterprise Architecture
Reshaping Enterprise Architecture
 
Bootiful Azure Spring Cloud
Bootiful Azure Spring CloudBootiful Azure Spring Cloud
Bootiful Azure Spring Cloud
 
ngStockholm #8 at NetEnt - Micro Frontend Architecture
ngStockholm #8 at NetEnt - Micro Frontend ArchitecturengStockholm #8 at NetEnt - Micro Frontend Architecture
ngStockholm #8 at NetEnt - Micro Frontend Architecture
 
Top Cordova Challenges and How to Tackle Them
Top Cordova Challenges and How to Tackle ThemTop Cordova Challenges and How to Tackle Them
Top Cordova Challenges and How to Tackle Them
 
Sydney MuleSoft Meetup #16 - 19 November 2020
Sydney MuleSoft Meetup #16 - 19 November 2020Sydney MuleSoft Meetup #16 - 19 November 2020
Sydney MuleSoft Meetup #16 - 19 November 2020
 
Modern Application Configuration in Kubernetes
Modern Application Configuration in KubernetesModern Application Configuration in Kubernetes
Modern Application Configuration in Kubernetes
 

Similar a DeCoupling Drupal

Liferay as solution for legacy applications
Liferay as solution for legacy applicationsLiferay as solution for legacy applications
Liferay as solution for legacy applicationsManish Kumar Jaiswal
 
8 Most Popular Content Management Systems (CMS)
8 Most Popular Content Management Systems (CMS)8 Most Popular Content Management Systems (CMS)
8 Most Popular Content Management Systems (CMS)pluckymercenary67
 
Intro to DevOps 4 undergraduates
Intro to DevOps 4 undergraduates Intro to DevOps 4 undergraduates
Intro to DevOps 4 undergraduates Liran Levy
 
Why Enterprises Choose Drupal for Futuristic Web App Development?
Why Enterprises Choose Drupal for Futuristic Web App Development?Why Enterprises Choose Drupal for Futuristic Web App Development?
Why Enterprises Choose Drupal for Futuristic Web App Development?Helios Solutions
 
Technource - Zend framework Developers India
Technource - Zend framework Developers IndiaTechnource - Zend framework Developers India
Technource - Zend framework Developers IndiaTechnource
 
Automated Provisioning, Management & Cost Control for Kubernetes Clusters
Automated Provisioning, Management & Cost Control for Kubernetes ClustersAutomated Provisioning, Management & Cost Control for Kubernetes Clusters
Automated Provisioning, Management & Cost Control for Kubernetes ClustersWeaveworks
 
Mainframe Automation: A Panel Discussion
Mainframe Automation: A Panel DiscussionMainframe Automation: A Panel Discussion
Mainframe Automation: A Panel DiscussionDevOps.com
 
How dvcs can reduce your development costs and enhance productivity final
How dvcs can reduce your development costs and enhance productivity finalHow dvcs can reduce your development costs and enhance productivity final
How dvcs can reduce your development costs and enhance productivity finalpsluaces
 
DevOps and Build Automation
DevOps and Build AutomationDevOps and Build Automation
DevOps and Build AutomationHeiswayi Nrird
 
RTC/CLM 5.0 Adoption Paths: Deploying in 16 Steps
 RTC/CLM 5.0 Adoption Paths: Deploying in 16 Steps RTC/CLM 5.0 Adoption Paths: Deploying in 16 Steps
RTC/CLM 5.0 Adoption Paths: Deploying in 16 StepsStéphane Leroy
 
Drupal vs. the Others
Drupal vs. the OthersDrupal vs. the Others
Drupal vs. the OthersExove
 
Cloud Expo Asia 20181010 - Bringing Your Applications into the Future with Ha...
Cloud Expo Asia 20181010 - Bringing Your Applications into the Future with Ha...Cloud Expo Asia 20181010 - Bringing Your Applications into the Future with Ha...
Cloud Expo Asia 20181010 - Bringing Your Applications into the Future with Ha...Matt Ray
 
Breaking the 2 Pizza Paradox with your Platform as an Application
Breaking the 2 Pizza Paradox with your Platform as an ApplicationBreaking the 2 Pizza Paradox with your Platform as an Application
Breaking the 2 Pizza Paradox with your Platform as an ApplicationMark Rendell
 
Top 10 best PHP frameworks for web development.pdf
Top 10 best PHP frameworks for web development.pdfTop 10 best PHP frameworks for web development.pdf
Top 10 best PHP frameworks for web development.pdfMoon Technolabs Pvt. Ltd.
 
Devops interview-questions-PDF
Devops interview-questions-PDFDevops interview-questions-PDF
Devops interview-questions-PDFMayank Kumar
 
Build Mobile Applications with Headless Drupal 8 - DrupalConAsia 2016
Build Mobile Applications with Headless Drupal 8 - DrupalConAsia 2016Build Mobile Applications with Headless Drupal 8 - DrupalConAsia 2016
Build Mobile Applications with Headless Drupal 8 - DrupalConAsia 2016Prateek Jain
 
Drupal Vs.The Others
Drupal Vs.The OthersDrupal Vs.The Others
Drupal Vs.The OthersExove
 

Similar a DeCoupling Drupal (20)

Liferay as solution for legacy applications
Liferay as solution for legacy applicationsLiferay as solution for legacy applications
Liferay as solution for legacy applications
 
8 Most Popular Content Management Systems (CMS)
8 Most Popular Content Management Systems (CMS)8 Most Popular Content Management Systems (CMS)
8 Most Popular Content Management Systems (CMS)
 
Intro to DevOps 4 undergraduates
Intro to DevOps 4 undergraduates Intro to DevOps 4 undergraduates
Intro to DevOps 4 undergraduates
 
Why Enterprises Choose Drupal for Futuristic Web App Development?
Why Enterprises Choose Drupal for Futuristic Web App Development?Why Enterprises Choose Drupal for Futuristic Web App Development?
Why Enterprises Choose Drupal for Futuristic Web App Development?
 
Technource - Zend framework Developers India
Technource - Zend framework Developers IndiaTechnource - Zend framework Developers India
Technource - Zend framework Developers India
 
DNN Application Development
DNN Application DevelopmentDNN Application Development
DNN Application Development
 
Automated Provisioning, Management & Cost Control for Kubernetes Clusters
Automated Provisioning, Management & Cost Control for Kubernetes ClustersAutomated Provisioning, Management & Cost Control for Kubernetes Clusters
Automated Provisioning, Management & Cost Control for Kubernetes Clusters
 
Mainframe Automation: A Panel Discussion
Mainframe Automation: A Panel DiscussionMainframe Automation: A Panel Discussion
Mainframe Automation: A Panel Discussion
 
How dvcs can reduce your development costs and enhance productivity final
How dvcs can reduce your development costs and enhance productivity finalHow dvcs can reduce your development costs and enhance productivity final
How dvcs can reduce your development costs and enhance productivity final
 
DevOps and Build Automation
DevOps and Build AutomationDevOps and Build Automation
DevOps and Build Automation
 
12 must know drupal 8 features
12 must know drupal 8 features12 must know drupal 8 features
12 must know drupal 8 features
 
RTC/CLM 5.0 Adoption Paths: Deploying in 16 Steps
 RTC/CLM 5.0 Adoption Paths: Deploying in 16 Steps RTC/CLM 5.0 Adoption Paths: Deploying in 16 Steps
RTC/CLM 5.0 Adoption Paths: Deploying in 16 Steps
 
Drupal vs. the Others
Drupal vs. the OthersDrupal vs. the Others
Drupal vs. the Others
 
Cloud Expo Asia 20181010 - Bringing Your Applications into the Future with Ha...
Cloud Expo Asia 20181010 - Bringing Your Applications into the Future with Ha...Cloud Expo Asia 20181010 - Bringing Your Applications into the Future with Ha...
Cloud Expo Asia 20181010 - Bringing Your Applications into the Future with Ha...
 
Breaking the 2 Pizza Paradox with your Platform as an Application
Breaking the 2 Pizza Paradox with your Platform as an ApplicationBreaking the 2 Pizza Paradox with your Platform as an Application
Breaking the 2 Pizza Paradox with your Platform as an Application
 
Twelve factor-app
Twelve factor-appTwelve factor-app
Twelve factor-app
 
Top 10 best PHP frameworks for web development.pdf
Top 10 best PHP frameworks for web development.pdfTop 10 best PHP frameworks for web development.pdf
Top 10 best PHP frameworks for web development.pdf
 
Devops interview-questions-PDF
Devops interview-questions-PDFDevops interview-questions-PDF
Devops interview-questions-PDF
 
Build Mobile Applications with Headless Drupal 8 - DrupalConAsia 2016
Build Mobile Applications with Headless Drupal 8 - DrupalConAsia 2016Build Mobile Applications with Headless Drupal 8 - DrupalConAsia 2016
Build Mobile Applications with Headless Drupal 8 - DrupalConAsia 2016
 
Drupal Vs.The Others
Drupal Vs.The OthersDrupal Vs.The Others
Drupal Vs.The Others
 

Más de Aimee Maree Forsstrom

DOM and Accessibility API Communication
DOM and Accessibility API CommunicationDOM and Accessibility API Communication
DOM and Accessibility API CommunicationAimee Maree Forsstrom
 
Accessiblity 101 and JavaScript Frameworks
Accessiblity 101 and JavaScript Frameworks Accessiblity 101 and JavaScript Frameworks
Accessiblity 101 and JavaScript Frameworks Aimee Maree Forsstrom
 
The Good, The Bad, The Voiceover - ios Accessibility
The Good, The Bad, The Voiceover - ios AccessibilityThe Good, The Bad, The Voiceover - ios Accessibility
The Good, The Bad, The Voiceover - ios AccessibilityAimee Maree Forsstrom
 
Javascript Framework Acessibiliity Review
Javascript Framework Acessibiliity ReviewJavascript Framework Acessibiliity Review
Javascript Framework Acessibiliity ReviewAimee Maree Forsstrom
 
Diversity through iOS Development - App Camp 4 Girls
Diversity through iOS Development - App Camp 4 GirlsDiversity through iOS Development - App Camp 4 Girls
Diversity through iOS Development - App Camp 4 GirlsAimee Maree Forsstrom
 
Waving an Open Source Flag in Australian Government
Waving an Open Source Flag in Australian GovernmentWaving an Open Source Flag in Australian Government
Waving an Open Source Flag in Australian GovernmentAimee Maree Forsstrom
 
Govhack - Collections of World War One Connecting the Dots
Govhack - Collections of World War One Connecting the DotsGovhack - Collections of World War One Connecting the Dots
Govhack - Collections of World War One Connecting the DotsAimee Maree Forsstrom
 
Accessibility with Joomla [on a budget]
Accessibility with Joomla [on a budget]Accessibility with Joomla [on a budget]
Accessibility with Joomla [on a budget]Aimee Maree Forsstrom
 
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)Aimee Maree Forsstrom
 
Introduction to Python - Training for Kids
Introduction to Python - Training for KidsIntroduction to Python - Training for Kids
Introduction to Python - Training for KidsAimee Maree Forsstrom
 
UK Communications Bill Proposed Changes 2012
UK Communications Bill Proposed Changes 2012UK Communications Bill Proposed Changes 2012
UK Communications Bill Proposed Changes 2012Aimee Maree Forsstrom
 
Drupal7 themeing changes and inheritence
Drupal7 themeing changes and inheritenceDrupal7 themeing changes and inheritence
Drupal7 themeing changes and inheritenceAimee Maree Forsstrom
 

Más de Aimee Maree Forsstrom (20)

AI - PAST, PRESENT, FUTURE.pptx
AI - PAST, PRESENT, FUTURE.pptxAI - PAST, PRESENT, FUTURE.pptx
AI - PAST, PRESENT, FUTURE.pptx
 
Pioneering Technology - My Story
Pioneering Technology - My StoryPioneering Technology - My Story
Pioneering Technology - My Story
 
DOM and Accessibility API Communication
DOM and Accessibility API CommunicationDOM and Accessibility API Communication
DOM and Accessibility API Communication
 
Machine Learning ate my homework
Machine Learning ate my homeworkMachine Learning ate my homework
Machine Learning ate my homework
 
Accessiblity 101 and JavaScript Frameworks
Accessiblity 101 and JavaScript Frameworks Accessiblity 101 and JavaScript Frameworks
Accessiblity 101 and JavaScript Frameworks
 
Accessibility, SEO and Joomla
Accessibility, SEO and JoomlaAccessibility, SEO and Joomla
Accessibility, SEO and Joomla
 
The Good, The Bad, The Voiceover - ios Accessibility
The Good, The Bad, The Voiceover - ios AccessibilityThe Good, The Bad, The Voiceover - ios Accessibility
The Good, The Bad, The Voiceover - ios Accessibility
 
Javascript Framework Acessibiliity Review
Javascript Framework Acessibiliity ReviewJavascript Framework Acessibiliity Review
Javascript Framework Acessibiliity Review
 
Diversity through iOS Development - App Camp 4 Girls
Diversity through iOS Development - App Camp 4 GirlsDiversity through iOS Development - App Camp 4 Girls
Diversity through iOS Development - App Camp 4 Girls
 
Waving an Open Source Flag in Australian Government
Waving an Open Source Flag in Australian GovernmentWaving an Open Source Flag in Australian Government
Waving an Open Source Flag in Australian Government
 
Cyber Terrorism or Terrible Code
Cyber Terrorism or Terrible Code Cyber Terrorism or Terrible Code
Cyber Terrorism or Terrible Code
 
Govhack - Collections of World War One Connecting the Dots
Govhack - Collections of World War One Connecting the DotsGovhack - Collections of World War One Connecting the Dots
Govhack - Collections of World War One Connecting the Dots
 
Accessibility with Joomla [on a budget]
Accessibility with Joomla [on a budget]Accessibility with Joomla [on a budget]
Accessibility with Joomla [on a budget]
 
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
 
Introduction to Python - Training for Kids
Introduction to Python - Training for KidsIntroduction to Python - Training for Kids
Introduction to Python - Training for Kids
 
UK Communications Bill Proposed Changes 2012
UK Communications Bill Proposed Changes 2012UK Communications Bill Proposed Changes 2012
UK Communications Bill Proposed Changes 2012
 
Welcome to the World of Trolls
Welcome to the World of TrollsWelcome to the World of Trolls
Welcome to the World of Trolls
 
Drupal7 themeing changes and inheritence
Drupal7 themeing changes and inheritenceDrupal7 themeing changes and inheritence
Drupal7 themeing changes and inheritence
 
Drupal’s growth
Drupal’s growthDrupal’s growth
Drupal’s growth
 
Help me help you learn
Help me help you learnHelp me help you learn
Help me help you learn
 

Último

Challengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya Shirtrahman018755
 
Radiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsRadiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsstephieert
 
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call GirlVIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girladitipandeya
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024APNIC
 
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$kojalkojal131
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.soniya singh
 
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607dollysharma2066
 
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl ServiceRussian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl Servicegwenoracqe6
 
Russian Call girls in Dubai +971563133746 Dubai Call girls
Russian  Call girls in Dubai +971563133746 Dubai  Call girlsRussian  Call girls in Dubai +971563133746 Dubai  Call girls
Russian Call girls in Dubai +971563133746 Dubai Call girlsstephieert
 
Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...
Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...
Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...sonatiwari757
 
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024APNIC
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445ruhi
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersDamian Radcliffe
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsThierry TROUIN ☁
 
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebGDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebJames Anderson
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝soniya singh
 

Último (20)

Challengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya ShirtChallengers I Told Ya Shirt
Challengers I Told Ya ShirtChallengers I Told Ya Shirt
 
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 6 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
Radiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girlsRadiant Call girls in Dubai O56338O268 Dubai Call girls
Radiant Call girls in Dubai O56338O268 Dubai Call girls
 
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call GirlVIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
VIP 7001035870 Find & Meet Hyderabad Call Girls LB Nagar high-profile Call Girl
 
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No AdvanceRohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
Rohini Sector 26 Call Girls Delhi 9999965857 @Sabina Saikh No Advance
 
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
DDoS In Oceania and the Pacific, presented by Dave Phelan at NZNOG 2024
 
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
Call Girls Dubai Prolapsed O525547819 Call Girls In Dubai Princes$
 
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
Call Now ☎ 8264348440 !! Call Girls in Green Park Escort Service Delhi N.C.R.
 
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
FULL ENJOY Call Girls In Mayur Vihar Delhi Contact Us 8377087607
 
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Sukhdev Vihar Delhi 💯Call Us 🔝8264348440🔝
 
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl ServiceRussian Call girl in Ajman +971563133746 Ajman Call girl Service
Russian Call girl in Ajman +971563133746 Ajman Call girl Service
 
Russian Call girls in Dubai +971563133746 Dubai Call girls
Russian  Call girls in Dubai +971563133746 Dubai  Call girlsRussian  Call girls in Dubai +971563133746 Dubai  Call girls
Russian Call girls in Dubai +971563133746 Dubai Call girls
 
Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...
Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...
Call Girls in Mayur Vihar ✔️ 9711199171 ✔️ Delhi ✔️ Enjoy Call Girls With Our...
 
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Saket Delhi 💯Call Us 🔝8264348440🔝
 
On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024On Starlink, presented by Geoff Huston at NZNOG 2024
On Starlink, presented by Geoff Huston at NZNOG 2024
 
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
All Time Service Available Call Girls Mg Road 👌 ⏭️ 6378878445
 
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providersMoving Beyond Twitter/X and Facebook - Social Media for local news providers
Moving Beyond Twitter/X and Facebook - Social Media for local news providers
 
AlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with FlowsAlbaniaDreamin24 - How to easily use an API with Flows
AlbaniaDreamin24 - How to easily use an API with Flows
 
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark WebGDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
GDG Cloud Southlake 32: Kyle Hettinger: Demystifying the Dark Web
 
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
Call Girls In Ashram Chowk Delhi 💯Call Us 🔝8264348440🔝
 

DeCoupling Drupal

  • 1. DeCoupling Drupal Aimee Maree Forsstrom Software Engineer – Advocate @aimee_maree aimee@linux.com What is DeCoupled Drupal? How can it help your deployment strategies?
  • 2. Who am I Aimee Maree Forsstrom Software Engineer – Drupal Community Member since 2008 @aimee_maree aimee@linux.com Worked in the field of Information Technology since 2000 Long list of work in Open Source Content Management Systems (PHPbb, Coppermine, Joomla, WordPress, Drupal) Drupal Community member since 2008 Drupal Solutions Designer since 2008 Drupal Community contributor (DrupalCon Copenhagen Volunteer, DrupalCon Sydney Social Media Started Learning Drupal Sydney Provided Forum and irc support for Drupa and Drupal Mentor
  • 3. Agenda What is Decoupled Drupal Traditional CMS technology stack Decoupled CMS technology stack Advantages of Decoupling Traditional CMS Workflow Decoupled CMS Workflow
  • 8. Modern Pace Front end moves faster then CMS Development can Drupal Frontends can be messy and hard to hire people who can rapidly work in the space Drupal8 has been in development for 5years Why? Because backends are complex systems but Frontends are display systems
  • 11. Technology Stack CMS Backend Content Database PHP facilitates Data .json .xml JS receives data Generates HTML
  • 12. Web Services Decoupling is achieved by enabling a Restful API Content is output as .json or .xml For Drupal you can enable this through services module or through the Rest API module Your CMS is now a JSON server and all nodes/content can be consumed through by a json file
  • 14. Microservices Traditional CMS wants to deliver HTML HTML is not good for custom Apps to consume Drupal only provides the logic to run the web application behind scenes
  • 15. Rapid Adaptation Front end is typically where the most rapid changes need to take place By decoupling the backend the frontend can now keep up with modern frameworks Enables new Design needs to be implemented quickly
  • 16. Advantages Enables the CMS to be broken into Microservices CMS Does what it is good at managing complex content models Content is consumed via JSON into separate Apps Angular JS, Web Apps, Smart TV Apps Re-Design tied into version upgrades goes away
  • 17. Legacy Workflow New CMS Version Upgrade Version Upgrade New Design Re-Design Re-Design Drupal 6.x 2008 Drupal 7.x 2011 Drupal 8.x 2015 ?
  • 18. New Workflow New CMS New Design Re-Design Re-Design Drupal X.x 20XX Re-Design
  • 19. Management Separation of Frontend and Backend Enables separate smaller Development Teams Each Team have their own repo and release cycle Stops teams interfering with deployment cycles Separate CI/CD and release cycle for Backend Components to Frontend Components
  • 20. Version Control CMS backend components can be stored in a separate git repo that is connected and updated via the main Drupal project repo Enables the Front End, Mobile App code to be maintained in their own repo
  • 21. From this Your Companies Version Control Server One Repo Drupal core Custom Drupal Modules Frontend Template Drupal Project Repo Local Develop Repos
  • 22. To this Your Companies Version Control Server Many Repo's Drupal core Repo Frontend Repo Mobile App Repo Drupal Project Repo Local Develop Repos
  • 23. Separation Frontend Development happens at a rapid rate Web App and Frontend development can take place without the need to commit into main CMS Repo Separation of tasks allows development teams to focus on their own repo tests / QA checks Less interference between frontend and backend
  • 25. Components Enables Backend Teams to build out and work on larger components without interfering with Frontend release cycles CMS feature and Module updates can be applied and tested without the need to modify frontend
  • 26. Release Cycles Frontend Git Repo Mobile Git Repo Now we have separate release cycles Deploy Daily Backend Git Repo Deploy Weekly Deploy Monthly Code Tests Code Tests Code Tests
  • 27. Stays the same Backend can stay the same version Removes dependence to upgrade versions to accommodate new Frontend features Security updates can be isolated and tested on the backend with no interference to the frontend repo Content Editors can continue working in a familiar environment
  • 28. Future Proof Now that our CMS has become Web Service enabled Mobile Apps can be built and utilise our CMS as their content backend We can create new Development Teams and Release Cycles to enable rapid development and prototyping without effecting or current cycle Examples are Mobile, IOT, Wearables, Smart TV And whatever the future may hold
  • 29. Conclusion Easier to Manage Easier to hire Frontend Developers Allows for a higher ROI on the initial CMS build Does enforce a change of approach to deployment Nothing comes with disadvantages Your can take a hybrid approach
  • 30. Thank You @aimee_maree Credits Logos of Technology projects shown are copyright as per project guidelines