View on GitHub

Stack Club

Learning the LSST software Stack, by writing jupyter notebook tutorials.

Stack Club

The science community Stack Club is an LSSTC-supported project, to form a small community committed to learning how to use, and explain, the Rubin Observatory LSST Science Pipelines (colloquially called “the Stack”). The idea is that the best way to learn something is to try and teach it: if you can write a useful tutorial on some aspect of the DM Stack, and especially its science pipelines, then you have to understand that part first.

We develop tutorial notebooks on the Rubin Science Platform (RSP) at NCSA, which provides a standard computing environment, including the most recent version of the Stack and a number of useful precursor datasets. We meet up for biweekly video hack sessions, at which we also review each other’s notebooks, and all of our tutorials are available in this repo. New members with zero experience are very welcome: we aim to produce tutorials for beginners as well as more advanced Stack users, and the organizers are happy to spend time walking new members through the available resources, and explaining how to get started.

We also offer short, self-contained courses on using the Stack. Material from first course from Spring 2020 can be found here.

See below for how to get involved: we hope you find our notebooks useful!

Community Tutorials

Our goal is to build on the existing demo notebooks and html tutorial pages to create a set of community-generated, community-oriented notebooks that reflect the science interests and expected analyses of the Rubin Observatory/LSST Science Collaborations. The notebooks in the repo were developed on the Rubin Science Platform (RSP) at NCSA, and use the standard datasets provided there.

Topic Description
GettingStarted How to use JupyterLab, and contribute to the Stack Club repo.
Basics Guided tours of various key Stack classes and functions, data structures, etc.
Visualization Displaying images and catalogs.
ImageProcessing From raw images to calibrated exposures and coadded images.
SourceDetection Detection of sources in images - including low surface brightness galaxies.
Deblending Deblending astronomical sources
Measurement Measuring object properties
Validation Tools for validating Stack outputs, example validation analyses

Joining the Stack Club

Active participation in the Stack Club requires Rubin Observatory data rights as described in ls.st/rdo-013. We welcome new members with any level of experience. We have found that some familiarity with Python is helpful, and that experience with Jupyter notebooks and git/GitHub can help you get started faster. No experience with the Stack is required.

If you would like to join the Stack Club, please fill out this short application form. You’ll be asked to agree to abide by the Stack Club Rules and provide enough contact information to request an account on the Rubin Science Platform. You’ll receive an email when your account is created; at that point, you can start contributing.

If you are not ready to commit time to working on a Stack Club project, you can still follow along by watching this repo, joining the #stack-club on the LSSTC Slack workspace, or viewing material from the Stack Club Course.

Contributing

New members: START HERE! These notes will walk you through getting access to the Rubin Science Platform and show you how to work on tutorial notebooks.

Everyone else: we welcome pull requests! Feel free to fork this repo and send us a pull request. If you are interested in joining the Stack Club, please drop us a line in #stack-club. When preparing a pull request, please note the Stack Club standards.

Contact

We welcome your input! Please post questions and suggestions in the issues of this repository. You can also contact the organizers directly via the links below:

The Stack Club meets fortnightly via Zoom, and you can find us on LSSTC Slack at #stack-club.

License

The text in this repository is Copyright The Authors, and licensed under Creative Commons CC-BY-ND 4.0, which means you can copy and redistribute the material in any medium or format for any purpose, as long as you give appropriate credit, provide a link to the license, and indicate if changes were made. If you remix, transform, or build upon the material, you may not distribute the modified material - this is to prevent incorrect information about the Stack getting out there, or at least, take responsibility ourselves if it does. All the code in this repository is available for re-use under the MIT License, which means you can do anything you like with it but you can’t blame us if it doesn’t do what you want.

More About This Project

The Stack Club has been supported by awards from the LSSTC Enabling Science program. You can read about our original 3-phase plan here. Phase 0 involved collecting existing tutorials and identifying potential club members from around the LSST Science Collaborations. Then, in Phase 1 (late May 2018 to mid August 2018) we worked together in a small group to turn a subset of those existing “seed” tutorials into community-maintained Jupyter notebooks, for display at the August LSST 2018 Project and Community Workshop (PCW) in Tucson. At that meeting, we opened up to a larger group of LSST science collaboration members, extending and spinning off the initial set of notebooks. We met once a week through Fall 2018, defining about 20 projects, and producing 11 tutorial notebooks for community use. In fall 2018 the Stack Club had about 20 active participants.