Developing the XWiki software

1,506 views

Published on

This presentation explains how the XWiki software is developed on all aspects: governance, build process, release process, communication tools, code quality, xwiki.org vs xwiki.com, etc.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,506
On SlideShare
0
From Embeds
0
Number of Embeds
796
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Developing the XWiki software

  1. 1. Developing the XWiki software presented at
  2. 2. Agenda ● Project Health ● Governance Practices ● Development Flow ● Code Quality ● Testing Practices ● Roadmap & Release Practices ● Next Steps
  3. 3. Project Health
  4. 4. JIRA Issues Reported: 100 reporters ● 3.8 issues/day ● 23% by non-commiters ● 56% bugs ● Closed: 23 assignees ● 4.25 issues/day ● 67% fixed ● Source: jira.xwiki.org
  5. 5. Commits 9.7 commits/day Source: www.ohloh.net/p/xwiki
  6. 6. Code Contributors (last 12 months) 8 (33%) outside XWiki SAS (doing 9% of the commits) 205 pull requests created in the last 12 months
  7. 7. Translations 120 contributors, 97896 translations Source: l10n.xwiki.org
  8. 8. Mails (last 12 months) 100+ senders, 5677 mails (users + devs), 15.5 mails/day Source: xwiki.markmail.org/search
  9. 9. Installations 1. ^ that have ever sent us a ping (XWiki 5.2M2+) 2. ^ that have sent us a ping in the past 2 days (XWiki 5.2M2+) Source: activeinstalls.xwiki.org
  10. 10. Practices
  11. 11. Meritocratic Governance ● ● ● Committership, voting, lazy consensus XWiki.org vs. XWiki SAS xwiki.org governance and advertising Source: dev.xwiki.org/xwiki/bin/view/Community/Governance
  12. 12. Development Flow
  13. 13. Code Quality ● Full wiki for shared practices on dev.xwiki.org ● Common code style (Checkstyle, Enforcer) ● Continuous code reviews ● Backward compatibility (CLIRR) and deprecation strategy ● XWiki special days ● sonar.xwiki.org
  14. 14. Testing Practices ● JUnit/Mockito ● Selenium 2 (WebDriver) for UI tests ● Quality build profile (JaCoCo) and job on CI
  15. 15. Roadmap & Release Practices ● Complete Roadmap Process ● Short releases (every 3-4 weeks) ● Release Manager + Roster ● Release application on xwiki.org ● Documentation fields in JIRA
  16. 16. How to Contribute ● JIRA/mailing list/Spread word/etc. ● Pull Requests on GitHub ● extensions.xwiki.org ● Create your project on github.com/xwiki-contrib ● And get a JIRA, wiki and Maven repo
  17. 17. Next Steps ● XWiki Foundation ● Bounties ● More tech marketing needed ● Book, articles, conferences ● Continue improving xwiki.org ● Find ways to get even more committers!
  18. 18. Questions?
  19. 19. About me Marius Dumitru Florea marius@xwiki.com github.com/mflorea

×