I am thinking of doing a simplified interactive presentation on probability and Bayesian statistics for my kids' elementary school. I think it would probably be best for 68th graders, but there might be ways to do this for younger students. I'd like to run some Python code to show probability distributions and statistics. I am thinking of simplified examples from these works: Maybe the dice problem, or the cookie problem here: Allen Downey  Bayesian statistics made simple  PyCon 2016 <https://youtu.be/TpgiFIGXcT4?t=1741> A friend also suggested doing an analysis of how many cards (e.g. pokemon) that one might need to buy to colleft the whole set. Any suggestions on how to make this manageable approachable for kids? Perry On Feb 20, 2018 12:02 PM, <edusigrequest@python.org> wrote:
Send Edusig mailing list submissions to edusig@python.org
To subscribe or unsubscribe via the World Wide Web, visit https://mail.python.org/mailman/listinfo/edusig or, via email, send a message with subject or body 'help' to edusigrequest@python.org
You can reach the person managing the list at edusigowner@python.org
When replying, please edit your Subject line so it is more specific than "Re: Contents of Edusig digest..."
Today's Topics:
1. if I taught high school calculus today... (kirby urner)

Message: 1 Date: Mon, 19 Feb 2018 19:50:28 0800 From: kirby urner <kirby.urner@gmail.com> To: "edusig@python.org" <edusig@python.org> Subject: [Edusig] if I taught high school calculus today... MessageID: <CAPJgG3Q5XVmSsiWafNsq928EiYGKYi7XMmQiBsi4fm91_HP4w@mail.gm ail.com> ContentType: text/plain; charset="utf8"
I was a high school calculus teacher (also algebra, geometry, trig) first job outta university, stuck with it for two years.
Fast forward to almost age 60, and I'm teaching coding to middle schoolers, thinking it's all still math. [1]
Shouldn't take a "computer scientist" to cover this stuff... Algorithms are algorithms after all.
Were I to teach calculus today, in light of what I now know, I'd focus on probability density functions right when we get to integration, as "area under the probability curve" is precisely how we figure out chances of something happening.
We would use Jupyter Notebooks with SciPy, all free & open source.
As I recall, our calc curriculum never did much to bridge to statistics, but in SciPy / NumPy, every continuous probability distribution function (PDF) comes with a cumulative distribution function (CDF) that's defined exactly as a definite integral between A and B, and giving the probability some x in distribution X falls between A and B.
Forming a bridge twixt calculus and data science would be another strategy for getting scientific calculators to share the road, with more relevant free tools (always an ulterior motive for me). I don't think a TI is able to do definite integration over a standard normal curve.
Actually, I see I'm wrong: http://cfcc.edu/faculty/cmoore/TINormal.htm
Oh well, back to the drawing board. I still think a strong tiein twixt calc and data science makes a lot of sense at the high school level. With or without Jupyter Notebooks.
Kirby
PS: right now I'm going through Allen Downey's tutorial on Bayesian stats using the above mentioned tools, from Pycon 2016: https://youtu.be/TpgiFIGXcT4 I attended this conference, but didn't manage to make this tutorial.
[1] I've shared this before, still relevant: https://medium.com/@kirbyurner/iscodeschoolthenewhigh school30a8874170b
Also this blog post: http://mybizmo.blogspot.com/2018/02/magicsquares.html
I tried using Jupyter Notebooks last year with my Calc and preCalc students last year. However, I'm using CoCalc.com which is Sage Math Cloud gone commercial. It was free to use for a while. However, if you use it regularly as I have, you get a big red banner across the screen telling you to subscribe for $5 per month per user. Well, I have about 100 students and can't afford $500 per month and neither can my school, so we are back to using sagecell.sagemath.com for now. Regards, AJG Sent from BlueMail On Feb 21, 2018, 9:03 AM, at 9:03 AM, Perry Grossman <perrygrossman2008@gmail.com> wrote:
I am thinking of doing a simplified interactive presentation on probability and Bayesian statistics for my kids' elementary school. I think it would probably be best for 68th graders, but there might be ways to do this for younger students. I'd like to run some Python code to show probability distributions and statistics.
I am thinking of simplified examples from these works:
Maybe the dice problem, or the cookie problem here: Allen Downey  Bayesian statistics made simple  PyCon 2016 <https://youtu.be/TpgiFIGXcT4?t=1741>
A friend also suggested doing an analysis of how many cards (e.g. pokemon) that one might need to buy to colleft the whole set.
Any suggestions on how to make this manageable approachable for kids?
Perry
On Feb 20, 2018 12:02 PM, <edusigrequest@python.org> wrote:
Send Edusig mailing list submissions to edusig@python.org
To subscribe or unsubscribe via the World Wide Web, visit https://mail.python.org/mailman/listinfo/edusig or, via email, send a message with subject or body 'help' to edusigrequest@python.org
You can reach the person managing the list at edusigowner@python.org
When replying, please edit your Subject line so it is more specific than "Re: Contents of Edusig digest..."
Today's Topics:
1. if I taught high school calculus today... (kirby urner)

