| Taskflow: A General-purpose Task-parallel Programming System

Loading...
Searching...
No Matches
Rules

This page summarizes coordination rules fulfilled by the Taskflow Core Members. We impose these rules to ensure scientific excellence, continuity, and transparency. Since the Taskflow community has matured substantially in recent months, we will revisit these rules as the community needs.

We accomplish these rules with reference to the governance document of Dask and TARDIS.

# The Project Overview

Taskflow (The Project) is an open-source software project that aims to simplify parallel and heterogeneous computing in C++ software ecosystem. We release Taskflow under the non-viral MIT license, developed openly and hosted in public GitHub repositories under the Project GitHub. Examples of project software include the Taskflow core library, Taskflow profiler (tfprof), and applications to other domains such as computer-aided design (CAD) and machine learning. We host a Project Website to highlight these components.

Taskflow is developed by a distributed team of developers, called Contributors. Contributors are individuals who have contributed code, documentation, designs, user support, or other work to one or more project repositories. Anyone can be a Contributor. Contributors can be affiliated with any legal entity or none. Contributors participate in the project by submitting, reviewing and discussing GitHub Pull Requests and Issues and participating in open and public project discussions on GitHub, Stack Overflow, Gitter chat rooms, and mailing lists. The foundation of project participation is openness and transparency.

Taskflow community consists of all contributors and users. Contributors work on behalf of and are responsible to the larger project community and we strive to keep the barrier between contributors and users as low as possible.

# Joining Core Members

Core Members are essential to the growth of Taskflow because they provide the core technical development, maintenance, and support for the community. New members of are nominated by current members or our sponsors. All core members can vote on nominated candidates, who require a 2/3 majority in their favor in order to be approved.

# Rules for Roles

Every core member of Taskflow can vote and the election will go through an anonymous rank voting system. If there is a tie, the principal investigator will facilitate a discussion to make a runoff decision.

Depending on the funding status, the principal investigator may change and be re-selected. Such a change will be broadcast to all core members and we will strike a balance between how each member is funded and how the funding may direct Taskflow. At this stage, Dr. Tsung-Wei Huang is the principal investigator and will remain the role for another 3-4 years.

# Software Decisions

Decisions about software architecture and design, and releases should take into account consistency over the Taskflow codebase and best practices. The final decision rests with the core members by a 2/3 majority.

# Financial Decisions

Financial decisions, such as research grants and company gifts, are made by the Principal Investigator, Dr. Tsung-Wei Huang. We will inform the core members with a reasonable time ahead to allow them to raise any objections, for example, biased features to an individual's interest. The core members can veto decisions with a 2/3 majority.

# Community Partners

We acknowledge the importance of Community Partners in disseminating Taskflow to external communities. A Community Partner is a set of individuals (does not need legal recognition) that effectively supports and communicates the needs of an external community in using the Project. External communities might be focused around a specific scientific or social discipline (like biology or education), a social grouping (like Chinese speakers), or another such group that benefits from a collective voice. Community Partners will have demonstrated technical expertise in using the Project, as well as social expertise in effectively filtering concerns, and questions from their community to keep our project thrive.

We acknowledge Community Partners in the following ways:

- Public acknowledgement of their community on Taskflow webpages and other promotional material if that community is organized enough to have a central brand.
- Inclusion of the Community Partner in Taskflow planning meetings and workshops

Please also visit How Can I Get Credit? to understand how we acknowledge contributors.

# Changing the Governance Rules

Changes to the governance rules are submitted via a pull request to edit this documentation. The pull request is then refined in response to public comment and review, with the goal being consensus in the community.