Related to #28, I felt that this lesson got a relatively slow start and because I was new, it carried over to most of the rest of it. When I taught jupyter earlier, I had a different strategy which I'll suggest here.
First, here is my model notebook:
https://github.com/AaltoScienceIT/python-r-data-analysis-course/blob/master/02_Jupyter_demo_pi.ipynb
I started a new notebook and started telling a story:
- I am a researcher who wants to calculate pi. I don't know what I am doing so begin at the beginning.
- Add a markdown cell at the top saying what I am doing.
- Import relevant things and add simple loop and stochastic calculation (pick random points, are the yin a circle or not?)
- Now I have to convert my statistics to pi. I could do my derivations on paper and then enter the formula, but instead I enter a markdown cell and do the derivations directly there.
- Then, I implement the formula to calculate pi.
- Small discussion: when reporting my work to my advisor, this is a much more useful form! They can review everything.
- Now, we want to extend our work. Let's add a visualization. Go back and record all of the points and make a matplotlib visualization of what falls in the circle.
- Then I go add add some line magics - %timeit for example. Demonstrate these but we will get back to more later.
- Discussions: notebook advantages and disadvantages. When to use, when not to use.
I found that this was a dynamic and interesting story to begin with. After this, lead in to the material here which explains how to actually use jupyter - the details. The real examples can be immediately after this, or before.
As for presenting, it was fairly easy, but I did need to refer to the document to copy from - it's hard do do the derivations in real time with an audience! A bit more advanced thought and planning is needed, too (you should probably go through it once before presenting).