Message: 1 Date: Mon, 19 Feb 2018 19:50:28 0800 From: kirby urner <kirby.urner@gmail.com> To: "edusig@python.org" <edusig@python.org> Subject: [Edusig] if I taught high school calculus today... MessageID: <CAPJgG3Q5XVmSsiWafNsq928EiYGKYi7XMmQiBsi4fm91_HP4w@mail.gm ail.com> ContentType: text/plain; charset="utf8"
I was a high school calculus teacher (also algebra, geometry, trig)
job outta university, stuck with it for two years.
Fast forward to almost age 60, and I'm teaching coding to middle schoolers, thinking it's all still math. [1]
Shouldn't take a "computer scientist" to cover this stuff... Algorithms are algorithms after all.
Were I to teach calculus today, in light of what I now know, I'd focus on probability density functions right when we get to integration, as "area under the probability curve" is precisely how we figure out chances of something happening.
We would use Jupyter Notebooks with SciPy, all free & open source.
As I recall, our calc curriculum never did much to bridge to statistics, but in SciPy / NumPy, every continuous probability distribution function (PDF) comes with a cumulative distribution function (CDF) that's defined exactly as a definite integral between A and B, and giving the
first probability
some x in distribution X falls between A and B.
Forming a bridge twixt calculus and data science would be another strategy for getting scientific calculators to share the road, with more relevant free tools (always an ulterior motive for me). I don't think a TI is able to do definite integration over a standard normal curve.
Actually, I see I'm wrong: http://cfcc.edu/faculty/cmoore/TINormal.htm
Oh well, back to the drawing board. I still think a strong tiein twixt calc and data science makes a lot of sense at the high school level. With or without Jupyter Notebooks.
Kirby
PS: right now I'm going through Allen Downey's tutorial on Bayesian stats using the above mentioned tools, from Pycon 2016: https://youtu.be/TpgiFIGXcT4 I attended this conference, but didn't manage to make this tutorial.
[1] I've shared this before, still relevant: https://medium.com/@kirbyurner/iscodeschoolthenewhigh school30a8874170b
Also this blog post: http://mybizmo.blogspot.com/2018/02/magicsquares.html
On Wednesday, February 21, 2018, A Jorge Garcia via Edusig < edusig@python.org> wrote:
I tried using Jupyter Notebooks last year with my Calc and preCalc students last year. However, I'm using CoCalc.com which is Sage Math Cloud gone commercial. It was free to use for a while. However, if you use it regularly as I have, you get a big red banner across the screen telling you to subscribe for $5 per month per user. Well, I have about 100 students and can't afford $500 per month and neither can my school, so we are back to using sagecell.sagemath.com for now.
How many quota'd Docker container does it take to serve JupyterHub for 100 students? It may be easier to copy a configured conda env ZIP to each PC? https://jupyterhub.readthedocs.io/en/latest/
Regards, AJG
Sent from BlueMail <http://www.bluemail.me/r?b=12095> On Feb 21, 2018, at 9:03 AM, Perry Grossman <perrygrossman2008@gmail.com> wrote:
I am thinking of doing a simplified interactive presentation on probability and Bayesian statistics for my kids' elementary school. I think it would probably be best for 68th graders, but there might be ways to do this for younger students. I'd like to run some Python code to show probability distributions and statistics.
I am thinking of simplified examples from these works:
Maybe the dice problem, or the cookie problem here: Allen Downey  Bayesian statistics made simple  PyCon 2016 <https://youtu.be/TpgiFIGXcT4?t=1741>
A friend also suggested doing an analysis of how many cards (e.g. pokemon) that one might need to buy to colleft the whole set.
Any suggestions on how to make this manageable approachable for kids?
Perry
On Feb 20, 2018 12:02 PM, <edusigrequest@python.org> wrote:
Send Edusig mailing list submissions to edusig@python.org
To subscribe or unsubscribe via the World Wide Web, visit https://mail.python.org/mailman/listinfo/edusig or, via email, send a message with subject or body 'help' to edusigrequest@python.org
You can reach the person managing the list at edusigowner@python.org
When replying, please edit your Subject line so it is more specific than "Re: Contents of Edusig digest..."
Today's Topics:
1. if I taught high school calculus today... (kirby urner)

