Get Involved in Pangeo: Entry Points for New Contributors

The success of Pangeo derives from the diversity of our contributors. We have successfully assembled a community that crosses traditional disciplinary boundaries, and this has enabled us to do some innovative stuff. However, as the project has grown, our activities have sprawled across dozens of GitHub repos, making it hard to identify what needs to be done and where new contributors can have an impact.

In addition to disciplinary diversity, we also must continue to tackle other dimensions of diversity, particularly gender and race. I’m proud of the steps our community has taken in this direction. The first paragraph of our code of conduct reads

We strive to be a community that welcomes and supports people of all backgrounds and identities. This includes, but is not limited to, members of any race, ethnicity, culture, national origin, color, immigration status, social and economic class, educational level, sex, sexual orientation, gender identity and expression, age, physical appearance, family status, technological or professional choices, academic discipline, religion, mental ability, and physical ability.

Being welcoming is a first step. But we must do more to actively recruit and support diverse contributors to Pangeo. This will benefit our project of course, but it is also a concrete action we can take to combat systematic racism. (See the ShutdownSTEM post for more context.) Let’s use Pangeo as a vehicle to help members of underrepresented groups build their skills and gain recognition in the field of geoscience / big data / software engineering.

Let’s use this thread as a place to collect potential projects for new contributors.
Let’s also collect information about internships, fellowships, etc. that can provide paid support to such contributors. While some people may be able to volunteer, we should not assume that everyone has this privilige.

Template

Please try to use this template for all posts.


# Project Title

link to GitHub issue (recommended)

## Description

One or two paragraph description of the project.

## Required Skills

What technical skills are needed in order to contribute? For example
- Basic python programming
- Some familiarity with kubernetes

## Mentors

(All projects need at least one mentor who is willing to help out the new contributors.)

- Name | Email Address

For Potential Contributors

Please email the mentor to express interest in a project and learn more about how to get started.

4 Likes

Matrix of Kubespawner profile_list Options

Description

Our cloud-based Jupyter hubs allow users to choose among different options for the environment in which the notebook server will run. For example, on ocean.pangeo.io, we see

These options, called profile_list are passed to kubespawner (see docs). They include both hardware (CPU, memory, etc.) and software (specifically the docker image to use). We would like to be able to separate the hardware part from the software part. This would require making some changes to the kubespawner package to enable more flexible configuration of profiles.

Required Skills

  • Intermediate python programming
  • Basic HTML

Mentors

  • Ryan Abernathey | rpa@ldeo.columbia.edu

Contribute Example Notebooks to Pangeo Gallery

http://gallery.pangeo.io/contributing.html

Pangeo gallery is our new approach to sharing reproducible scientific content in the cloud. We are always looking for more examples of how to apply Pangeo tools (e.g. Xarray, Dask, etc.) to real-world scientific problems. If you already use these tools, creating an example gallery is a great way to get started as a new contributor.

Required Skills

  • Some domain scientific knowledge (e.g. oceanography, atmospheric science)
  • Basic scientific programming
  • Familiarity with Jupyter notebooks
  • Comfortable working with git / github

Mentors

  • Ryan Abernathey | rpa@ldeo.columbia.edu

Create an app for viewing terrain data using Xarray-spatial

Xarray-spatial is a new high performance package for raster-based spatial analysis for Python. The USGS has a large collection of terrain data in raster format, and is pushing this data to AWS in COG format (example here). This project would build a dashboard for exploring terrain data in Python using xarray-spatial and Panel, a high-level app and dashboarding solution for Python.

composite_map

Required Skills

  • Basic knowledge of Python
  • Willingness to work on a cool project! :dark_sunglasses:

Mentors

1 Like

Contribute to the climpred package for analyzing climate predictions

climpred is a package that uses pangeo-supported software like xarray and dask to make evaluating climate predictions easier. Many institutions are running climate models similar to a weather model to predict the Earth system anywhere from 2 weeks to decades in advance. These projects produce massive datasets and require users to tediously write code to assess how well the forecasts did. climpred automates a lot of the analysis (like aligning forecast times with real-world times and computing statistical metrics) so that users can get right to answering the scientific questions they care about.

What to contribute

Look for tags “Help Wanted”, “ASP Projects”, or “Good First Issue”

Required Skills

What technical skills are needed in order to contribute?

Note that Aaron and I are eager to mentor anyone who is a first time contributor. The code review is friendly and you’ll learn a lot from the process. Feel free to email us if you have ideas or just want to help out and want some guidance on where to get started.

Mentors

1 Like