SlideShare ist ein Scribd-Unternehmen logo
1 von 27
Discover eZ Publish
                     Why you have to
                     know this product


Bertrand Dunogier                        #confoo
Lead Engineer – eZ Systems
bd@ez.no
Agenda
Agenda
First things first




Introducing eZ Systems

The past: eZ Publish 3 & 4

The present: eZ Publish 5

The future: building on the foundations

Bertrand Dunogier    27/02/2013           3
Introducing eZ Systems
eZ Systems AS founded in 1999
                                 in Norway

                                 More than 13 years
                                 commitment to Commercial
                                 Open Source

                                 105 employees

                                 Continued growth: Supporting
                                 over 15,000 customers in 120
                                 countries

                                 Established ecosystem: More
                                 than 350 Partners and a strong
                                 community of 42,000 +
                                 members

                                 Over 5 million downloads and
                                 250,000 installations


Bertrand Dunogier   27/02/2013                            5
The past : eZ Publish 3 & 4
Distribution model



Community project

•
  GPL v2 license
•
  Can be downloaded from http://share.ez.no/
•
  or checked out from http://github.com/ezsystems
•
  Free of any charge
•
  Built every month
•
  Bleeding edge, only continuous QA, no freeze
•
  Drives innovation
•
  Public repository used by both community and eZ

Bertrand Dunogier         27/02/2013                6
The past : eZ Publish 3 & 4
Distribution model



Enterprise edition

•
  Proprietary license (BUL, TTL)
•
  Certified and supported by eZ Systems
•
  Released twice a year (may and november)
•
  Each release goes through 3 month of QA
•
  Versions are maintained for 3 years
•
  Gives access to extra features (recommendation,
marketing automation...) as well as the market place


Bertrand Dunogier         27/02/2013               7
Agenda
CXM : content management on steroids




                                                    A digital presence means much
                                                    more than a CMS



                                                    Where did they come from ?



                                                    What did they do ?



                                                    What can I sell them ?



                                                    Will they find it ?

                                                    Did they ?


Bertrand Dunogier                      27/02/2013                            8
The past: eZ Publish 3 & 4
The past : eZ Publish 3 & 4
A huge legacy




A powerful content model
●
 Up to 64 / 128 languages
●
 100% flexible, semantic content model
               ●
                text line, image, email, author, rich text, content relation,
               custom one !...
●
 Vertical, horizontal and transversal structure
●
 Multilingual content based URLs
               ➔
                    /Conferences/Confoo-2013/Discover-eZ-Publish
               ➔
                    /Conferences/Confoo-2013/Decouvrez-eZ-Publish
●
  Advanced permissions system

Bertrand Dunogier                           27/02/2013                          10
The past : eZ Publish 3 & 4
A huge legacy



A rich presentation system:

●
  Custom, compiled templates
●
  Full separation of presentation
  and content
●
  Powerful override mechanism
●
  A design system that reduces
  duplicates
●
  Automatic image alias
  generation
●
  Everything can be overriden,
  backoffice included
Bertrand Dunogier             27/02/2013   11
The past : eZ Publish 3 & 4
A huge legacy



An extensible system
●
  Custom datatypes
●
  Template operators and functions
●
  Data fetch functions
●
  Modules & views (MVC like)
●
  Permissions
●
  URL alias translators
●
  Login & SSO handlers
●
  Workflow events
●
  Shell scripts
●
  Crontab jobs


Bertrand Dunogier              27/02/2013   12
The past : eZ Publish 3 & 4
An era of maintenance


•
    13 years of maintenance

•
    Complete BC and migration path from 3.0 to 4.7

•
    Solid, stable base architecture
           –PHP 4 object oriented model
               –MVC layer
               –ORM model (eZPersistentObject)
               –Proven custom template engine

•
    Parallel maintenance of many stable versions


Bertrand Dunogier                    27/02/2013      13
The present: eZ Publish 5
The present : eZ Publish 5
The Genesis




 A well defined goal
               –Properly defined, self documented public API
               –Future proof architecture
               –Flexible enough to allow any kind of storage
               –Tested
               –Extensible
               –Backward compatible architecture
                    •Existing content must be compatible as is
                    •Extra BC layers to ease projects migration

