+ All Categories
Home > Technology > Nuxeo World 2010 — Contributing to Nuxeo

Nuxeo World 2010 — Contributing to Nuxeo

Date post: 13-Jan-2015
Category:
Upload: julien-carsique
View: 44 times
Download: 2 times
Share this document with a friend
Description:
Rules and advices for contributors to Nuxeo EP
Popular Tags:
29
1 Contributing to Nuxeo EP Rules and advices for contributors Julien Carsique / Thierry Delprat
Transcript
Page 1: Nuxeo World 2010 — Contributing to Nuxeo

1

Contributing to Nuxeo EPRules and advices for contributors

Julien Carsique / Thierry Delprat

Page 2: Nuxeo World 2010 — Contributing to Nuxeo

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

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

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

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

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

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

8

Contributing to Nuxeo EPWhy contributing now ?

Page 9: Nuxeo World 2010 — Contributing to Nuxeo

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

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

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

12

Contributing to Nuxeo EPUser contributions

Page 13: Nuxeo World 2010 — Contributing to Nuxeo

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

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

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

16

Contributing to Nuxeo EPStudio and NXThemes user contributions

Page 17: Nuxeo World 2010 — Contributing to Nuxeo

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

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

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

20

Contributing to Nuxeo EPDeveloper contributions

Page 21: Nuxeo World 2010 — Contributing to Nuxeo

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

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

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

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

25

Contributing to Nuxeo EPKeeping in touch with the community

Page 26: Nuxeo World 2010 — Contributing to Nuxeo

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

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

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

29

Thank you!


Recommended