On Tue, Feb 2, 2021, 11:30 kirby urner <kirby.ur...@gmail.com> wrote:

>
> Hi Dave --
>
> Thank you for this excellent online course material re Python and the
> geosciences.
>
> I've added a section to my evolving "elite school" repo listing courses
> and curriculum
> using Jupyter Notebooks, as I want to impress upon my students that this
> is how
> some of the better schools / teachers are currently sharing material.
>
> I want to impress them with the fact that we're learning some best
> practices.
>
>
> https://nbviewer.jupyter.org/github/4dsolutions/elite_school/blob/master/Home.ipynb
> (scroll to bottom for a link to your GeoPython).
>

https://github.com/jupyter/jupyter/wiki/A-gallery-of-interesting-Jupyter-Notebooks


> In contrast, many high schools do nothing with Jupyter Notebooks.  Given
> our
> "elite school" status, it's legit to point this out.  Parents like to know
> what their
> kids are learning is "ahead of the curve" vis-a-vis your run of the mill
> high school.
>

#### Questions for comprehension:

##### When is it better to write code as a module and/or a Jupyter notebook?

(Note that e.g. the fastai/nbdev template repo makes it easy to mark .ipynb
notebook input cells as for export to a .py python module)

##### How do I test a notebook and a module?
- module: pytest
- notebook:
  - nbdev
  - Pytest + Jupyter-specific plugin
  - `assert` statements to verify assumptions

##### When I share my repo, will people be able to run the code?

If your dependencies are specified in REES-compatible way
(/requirements.txt, /environment.yml), users and BinderHub can use
repo2docker to generate a container with a current - and thus
security-updated - version of JupyterLab and also the [exact versions of]
the software dependencies you've specified.

#### add'l resources
https://github.com/quobit/awesome-python-in-education

https://github.com/quobit/awesome-python-in-education#jupyter

- "jupyter-education: Teaching with Jupyter Notebooks mailing list"
  https://groups.google.com/forum/#!forum/jupyter-education

- github.com/jupyter4edu - best practices and content for teaching with
Jupyter notebooks
  - jupyter4edu/jupyter-edu-book - open source of the "Teaching and
Learning with Jupyter" book
    - https://jupyter4edu.github.io/jupyter-edu-book/ - "Teaching and
Learning with Jupyter" book


> The workflow I encourage with my students is to establish their own
> presence
> on Github and to learn how to clone a repo so they can run the Notebooks
> locally (vs in the cloud).
>

https://classroom.github.com/ can run tests for students in order to "grade"

There's probably a way to run nbgrader "tests" with e.g. GitHub Classroom
CI?

Since I expect them to make Notebooks, I want them
> to have complete localhost control.
>

FWIU, you can install Docker and/or Conda on an ARM64 e.g. Raspberry Pi
with Miniforge now, because the conda-forge repos have ARM64 packages now
(whereas if you install from PyPI on an ARM64 box, you'll be waiting for
builds to compile because there are very few ARM64 wheels on PyPI).

Mamba (c++ port of the slow parts of conda) is much faster on a Pi, as well.

```bash
conda install -c conda-forge -y mamba;
mamba install -c conda-forge python=3.8 jupyterlab pandas dask matplotlib
seaborn altair
```

You can use `jupyter console` to run Jupyter kernels for additional
languages like JS and TS in a REPL just like IPython:

```bash
mamba install -c conda-forge -y jupyter-console jupyter-client nodejs
npm install -g ijavascript
npm install -g itypescript
ijsinstall
its --install=local
jupyter kernelspec list
jupyter console --kernel python3
```


> Kirby
>
> _______________________________________________
> Edu-sig mailing list -- edu-sig@python.org
> To unsubscribe send an email to edu-sig-le...@python.org
> https://mail.python.org/mailman3/lists/edu-sig.python.org/
> Member address: wes.tur...@gmail.com
>
_______________________________________________
Edu-sig mailing list -- edu-sig@python.org
To unsubscribe send an email to edu-sig-le...@python.org
https://mail.python.org/mailman3/lists/edu-sig.python.org/
Member address: arch...@mail-archive.com

Reply via email to