Bertrand Dunogier                   27/02/2013                    15
The present : eZ Publish 5
The Genesis




    A brand new architecture
•
  Specified, documented public API
•
  Stateless objects architecture
        –Read only value objects
        –Update and create structs
•
  Service oriented
        –Allows re-implementations of services
        –Makes dependencies MUCH easier
•
  Totally independent storage engines

Bertrand Dunogier         27/02/2013             16
The present : eZ Publish 5
The Genesis




                    Backwards Compatibility

                        *Knockknock*
                     Devs: ÂŤWho's there?Âť
                    ÂŤProduct ManagementÂť
              Devs: ÂŤProduct Management who?Âť
    ÂŤProduct management who wants backwards compatibilityÂť
                      Devs: ÂŤOh crap...Âť



Bertrand Dunogier             27/02/2013                     17
The present : eZ Publish 5
The Genesis


•
    Full legacy database compatibility:
               –No structure changes at all
               –100% data compatibility
•
  Full execution of the legacy version
•
  Execute legacy code
•
  Routing fallback
•
  Use eZ Publish 5 services from legacy code
•
  Include legacy templates as is
•
  Two-ways settings compatibility                CHALLENGE
                                                 ACCEPTED


Bertrand Dunogier                   27/02/2013          18
The present : eZ Publish 5
The Genesis



    A full featured RESTfull API
•
  Basic / Session based authentication
       –oAuth2 in a future version
•
  Idempotent
•
  CSRF protection
•
  XML / JSON as input and/or output
•
  Almost 100% HATEOAS compatible
•
  HTTP Cachable



Bertrand Dunogier         27/02/2013     19
The present : eZ Publish 5
The Genesis



    All of this is powered by Symfony 2 !
•
  Framework
       –Settings
       –Services container
•
  Routing system
•
  HMVC architecture
•
  HTTP kernel
•
  Twig template engine



Bertrand Dunogier            27/02/2013     20
The future: let's build up !
The future : let's build !
More storage



    Finishing up the REST API
•
  Adding oAuth2 authentication
•
  Built-in PHP REST client
         –Reimplementation of the API services
         –The same code can be executed locally or
         remotely !
•
  Built-in JS REST client
         –Required for our GUIs
         –Must-have for our partners

Bertrand Dunogier            27/02/2013              22
The future : let's build !
More storage



    Replacing legacy code

•
  eZ Publish 4 really had a lot of features
•
  Most of those need to be rewritten/replaced
•
  Some are replaced by Symfony features
•
  Others will need to be developed from scratch




Bertrand Dunogier            27/02/2013           23
The future : let's build !
New interfaces : backoffice



    New backoffice
•
  An administration backoffice rewritten from scratch
       –Mix of standard PHP / Ajax
       –Modern
       –Based on new eZ Publish 5 controllers
•
  Designed for two personas
       –Casual User
       –Power User



Bertrand Dunogier             27/02/2013                24
Your next steps in the eZ Community

Twitter                     @ezcommunity
Learn                       http://share.ez.no/learn
Google+                     http://bit.ly/ezcty-gplus
Get Involved                http://share.ez.no/get-involved
Keep Track
                    http://share.ez.no/get-involved/exchange#RSS

Forge Ahead                 http://projects.ez.no
Download eZ Publish Community Project
                            http://share.ez.no/download
Suggest Feature Ideas       http://share.ez.no/roadmap
Be an eZ Publish Developer
                  http://share.ez.no/get-involved/develop#resources


Bertrand Dunogier                  27/02/2013                         25
The end




                    Questions ?



Bertrand Dunogier        27/02/2013   26
The end




Twitter: @bdunogier
Google+: http://gplus.to/BertrandDunogier
SlideShare: http://slideshare.net/BertrandDunogier

Bertrand Dunogier           27/02/2013               27

Weitere ähnliche Inhalte

Was ist angesagt?

Introduction to OpenBricks: an Embedded Linux Framework
Introduction to OpenBricks: an Embedded Linux FrameworkIntroduction to OpenBricks: an Embedded Linux Framework
Introduction to OpenBricks: an Embedded Linux Framework
Benjamin Zores
 
