Skip to content

Commit

Permalink
update student version with curriculum book changes
Browse files Browse the repository at this point in the history
  • Loading branch information
actions-user committed Oct 18, 2023
1 parent 4640da4 commit a45374e
Show file tree
Hide file tree
Showing 10 changed files with 175,100 additions and 175,108 deletions.
35 changes: 30 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,35 @@
# GeoSMART Curriculum Jupyter Book (ESS 469/569)

[![Deploy](https://github.com/geo-smart/mlgeo-book/actions/workflows/deploy.yaml/badge.svg)](https://github.com/geo-smart/mlgeo-book/actions/workflows/deploy.yaml)
[![Jupyter Book Badge](https://jupyterbook.org/badge.svg)](https://geo-smart.github.io/mlgeo-book)
[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/geo-smart/mlgeo-book/HEAD?urlpath=lab)
[![Deploy](https://github.com/geo-smart/mlgeo-instructor/actions/workflows/deploy.yaml/badge.svg)](https://github.com/geo-smart/mlgeo-instructor/actions/workflows/deploy.yaml)
[![Jupyter Book Badge](https://jupyterbook.org/badge.svg)](https://geo-smart.github.io/mlgeo-instructor)
[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/geo-smart/mlgeo-instructor/HEAD?urlpath=lab)
[![GeoSMART Library Badge](book/img/curricula_badge.svg)](https://geo-smart.github.io/curriculum)
[![Student Version](book/img/student_version_badge.svg)](https://geo-smart.github.io/mlgeo-book/)

## About
## Repository Overview

This repository stores configuration for GeoSMART curriculum content, specifically the student version of the book. This version of the book should never be directly edited, as the student version is automatically generated on push.
This repository stores configuration for GeoSMART curriculum content, specifically the teacher version of the book. Only this version of the book should ever be edited, as the student version is automatically generated on push by github actions.

## Making Changes

Edit the book content by modifying the `_config.yml`, `_toc.yml` and `*.ipynb` files in the `book` directory. The book is hosted on Github Pages and will be automatically updated on push, and the student book will also be created automatically on push.

To modify the exact differences between this book and the student book, edit `.github/workflows/clean_book.py`. When you push, a github action will clone the repo and run this python file which modifies certain parts of `*.ipynb` file contents, then pushes to the student repo. To edit the student repo's README, edit `STUDENT_README.md`. The Github Actions workflow also automatically replaces `README.md` with `STUDENT_README.md` in the student repo.

### `Student Response Sections`

One modifications made by the `clean_book.py` workflow is to clear sections marked for student response. Code cells marked for student response may contain code in the teacher version of the book, but will have their code removed and replaced with a TODO comment in the student version.

To mark a code cell to be cleared, insert a markdown cell directly preceding it with the following content:

````markdown
```{admonition} Student response section
This section is left for the student to complete.
```
````

## Serving Locally

Activate the `curriculum_book` conda environment (or any conda environment that has the necessary jupyter book dependencies). Navigate to the root folder of the curriculum book repository in anaconda prompt, then run `python server.py`.

On startup, the server will run `jb build book` to build all changes to the notebook and create the compiled HTML. The server code can take a `--no-build` flag (or `--nb` shorthand) if you don't want to build any changes you've made to the notebooks. In the case that you don't want to build changes made to the notebooks, you can just run `python serer.py --nb` from any terminal with python installed.
10 changes: 10 additions & 0 deletions STUDENT_README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# GeoSMART Curriculum Jupyter Book (ESS 469/569)

[![Deploy](https://github.com/geo-smart/mlgeo-book/actions/workflows/deploy.yaml/badge.svg)](https://github.com/geo-smart/mlgeo-book/actions/workflows/deploy.yaml)
[![Jupyter Book Badge](https://jupyterbook.org/badge.svg)](https://geo-smart.github.io/mlgeo-book)
[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/geo-smart/mlgeo-book/HEAD?urlpath=lab)
[![GeoSMART Library Badge](book/img/curricula_badge.svg)](https://geo-smart.github.io/curriculum)

## About

This repository stores configuration for GeoSMART curriculum content, specifically the student version of the book. This version of the book should never be directly edited, as the student version is automatically generated on push.
8 changes: 5 additions & 3 deletions book/Chapter1-GettingStarted/1.1_open_reproducible_science.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
# 1.1 Open Reproducible Science

We strive to promote open and reproducible science in our broad fields of geosciences. It is particularly important
We should strive to promote open and reproducible science in our work.

[![Lecture Slides](../../img/Google_Slides_Logo.svg)](https://docs.google.com/presentation/d/1SCrx65-Q_CB8JRMN81Uk-QniPvPE-wozRD7YDDQEapc/edit?usp=sharing)
To that end, please review the following presentation:

[![YouTube video](../../img/YouTube-Logo.wine.svg)](https://youtu.be/WeZ2vJxBuTg?si=aG1IuBNhCQnb1ljv)
[![Lecture Slides](../img/Open-Science.svg)](https://docs.google.com/presentation/d/1SCrx65-Q_CB8JRMN81Uk-QniPvPE-wozRD7YDDQEapc/edit?usp=sharing)

[![Presentation recording](https://img.youtube.com/vi/WeZ2vJxBuTg/maxresdefault.jpg)](https://www.youtube.com/watch?v=WeZ2vJxBuTg)
1 change: 0 additions & 1 deletion book/Chapter1-GettingStarted/1.2_jupyter_environment.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ Jupyter Lab is an expanded version of the browser interface that includes **note
## Jupyter Hub
Is a Jupyter Lab launched by a given hardware/computer. Users may see where the computer is located in the browser address. The user may not know the type of hardware used. One exception is the selection of types of instances in public clouds.


## Markdown

### What is Markdown?
Expand Down
10 changes: 5 additions & 5 deletions book/Chapter1-GettingStarted/1.3_python_environment.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
# 1.3 Python Ecosystem

## What do you need to run your Python code?
- Python. Most packages work with Python3. Your laptop may already come with one. We recommend downloading Anaconda, which comes with a version of python, and aliasing $python$ to the binary executable python specific to conda.
- **Python.** Most packages work with Python3. Your laptop may already come with Python preinstalled.
We recommend downloading Anaconda, which comes with a version of python, and aliasing $python$ to the binary executable python specific to conda.

- A code: Some files with .py extension

- Dependencies: specific modules that contains many functions related to each other (e.g. numpy, scipy, pandas, scikit-learn). Often these modules are packages imported in the python code as
- **Some code:** Files with .py extension

- **Dependencies:** Specific *modules* that contain many functions related to each other (e.g. numpy, scipy, pandas, scikit-learn). Often these modules are packages imported in the python code as

import numpy as np

- To run a python code with the proper dependencies, you need to define its environment: Version of Python + Some packages + Version of packages
To run Python code with the proper dependencies, you need to define an **environment**: Version of Python + Some packages + Version of packages.

## What are virtual environments?
A Python virtual environment is an isolated working copy of a specific version of Python interpreter together with specific versions of a number of external libraries installed into that virtual environment.
Expand Down
Loading

0 comments on commit a45374e

Please sign in to comment.