Message: 1 Date: Mon, 19 Feb 2018 19:50:28 0800 From: kirby urner <kirby.urner@gmail.com> To: "edusig@python.org" <edusig@python.org> Subject: [Edusig] if I taught high school calculus today... MessageID: <CAPJgG3Q5XVmSsiWafNsq928EiYGKYi7XMmQiBsi4fm91_HP4w@mail.gm ail.com> ContentType: text/plain; charset="utf8"
I was a high school calculus teacher (also algebra, geometry, trig) first job outta university, stuck with it for two years.
Fast forward to almost age 60, and I'm teaching coding to middle schoolers, thinking it's all still math. [1]
Shouldn't take a "computer scientist" to cover this stuff... Algorithms are algorithms after all.
Were I to teach calculus today, in light of what I now know, I'd focus on probability density functions right when we get to integration, as "area under the probability curve" is precisely how we figure out chances of something happening.
We would use Jupyter Notebooks with SciPy, all free & open source.
As I recall, our calc curriculum never did much to bridge to statistics, but in SciPy / NumPy, every continuous probability distribution function (PDF) comes with a cumulative distribution function (CDF) that's defined exactly as a definite integral between A and B, and giving the probability some x in distribution X falls between A and B.
Forming a bridge twixt calculus and data science would be another strategy for getting scientific calculators to share the road, with more relevant free tools (always an ulterior motive for me). I don't think a TI is able to do definite integration over a standard normal curve.
Actually, I see I'm wrong: http://cfcc.edu/faculty/cmoore/TINormal.htm
Oh well, back to the drawing board. I still think a strong tiein twixt calc and data science makes a lot of sense at the high school level. With or without Jupyter Notebooks.
Kirby
PS: right now I'm going through Allen Downey's tutorial on Bayesian stats using the above mentioned tools, from Pycon 2016: https://youtu.be/TpgiFIGXcT4 I attended this conference, but didn't manage to make this tutorial.
[1] I've shared this before, still relevant: https://medium.com/@kirbyurner/iscodeschoolthenewhighs chool30a8874170b
Also this blog post: http://mybizmo.blogspot.com/2018/02/magicsquares.html
I'm a big fan of Galton Boards: https://youtu.be/3m4bxse2JEQ (lots more on Youtube) Python + Dice idea = Simple Code http://www.pythonforbeginners.com/codesnippetssourcecode/gamerollingthe... I'd introduce the idea that 1 die = Uniform Probability but 2+ dice = Binomial distribution (because there are more ways to roll some numbers, e.g. 7 than others, e.g. 12). A Python generator for Pascal's Triangle (= Binomial Distribution): def pascal(): row = [1] while True: yield row row = [i+j for i,j in zip([0]+row, row+[0])] gen = pascal() for _ in range(10): print(next(gen)) [1] [1, 1] [1, 2, 1] [1, 3, 3, 1] [1, 4, 6, 4, 1] [1, 5, 10, 10, 5, 1] [1, 6, 15, 20, 15, 6, 1] [1, 7, 21, 35, 35, 21, 7, 1] [1, 8, 28, 56, 70, 56, 28, 8, 1] [1, 9, 36, 84, 126, 126, 84, 36, 9, 1] Kirby On Tue, Feb 20, 2018 at 6:12 PM, Perry Grossman <perrygrossman2008@gmail.com
wrote:
I am thinking of doing a simplified interactive presentation on probability and Bayesian statistics for my kids' elementary school. I think it would probably be best for 68th graders, but there might be ways to do this for younger students. I'd like to run some Python code to show probability distributions and statistics.
I am thinking of simplified examples from these works:
Maybe the dice problem, or the cookie problem here: Allen Downey  Bayesian statistics made simple  PyCon 2016 <https://youtu.be/TpgiFIGXcT4?t=1741>
A friend also suggested doing an analysis of how many cards (e.g. pokemon) that one might need to buy to colleft the whole set.
Any suggestions on how to make this manageable approachable for kids?
Perry
PS: right now I'm going through Allen Downey's tutorial on Bayesian stats
using the above mentioned tools, from Pycon 2016: https://youtu.be/TpgiFIGXcT4 I attended this conference, but didn't manage to make this tutorial.
[1] I've shared this before, still relevant: https://medium.com/@kirbyurner/iscodeschoolthenewhighs chool30a8874170b
Also this blog post: http://mybizmo.blogspot.com/2018/02/magicsquares.html
"Seeing Theory: A visual introduction to probability and statistics" http://students.brown.edu/seeingtheory/ https://github.com/seeingtheory/SeeingTheory These are JavaScript widgets, so not Python but great visual examples that could be implemented with ipywidgets and some JS. explorable.es has a whole catalog of these: http://explorabl.es/math/ Think Stats 2nd edition is free: http://greenteapress.com/wp/thinkstats2e/ The source is also free: https://github.com/AllenDowney/ThinkStats2 https://github.com/AllenDowney/ThinkStats2/blob/master/code/chap01ex.ipynb https://nbviewer.jupyter.org/github/AllenDowney/ThinkStats2/tree/master/code... On Friday, February 23, 2018, kirby urner <kirby.urner@gmail.com> wrote:
I'm a big fan of Galton Boards:
https://youtu.be/3m4bxse2JEQ (lots more on Youtube)
Python + Dice idea = Simple Code
http://www.pythonforbeginners.com/codesnippetssourcecode/ gamerollingthedice/
I'd introduce the idea that 1 die = Uniform Probability but 2+ dice = Binomial distribution (because there are more ways to roll some numbers, e.g. 7 than others, e.g. 12).
A Python generator for Pascal's Triangle (= Binomial Distribution):
def pascal(): row = [1] while True: yield row row = [i+j for i,j in zip([0]+row, row+[0])]
gen = pascal()
for _ in range(10): print(next(gen))
[1] [1, 1] [1, 2, 1] [1, 3, 3, 1] [1, 4, 6, 4, 1] [1, 5, 10, 10, 5, 1] [1, 6, 15, 20, 15, 6, 1] [1, 7, 21, 35, 35, 21, 7, 1] [1, 8, 28, 56, 70, 56, 28, 8, 1] [1, 9, 36, 84, 126, 126, 84, 36, 9, 1]
Kirby
On Tue, Feb 20, 2018 at 6:12 PM, Perry Grossman < perrygrossman2008@gmail.com> wrote:
I am thinking of doing a simplified interactive presentation on probability and Bayesian statistics for my kids' elementary school. I think it would probably be best for 68th graders, but there might be ways to do this for younger students. I'd like to run some Python code to show probability distributions and statistics.
I am thinking of simplified examples from these works:
Maybe the dice problem, or the cookie problem here: Allen Downey  Bayesian statistics made simple  PyCon 2016 <https://youtu.be/TpgiFIGXcT4?t=1741>
A friend also suggested doing an analysis of how many cards (e.g. pokemon) that one might need to buy to colleft the whole set.
Any suggestions on how to make this manageable approachable for kids?
Perry
PS: right now I'm going through Allen Downey's tutorial on Bayesian stats
using the above mentioned tools, from Pycon 2016: https://youtu.be/TpgiFIGXcT4 I attended this conference, but didn't manage to make this tutorial.
[1] I've shared this before, still relevant: https://medium.com/@kirbyurner/iscodeschoolthenewhighs chool30a8874170b
Also this blog post: http://mybizmo.blogspot.com/2018/02/magicsquares.html
The programs / code examples you all have proposed look great. Perry, I think your idea to teach Bayesian statistics to 68th graders sounds great! Just wanted to chime in on a different angle of this: the relevance of the problem(s) that you address. Here is a video of one of my former high school teachers explaining how he teaches reasoning, skepticism, and using probability in the real world. https://www.youtube.com/watch?v=z2HWE6qQ2kI He gives an example of using Bayes Rule which could be a great example for you to use, Perry. And he shows how you can intuitively, visually understand what Bayes Rule tells us for that example, without having to go through the calculations. At the end of that video, he gives a curriculum overview for a yearlong course he has developed, called "Human Reasoning", which is about thinking in the real world. I would love to see more people teach the way he does! Curious if people have other examples of this kind of thing, or have ideas of how to use computer simulations specifically for teaching this realworldfocused perspective on mathematics.  Blake Elias On Fri, Feb 23, 2018 at 2:44 PM, Wes Turner <wes.turner@gmail.com> wrote:
"Seeing Theory: A visual introduction to probability and statistics" http://students.brown.edu/seeingtheory/ https://github.com/seeingtheory/SeeingTheory
These are JavaScript widgets, so not Python but great visual examples that could be implemented with ipywidgets and some JS.
explorable.es has a whole catalog of these: http://explorabl.es/math/
Think Stats 2nd edition is free: http://greenteapress.com/wp/thinkstats2e/
The source is also free: https://github.com/AllenDowney/ThinkStats2 https://github.com/AllenDowney/ThinkStats2/blob/master/code/chap01ex.ipynb https://nbviewer.jupyter.org/github/AllenDowney/ ThinkStats2/tree/master/code/
On Friday, February 23, 2018, kirby urner <kirby.urner@gmail.com> wrote:
I'm a big fan of Galton Boards:
https://youtu.be/3m4bxse2JEQ (lots more on Youtube)
Python + Dice idea = Simple Code
http://www.pythonforbeginners.com/codesnippetssourcecode/ gamerollingthedice/
I'd introduce the idea that 1 die = Uniform Probability but 2+ dice = Binomial distribution (because there are more ways to roll some numbers, e.g. 7 than others, e.g. 12).
A Python generator for Pascal's Triangle (= Binomial Distribution):
def pascal(): row = [1] while True: yield row row = [i+j for i,j in zip([0]+row, row+[0])]
gen = pascal()
for _ in range(10): print(next(gen))
[1] [1, 1] [1, 2, 1] [1, 3, 3, 1] [1, 4, 6, 4, 1] [1, 5, 10, 10, 5, 1] [1, 6, 15, 20, 15, 6, 1] [1, 7, 21, 35, 35, 21, 7, 1] [1, 8, 28, 56, 70, 56, 28, 8, 1] [1, 9, 36, 84, 126, 126, 84, 36, 9, 1]
Kirby
On Tue, Feb 20, 2018 at 6:12 PM, Perry Grossman < perrygrossman2008@gmail.com> wrote:
I am thinking of doing a simplified interactive presentation on probability and Bayesian statistics for my kids' elementary school. I think it would probably be best for 68th graders, but there might be ways to do this for younger students. I'd like to run some Python code to show probability distributions and statistics.
I am thinking of simplified examples from these works:
Maybe the dice problem, or the cookie problem here: Allen Downey  Bayesian statistics made simple  PyCon 2016 <https://youtu.be/TpgiFIGXcT4?t=1741>
A friend also suggested doing an analysis of how many cards (e.g. pokemon) that one might need to buy to colleft the whole set.
Any suggestions on how to make this manageable approachable for kids?
Perry
PS: right now I'm going through Allen Downey's tutorial on Bayesian
stats using the above mentioned tools, from Pycon 2016: https://youtu.be/TpgiFIGXcT4 I attended this conference, but didn't manage to make this tutorial.
[1] I've shared this before, still relevant: https://medium.com/@kirbyurner/iscodeschoolthenewhighs chool30a8874170b
Also this blog post: http://mybizmo.blogspot.com/2018/02/magicsquares.html
On Friday, February 23, 2018, Blake <blakeelias@gmail.com> wrote:
The programs / code examples you all have proposed look great.
Perry, I think your idea to teach Bayesian statistics to 68th graders sounds great!
Just wanted to chime in on a different angle of this: the relevance of the problem(s) that you address.
Here is a video of one of my former high school teachers explaining how he teaches reasoning, skepticism, and using probability in the real world. https://www.youtube.com/watch?v=z2HWE6qQ2kI
He gives an example of using Bayes Rule which could be a great example for you to use, Perry. And he shows how you can intuitively, visually understand what Bayes Rule tells us for that example, without having to go through the calculations.
At the end of that video, he gives a curriculum overview for a yearlong course he has developed, called "Human Reasoning", which is about thinking in the real world. I would love to see more people teach the way he does!
Curious if people have other examples of this kind of thing, or have ideas of how to use computer simulations specifically for teaching this realworldfocused perspective on mathematics.
https://www.khanacademy.org/math/statisticsprobability https://github.com/jupyter/jupyter/wiki/agalleryofinterestingjupyternot... http://camdavidsonpilon.github.io/ProbabilisticProgrammingandBayesianMet...
 Blake Elias
