+ All Categories
Home > Software > 2015-07-11 Apache Taverna - BOSC 2015

2015-07-11 Apache Taverna - BOSC 2015

Date post: 14-Aug-2015
Category:
Upload: stian-soiland-reyes
View: 360 times
Download: 3 times
Share this document with a friend
Popular Tags:
37
Sustaining research software at Sustaining research software at the Apache Software Foundation the Apache Software Foundation Apache Taverna Apache Taverna (incubating) (incubating) BOSC, Dublin 2015-07-11 Stian Soiland-Reyes Univ of Manchester [email protected] @soilandreyes http://orcid.org/0000-0001-9842-9718 is licensed under a . This work Creative Commons Attribution 4.0 International License
Transcript

Sustaining research software atSustaining research software atthe Apache Software Foundationthe Apache Software Foundation

Apache Taverna Apache Taverna (incubating)(incubating)

BOSC, Dublin 2015-07-11

Stian Soiland-ReyesUniv of [email protected]

@soilandreyeshttp://orcid.org/0000-0001-9842-9718

is licensed under a

.

This work

Creative Commons Attribution 4.0 International License

What is Apache Taverna?What is Apache Taverna?

Scientific Workflow system

Taverna Workbench (design/run on Desktop)Taverna Command Line (run/inspect wf)Taverna Server (REST/WSDL for running)

Taverna Player (web UI for running)... and more!

http://taverna.incubator.apache.org/

History of TavernaHistory of Taverna2001-2006: Prototyping (0.1 ➔ 1.3)2006-2009: Productizing Taverna 1.x (1.4 ➔1.6)2007-2014: Taverna 2.x (2.0 ➔ 2.5)2012-: Taverna 3.x2014-: Apache Taverna (incubating)

Evolution ofEvolution ofResearch Software (1)Research Software (1)

Ideas, discussions, current research➔ prototypes, proof of conceptCollaborations, Funding calls➔ proposal for $proj1

Evolution ofEvolution ofResearch Software (2)Research Software (2)

Funded for $proj1Develop v1.xReleasing as open sourceSlowly building user-base

Project-specific requirements➔ custom codeDanger: Code for Review symptom

Evolution ofEvolution ofResearch Software (3)Research Software (3)

Funded for $proj2Slightly different direction➔ generalize code-baseDevelop v2.x - open source

User-base from $proj1 now growing..but want v1.x supporthampered by earlier customizations

Evolution ofEvolution ofResearch Software (4)Research Software (4)

Third-party developers showing upCode documentationPlugin and integration supportWhen to release?

Different ambitions for the softwareConflicting directions

Evolution ofEvolution ofResearch Software (5)Research Software (5)

Further funding - but kind of unrelated.. $proj1 and $proj2 users still need supportlimited time available from original devs

Third-party developers increased activity- but do they have any control of core code?Where are decisions made? Who?

Is the process open?How can you tell it is open?

Need for OpenNeed for OpenDevelopmentDevelopment

Open Source since 2001but anything "core" still done by Manchester

Manchester effectively leader.. major developments happening elsewhere

Questions about sustainabilitySingle institution is more vulnerable"Have to" add Manchester to grant proposals?

Moving towardsMoving towardsOpen DevelopmentOpen Development

Office discussions, meetings➔ issue tracker, mailing lists, wiki

Projects ➔ People

Building collective ownership

Getting the community more involved

Political challengesPolitical challenges

Admitting that software has bugs

Admitting that we can't do everything

Important People™

Who decides?... but it's My Baby!

Who could "own" Taverna?Who could "own" Taverna?Considered:

Taverna Foundation

/

(now gone silent)

.. just leave it at ?

Software Freedom ConservancyGNU Project Free Software FoundationEclipse FoundationOutercurve FoundationApache Software Foundation

GitHub

Apache SoftwareApache SoftwareFoundationFoundation

Non-profit organization, forming a community of open-source software projects.

Strong emphasis on openness, collaboration and a

consensus-based development process.

Examples: Apache HTTP server, Tomcat, Maven, Jena, CXF and OpenOffice.

Why Apache?Why Apache?

Fully open development

Encourage further developer involvement

Remove impression of Univ of Manchester as leader..reducing us vs them conversations

Independent and neutral

OrganizationalOrganizationalindependenceindependenceOpen and strong governance

Centrally managed infrastructure

Less political

easier to say "We'll use and contribute to ApacheTaverna" in a grant proposal

Longer term sustainability - self-managed community

http://incubator.apache.org/

1. Find a champion within Apache2. Create and discuss proposal3. Find mentors4. Voted over by Apache Incubator5. Invited as a podling6. Transition infrastructure7. Develop and grow community8. Release under Apache9. Graduate to Top Level Project

Becoming part of ApacheBecoming part of ApacheSoftware FoundationSoftware Foundation

Apache lingoApache lingoTLP: Top-Level Project, self-managed Apache project

Incubator: A special TLP for new projectsPodling (incubating): New project within the Incubator

PMC: Project Management CommitteeIPMC / PPMC: Incubator/Podling PMC

Apache rolesApache rolesChampion: Helps at proposal stageMentor: Guides towards graduation

Committer: Granted write-access to a projectPMC member: Votes on releases and committership

Apache Member: Decides on Apache-wide rulesPMC Chair: Vice President, reports to the Board

Mentors of Apache TavernaMentors of Apache Taverna

Andy SeaborneChris Mattmann

Suresh MarruMarlon Pierce

Suresh Srinivas

Thank you!

Apache LicenseApache LicenseOpen Source license

Attributions required

Commercially friendly:

Binaries allowedProprietary additions allowed

Contributions automatically covered