Open stack meetup_boston_ubuntu_cloud
Open stack meetup_boston_ubuntu_cloudOpen stack meetup_boston_ubuntu_cloud
Open stack meetup_boston_ubuntu_cloud
Kamesh Pemmaraju
 

Was ist angesagt? (10)

Debian or Yocto Project? Which is the best for your Embedded Linux project?
Debian or Yocto Project? Which is the best for your Embedded Linux project?Debian or Yocto Project? Which is the best for your Embedded Linux project?
Debian or Yocto Project? Which is the best for your Embedded Linux project?
 
Embedded Linux primer
Embedded Linux primerEmbedded Linux primer
Embedded Linux primer
 
Why you should use the Yocto Project
Why you should use the Yocto ProjectWhy you should use the Yocto Project
Why you should use the Yocto Project
 
The Peril and Promise of Early Adoption: Arriving 10 Years Early to Containers
The Peril and Promise of Early Adoption: Arriving 10 Years Early to ContainersThe Peril and Promise of Early Adoption: Arriving 10 Years Early to Containers
The Peril and Promise of Early Adoption: Arriving 10 Years Early to Containers
 
Introduction to OpenBricks: an Embedded Linux Framework
Introduction to OpenBricks: an Embedded Linux FrameworkIntroduction to OpenBricks: an Embedded Linux Framework
Introduction to OpenBricks: an Embedded Linux Framework
 
Droidcon 2013 france - The Growth of Android in Embedded Systems
Droidcon 2013 france - The Growth of Android in Embedded SystemsDroidcon 2013 france - The Growth of Android in Embedded Systems
Droidcon 2013 france - The Growth of Android in Embedded Systems
 
[Webinar] An Introduction to the Yocto Embedded Framework
[Webinar] An Introduction to the Yocto Embedded Framework[Webinar] An Introduction to the Yocto Embedded Framework
[Webinar] An Introduction to the Yocto Embedded Framework
 
Using nu get the way you should svcc
Using nu get the way you should   svccUsing nu get the way you should   svcc
Using nu get the way you should svcc
 
The Yocto Project
The Yocto ProjectThe Yocto Project
The Yocto Project
 
Open stack meetup_boston_ubuntu_cloud
Open stack meetup_boston_ubuntu_cloudOpen stack meetup_boston_ubuntu_cloud
Open stack meetup_boston_ubuntu_cloud
 

Andere mochten auch

Publish or perish... but where
Publish or perish... but wherePublish or perish... but where
Publish or perish... but where
plabelle
 
WebszolgĂĄltatĂĄsok elmĂŠlete ĂŠs gyakorlata
WebszolgĂĄltatĂĄsok elmĂŠlete ĂŠs gyakorlataWebszolgĂĄltatĂĄsok elmĂŠlete ĂŠs gyakorlata
WebszolgĂĄltatĂĄsok elmĂŠlete ĂŠs gyakorlata
Adam Nemeth
 

Andere mochten auch (8)

Paola De Castro. Critical introduction to scientific journals and the editori...
Paola De Castro. Critical introduction to scientific journals and the editori...Paola De Castro. Critical introduction to scientific journals and the editori...
Paola De Castro. Critical introduction to scientific journals and the editori...
 
How to make your research open
How to make your research openHow to make your research open
How to make your research open
 
Publish or perish... but where
Publish or perish... but wherePublish or perish... but where
Publish or perish... but where
 
How to start with eZ Publish 5
How to start with eZ Publish 5How to start with eZ Publish 5
How to start with eZ Publish 5
 
Scientific Writing Barbara Janssens 2012
Scientific Writing Barbara Janssens 2012Scientific Writing Barbara Janssens 2012
Scientific Writing Barbara Janssens 2012
 
How to make research open - Workshop
How to make research open - WorkshopHow to make research open - Workshop
How to make research open - Workshop
 