On Fri, Feb 23, 2018 at 2:44 PM, Wes Turner <wes.turner@gmail.com> wrote:
"Seeing Theory: A visual introduction to probability and statistics" http://students.brown.edu/seeingtheory/ https://github.com/seeingtheory/SeeingTheory
These are JavaScript widgets, so not Python but great visual examples that could be implemented with ipywidgets and some JS.
explorable.es has a whole catalog of these: http://explorabl.es/math/
Think Stats 2nd edition is free: http://greenteapress.com/wp/thinkstats2e/
The source is also free: https://github.com/AllenDowney/ThinkStats2 https://github.com/AllenDowney/ThinkStats2/blob/master/code/ chap01ex.ipynb https://nbviewer.jupyter.org/github/AllenDowney/ThinkStats2/ tree/master/code/
On Friday, February 23, 2018, kirby urner <kirby.urner@gmail.com> wrote:
I'm a big fan of Galton Boards:
https://youtu.be/3m4bxse2JEQ (lots more on Youtube)
Python + Dice idea = Simple Code
http://www.pythonforbeginners.com/codesnippetssourcecode/ gamerollingthedice/
I'd introduce the idea that 1 die = Uniform Probability but 2+ dice = Binomial distribution (because there are more ways to roll some numbers, e.g. 7 than others, e.g. 12).
A Python generator for Pascal's Triangle (= Binomial Distribution):
def pascal(): row = [1] while True: yield row row = [i+j for i,j in zip([0]+row, row+[0])]
gen = pascal()
for _ in range(10): print(next(gen))
[1] [1, 1] [1, 2, 1] [1, 3, 3, 1] [1, 4, 6, 4, 1] [1, 5, 10, 10, 5, 1] [1, 6, 15, 20, 15, 6, 1] [1, 7, 21, 35, 35, 21, 7, 1] [1, 8, 28, 56, 70, 56, 28, 8, 1] [1, 9, 36, 84, 126, 126, 84, 36, 9, 1]
Kirby
On Tue, Feb 20, 2018 at 6:12 PM, Perry Grossman < perrygrossman2008@gmail.com> wrote:
I am thinking of doing a simplified interactive presentation on probability and Bayesian statistics for my kids' elementary school. I think it would probably be best for 68th graders, but there might be ways to do this for younger students. I'd like to run some Python code to show probability distributions and statistics.
I am thinking of simplified examples from these works:
Maybe the dice problem, or the cookie problem here: Allen Downey  Bayesian statistics made simple  PyCon 2016 <https://youtu.be/TpgiFIGXcT4?t=1741>
A friend also suggested doing an analysis of how many cards (e.g. pokemon) that one might need to buy to colleft the whole set.
Any suggestions on how to make this manageable approachable for kids?
Perry
PS: right now I'm going through Allen Downey's tutorial on Bayesian
stats using the above mentioned tools, from Pycon 2016: https://youtu.be/TpgiFIGXcT4 I attended this conference, but didn't manage to make this tutorial.
[1] I've shared this before, still relevant: https://medium.com/@kirbyurner/iscodeschoolthenewhighs chool30a8874170b
Also this blog post: http://mybizmo.blogspot.com/2018/02/magicsquares.html
Here's the AP Statistics course page for instructors: https://apcentral.collegeboard.org/courses/apstatistics https://en.wikipedia.org/wiki/AP_Statistics It's probably worth mentioning nbgrader for grading notebooks and nbval for testing notebooks: https://github.com/jupyter/nbgrader https://github.com/computationalmodelling/nbval On Friday, February 23, 2018, Wes Turner <wes.turner@gmail.com> wrote:
On Friday, February 23, 2018, Blake <blakeelias@gmail.com> wrote:
The programs / code examples you all have proposed look great.
Perry, I think your idea to teach Bayesian statistics to 68th graders sounds great!
Just wanted to chime in on a different angle of this: the relevance of the problem(s) that you address.
Here is a video of one of my former high school teachers explaining how he teaches reasoning, skepticism, and using probability in the real world. https://www.youtube.com/watch?v=z2HWE6qQ2kI
He gives an example of using Bayes Rule which could be a great example for you to use, Perry. And he shows how you can intuitively, visually understand what Bayes Rule tells us for that example, without having to go through the calculations.
At the end of that video, he gives a curriculum overview for a yearlong course he has developed, called "Human Reasoning", which is about thinking in the real world. I would love to see more people teach the way he does!
Curious if people have other examples of this kind of thing, or have ideas of how to use computer simulations specifically for teaching this realworldfocused perspective on mathematics.
https://www.khanacademy.org/math/statisticsprobability
https://github.com/jupyter/jupyter/wiki/agalleryof interestingjupyternotebooks#machinelearningstatisticsandprobability
http://camdavidsonpilon.github.io/ProbabilisticProgrammingandBayesian MethodsforHackers/
 Blake Elias
