SlideShare a Scribd company logo
1 of 20
Download to read offline
fitting




   in a custom stack
Who am I
●   Simone Deponti
●   Python/Plone developer @
    Abstract
●   simone.deponti@abstract.it
The customer




●   Largest on-line retailer in Italy
●   Several brands
The initial situation


                                                            March of the Cart

          Catalog empire




                                        Marketing kingdom



...and a lot of small Imperial cities
The problem
●   Need to manage “marketing” content
    ●   To integrate already existing content
    ●   Stand alone
The problem (2)
●   “Large theatre of operations”
●   Must maintain good relations with
    “neighbouring states”
●   Parallel universes (multisite)
What do we need?
      Speed
    Flexibility
    Coherence
I better clarify...
Speed
●   No
    ●   Repetitive tasks
    ●   “useless” steps
●   Yes
    ●   One click one kill
Flexibility
●   Marketing is not accounting
    ●   Creatives
    ●   Exception is routine
●   Knowledged users
    ●   Web is their work
    ●   Possesses skills (that we can leverage)
Coherence
●   Few base concepts
●   Stick to them!
●   Fast training
The solution
●   “Aggregated” content
    ●   “multicast” publication
    ●   Information Architecture CMS != IA Site
The solution (2)
●   Primary content
    ●   Page is folder
    ●   Object “composition”
    ●   Templating (Genshi)
The solution (3)
●   “primary” content
    ●   Explicit positioning of root element
    ●   Site-level multicast
    ●   Internal structure follows Plone IA
The solution (4)
●   Several content types
    ●   “Standalone” or providing interfaces
        to internal WS
    ●   Can be used within “primary” content
Lessons learned
●   Plone's structure is optimal to manage content
●   Presenting content is an altogether different
    story
●   In the presentation layer, multiple is good, while
    managing, it's a <CENSORED>
Lessons learned
●   Integration is simple if functional area are well
    defined and grouped
●   Several ways:
    ●   Webservice
    ●   SQL
    ●   Etc etc
Challenges
●   Know the stack
●   Automated refresh
●   Componentize, componentize, componentize
And then?
●   You can always do better
    ●   Still too many useless steps
    ●   Fine grained security
    ●   UI polishing
Cast
●   Plone
●   Genshi
●   SQLAlchemy
●   PostgreSQL
●   SOLR

More Related Content

Viewers also liked

Fm parfüm katalógus
Fm parfüm katalógusFm parfüm katalógus
Fm parfüm katalógusEvi Horvath
 
FM MAKE UP katalógus
FM MAKE UP katalógusFM MAKE UP katalógus
FM MAKE UP katalógusEvi Horvath
 
Amelia earhart's article
Amelia earhart's articleAmelia earhart's article
Amelia earhart's articlesasensi5
 
How to great someone
How to great someoneHow to great someone
How to great someonesasensi5
 
Its all been done before pack
Its all been done before packIts all been done before pack
Its all been done before packsasensi5
 
Radiohead activity
Radiohead activityRadiohead activity
Radiohead activitysasensi5
 
Laura
LauraLaura
LauraLaura
 
Harper 8gpa powerpoint_v01
Harper 8gpa powerpoint_v01Harper 8gpa powerpoint_v01
Harper 8gpa powerpoint_v01claireharper
 

Viewers also liked (8)

Fm parfüm katalógus
Fm parfüm katalógusFm parfüm katalógus
Fm parfüm katalógus
 
FM MAKE UP katalógus
FM MAKE UP katalógusFM MAKE UP katalógus
FM MAKE UP katalógus
 
Amelia earhart's article
Amelia earhart's articleAmelia earhart's article
Amelia earhart's article
 
How to great someone
How to great someoneHow to great someone
How to great someone
 
Its all been done before pack
Its all been done before packIts all been done before pack
Its all been done before pack
 
Radiohead activity
Radiohead activityRadiohead activity
Radiohead activity
 
Laura
LauraLaura
Laura
 
Harper 8gpa powerpoint_v01
Harper 8gpa powerpoint_v01Harper 8gpa powerpoint_v01
Harper 8gpa powerpoint_v01
 

Similar to Fitting Plone in a custom stack

Plomino plone conf2010
Plomino plone conf2010Plomino plone conf2010
Plomino plone conf2010ebrehault
 