WebszolgĂĄltatĂĄsok elmĂŠlete ĂŠs gyakorlata
WebszolgĂĄltatĂĄsok elmĂŠlete ĂŠs gyakorlataWebszolgĂĄltatĂĄsok elmĂŠlete ĂŠs gyakorlata
WebszolgĂĄltatĂĄsok elmĂŠlete ĂŠs gyakorlata
 
20111006 bonnes pratiques-gi_g_v1
20111006 bonnes pratiques-gi_g_v120111006 bonnes pratiques-gi_g_v1
20111006 bonnes pratiques-gi_g_v1
 

Ähnlich wie Discover eZ Publish: why you have to know this product

Ähnlich wie Discover eZ Publish: why you have to know this product (20)

Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
Kubernetes, Toolbox to fail or succeed for beginners - Demi Ben-Ari, VP R&D @...
 
DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2DockerCon 15 Keynote - Day 2
DockerCon 15 Keynote - Day 2
 
A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015A Summary about Hykes' Keynote on Dockercon 2015
A Summary about Hykes' Keynote on Dockercon 2015
 
Devcon3 : iExec Allowing Scalable, Efficient, and Virtualized Off-chain Execu...
Devcon3 : iExec Allowing Scalable, Efficient, and Virtualized Off-chain Execu...Devcon3 : iExec Allowing Scalable, Efficient, and Virtualized Off-chain Execu...
Devcon3 : iExec Allowing Scalable, Efficient, and Virtualized Off-chain Execu...
 
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
 
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
 
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
 
Opening words at DockerCon Europe by Ben Golub
Opening words at DockerCon Europe by Ben Golub Opening words at DockerCon Europe by Ben Golub
Opening words at DockerCon Europe by Ben Golub
 
Ben keynote 5
Ben keynote 5Ben keynote 5
Ben keynote 5
 
Deploying your SaaS stack OnPrem
Deploying your SaaS stack OnPremDeploying your SaaS stack OnPrem
Deploying your SaaS stack OnPrem
 
Platform Clouds, Containers, Immutable Infrastructure Oh My!
Platform Clouds, Containers, Immutable Infrastructure Oh My!Platform Clouds, Containers, Immutable Infrastructure Oh My!
Platform Clouds, Containers, Immutable Infrastructure Oh My!
 
Docker Concepts for Oracle/MySQL DBAs and DevOps
Docker Concepts for Oracle/MySQL DBAs and DevOpsDocker Concepts for Oracle/MySQL DBAs and DevOps
Docker Concepts for Oracle/MySQL DBAs and DevOps
 
DockerCon EU 2015: Day 1 General Session
DockerCon EU 2015: Day 1 General SessionDockerCon EU 2015: Day 1 General Session
DockerCon EU 2015: Day 1 General Session
 
Demystifying Containerization Principles for Data Scientists
Demystifying Containerization Principles for Data ScientistsDemystifying Containerization Principles for Data Scientists
Demystifying Containerization Principles for Data Scientists
 
Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...Everyone wants (someone else) to do it: writing documentation for open source...
Everyone wants (someone else) to do it: writing documentation for open source...
 
Netflix Open Source: Building a Distributed and Automated Open Source Program
Netflix Open Source:  Building a Distributed and Automated Open Source ProgramNetflix Open Source:  Building a Distributed and Automated Open Source Program
Netflix Open Source: Building a Distributed and Automated Open Source Program
 
Building a Distributed & Automated Open Source Program at Netflix
Building a Distributed & Automated Open Source Program at NetflixBuilding a Distributed & Automated Open Source Program at Netflix
Building a Distributed & Automated Open Source Program at Netflix
 
Fluentd and docker monitoring
Fluentd and docker monitoringFluentd and docker monitoring
Fluentd and docker monitoring
 
Open Source & What It Means For Self-Sovereign Identity (SSI)
Open Source & What It Means For Self-Sovereign Identity (SSI)Open Source & What It Means For Self-Sovereign Identity (SSI)
Open Source & What It Means For Self-Sovereign Identity (SSI)
 
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWERContinuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
Continuous Integration with Cloud Foundry Concourse and Docker on OpenPOWER
 

Mehr von Bertrand Dunogier (8)

The eZ Platform Query Field
The eZ Platform Query FieldThe eZ Platform Query Field
The eZ Platform Query Field
 
