GitPedia

Ivy

Course material on scientific software development for researchers in earth and planetary surface processes

From csdms·Updated April 29, 2026·View on GitHub·

[jhub]: https://csdms.colorado.edu/wiki/JupyterHub [badge]: https://img.shields.io/badge/Run%20on-EarthscapeHub-orange [jupyter]: ./lessons/jupyter/index.md [shell]: ./lessons/shell/index.md [editors]: ./lessons/editors/index.md [conda]: ./lessons/conda/index.md [python]: ./lessons/python/index.ipynb [git]: ./lessons/git/index.md [bmi]: ./lessons/bmi/index.ipynb [landlab]: ./lessons/landlab/landlab/00_welcome.ipynb [pymt]: ./lessons/pymt/index.ipynb [permamodel]: ./lessons/permamodel/index.ipynb... The project is written primarily in Jupyter Notebook, distributed under the Other license, first published in 2020. Key topics include: bash, best-practices, bmi, csdms, education.

Latest release: v2025.02025.0
April 18, 2025View Changelog →

Ivy logo

<!-- Links -->

CSDMS Ivy

CSDMS Ivy is a collection of instructional materials on

  • modern, collaborative, scientific software development, and
  • use of community cyberinfrastructure tools

for researchers in earth and planetary surface processes.

CSDMS Ivy is
written and maintained by the
Community Surface Dynamics Modeling System (CSDMS).

Lessons

CSDMS Ivy lessons are modular and independent,
although the ordering below represents a typical progression.

  1. Project Jupyter
  2. Introduction to the Shell
  3. Text Editors and Development Environments
  4. Python Fundamentals
  5. Anaconda and conda
  6. Version Control with git and GitHub
  7. Python for Modeling
  8. Landlab
  9. The Basic Model Interface (BMI)
  10. The Python Modeling Toolkit (pymt)
  11. Permamodel Toolkit
  12. Introduction to Cluster Computing
  13. Best Practices in Scientific Software Development

The lessons can be run locally
if a user installs Anaconda and a git client on their computer.
All lessons are also available to run
on EarthscapeHub.
Click this button:

Run on EarthscapeHub

to open the lessons directly on the EarthscapeHub explore instance!

Note: The EarthscapeHub explore instance is password-protected.
Please contact your instructor about obtaining a login,
or visit this CSDMS wiki page for more information.

Contributing

CSDMS Ivy is an open source project;
contributions that follow
the contributor code of conduct are welcomed
and are acknowledged.
All CSDMS Ivy course material is
released under CC BY 4.0 and MIT licenses.
If you use the CSDMS Ivy course material,
please cite it.

DOI

Acknowledgments

CSDMS Ivy grew from a National Science Foundation Cybertraining pilot program,
Cybertraining: Pilot: Collaborative Research:
Cybertraining for Earth Surface Processes Modelers

(award numbers
1924259 and
1924185).

Portions of the CSDMS Ivy Python lessons are derived
from material that is copyright
Software Carpentry
and remixed under their license.
The Project Jupyter lesson
is taken from the Code to Communicate project
and modified under their license.
Material in the FAIR software lesson is adapted,
under license,
from a CoMSES Net project.

CSDMS Ivy is supported with funding from the National Science Foundation.

Contributors

Showing top 7 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from csdms/ivy via the GitHub API.Last fetched: 6/29/2026