On Fri, Feb 23, 2018 at 2:44 PM, Wes Turner <wes.turner@gmail.com> wrote:
"Seeing Theory: A visual introduction to probability and statistics" http://students.brown.edu/seeingtheory/ https://github.com/seeingtheory/SeeingTheory
These are JavaScript widgets, so not Python but great visual examples that could be implemented with ipywidgets and some JS.
explorable.es has a whole catalog of these: http://explorabl.es/math/
Think Stats 2nd edition is free: http://greenteapress.com/wp/thinkstats2e/
The source is also free: https://github.com/AllenDowney/ThinkStats2 https://github.com/AllenDowney/ThinkStats2/blob/master/code/ chap01ex.ipynb https://nbviewer.jupyter.org/github/AllenDowney/ThinkStats2/ tree/master/code/
On Friday, February 23, 2018, kirby urner <kirby.urner@gmail.com> wrote:
I'm a big fan of Galton Boards:
https://youtu.be/3m4bxse2JEQ (lots more on Youtube)
Python + Dice idea = Simple Code
http://www.pythonforbeginners.com/codesnippetssourcecode/ gamerollingthedice/
I'd introduce the idea that 1 die = Uniform Probability but 2+ dice = Binomial distribution (because there are more ways to roll some numbers, e.g. 7 than others, e.g. 12).
A Python generator for Pascal's Triangle (= Binomial Distribution):
def pascal(): row = [1] while True: yield row row = [i+j for i,j in zip([0]+row, row+[0])]
gen = pascal()
for _ in range(10): print(next(gen))
[1] [1, 1] [1, 2, 1] [1, 3, 3, 1] [1, 4, 6, 4, 1] [1, 5, 10, 10, 5, 1] [1, 6, 15, 20, 15, 6, 1] [1, 7, 21, 35, 35, 21, 7, 1] [1, 8, 28, 56, 70, 56, 28, 8, 1] [1, 9, 36, 84, 126, 126, 84, 36, 9, 1]
Kirby
On Tue, Feb 20, 2018 at 6:12 PM, Perry Grossman < perrygrossman2008@gmail.com> wrote:
I am thinking of doing a simplified interactive presentation on probability and Bayesian statistics for my kids' elementary school. I think it would probably be best for 68th graders, but there might be ways to do this for younger students. I'd like to run some Python code to show probability distributions and statistics.
I am thinking of simplified examples from these works:
Maybe the dice problem, or the cookie problem here: Allen Downey  Bayesian statistics made simple  PyCon 2016 <https://youtu.be/TpgiFIGXcT4?t=1741>
A friend also suggested doing an analysis of how many cards (e.g. pokemon) that one might need to buy to colleft the whole set.
Any suggestions on how to make this manageable approachable for kids?
Perry
PS: right now I'm going through Allen Downey's tutorial on Bayesian
stats using the above mentioned tools, from Pycon 2016: https://youtu.be/TpgiFIGXcT4 I attended this conference, but didn't manage to make this tutorial.
[1] I've shared this before, still relevant: https://medium.com/@kirbyurner/iscodeschoolthenewhighs chool30a8874170b
Also this blog post: http://mybizmo.blogspot.com/2018/02/magicsquares.html
In terms of Machine Learning more generally, I want to give special recognition to Jake VanderPlas, an astronomer who dives deep into scikitlearn in some multihour Youtubeshared tutorials. Example: https://youtu.be/L7R4HUQeQ0 His excellent keynote at Pycon2017: https://youtu.be/ZyjCqQEUa8o Jake does a superexcellent job of showing off the internal consistency of the scikitlearn API, where you can basically use the same code while just swapping in one classifier or regressor for another. He also speaks the jargon pretty flawlessly, to my ears at least, in terms of what's a feature (label) and what's an observation etc., going into both supervised and unsupervised learning scenarios (scikitlearn handles both). Bravo Jake. Allen Downey has great complementary tutorials which go deeper into the statistical thinking behind these ML models. ThinkBayes is fantastic. It's tempting to just mindlessly throw models at data looking for a best fit, and maybe that's all some underpaid cube farmer has time for, but VanderPlas, along with Downey, wisely counsels against that. Stats more than most is a minefield of pitfalls, such as overfitting. If your aim is authentic research, then mindless modelslinging will quickly come up against its own limitations. That's the message I keep getting from experts in the field. Kirby PS: thanks to Steve Holden, I got to visit the astronomy world up close, the form of the Hubble Space Telescope instrumentation team, eager for Python knowledge. These were already programmers, experts with IDL, but IDL is not the hard currency Python is, in the wider job market. For many reasons, astronomers can't put all their eggs in one basket. The Python ecosystem has been a godsend.
On Saturday, February 24, 2018, kirby urner <kirby.urner@gmail.com> wrote:
In terms of Machine Learning more generally, I want to give special recognition to Jake VanderPlas, an astronomer who dives deep into scikitlearn in some multihour Youtubeshared tutorials.
Example: https://youtu.be/L7R4HUQeQ0
His excellent keynote at Pycon2017: https://youtu.be/ZyjCqQEUa8o
Jake does a superexcellent job of showing off the internal consistency of the scikitlearn API, where you can basically use the same code while just swapping in one classifier or regressor for another.
He also speaks the jargon pretty flawlessly, to my ears at least, in terms of what's a feature (label) and what's an observation etc., going into both supervised and unsupervised learning scenarios (scikitlearn handles both).
Bravo Jake.
+1. "Python Data Science Handbook" (by Jake VanderPlas) is available in print and as free Jupyter notebooks: https://github.com/jakevdp/PythonDataScienceHandbook It covers IPython, NumPy, Pandas, Matplotlib, and ScikitLearn.
Allen Downey has great complementary tutorials which go deeper into the statistical thinking behind these ML models. ThinkBayes is fantastic.
It's tempting to just mindlessly throw models at data looking for a best fit, and maybe that's all some underpaid cube farmer has time for, but VanderPlas, along with Downey, wisely counsels against that.
Stats more than most is a minefield of pitfalls, such as overfitting. If your aim is authentic research, then mindless modelslinging will quickly come up against its own limitations. That's the message I keep getting from experts in the field.
Kirby
PS: thanks to Steve Holden, I got to visit the astronomy world up close, the form of the Hubble Space Telescope instrumentation team, eager for Python knowledge. These were already programmers, experts with IDL, but IDL is not the hard currency Python is, in the wider job market. For many reasons, astronomers can't put all their eggs in one basket. The Python ecosystem has been a godsend.
On Sat, Feb 24, 2018 at 5:21 PM, Wes Turner <wes.turner@gmail.com> wrote:
+1. "Python Data Science Handbook" (by Jake VanderPlas) is available in print and as free Jupyter notebooks: https://github.com/jakevdp/PythonDataScienceHandbook
It covers IPython, NumPy, Pandas, Matplotlib, and ScikitLearn.
Yes! Open on my desk in front of me. Kirby
Hi All, Thanks for the great comments. Sorry for the delay. I have reviewed most of the materials and will review more. I drafted a presentation plan for next Friday here: https://docs.google.com/document/d/1MNIwqjJ2kVS80zy69606TEPLZGy_e5W0Ae7L5Be... If you have any more comments let me know. Perry On Sat, Feb 24, 2018 at 9:28 PM, kirby urner <kirby.urner@gmail.com> wrote:
On Sat, Feb 24, 2018 at 5:21 PM, Wes Turner <wes.turner@gmail.com> wrote:
+1. "Python Data Science Handbook" (by Jake VanderPlas) is available in print and as free Jupyter notebooks: https://github.com/jakevdp/PythonDataScienceHandbook
It covers IPython, NumPy, Pandas, Matplotlib, and ScikitLearn.
Yes! Open on my desk in front of me.
Kirby
 PerryGrossman2008@gmail.com (617) 3839061
participants (5)

A Jorge Garcia

Blake

kirby urner

Perry Grossman

Wes Turner