The eZ Platform view layer – eZ Conference 2016
The eZ Platform view layer – eZ Conference 2016The eZ Platform view layer – eZ Conference 2016
The eZ Platform view layer – eZ Conference 2016
 
Dev Symfony2 rapide avec un framework de contenu
Dev Symfony2 rapide avec un framework de contenuDev Symfony2 rapide avec un framework de contenu
Dev Symfony2 rapide avec un framework de contenu
 
eZ Publish cluster unleashed revisited
eZ Publish cluster unleashed revisitedeZ Publish cluster unleashed revisited
eZ Publish cluster unleashed revisited
 
eZ Publish REST API v2
eZ Publish REST API v2eZ Publish REST API v2
eZ Publish REST API v2
 
E zsc2012 rest-api-v2
E zsc2012 rest-api-v2E zsc2012 rest-api-v2
E zsc2012 rest-api-v2
 
eZ Publish Cluster Unleashed
eZ Publish Cluster UnleashedeZ Publish Cluster Unleashed
eZ Publish Cluster Unleashed
 
eZ Publish Asynchronous Content Publishing
eZ Publish Asynchronous Content PublishingeZ Publish Asynchronous Content Publishing
eZ Publish Asynchronous Content Publishing
 

KĂźrzlich hochgeladen

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
Enterprise Knowledge
 