http://www.apache.org/licenses/LICENSE-2.0

Changing the licenseChanging the licenseTaverna was licensed as LGPL 2.1

Needed to change to Apache License

Univ of Manchester main copyright holder

Contributor License Agreements

The boring bitThe boring bitpackage org.apache.taverna.scufl2.api.core;

/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */

import java.net.URI;import java.util.ArrayList;import java.util.Collection;

NOTICENOTICEApache Taverna LanguageCopyright 2010-2014 University of Manchester, UKCopyright 2015 The Apache Software Foundation

This product includes software developed atThe Apache Software Foundation (http://www.apache.org/).

---------------------------------------------------------

ODFDOMCopyright 2008, 2010 Oracle and/or its affiliates. All rights reserved.

---------------------------------------------------------

PAV ontology http://purl.org/pav/(c) Copyright 2008-2014 Massachusetts General Hospital; Harvard Medical School;Balboa Systems; University of Manchester

---------------------------------------------------------

W3C PROVenance Interchange Ontology (PROV-O)http://www.w3.org/ns/prov-o.rdfhttp://www.w3.org/TR/2013/REC-prov-o-20130430/

W3C PROV Access and Query Ontology (PROV-AQ)http://www.w3.org/ns/prov-aq.owlhttp://www.w3.org/TR/2013/NOTE-prov-aq-20130430/

Copyright (c) 2011-2013 W3C(R) (MIT, ERCIM, Keio, Beihang), All Rights Reserved.W3C liability, trademark and document use rules apply.http://www.w3.org/Consortium/Legal/2015/doc-license

Legal protectionLegal protection

Software must have clean Intellectual Property➔ Software Grants, CLAs, NOTICE.txt

Commercial users can use your software

without fearing a law suit

Voting on releasesVoting on releasesFrom: Stian Soiland-Reyes <[email protected]>Date: 11 June 2015 at 15:48Subject: [VOTE] Release Apache Taverna Language 0.15.0-incubating RC2 (shortened)To: [email protected]

I am pleased to be calling this vote for the source release of

Apache Taverna Language 0.15.0-incubating

The release candidates to be voted over are available at:

https://dist.apache.org/repos/dist/dev/incubator/taverna/source/taverna-language-0.15.0-incubating-RC2/

SHA-1 checksum: 7032e9d2be834f7c029aae562b62613481bf6939

Build the release candidate in the above order, using: mvn clean install

The release candidates correspond to the following git commits:

https://git-wip-us.apache.org/repos/asf?p=incubator-taverna-language.git;a=commit;h=3340e2090e604b40ac0b88675f57c1d12032d060

Release candidates are signed with a GPG key available at:

https://dist.apache.org/repos/dist/release/incubator/taverna/KEYS

The vote is open for at least 72 hours and passes if amajority of at least three +1 Apache Taverna PPMC votes are cast.

[ ] +1 Release this package[ ] 0 I don't feel strongly about it, but don't object[ ] -1 Do not release this package because...

The Apache WayThe Apache WayCommunity over Code

Open:

If it didn't happen on the mailing list, it didn't happenEverybody has a say

Merit - win by doing it

Personal merit - not organizational

Community developmentCommunity developmentUsers and Developers

..are they really separate?

Ask not what can I do for the user,but what can the user do for me

Give teasers to potential committers

"I think the problem is somewhere in this file"... without saying "You're on your own, mate"!

Recognize any contributions, not just code

Docs, training, examples, help, discussions, ...

How to become anHow to become an

open source committer?open source committer? Submitting patches/pull requests

Contributing to mailing listsContributing to testing, documentation, website

Contributing a plugin or new featureParticipate in votes and discussionsAct as if you are already a committer

PMC vote (in private) on a proposed new committer

Google Summer of CodeGoogle Summer of CodeStudents paid to work on open source projects

Google sponsored

2015: 137 organizations, 988 students

ASF: 49 students

Apache Taverna: 3 students

Where do research softwareWhere do research softwarecommunities form?communities form?

Project mailing lists/forumIssue trackersSupport mail

Private communicationsChat channels

Domain-specific forums and

Domain-specific conferences and workshopsStackOverflow Biostars.org

Transitioning to ApacheTransitioning to ApacheMoving all infrastructure:

Mailing lists, Source code repositories, wiki,issue tracker, web pages

GitHub pull request workflow

integrated with mailing list

All transitioning discussed in public..might scare people :-(

Github pull requestsGithub pull requests

Is moving easy?Is moving easy?Depends..

Taverna - lots of infrastructure

Jira w/1000s of old and new issues,Wordpress,

30 GitHub repositoriesmonths

Commons RDF: Single GitHub repository, GitHub pages.

1 week

ConclusionsConclusionsASF gives strong template for community building

.. and initial bureaucracy :-(Worth it in the long run!

Licensing is boring, but necessary

Mentors are kind and helpfulCommunity building takes effort

Community growth is funGiving up "control" gives peace and openness

Is Apache fit for my project?Is Apache fit for my project?It's not your project, but your community's project!

So your existing community should decide

Find a champion from an existing Apache project

Are you ready for Open Development?Are you already there?

Do you have time to guide the community

towards "the Apache Way"?

Apache not a magic bulletYou still need to do the work!

Team Taverna (PPMC)Team Taverna (PPMC)Andy Seaborne, Chris Mattmann, Suresh Srinivas,

Suresh Marru, Marlon Pierce, Alan R Williams,Aleksandra Nenadic, Christian Y. Brenninkmeijer,Dmitriy Repchevsky, Donal K. Fellows, Ian Dunlop,

Julián Garrido, Robert Haines, Shoaib Sufi,Stian Soiland-Reyes, Stuart Owen


Recommended