I've taught both ways and lean towards Jupyter for shorter-contact
workshops, and lean towards CLI for longer-contact workshops and classes.

Jupyter notebooks lower the cognitive load associated with CLI, text
editors, edit-save-execute iterations, and are a lower barrier to providing
a standardized implementation (e.g., Anaconda on learner's machines or a
public-facing notebook server you control). With the lower load, it's
possible to go from 0 to image processing in no time, and that time saved I
think contributes substantially to the take-aways of our learners in short
workshops. "Wow! I did some real data wrangling there, and I can use this
on my work today!" I also *really* like having the code and the
presentation of data in one place, so when I work with students now it's
easy to fiddle with things in plots in the notebooks which significantly
accelerates our group understanding of what our data means. (as compared to
"plot it a different way and see you next week")

My minor qualm is that the notebooks don't provide exposure to the CLI and
the very common workflows that combine loops, pipes, python scripts, and
other unixy tools. In the context of my semester-long courses we'll start
with CLI, python, and git, and maybe 5 weeks in show "Here are jupyter
notebooks, which are a really great compliment to what we've learned so
far!".
And in terms of keeping track of code used by, managing jupyter notebooks
with version control can be tricky.

So, the quick version: Jupyter notebooks are amazing, but in some ways
orthogonal to the automation, reproducibility, and sharing ecosystem that
software carpentry has been thoughtful about making self-consistent.

Talk permissions granted!

Best,
Eric

On Wed, May 10, 2017 at 1:03 PM, Maneesha Sane <[email protected]>
wrote:

> Hi all,
>
> I am giving two talks next week at Bryn Mawr's Jupyter days conference  (
> http://jupyterday.blogs.brynmawr.edu/)
>
> One is running an intro to Python workshop using Jupyter and I'm piecing
> together parts of the SWC and DC curricula to teach it.
>
> The other talk is a shorter talk (~20 minutes, incuding Q&A) about the
> differences teaching Python via straight command line compared to teaching
> from the Jupyter notebook.  When I've taught for the Carpentries, I've
> always used Jupyter.  In other contexts, I've taught strictly from the
> CLI.  I'm curious to know if others have taught in both ways (either for
> the Carpentries or in other circumstances) and what you've thought of it.
> Advantages/disadvantages?  What you like and don't like about Jupyter and
> CLI environments?
>
> With your permission, I'd like to use some of your feedback in my talk.  I
> also think it would be useful for Carpentries instructors to know in
> general, so please share any feedback to the list.
>
> Thanks!
>
>
>
> --
> Maneesha Sane
> Software Carpentry: https://software-carpentry.org/
> Data Carpentry: http://www.datacarpentry.org/
>
>
> _______________________________________________
> Discuss mailing list
> [email protected]
> http://lists.software-carpentry.org/listinfo/discuss
>
_______________________________________________
Discuss mailing list
[email protected]
http://lists.software-carpentry.org/listinfo/discuss

Reply via email to