KĂźrzlich hochgeladen (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
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
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
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...
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 

Discover eZ Publish: why you have to know this product

  • 1. Discover eZ Publish Why you have to know this product Bertrand Dunogier #confoo Lead Engineer – eZ Systems bd@ez.no
  • 3. Agenda First things first Introducing eZ Systems The past: eZ Publish 3 & 4 The present: eZ Publish 5 The future: building on the foundations Bertrand Dunogier 27/02/2013 3
  • 5. eZ Systems AS founded in 1999 in Norway More than 13 years commitment to Commercial Open Source 105 employees Continued growth: Supporting over 15,000 customers in 120 countries Established ecosystem: More than 350 Partners and a strong community of 42,000 + members Over 5 million downloads and 250,000 installations Bertrand Dunogier 27/02/2013 5
  • 6. The past : eZ Publish 3 & 4 Distribution model Community project • GPL v2 license • Can be downloaded from http://share.ez.no/ • or checked out from http://github.com/ezsystems • Free of any charge • Built every month • Bleeding edge, only continuous QA, no freeze • Drives innovation • Public repository used by both community and eZ Bertrand Dunogier 27/02/2013 6
  • 7. The past : eZ Publish 3 & 4 Distribution model Enterprise edition • Proprietary license (BUL, TTL) • Certified and supported by eZ Systems • Released twice a year (may and november) • Each release goes through 3 month of QA • Versions are maintained for 3 years • Gives access to extra features (recommendation, marketing automation...) as well as the market place Bertrand Dunogier 27/02/2013 7
  • 8. Agenda CXM : content management on steroids A digital presence means much more than a CMS Where did they come from ? What did they do ? What can I sell them ? Will they find it ? Did they ? Bertrand Dunogier 27/02/2013 8
  • 9. The past: eZ Publish 3 & 4
  • 10. The past : eZ Publish 3 & 4 A huge legacy A powerful content model ● Up to 64 / 128 languages ● 100% flexible, semantic content model ● text line, image, email, author, rich text, content relation, custom one !... ● Vertical, horizontal and transversal structure ● Multilingual content based URLs ➔ /Conferences/Confoo-2013/Discover-eZ-Publish ➔ /Conferences/Confoo-2013/Decouvrez-eZ-Publish ● Advanced permissions system Bertrand Dunogier 27/02/2013 10
  • 11. The past : eZ Publish 3 & 4 A huge legacy A rich presentation system: ● Custom, compiled templates ● Full separation of presentation and content ● Powerful override mechanism ● A design system that reduces duplicates ● Automatic image alias generation ● Everything can be overriden, backoffice included Bertrand Dunogier 27/02/2013 11
  • 12. The past : eZ Publish 3 & 4 A huge legacy An extensible system ● Custom datatypes ● Template operators and functions ● Data fetch functions ● Modules & views (MVC like) ● Permissions ● URL alias translators ● Login & SSO handlers ● Workflow events ● Shell scripts ● Crontab jobs Bertrand Dunogier 27/02/2013 12
  • 13. The past : eZ Publish 3 & 4 An era of maintenance • 13 years of maintenance • Complete BC and migration path from 3.0 to 4.7 • Solid, stable base architecture –PHP 4 object oriented model –MVC layer –ORM model (eZPersistentObject) –Proven custom template engine • Parallel maintenance of many stable versions Bertrand Dunogier 27/02/2013 13
  • 14. The present: eZ Publish 5
  • 15. The present : eZ Publish 5 The Genesis A well defined goal –Properly defined, self documented public API –Future proof architecture –Flexible enough to allow any kind of storage –Tested –Extensible –Backward compatible architecture •Existing content must be compatible as is •Extra BC layers to ease projects migration Bertrand Dunogier 27/02/2013 15
  • 16. The present : eZ Publish 5 The Genesis A brand new architecture • Specified, documented public API • Stateless objects architecture –Read only value objects –Update and create structs • Service oriented –Allows re-implementations of services –Makes dependencies MUCH easier • Totally independent storage engines Bertrand Dunogier 27/02/2013 16
  • 17. The present : eZ Publish 5 The Genesis Backwards Compatibility *Knockknock* Devs: ÂŤWho's there?Âť ÂŤProduct ManagementÂť Devs: ÂŤProduct Management who?Âť ÂŤProduct management who wants backwards compatibilityÂť Devs: ÂŤOh crap...Âť Bertrand Dunogier 27/02/2013 17
  • 18. The present : eZ Publish 5 The Genesis • Full legacy database compatibility: –No structure changes at all –100% data compatibility • Full execution of the legacy version • Execute legacy code • Routing fallback • Use eZ Publish 5 services from legacy code • Include legacy templates as is • Two-ways settings compatibility CHALLENGE ACCEPTED Bertrand Dunogier 27/02/2013 18
  • 19. The present : eZ Publish 5 The Genesis A full featured RESTfull API • Basic / Session based authentication –oAuth2 in a future version • Idempotent • CSRF protection • XML / JSON as input and/or output • Almost 100% HATEOAS compatible • HTTP Cachable Bertrand Dunogier 27/02/2013 19
  • 20. The present : eZ Publish 5 The Genesis All of this is powered by Symfony 2 ! • Framework –Settings –Services container • Routing system • HMVC architecture • HTTP kernel • Twig template engine Bertrand Dunogier 27/02/2013 20
  • 21. The future: let's build up !
  • 22. The future : let's build ! More storage Finishing up the REST API • Adding oAuth2 authentication • Built-in PHP REST client –Reimplementation of the API services –The same code can be executed locally or remotely ! • Built-in JS REST client –Required for our GUIs –Must-have for our partners Bertrand Dunogier 27/02/2013 22
  • 23. The future : let's build ! More storage Replacing legacy code • eZ Publish 4 really had a lot of features • Most of those need to be rewritten/replaced • Some are replaced by Symfony features • Others will need to be developed from scratch Bertrand Dunogier 27/02/2013 23
  • 24. The future : let's build ! New interfaces : backoffice New backoffice • An administration backoffice rewritten from scratch –Mix of standard PHP / Ajax –Modern –Based on new eZ Publish 5 controllers • Designed for two personas –Casual User –Power User Bertrand Dunogier 27/02/2013 24
  • 25. Your next steps in the eZ Community Twitter @ezcommunity Learn http://share.ez.no/learn Google+ http://bit.ly/ezcty-gplus Get Involved http://share.ez.no/get-involved Keep Track http://share.ez.no/get-involved/exchange#RSS Forge Ahead http://projects.ez.no Download eZ Publish Community Project http://share.ez.no/download Suggest Feature Ideas http://share.ez.no/roadmap Be an eZ Publish Developer http://share.ez.no/get-involved/develop#resources Bertrand Dunogier 27/02/2013 25
  • 26. The end Questions ? Bertrand Dunogier 27/02/2013 26