The document discusses setting up an optimized development environment for an eZ Publish project involving multiple developers. It recommends using virtual machines with a common Eclipse IDE, file synchronization plugin, and shared code repository, database, and media files. For remote developers, it suggests dedicating a virtual server at the project headquarters for each developer rather than exposing the database directly over the internet.
EclipseConEurope2012 SOA - Models As Operational DocumentationMarc Dutoo
At Eclipse Con Europe 2012 in the SOA Symposium track, JWT's EMF model export to structure and information in Document Management Systems is explained and demonstrated for in the case of the EasySOA service documentation registry, with JWT workflows producing a basis for SOA operational documentation.
The quickstart slides contain a quick walkthrough for creating your first project using Carbide.c++ Edition and its new UI-designer (available as a free trial version). The final project will display an image, offer the possibility to enter text and display this text on the screen. A very short overview of relevant Symbian OS topics is given at the appropriate locations. To train your Symbian OS skills, you have to option to complete the challenge, which is a "Guess-a-number"-game. Basic knowledge about Symbian OS is recommended to complete this challenge.
Contents
* Symbian OS naming conventions
* Working with Carbide.c++ Developer Edition
* Creating an S60 project
* Application structure
* Topics: Image control, menu definition, text query dialog, label control
* Short overview about descriptors and leaves
Qt App Development for Symbian & MeeGo - v3.4.6 (17. January 2012)Andreas Jakl
Learn what Qt is all about, why it is important and what you can do with it! Includes an introduction to the Qt SDK, Qt Quick and the Qt Mobility APIs for development on Symbian and MeeGo Harmattan. Links to further resources help you to get an easy start!
OSAmI-Commons – an OSGi based platform supporting Open Ambient Intelligence f...mfrancis
he research project OSAmI Commons, running under ITEA and supported by national ministries, is based on OSGi and has focussed on the establishment of an open modular platform that enables industry players to use and exchange modular applications as needed.
In order to enable this marketplace the project has deployed the commonly defined platform in the industries of Ambient Assisted Living (a virtual rehabilitation program that will be further developed by a hospital), Sustainability (The green building INEED 3 is a reference architecture for low consumption buildings), Smart Home (Business solutions for sensor networks), Telematics (Smart City Services that are exploited with Turkish Telecom), Edutainment (Content recommendations that are commercialised by a Cable company), and the creation and deployment of tools (e.g. the Eclipse Libra Tool for the enterprise) to support the common platform. The presentation will focus on the benefits that OSGi provided, and examples on how this platform can be further exploited.
Version 5 of eZ Publish is now running on Symfony 2 full stack. This talk will recount this fantastic journey, how the heart of a legacy content management engine was reworked, re-architectured, and injected into a Symfony 2 powered HMVC architecture. You will learn how two large technologies merged, what the pitfalls were, how they were overcome, and how these two large communities touched-base and look ahead together.
EclipseConEurope2012 SOA - Models As Operational DocumentationMarc Dutoo
At Eclipse Con Europe 2012 in the SOA Symposium track, JWT's EMF model export to structure and information in Document Management Systems is explained and demonstrated for in the case of the EasySOA service documentation registry, with JWT workflows producing a basis for SOA operational documentation.
The quickstart slides contain a quick walkthrough for creating your first project using Carbide.c++ Edition and its new UI-designer (available as a free trial version). The final project will display an image, offer the possibility to enter text and display this text on the screen. A very short overview of relevant Symbian OS topics is given at the appropriate locations. To train your Symbian OS skills, you have to option to complete the challenge, which is a "Guess-a-number"-game. Basic knowledge about Symbian OS is recommended to complete this challenge.
Contents
* Symbian OS naming conventions
* Working with Carbide.c++ Developer Edition
* Creating an S60 project
* Application structure
* Topics: Image control, menu definition, text query dialog, label control
* Short overview about descriptors and leaves
Qt App Development for Symbian & MeeGo - v3.4.6 (17. January 2012)Andreas Jakl
Learn what Qt is all about, why it is important and what you can do with it! Includes an introduction to the Qt SDK, Qt Quick and the Qt Mobility APIs for development on Symbian and MeeGo Harmattan. Links to further resources help you to get an easy start!
OSAmI-Commons – an OSGi based platform supporting Open Ambient Intelligence f...mfrancis
he research project OSAmI Commons, running under ITEA and supported by national ministries, is based on OSGi and has focussed on the establishment of an open modular platform that enables industry players to use and exchange modular applications as needed.
In order to enable this marketplace the project has deployed the commonly defined platform in the industries of Ambient Assisted Living (a virtual rehabilitation program that will be further developed by a hospital), Sustainability (The green building INEED 3 is a reference architecture for low consumption buildings), Smart Home (Business solutions for sensor networks), Telematics (Smart City Services that are exploited with Turkish Telecom), Edutainment (Content recommendations that are commercialised by a Cable company), and the creation and deployment of tools (e.g. the Eclipse Libra Tool for the enterprise) to support the common platform. The presentation will focus on the benefits that OSGi provided, and examples on how this platform can be further exploited.
Version 5 of eZ Publish is now running on Symfony 2 full stack. This talk will recount this fantastic journey, how the heart of a legacy content management engine was reworked, re-architectured, and injected into a Symfony 2 powered HMVC architecture. You will learn how two large technologies merged, what the pitfalls were, how they were overcome, and how these two large communities touched-base and look ahead together.
10 Reasons Your Software Sucks 2014 - Tax Day Edition!Caleb Jenkins
Based on years of consulting, and working with some of the largest (and smallest) software companies in the world.. these are the 10 practices that if you started doing today, would drastically improve the quality and delivery of your software! Also, be sure to hang around afterwards in the Open Spaces area.. Caleb will be around to discuss any of the areas from his talk in more detail. It’s going to be great time!
Topics hit on: Object Oriented Principals, SOLID Coding, Security Concerns, Software Patterns, Automated Testing, Source Control - Branching and Merging Strategies, Continuous Integration, Agile | Scrum | XP | Lean, Team Dynamics, Continually Learning
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe DevelopmentDevOps.com
Eclipse Che introduces a new kind of developer tool that runs directly on Kubernetes and is accessible through a web-based IDE. The container architecture enables easy and rapid onboarding of new team members while eliminating workstation maintenance costs and limitations, all while leveraging a VS Code-like experience. The release of Che 7.0 by the open source community goes further by making the developer environment consistent, repeatable and reproducible. Now available for mainframe-based code with the Che4z subproject, teams can collaborate on cross-platform applications and bridge the distributed/mainframe divide.
The panel with discuss how the Eclipse Che IDE and workspace server drive developer productivity and improve overall software delivery.
InduSoft Web Studio and Developing Applications for OEMs - InduSoft PresentationAVEVA
For this webinar, InduSoft teams up with Guardian, from Schneider-Electric, to discuss compressor controls, and how to build software solutions for OEMs using InduSoft web Studio. During this webinar, we will see a live demonstration of an InduSoft Web Studio application that acts as the HMI for Guardian’s compressor controls solution. We will also be discussing best practices for developing HMIs for OEMs, which can be applied across many machines with a variety of system requirements and configurations.
Tony O’Dowd presented at the Cloud On-Boarding Clinic in the Business School, Dublin City University, Ireland. The clinic, which was hosted by the Irish Centre for Cloud Computing and Commerce (IC4) aims to help companies leverage the benefits of using cloud computing in their businesses.
Tony's presentation, ‘Cloud Computing It’s a world of complexity!’ draws upon Tony’s experience successfully launching a cloud based company, and addresses four of the greatest challenges facing companies wishing to implement a cloud infrastructure across their businesses.
For more information about KantanMT contact; info@kantanmt.com.
Presentation from .NETConf 2017 and DDC 2017
- .NET Core Intro
-.NET Standard
-Creating .NET Core Framework Dependent Applications
-Creating .NET Core Self Contained Applications
-.NET Core and Docker
-Creating UI with .NET Core
-Machine Learning with .NET Core
HoloLens, Unity3D, and .NET – a Mixed Reality with sprinkles of .NET Core
DI
Logging
Lean Engineering. Applying Lean Principles to Building ExperiencesBill Scott
Highlights a couple of principles that we have been applying to our UI engineering teams to move us to applying Lean UX to our products.
This was a 25 minute talk from Lean Day UX in NYC on March 1, 2013.
Faster deep learning solutions from training to inference - Michele Tameni - ...Codemotion
Intel Deep Learning SDK enables using of optimized open source deep-learning frameworks, including Caffe and TensorFlow through a step-by-step wizard or iPython interactive notebooks. It includes easy and fast installation of all depended libraries and advanced tools for easy data pre-processing and model training, optimization and deployment, providing an end-to-end solution to the problem. In addition, it supports scale-out on multiple computers for training, as well as using compression methods for deployment of the models on various platforms, addressing memory and speed constraints.
An introduction to the Moby Project and LinuxKit. The demo essentially walked through the LinuxKit examples available on Github at https://github.com/linuxkit/linuxkit paying specific attention to the linuxkit.yml nginx example in the home directory, and the redis-os example in the examples directory.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
10 Reasons Your Software Sucks 2014 - Tax Day Edition!Caleb Jenkins
Based on years of consulting, and working with some of the largest (and smallest) software companies in the world.. these are the 10 practices that if you started doing today, would drastically improve the quality and delivery of your software! Also, be sure to hang around afterwards in the Open Spaces area.. Caleb will be around to discuss any of the areas from his talk in more detail. It’s going to be great time!
Topics hit on: Object Oriented Principals, SOLID Coding, Security Concerns, Software Patterns, Automated Testing, Source Control - Branching and Merging Strategies, Continuous Integration, Agile | Scrum | XP | Lean, Team Dynamics, Continually Learning
Eclipse Che - A Revolutionary IDE for Distributed & Mainframe DevelopmentDevOps.com
Eclipse Che introduces a new kind of developer tool that runs directly on Kubernetes and is accessible through a web-based IDE. The container architecture enables easy and rapid onboarding of new team members while eliminating workstation maintenance costs and limitations, all while leveraging a VS Code-like experience. The release of Che 7.0 by the open source community goes further by making the developer environment consistent, repeatable and reproducible. Now available for mainframe-based code with the Che4z subproject, teams can collaborate on cross-platform applications and bridge the distributed/mainframe divide.
The panel with discuss how the Eclipse Che IDE and workspace server drive developer productivity and improve overall software delivery.
InduSoft Web Studio and Developing Applications for OEMs - InduSoft PresentationAVEVA
For this webinar, InduSoft teams up with Guardian, from Schneider-Electric, to discuss compressor controls, and how to build software solutions for OEMs using InduSoft web Studio. During this webinar, we will see a live demonstration of an InduSoft Web Studio application that acts as the HMI for Guardian’s compressor controls solution. We will also be discussing best practices for developing HMIs for OEMs, which can be applied across many machines with a variety of system requirements and configurations.
Tony O’Dowd presented at the Cloud On-Boarding Clinic in the Business School, Dublin City University, Ireland. The clinic, which was hosted by the Irish Centre for Cloud Computing and Commerce (IC4) aims to help companies leverage the benefits of using cloud computing in their businesses.
Tony's presentation, ‘Cloud Computing It’s a world of complexity!’ draws upon Tony’s experience successfully launching a cloud based company, and addresses four of the greatest challenges facing companies wishing to implement a cloud infrastructure across their businesses.
For more information about KantanMT contact; info@kantanmt.com.
Presentation from .NETConf 2017 and DDC 2017
- .NET Core Intro
-.NET Standard
-Creating .NET Core Framework Dependent Applications
-Creating .NET Core Self Contained Applications
-.NET Core and Docker
-Creating UI with .NET Core
-Machine Learning with .NET Core
HoloLens, Unity3D, and .NET – a Mixed Reality with sprinkles of .NET Core
DI
Logging
Lean Engineering. Applying Lean Principles to Building ExperiencesBill Scott
Highlights a couple of principles that we have been applying to our UI engineering teams to move us to applying Lean UX to our products.
This was a 25 minute talk from Lean Day UX in NYC on March 1, 2013.
Faster deep learning solutions from training to inference - Michele Tameni - ...Codemotion
Intel Deep Learning SDK enables using of optimized open source deep-learning frameworks, including Caffe and TensorFlow through a step-by-step wizard or iPython interactive notebooks. It includes easy and fast installation of all depended libraries and advanced tools for easy data pre-processing and model training, optimization and deployment, providing an end-to-end solution to the problem. In addition, it supports scale-out on multiple computers for training, as well as using compression methods for deployment of the models on various platforms, addressing memory and speed constraints.
An introduction to the Moby Project and LinuxKit. The demo essentially walked through the LinuxKit examples available on Github at https://github.com/linuxkit/linuxkit paying specific attention to the linuxkit.yml nginx example in the home directory, and the redis-os example in the examples directory.
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
In today's fast-changing business world, Companies that adapt and embrace new ideas often need help to keep up with the competition. However, fostering a culture of innovation takes much work. It takes vision, leadership and willingness to take risks in the right proportion. Sachin Dev Duggal, co-founder of Builder.ai, has perfected the art of this balance, creating a company culture where creativity and growth are nurtured at each stage.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
Here is something new! In our next Connector Corner webinar, we will demonstrate how you can use a single workflow to:
Create a campaign using Mailchimp with merge tags/fields
Send an interactive Slack channel message (using buttons)
Have the message received by managers and peers along with a test email for review
But there’s more:
In a second workflow supporting the same use case, you’ll see:
Your campaign sent to target colleagues for approval
If the “Approve” button is clicked, a Jira/Zendesk ticket is created for the marketing design team
But—if the “Reject” button is pushed, colleagues will be alerted via Slack message
Join us to learn more about this new, human-in-the-loop capability, brought to you by Integration Service connectors.
And...
Speakers:
Akshay Agnihotri, Product Manager
Charlie Greenberg, Host
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Key Trends Shaping the Future of Infrastructure.pdfCheryl Hung
Keynote at DIGIT West Expo, Glasgow on 29 May 2024.
Cheryl Hung, ochery.com
Sr Director, Infrastructure Ecosystem, Arm.
The key trends across hardware, cloud and open-source; exploring how these areas are likely to mature and develop over the short and long-term, and then considering how organisations can position themselves to adapt and thrive.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Generating a custom Ruby SDK for your web service or Rails API using Smithyg2nightmarescribd
Have you ever wanted a Ruby client API to communicate with your web service? Smithy is a protocol-agnostic language for defining services and SDKs. Smithy Ruby is an implementation of Smithy that generates a Ruby SDK using a Smithy model. In this talk, we will explore Smithy and Smithy Ruby to learn how to generate custom feature-rich SDKs that can communicate with any web service, such as a Rails JSON API.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Industrializing eZ publish project development
1. + +
Industrializing eZ Publish
Project development
+
2010-06-25, by Jérôme Vieilledent
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
2. + +
Summary
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
3. + +
Summary
Development environment
OS
Coding environment
Synchronicity
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
4. + +
Summary
Development environment
OS
Coding environment
Synchronicity
Industrializing Tests and Delivery
Automating delivery
Unit tests in eZ Publish
Continuous integration platform
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
6. + +
Development environment
Several issues to solve when working on a project as a team
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
7. + +
Development environment
Several issues to solve when working on a project as a team
Developers’ OS
Can be VERY heterogene
IT Departments may impose an OS (Windows in most cases)
BUT you need to work in an environment as close as possible from the target
environment
VMs are a suitable solution (Virtual Box, VMWare...)
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
8. + +
Development environment
Several issues to solve when working on a project as a team
Developers’ OS
Can be VERY heterogene
IT Departments may impose an OS (Windows in most cases)
BUT you need to work in an environment as close as possible from the target
environment
VMs are a suitable solution (Virtual Box, VMWare...)
Developers’ coding environment
Each developer has its preferred IDE
Unicity rimes with productivity => Choose only one IDE (I chose Eclipse)
Easier for developer support or when welcoming a new developer in the team
A good IDE provides all needed tools all-in-one
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
9. + +
Development environment
Several issues to solve when working on a project as a team
Developers’ OS
Can be VERY heterogene
IT Departments may impose an OS (Windows in most cases)
BUT you need to work in an environment as close as possible from the target
environment
VMs are a suitable solution (Virtual Box, VMWare...)
Developers’ coding environment
Each developer has its preferred IDE
Unicity rimes with productivity => Choose only one IDE (I chose Eclipse)
Easier for developer support or when welcoming a new developer in the team
A good IDE provides all needed tools all-in-one
Developers’ synchronicity
Sharing the same sources (SCM like Subversion or Git)
Sharing the same database
Sharing the same media files
Even when working with developers who are far from each other
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
10. + +
Development environment : a solution
Eclipse PDT with useful plugins
Smile eZ Publish plugin (TPL syntax highlight, code completion & content class view)
eZClipse (TPL & INI syntax highlight)
Subversive
Mylyn (Bug tracker integration : Mantis, Trac, Bugzilla, Jira...)
FileSync (see below)
Virtual Box
With an image close to target environment (let’s say Ubuntu Server)
Can be run from a dedicated headless server with VBoxHeadless
FileSync Eclipse plugin
Sync your workspace with a remote server
Your remote server has to be accessible from your local/host computer
Samba or SSHFS are good solutions
Common dedicated MySQL server
eZ Publish (Database cluster mode enabled) + useful extensions
Subversion
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
11. + +
Development environment : a solution
«Foreign» developers case
Different geographical centers working together on the same project
Freelances
Everyone needs to share the same database (Data & Cluster files)
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
12. + +
Development environment : a solution
«Foreign» developers case
Different geographical centers working together on the same project
Freelances
Everyone needs to share the same database (Data & Cluster files)
Issues
Too much potential traffic with the database over the internet
Slow
Insecure
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
13. + +
Development environment : a solution
«Foreign» developers case
Different geographical centers working together on the same project
Freelances
Everyone needs to share the same database (Data & Cluster files)
Issues
Too much potential traffic with the database over the internet
Slow
Insecure
Solution
Dedicated Virtual Box Headless server, located in the Project Headquarter
Each foreign developer has its dedicated remote VBox
Sources are sent through SSHFS or Samba (with VPN) via FileSync automatically
Each VBox is local to the database server
Developer accesses to its own development server through HTTP and/or SSH
Fast and secure :-)
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
14. Developer sandbox
Developer computer
virtual server
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
16. Main
Database
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
17. Main
Database
Cluster
Database
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
18. Industrializing tests and
delivery
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
19. + +
Automating delivery
Use scripts to deploy your developments & project configuration
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
20. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
21. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
22. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
23. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
Create your own handler
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
24. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
Create your own handler
http://projects.ez.no/ezxmlinstaller
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
25. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
Create your own handler
http://projects.ez.no/ezxmlinstaller
Noven INI Update
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
26. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
Create your own handler
http://projects.ez.no/ezxmlinstaller
Noven INI Update
Switch from one environment to another regarding configuration
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
27. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
Create your own handler
http://projects.ez.no/ezxmlinstaller
Noven INI Update
Switch from one environment to another regarding configuration
Safely handles your INI files, config.php and cluster mode
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
28. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
Create your own handler
http://projects.ez.no/ezxmlinstaller
Noven INI Update
Switch from one environment to another regarding configuration
Safely handles your INI files, config.php and cluster mode
All settings centralized in a XML file
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
29. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
Create your own handler
http://projects.ez.no/ezxmlinstaller
Noven INI Update
Switch from one environment to another regarding configuration
Safely handles your INI files, config.php and cluster mode
All settings centralized in a XML file
http://projects.ez.no/noveniniupdate
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
30. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
Create your own handler
http://projects.ez.no/ezxmlinstaller
Noven INI Update
Switch from one environment to another regarding configuration
Safely handles your INI files, config.php and cluster mode
All settings centralized in a XML file
http://projects.ez.no/noveniniupdate
Apache ANT or similar tool...
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
31. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
Create your own handler
http://projects.ez.no/ezxmlinstaller
Noven INI Update
Switch from one environment to another regarding configuration
Safely handles your INI files, config.php and cluster mode
All settings centralized in a XML file
http://projects.ez.no/noveniniupdate
Apache ANT or similar tool...
... to push your sources/config files into staging/production platform
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
32. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
Create your own handler
http://projects.ez.no/ezxmlinstaller
Noven INI Update
Switch from one environment to another regarding configuration
Safely handles your INI files, config.php and cluster mode
All settings centralized in a XML file
http://projects.ez.no/noveniniupdate
Apache ANT or similar tool...
... to push your sources/config files into staging/production platform
Connected to your SCM
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
33. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
Create your own handler
http://projects.ez.no/ezxmlinstaller
Noven INI Update
Switch from one environment to another regarding configuration
Safely handles your INI files, config.php and cluster mode
All settings centralized in a XML file
http://projects.ez.no/noveniniupdate
Apache ANT or similar tool...
... to push your sources/config files into staging/production platform
Connected to your SCM
Make an differential export between tags
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
34. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
Create your own handler
http://projects.ez.no/ezxmlinstaller
Noven INI Update
Switch from one environment to another regarding configuration
Safely handles your INI files, config.php and cluster mode
All settings centralized in a XML file
http://projects.ez.no/noveniniupdate
Apache ANT or similar tool...
... to push your sources/config files into staging/production platform
Connected to your SCM
Make an differential export between tags
Think about Rollbacks
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
35. + +
Automating delivery
Use scripts to deploy your developments & project configuration
eZ XML Installer
Create / Update content classes, objects and roles
Trigger your modifications from CLI (no more timeouts)
Create your own handler
http://projects.ez.no/ezxmlinstaller
Noven INI Update
Switch from one environment to another regarding configuration
Safely handles your INI files, config.php and cluster mode
All settings centralized in a XML file
http://projects.ez.no/noveniniupdate
Apache ANT or similar tool...
... to push your sources/config files into staging/production platform
Connected to your SCM
Make an differential export between tags
Think about Rollbacks
Soon on projects.ez.no ;-)
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
36. + +
Unit tests in eZ Publish
Unit tests development are NEVER a waste of time
You spend 15-25% more time developing tests
You spend 10-20% less time debugging in the client’s test phase
Unit tests then become non-regression tests
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
37. + +
Unit tests in eZ Publish
Unit tests development are NEVER a waste of time
You spend 15-25% more time developing tests
You spend 10-20% less time debugging in the client’s test phase
Unit tests then become non-regression tests
eZ Publish has a test framework
Based on PHPUnit
Only available from SVN (http://pubsvn.ez.no/nextgen)
... And GitHub (http://github.com/ezsystems/ezpublish)
Handy kernel wrapper to easily manipulate content classes/objects/nodes
Run your tests with a temporary and droppable database
More info on eZPedia
http://ezpedia.org/en/ez/testing_ez_publish_test_system
PHPUnit is compatible with Selenium (automated functional tests)
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
38. + +
Continuous Integration Platform
Automatically builds your application
Updates from your SCM
Runs your unit and functional tests
Tests your code against your coding standards (PHPCodeSniffer)
Detects messy code (PHPMessDetector)
Makes reports and graphs about these builds
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
39. + +
Continuous Integration Platform
Automatically builds your application
Updates from your SCM
Runs your unit and functional tests
Tests your code against your coding standards (PHPCodeSniffer)
Detects messy code (PHPMessDetector)
Makes reports and graphs about these builds
Very useful on big projects, with extensible team of developers
=> Control
=> Stability
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
40. + +
Continuous Integration Platform
Automatically builds your application
Updates from your SCM
Runs your unit and functional tests
Tests your code against your coding standards (PHPCodeSniffer)
Detects messy code (PHPMessDetector)
Makes reports and graphs about these builds
Very useful on big projects, with extensible team of developers
=> Control
=> Stability
2 main platforms to remember
=> PHPUnderControl (http://www.phpundercontrol.org)
=> Hudson (http://hudson-ci.org/)
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
41. + +
Continuous Integration Platform
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
42. Questions ?
My Blog : http://www.lolart.net (french, soon in english)
My Company : http://www.sqli.com
Industry Finance
Telecom Real Public sector
Estate
Services 21%
SQLI, fournisseur d'innovation - Industrializing eZ Publish project development
#
Editor's Notes
SQLI : 17 agencies including offshore
SQLI : 17 agencies including offshore
1. Developers' OSes
=> Can be VERY heterogene (one is working on Ubuntu Linux, another on Fedora, another on Windows or on Mac OSX)
=> IT departments may impose an OS (Windows in most cases) for several reasons
=> But you need to work in an environment as close as possible from the target environment (Linux in most cases, but can be Solaris), to avoid potential issues when going live in production
=> VMs are a suitable solution. Virtual Box may be the way to go as you can find lots of VBox images of almost every open OS (including Open Solaris) on the internet
2. Developers' coding environment
=> Each developer has its preferred IDE (Eclipse, Netbeans, Vim, TextMate, PHPEdit...)
3. Developers' synchronicity
=> Sharing the same sources
=> Sharing the same database
=> Sharing the same media files
=> Even when working with developers who are far from each other (Cartier : Paris, Nantes, Lyon, Morocco)
1. Developers' OSes
=> Can be VERY heterogene (one is working on Ubuntu Linux, another on Fedora, another on Windows or on Mac OSX)
=> IT departments may impose an OS (Windows in most cases) for several reasons
=> But you need to work in an environment as close as possible from the target environment (Linux in most cases, but can be Solaris), to avoid potential issues when going live in production
=> VMs are a suitable solution. Virtual Box may be the way to go as you can find lots of VBox images of almost every open OS (including Open Solaris) on the internet
2. Developers' coding environment
=> Each developer has its preferred IDE (Eclipse, Netbeans, Vim, TextMate, PHPEdit...)
3. Developers' synchronicity
=> Sharing the same sources
=> Sharing the same database
=> Sharing the same media files
=> Even when working with developers who are far from each other (Cartier : Paris, Nantes, Lyon, Morocco)
1. Developers' OSes
=> Can be VERY heterogene (one is working on Ubuntu Linux, another on Fedora, another on Windows or on Mac OSX)
=> IT departments may impose an OS (Windows in most cases) for several reasons
=> But you need to work in an environment as close as possible from the target environment (Linux in most cases, but can be Solaris), to avoid potential issues when going live in production
=> VMs are a suitable solution. Virtual Box may be the way to go as you can find lots of VBox images of almost every open OS (including Open Solaris) on the internet
2. Developers' coding environment
=> Each developer has its preferred IDE (Eclipse, Netbeans, Vim, TextMate, PHPEdit...)
3. Developers' synchronicity
=> Sharing the same sources
=> Sharing the same database
=> Sharing the same media files
=> Even when working with developers who are far from each other (Cartier : Paris, Nantes, Lyon, Morocco)
Virtual Box : Can be replaced by VMWare. VBoxHeadless => VMWare ESX
Subversion : can be your preferred SCM (Git)
Foreign developers : SQLI : 17 agencies including offshore
Connection to DB : About security, MySQL data exchange is not secured by default, but one can connect to remote DB with SSH tunneling
Remote VBox solution : VBox is in the same LAN than MySQL server => reasonably fast
Foreign developers : SQLI : 17 agencies including offshore
Connection to DB : About security, MySQL data exchange is not secured by default, but one can connect to remote DB with SSH tunneling
Remote VBox solution : VBox is in the same LAN than MySQL server => reasonably fast
Foreign developers : SQLI : 17 agencies including offshore
Connection to DB : About security, MySQL data exchange is not secured by default, but one can connect to remote DB with SSH tunneling
Remote VBox solution : VBox is in the same LAN than MySQL server => reasonably fast