Nuxeo World 2010 — Contributing to Nuxeo
-
Upload
julien-carsique -
Category
Technology
-
view
45 -
download
2
description
Transcript of Nuxeo World 2010 — Contributing to Nuxeo
![Page 1: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/1.jpg)
1
Contributing to Nuxeo EPRules and advices for contributors
Julien Carsique / Thierry Delprat
![Page 2: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/2.jpg)
2
Agenda● Contributing to Nuxeo EP
● what it means ?● why should you do it ?
● Small contribution guide● for end users● for studio and NXThemes users● for developers
● Keeping in touch with the community
![Page 3: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/3.jpg)
3
What is contributing ?● Contributing to Nuxeo means
helping us making the Nuxeo platform● better for your use cases
but also
● better for everyone
➔ become an real Actor of ➔ the evolution of Nuxeo Platform➔ the users / developers community
![Page 4: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/4.jpg)
4
A win / win deal● The platform gets better● You get
● the improvements you need● your changes are integrated and supported by Nuxeo
(no maintenance issue because of patches)
● it makes your work easier(you get expertise and you build on vanilla code)
● We get● feedback and improvements on our work
➔ Everybody is happy !
![Page 5: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/5.jpg)
5
Contributing ?● Contributing can take several paths
● testing and reporting problems
● giving improvement ideas
● submitting translations
● helping us improving existing modules
● building new modules
● making Marketplace packages
![Page 6: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/6.jpg)
6
Some examples of contributions● Translations and Tests● Additional modules
● Theme Editor (Chalmers University)● OpenSocial integration (Leroy Merlin)● Scenari integration and SDS (Kelis)● User Settings (Vilogia)● Preview initial implementation (Yerbabuena)
...
● Patches and code improvements● Vilogia (notifications, NTLM ...)
● Gagnavarslan (WSS and hopefully more soon)
...
![Page 7: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/7.jpg)
7
Area where you can help● Translations
● we only speak English and French
● Desktop integration● very few MS Windows users in Nuxeo team
● OS specific packagings● very few MS Windows users in Nuxeo team
● Connectors to third party applications● Unexpected use cases !
![Page 8: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/8.jpg)
8
Contributing to Nuxeo EPWhy contributing now ?
![Page 9: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/9.jpg)
9
Contributing is easy● Nuxeo platform makes contribution easy
● Externalized translation files● Extension points and event bus systems
➔ can build clean extensions
● Modular platform assembly➔ can add features without modifying all Nuxeo
● Studio generated plug-ins➔ easy generation of business templates and addons
● Marketplace package distribution system➔ easy to package and distribute
➔ Contribution is easier than ever
![Page 10: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/10.jpg)
10
Time for contribution● the Nuxeo platform is ready
● it is tested in a lot of configurations and environments
● the Nuxeo team is ready to help● we will invest more time on this :)
● we know a lot of people have done small addons● MS Outlook plug-in, Auth plug-ins, Business App
connectors, Widgets ...
● we know some of you are doing amazing and unexpected stuffs with Nuxeo Platform● embedded Nuxeo Server, Django bridge,
portal integration …
➔ don't be shy, contribute your work !!!
![Page 11: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/11.jpg)
11
Don't wait● A lot of contributions come from projects
● don't wait for a fully featured plug in before contributing– chances are high that you may never have the time !
● Nuxeo Sandbox in available to host● prototype code● POC code● demo code➔ give a chance for someone to finish the work !
![Page 12: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/12.jpg)
12
Contributing to Nuxeo EPUser contributions
![Page 13: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/13.jpg)
13
Helping us with the translations● The current way
● Take one of the 14 existing translations ➔ spot errors, fix them, upload patch on Jira
● Or create new translation from messages_en.properties file and upload on Jira
● The new way (coming in December 2010)
● New translation portal will allow collaborative editing of translations, workflow, etc.
➔ easier for non-specialists➔ traceability of each message➔ more visibility on the process
![Page 14: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/14.jpg)
14
Report ideas or problems● You may
● find an issue when using your Nuxeo application– installation problem– functional limitation– bugs on some screens– ...
● have a super idea for a killer feature● need some improvements in the platform
(add an extension point, add an API …)
![Page 15: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/15.jpg)
15
Report ideas or problems● Support can help you● You can also
● file a Jira ticket (http://jira.nuxeo.org)
– in the right project (Nuxeo EP/NXP could be the default)
– with the correct level of information● give precise description and reproduction test case● choose a « reasonable » priority level● mark it for next release (we'll move it if needed)● provide logs or meaningful screenshots
● send a mail on the mailing list– to explain your super idea and requirements
![Page 16: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/16.jpg)
16
Contributing to Nuxeo EPStudio and NXThemes user contributions
![Page 17: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/17.jpg)
17
Using Studio to contribute● With Nuxeo Studio you can
● define custom types and forms● define custom actions● define custom operation chains● define custom looks● define new filing plans● …
● Nuxeo Studio is more and more used● by you● by us
![Page 18: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/18.jpg)
18
Using Studio to contribute● Nuxeo Studio can be used to provide
● Business templates● small additional actions● simple ECM oriented applications
● We will improve this way of contributing● more features in Nuxeo Studio● direct publishing from Studio to Marketplace
![Page 19: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/19.jpg)
19
Nuxeo Theme Editor● The new Theme editor ease contributing
● editor now provides several access levels– Presets– CSS– Complete layout and structure configuration
● theme engine now supports Theme Banks– library of presets and themes accessible via http
● We will leverage those new features● to provide more themes● to setup a public Theme Bank server
![Page 20: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/20.jpg)
20
Contributing to Nuxeo EPDeveloper contributions
![Page 21: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/21.jpg)
21
The right approach● Specific vs Generic
● carefully define what is generic and what is not– we can help via Support / Jira / Mailing list / Forum
➔ we can not integrate code that is too much specific
● Communicate on what you want to do● so that we know what you want to do● so that we can guide you
(existing addons, ongoing development, design, ...)
![Page 22: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/22.jpg)
22
Patches and small evolutions● Create a detailed JIRA ticket with attached diff
● explain what issue you want to resolve● provide test case and test data if applicable● check you don't break the tests !● provide additional unit tests if needed
● Nuxeo Support manages● bug fixes (of course)
● but also small convenient evolutions➔ adding an extension point➔ adding a system parameter➔ small refactoring to make override easier
![Page 23: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/23.jpg)
23
Building new modules● You should really talk about your module
● to the community and to Nuxeo● before you start having too much code
● We can provide● help and design guidance● tools and infrastructure
– issue tracking (Jira) / code repository (Mercurial)
– Quality Assurance & Continuous Integration (Hudson)
– deployment service (Nexus & Marketplace)
➔ future Nuxeo Forge waiting for volunteers !
![Page 24: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/24.jpg)
24
Coding rules● Why?
● we can only maintain maintenable code !● Nuxeo guide lines
● English only(Javadoc, comments, variable and method names, …)
● follow coding standards● pay attention to your dependencies● write unit tests (TDD) !!!● align on the last version or on Snapshot
● Constraints depends on the type of contribution● Sandbox (low) => Core (high)
![Page 25: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/25.jpg)
25
Contributing to Nuxeo EPKeeping in touch with the community
![Page 26: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/26.jpg)
26
Keeping in touch● Async communication
● Mailing Lists● Forums● Jira Tickets➔ Great places
– to explain requirements– to discuss design
● We can arrange direct communication● eMeeting to quickly solve design issues● Face to face when possible and needed
![Page 27: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/27.jpg)
27
Keeping in touch● Nuxeo Sprints
● next Sprints will be open to external developers
➔ come coding with us➔ come merge your code with us➔ come help us fixing issues
![Page 28: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/28.jpg)
28
Engage !● Useful links
● Contribution guide : http://doc.nuxeo.com/display/NXDOC/Nuxeo+contributors+welcome+page
● Forum : http://www.nuxeo.org/discussions
● Documentation home : http://doc.nuxeo.com/
● Source repository : http://hg.nuxeo.com/
● Useful addresses● Dev mailing list : [email protected]
(http://lists.nuxeo.com/mailman/listinfo/nuxeo-dev)
● User mailing list [email protected](http://lists.nuxeo.com/mailman/listinfo/ecm)
![Page 29: Nuxeo World 2010 — Contributing to Nuxeo](https://reader033.fdocuments.in/reader033/viewer/2022051611/54b539584a7959fa5d8b45c4/html5/thumbnails/29.jpg)
29
Thank you!