Slide 1

Slide 1 text

Apache Ant Community Learnings FOSS Backstage Micro-Summit, Berlin 2017-11-20 Stefan Bodewig [email protected]

Slide 2

Slide 2 text

About Me Open Source Developer since 1994 Ant Committer since June 2000 Release Manager of Ant 1.1 (July 2000) and 1.10.1 (Feb 2017) Apache Member since October 2000 Senior Consultant at innoQ 1

Slide 3

Slide 3 text

Apache Ant Apache Ant™, Ant, Apache, and the Apache Ant project logos are trademarks of The Apache Software Foundation. 2

Slide 4

Slide 4 text

Commits 2000 2002 2004 2006 2008 2010 2012 2014 2016 0 250 500 Chart by Black Duck Software, Inc / / CC-BY https://www.openhub.net/p/ant 3

Slide 5

Slide 5 text

Contributors 2000 2005 2010 2015 0 5 10 15 Original Chart by Black Duck Software, Inc / / CC-BY https://www.openhub.net/p/ant 4

Slide 6

Slide 6 text

Releases 2000 2002 2004 2006 2008 2010 2012 2014 2016 0 250 500 1.1 1.2 1.3 1.4 1.5.0 1.6.0 1.7.0 1.8.0 1.9.0 1.10.0 Original Chart by Black Duck Software, Inc / / CC-BY https://www.openhub.net/p/ant 5

Slide 7

Slide 7 text

In the Beginning 2000 2002 2004 2006 2008 2010 2012 2014 2016 1.2 Original Chart by Black Duck Software, Inc / / CC-BY https://www.openhub.net/p/ant 6

Slide 8

Slide 8 text

How to build a community? no idea, honestly the right idea at the right time 7

Slide 9

Slide 9 text

Small Units of Autonomous Work 8

Slide 10

Slide 10 text

User Mailing Lists 0 500 1000 1500 2000 2500 3000 2000 2002 2004 2006 2008 2010 2012 2014 2016 user dev 9

Slide 11

Slide 11 text

Non-Coding Contributors 10

Slide 12

Slide 12 text

Advice a place for non-devs is essential you don't need to answer everything yourself but show presence 11

Slide 13

Slide 13 text

User Mailing Lists 0 500 1000 1500 2000 2500 3000 2000 2002 2004 2006 2008 2010 2012 2014 2016 user dev 12

Slide 14

Slide 14 text

But hard to replicate in today's Stack Overflow world I'd love to understand what can take it's place 13

Slide 15

Slide 15 text

Ant 2 2000 2002 2004 2006 2008 2010 2012 2014 2016 1.2 1.3 1.4 1.5.0 Original Chart by Black Duck Software, Inc / / CC-BY https://www.openhub.net/p/ant 14

Slide 16

Slide 16 text

Backwards Compatibility Every new release of Ant breaks my build — often stated around Ant 1.2 15

Slide 17

Slide 17 text

Discussion ... aim is that we are going to break them no more than once more. I.e. we should try to get a clear vision of what we want to achieve with Ant 2.0, document it and then stick to it, at least for the near future. — https://lists.apache.org/thread.html/678451aa08b8911fa5 16

Slide 18

Slide 18 text

Rules for Revolutionaries In short: 1. everybody can propose a "revolution" in a subdir 2. when ready propose merge 3. when accepted replace original https://marc.info/?l=jakarta- general&m=86951909307230&w=2 17

Slide 19

Slide 19 text

Problems Faced too many revolutionaries what if the revolution is not accepted? mere announcement of revolution stalls evolution 18

Slide 20

Slide 20 text

Design By Committee takes ages even more so when you strive for consensus still doesn't guarantee to make everybody happy 19

Slide 21

Slide 21 text

Result lot's of feelings hurt fork of the community - twice "Ant2" is burnt forever 20

Slide 22

Slide 22 text

Advice avoid multiple simultaneous revolutions be aware that proposed revolutions may fork the community don't try to force a revolution 21

Slide 23

Slide 23 text

Drive-by Contributions 2000 2002 2004 2006 2008 2010 2012 2014 2016 0 250 500 1.6.0 Original Chart by Black Duck Software, Inc / / CC-BY https://www.openhub.net/p/ant 22

Slide 24

Slide 24 text

Advice embrace Drive-by Contributions but you don't have to accept everything celebrate every contribution in public accept some contributors are only interested in small parts don't let code ownership get into the way 23

Slide 25

Slide 25 text

Integrating new Communities 24

Slide 26

Slide 26 text

Advice don't put a barrier between old and new community collective code ownership 25

Slide 27

Slide 27 text

Aging Project Original Charts by Black Duck Software, Inc / / CC-BY https://www.openhub.net/p/ant 26

Slide 28

Slide 28 text

Running Out Of Itches 27

Slide 29

Slide 29 text

Dangers no easy tasks left to do "we've already discussed that" "backwards incompatible" 28

Slide 30

Slide 30 text

Advice try to not fix easy bugs (immediately) set time aside for mentoring better start doing so before it's too late 29

Slide 31

Slide 31 text

Thank You 30

Slide 32

Slide 32 text

Contact Stefan Bodewig [email protected] Stefan Bodewig @ innoQ [email protected] 31