Speedrun: Build a Website with Panels, Media, and More in 45 Minutes
Speedrun: Build a Website with Panels, Media, and More in 45 MinutesSpeedrun: Build a Website with Panels, Media, and More in 45 Minutes
Speedrun: Build a Website with Panels, Media, and More in 45 MinutesAcquia
 
Mi monolito mola mucho
Mi monolito mola muchoMi monolito mola mucho
Mi monolito mola muchoCristian Cotes
 
Building a high-performance, scalable ML & NLP platform with Python, Sheer El...
Building a high-performance, scalable ML & NLP platform with Python, Sheer El...Building a high-performance, scalable ML & NLP platform with Python, Sheer El...
Building a high-performance, scalable ML & NLP platform with Python, Sheer El...Pôle Systematic Paris-Region
 
PloneSocial Roadmap PLOG2013
PloneSocial Roadmap PLOG2013PloneSocial Roadmap PLOG2013
PloneSocial Roadmap PLOG2013Guido Stevens
 
Python enterprise vento di liberta
Python enterprise vento di libertaPython enterprise vento di liberta
Python enterprise vento di libertaSimone Federici
 
Developing Better Software
Developing Better SoftwareDeveloping Better Software
Developing Better SoftwareHean Hong Leong
 
Journeys with Transmogrifier and friends or How not to get stuck in the Plone...
Journeys with Transmogrifier and friends or How not to get stuck in the Plone...Journeys with Transmogrifier and friends or How not to get stuck in the Plone...
Journeys with Transmogrifier and friends or How not to get stuck in the Plone...Daniel Jowett
 
Organizing JavaScript
Organizing JavaScriptOrganizing JavaScript
Organizing JavaScriptmcordingley
 
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Content Management Systems and Refactoring - Drupal, WordPress and eZ PublishContent Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Content Management Systems and Refactoring - Drupal, WordPress and eZ PublishJani Tarvainen
 
Plone at the University of Washington
Plone at the University of WashingtonPlone at the University of Washington
Plone at the University of Washingtonmwinkle1
 
Devopsdays se-2011
Devopsdays se-2011Devopsdays se-2011
Devopsdays se-2011lusis
 
Mixing Plone and Django for explosive results
Mixing Plone and Django for explosive resultsMixing Plone and Django for explosive results
Mixing Plone and Django for explosive resultsSimone Deponti
 
We Need to Talk: How Communication Helps Code
We Need to Talk: How Communication Helps CodeWe Need to Talk: How Communication Helps Code
We Need to Talk: How Communication Helps CodeDocker, Inc.
 
Drupal 7 - More than a Simple CMS
Drupal 7 - More than a Simple CMSDrupal 7 - More than a Simple CMS
Drupal 7 - More than a Simple CMSMarco Lancellotti
 
Python in Industry
Python in IndustryPython in Industry
Python in IndustryDharmit Shah
 
Drupal and Devops , the Survey Results
Drupal and Devops , the Survey ResultsDrupal and Devops , the Survey Results
Drupal and Devops , the Survey ResultsKris Buytaert
 
Dynatech presentation for TSI Career Day
Dynatech presentation for TSI Career DayDynatech presentation for TSI Career Day
Dynatech presentation for TSI Career DayArtur Babyuk
 

Similar to Fitting Plone in a custom stack (20)

Plomino plone conf2010
Plomino plone conf2010Plomino plone conf2010
Plomino plone conf2010
 
Speedrun: Build a Website with Panels, Media, and More in 45 Minutes
Speedrun: Build a Website with Panels, Media, and More in 45 MinutesSpeedrun: Build a Website with Panels, Media, and More in 45 Minutes
Speedrun: Build a Website with Panels, Media, and More in 45 Minutes
 
Mi monolito mola mucho
Mi monolito mola muchoMi monolito mola mucho
Mi monolito mola mucho
 
Building a high-performance, scalable ML & NLP platform with Python, Sheer El...
Building a high-performance, scalable ML & NLP platform with Python, Sheer El...Building a high-performance, scalable ML & NLP platform with Python, Sheer El...
Building a high-performance, scalable ML & NLP platform with Python, Sheer El...
 
PloneSocial Roadmap PLOG2013
PloneSocial Roadmap PLOG2013PloneSocial Roadmap PLOG2013
PloneSocial Roadmap PLOG2013
 
Python enterprise vento di liberta
Python enterprise vento di libertaPython enterprise vento di liberta
Python enterprise vento di liberta
 
Developing Better Software
Developing Better SoftwareDeveloping Better Software
Developing Better Software
 
