Technical staff course

Course #1

How to contribute? How to release a project under an open source license?

Allowing students to master transforming internal projects into open source projects, providing them with management, technical & legal best practices related to contributing to free and open source third-party projects, and guiding them for gaining optimum benefits from daily open source use.

Target group

Product owners, project managers, lead developers

Duration

2 days (14 hours)

Prerequisites

None

Course outline

Day 1: contribute to a third-party project, reuse third-party components

Legal framework of corporate contribution

Outbound contributions issues

Outbound contributions management

Best practices & open source release standards

Inbound contributions management

Day 2: Releasing a software program as open source

License & contribution licensing agreement impact on attractivity of the released work

Appraising the merits of releasing a project as open source

Cautionary precautions prior to an open source release

Choosing a license for the project release

Course #2

How to interact with communities?

Enabling technical profiles developing open source software to understand community operations, and providing them with best practices for fully benefitting from their relationships with the communities

Target group

Product owners, project managers, lead developers

Duration

1 day (7 hours)

Prerequisites

None

Course outline

How software communities work

Community actors

Community profiles

Contributors

Basics of community relationships

Open dev stack

Upstream interaction preparation

Project openness rate

Community communication

Tool types

Interaction style & substance

Event organization

Event experience feedback

Talks

Barcamps

Hackatons

Releasing a project on GitHub

Preparing .md files

Organization

Source of truth

Branches

Pull requests

Workflow

Best practices

Third-party tool integration

Community interactions

Message mood

Mediocre quality Pull Requests

Granting commit & merge rights