Journeys with Transmogrifier and friends or How not to get stuck in the Plone...
Journeys with Transmogrifier and friends or How not to get stuck in the Plone...Journeys with Transmogrifier and friends or How not to get stuck in the Plone...
Journeys with Transmogrifier and friends or How not to get stuck in the Plone...
 
Organizing JavaScript
Organizing JavaScriptOrganizing JavaScript
Organizing JavaScript
 
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Content Management Systems and Refactoring - Drupal, WordPress and eZ PublishContent Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
 
DDD with Behat
DDD with BehatDDD with Behat
DDD with Behat
 
Plone at the University of Washington
Plone at the University of WashingtonPlone at the University of Washington
Plone at the University of Washington
 
Devopsdays se-2011
Devopsdays se-2011Devopsdays se-2011
Devopsdays se-2011
 
Mixing Plone and Django for explosive results
Mixing Plone and Django for explosive resultsMixing Plone and Django for explosive results
Mixing Plone and Django for explosive results
 
Practical domain driven design
Practical domain driven designPractical domain driven design
Practical domain driven design
 
We Need to Talk: How Communication Helps Code
We Need to Talk: How Communication Helps CodeWe Need to Talk: How Communication Helps Code
We Need to Talk: How Communication Helps Code
 
Drupal 7 - More than a Simple CMS
Drupal 7 - More than a Simple CMSDrupal 7 - More than a Simple CMS
Drupal 7 - More than a Simple CMS
 
Python in Industry
Python in IndustryPython in Industry
Python in Industry
 
Drupal and Devops , the Survey Results
Drupal and Devops , the Survey ResultsDrupal and Devops , the Survey Results
Drupal and Devops , the Survey Results
 
Dynatech presentation for TSI Career Day
Dynatech presentation for TSI Career DayDynatech presentation for TSI Career Day
Dynatech presentation for TSI Career Day
 

Recently uploaded

Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceIES VE
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)Samir Dash
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governanceWSO2
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....rightmanforbloodline
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingWSO2
 
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
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxMarkSteadman7
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 

Recently uploaded (20)

Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational Performance
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
API Governance and Monetization - The evolution of API governance
API Governance and Monetization -  The evolution of API governanceAPI Governance and Monetization -  The evolution of API governance
API Governance and Monetization - The evolution of API governance
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
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
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

Fitting Plone in a custom stack

  • 1. fitting in a custom stack
  • 2. Who am I ● Simone Deponti ● Python/Plone developer @ Abstract ● simone.deponti@abstract.it
  • 3. The customer ● Largest on-line retailer in Italy ● Several brands
  • 4. The initial situation March of the Cart Catalog empire Marketing kingdom ...and a lot of small Imperial cities
  • 5. The problem ● Need to manage “marketing” content ● To integrate already existing content ● Stand alone
  • 6. The problem (2) ● “Large theatre of operations” ● Must maintain good relations with “neighbouring states” ● Parallel universes (multisite)
  • 7. What do we need? Speed Flexibility Coherence
  • 9. Speed ● No ● Repetitive tasks ● “useless” steps ● Yes ● One click one kill
  • 10. Flexibility ● Marketing is not accounting ● Creatives ● Exception is routine ● Knowledged users ● Web is their work ● Possesses skills (that we can leverage)
  • 11. Coherence ● Few base concepts ● Stick to them! ● Fast training
  • 12. The solution ● “Aggregated” content ● “multicast” publication ● Information Architecture CMS != IA Site
  • 13. The solution (2) ● Primary content ● Page is folder ● Object “composition” ● Templating (Genshi)
  • 14. The solution (3) ● “primary” content ● Explicit positioning of root element ● Site-level multicast ● Internal structure follows Plone IA
  • 15. The solution (4) ● Several content types ● “Standalone” or providing interfaces to internal WS ● Can be used within “primary” content
  • 16. Lessons learned ● Plone's structure is optimal to manage content ● Presenting content is an altogether different story ● In the presentation layer, multiple is good, while managing, it's a <CENSORED>
  • 17. Lessons learned ● Integration is simple if functional area are well defined and grouped ● Several ways: ● Webservice ● SQL ● Etc etc
  • 18. Challenges ● Know the stack ● Automated refresh ● Componentize, componentize, componentize
  • 19. And then? ● You can always do better ● Still too many useless steps ● Fine grained security ● UI polishing
  • 20. Cast ● Plone ● Genshi ● SQLAlchemy ● PostgreSQL ● SOLR