SlideShare a Scribd company logo
1 of 46
Download to read offline


Music and Jupyter
A combo for creating collaborative
narratives for teaching
Carol Willing
Project Jupyter
Cal Poly SLO
August 24, 2017
JupyterCon 2017
@carolwilling
Headline Slide
Sub-headline
Hello
Headline Slide
Sub-headline
Hi
Carol Willing
Project Jupyter
Steering Council and Developer
Cal Poly SLO
Software Engineer
Python Software Foundation
Recent Director
CPython
Core Developer
Fab Lab San Diego
Geek in Residence
@willingcarol
Learning results from what a
student does and thinks and
only what the student does
and thinks.
Herbert A. Simon
Why music?
Real world interest matters.
Jupyter notebooks engage learners
Engaging students and musicians
PyCon 2014
Universal
Cross-cultural understanding
Creative
Lifelong
learning
Access and
opportunities
...see mistakes
...as interesting
opportunities
to learn
Photo taken by Matthew Bowers
Benjamin Zander


Tools
Jupyter Notebook and JupyterLab
markdown
language kernels (Python, R, Julia)
ipywidgets
nbconvert
RISE, nbpresent
Sphinx
JupyterHub and Binder


Content
music21 - Michael Cuthbert
magenta - tensorflow music generation
Allen Downey’s Think DSP notebooks
Extempore - live coding of music
Visualizing music - AnnMarie Thomas
Jupyter
Notebook
A Jupyter Notebook document with a visualization of measles data.
Jupyter
Notebook
Interactive
Browser-based computing environment
Exploratory
Science, machine learning, visualization, analysis,
stats
Reproducible document format
Code
Narrative text (markdown)
Equations (LaTeX)
Images, visualizations
Over 50 programming languages
Everything open-source (BSD license)


Prose
Code
Visualizations
Video and animations
Widgets
Audio
Jupyter ingredients
Prose
#, ##, ### Headings
*music* music
**corpus** corpus
`print(chord)` chord
Shift-Enter Execute cell
Live preview in JupyterLab
previewsource
Code
• JupyterLab (attach a console for exploration)
• List and install requirements
• Drop into file system
• Export as script
Run code in the notebook
Shift-Enter to execute a code cell.
Shift-Command-Enter to enter single document mode. Similar to classic notebook.
Visualizations
music21 - sheet music
Visualizations
music21 interact with MuseScore
Visualizations 
music21 translate to braille
Video and
Animation
ipywidgets
Docs
https://ipywidgets.readthedocs.io
cookiecutter to simplify
creating new widgets
Interactive
Documentation
Engaging User Content
Rapid“what if”
scenarios
http://jupyter.org/widgets.html
Widgets
Audio
magenta.tensorflow.org
Audio
https://github.com/tensorflow/magenta-demos/tree/master/jupyter-notebooks
Audio
https://magenta.tensorflow.org/performance-rnn

Ian Simon and Sageev Oore. "Performance RNN:
Generating Music with Expressive
Timing and Dynamics." Magenta Blog, 2017.
https://magenta.tensorflow.org/performance-
rnn
Audio
https://magenta.tensorflow.org/nsynth-instrument
Everyday
Sounds
https://experiments.withgoogle.com/ai/drum-machine

https://github.com/googlecreativelab/aiexperiments-drum-machine
Nature’s
music
https://experiments.withgoogle.com/ai/bird-sounds
https://experiments.withgoogle.com/ai/drum-machine
https://experiments.withgoogle.com/ai/bird-sounds
36
How?
Start with content (videos, code, notebooks)
Gather into a repo
Create and iterate on notebooks
Use Binder to share
Run a workshop or lesson (RISE, nbpresent)
Publish (Sphinx supports markdown, reStructuredText, notebooks)
Create a website
Live code
on
Binder
https://beta.mybinder.org/v2/gh/minrk/ligo-binder/master?filepath=index.ipynb
https://losc.ligo.org/tutorials/
Exploration and experimentation
Physical media with electronics
Real world, self-directed projects
Teaching Signal Processing using Wearables
and Jupyter Notebooks
Dr. Demba Ba
http://pyvideo.org/scipy-2016/labs-in-the-wild-teaching-signal-processing-using-wearables-jupyter-notebooks-scipy-2016.html
Using Jupyter Notebooks with R in the
classroom
Tanya Schlusser
Excellent resource on using tmpnb and
JupyterHub for teaching
http://jupyter.rocks/
https://github.com/tanyaschlusser/Jupyter-with-R
What can
you do
with
Jupyter?
Extend Remix
Apply
Collaborate
?
?
Creating gateways to learning
PyLadies
DjangoGirls
Workshops
Conferences
User groups
Sprints
pyvideo.org
Documentation
Credit: http://bostonpythonworkshop.com/
You create the future
Credit: http://pythonineducation.org/
Sub-headline
Thank you
• Demba Ba
• Jeremy Freeman, Binder
• Michael Cuthbert, music21
• Allen Downey, Think DSP
• AnnMarie Thomas, Visualizing Music
Attributions and recognition
A huge thank you to the Project Jupyter team and community.
Your hard work and passion makes this all possible.
• Tanya Schuller
• Magenta team
• FabLab San Diego
• Photo credits on individual slides
• Content credit on slides


Music and Jupyter
A combo for creating collaborative
narratives for teaching
Carol Willing
Project Jupyter
Cal Poly SLO
August 24, 2017
JupyterCon 2017
@carolwilling

More Related Content

What's hot (6)

JupyterHub - A "Thing Explainer" Overview
JupyterHub - A "Thing Explainer" OverviewJupyterHub - A "Thing Explainer" Overview
JupyterHub - A "Thing Explainer" Overview
 
Google SuperPowers for Super Educators with Awesome Apps & Extensions!
Google SuperPowers for Super Educators with Awesome Apps & Extensions!Google SuperPowers for Super Educators with Awesome Apps & Extensions!
Google SuperPowers for Super Educators with Awesome Apps & Extensions!
 
All About Google Tools
All About Google ToolsAll About Google Tools
All About Google Tools
 
Engaging Students with Google Communities
Engaging Students with Google CommunitiesEngaging Students with Google Communities
Engaging Students with Google Communities
 
Tricks and Tips: You Too can use YouTube!
Tricks and Tips:  You Too can use YouTube!Tricks and Tips:  You Too can use YouTube!
Tricks and Tips: You Too can use YouTube!
 
Top ten google tips for educators
Top ten google tips for educatorsTop ten google tips for educators
Top ten google tips for educators
 

Similar to Jupyter and Music

Podcasting intro for Rhodes
Podcasting intro for RhodesPodcasting intro for Rhodes
Podcasting intro for Rhodes
Bryan Alexander
 
Stop Looking and Start Listening
Stop Looking and Start ListeningStop Looking and Start Listening
Stop Looking and Start Listening
Becky Stewart
 
Podcasting intro for Union College
Podcasting intro for Union CollegePodcasting intro for Union College
Podcasting intro for Union College
Bryan Alexander
 
Enhancing a Digital Sheet Music Collection A report for LIS-435 ...
 Enhancing a Digital Sheet Music Collection A report for LIS-435 ... Enhancing a Digital Sheet Music Collection A report for LIS-435 ...
Enhancing a Digital Sheet Music Collection A report for LIS-435 ...
crysatal16
 
Beyond the city of ember final version
Beyond the city of ember final versionBeyond the city of ember final version
Beyond the city of ember final version
dhdavidson
 
Final year project presentation
Final year project presentationFinal year project presentation
Final year project presentation
elmidodd
 
Media Art Presentation
Media Art PresentationMedia Art Presentation
Media Art Presentation
nafets21
 
Finbar m usic industry vision 2014
Finbar m usic industry vision 2014Finbar m usic industry vision 2014
Finbar m usic industry vision 2014
Finbar O'Hanlon
 

Similar to Jupyter and Music (20)

Helmi Zuhdi
Helmi ZuhdiHelmi Zuhdi
Helmi Zuhdi
 
Podcasting intro for Rhodes
Podcasting intro for RhodesPodcasting intro for Rhodes
Podcasting intro for Rhodes
 
Stop Looking and Start Listening
Stop Looking and Start ListeningStop Looking and Start Listening
Stop Looking and Start Listening
 
Music hack day
Music hack day Music hack day
Music hack day
 
Just Add Beats: STEAM Learning Through Audio Recording presented at Texas STE...
Just Add Beats: STEAM Learning Through Audio Recording presented at Texas STE...Just Add Beats: STEAM Learning Through Audio Recording presented at Texas STE...
Just Add Beats: STEAM Learning Through Audio Recording presented at Texas STE...
 
Jewish Music Online: Digital Fieldwork
Jewish Music Online: Digital FieldworkJewish Music Online: Digital Fieldwork
Jewish Music Online: Digital Fieldwork
 
OMLTA Presentation- Integrating Technology into the Language learning classroom
OMLTA Presentation-  Integrating Technology into the Language learning classroomOMLTA Presentation-  Integrating Technology into the Language learning classroom
OMLTA Presentation- Integrating Technology into the Language learning classroom
 
Composing and creating with apps
Composing and creating with appsComposing and creating with apps
Composing and creating with apps
 
Podcasting intro for Union College
Podcasting intro for Union CollegePodcasting intro for Union College
Podcasting intro for Union College
 
Websites Used
Websites UsedWebsites Used
Websites Used
 
Enhancing a Digital Sheet Music Collection A report for LIS-435 ...
 Enhancing a Digital Sheet Music Collection A report for LIS-435 ... Enhancing a Digital Sheet Music Collection A report for LIS-435 ...
Enhancing a Digital Sheet Music Collection A report for LIS-435 ...
 
Pitch session #2
Pitch session #2Pitch session #2
Pitch session #2
 
Podcasting - OLA Super Conference 2009
Podcasting - OLA Super Conference 2009Podcasting - OLA Super Conference 2009
Podcasting - OLA Super Conference 2009
 
Beyond the city of ember final version
Beyond the city of ember final versionBeyond the city of ember final version
Beyond the city of ember final version
 
Final year project presentation
Final year project presentationFinal year project presentation
Final year project presentation
 
Music in the Archives
Music in the ArchivesMusic in the Archives
Music in the Archives
 
How to Repurpose Library Space: Listening Lab Edition
How to Repurpose Library Space: Listening Lab EditionHow to Repurpose Library Space: Listening Lab Edition
How to Repurpose Library Space: Listening Lab Edition
 
Media Art Presentation
Media Art PresentationMedia Art Presentation
Media Art Presentation
 
Finbar m usic industry vision 2014
Finbar m usic industry vision 2014Finbar m usic industry vision 2014
Finbar m usic industry vision 2014
 
The Evolution of Spotify Home Architecture - Qcon 2019
The Evolution of Spotify Home Architecture - Qcon 2019The Evolution of Spotify Home Architecture - Qcon 2019
The Evolution of Spotify Home Architecture - Qcon 2019
 

More from Carol Willing

2014 06 16_wearables_sdmakers
2014 06 16_wearables_sdmakers2014 06 16_wearables_sdmakers
2014 06 16_wearables_sdmakers
Carol Willing
 
2014 01 23_pyladies_san diego python user group
2014 01 23_pyladies_san diego python user group2014 01 23_pyladies_san diego python user group
2014 01 23_pyladies_san diego python user group
Carol Willing
 
2014 01 23_pycon_san diego python user group meeting
2014 01 23_pycon_san diego python user group meeting2014 01 23_pycon_san diego python user group meeting
2014 01 23_pycon_san diego python user group meeting
Carol Willing
 
PyCon Poster 2014 music21
PyCon Poster 2014 music21PyCon Poster 2014 music21
PyCon Poster 2014 music21
Carol Willing
 
PyLadies San Diego 2014 February meeting
PyLadies San Diego 2014 February meetingPyLadies San Diego 2014 February meeting
PyLadies San Diego 2014 February meeting
Carol Willing
 

More from Carol Willing (15)

Interactive Computing in Computer Science
Interactive Computing in Computer ScienceInteractive Computing in Computer Science
Interactive Computing in Computer Science
 
Machine Learning and Jupyter
Machine Learning and JupyterMachine Learning and Jupyter
Machine Learning and Jupyter
 
JupyterHub + kubernetes
JupyterHub + kubernetesJupyterHub + kubernetes
JupyterHub + kubernetes
 
JupyterHub tutorial at JupyterCon
JupyterHub tutorial at JupyterConJupyterHub tutorial at JupyterCon
JupyterHub tutorial at JupyterCon
 
Journey to Jupyter
Journey to JupyterJourney to Jupyter
Journey to Jupyter
 
Data, decision making, and being human
Data, decision making, and being humanData, decision making, and being human
Data, decision making, and being human
 
JupyterHub, User Groups, and You
JupyterHub, User Groups, and YouJupyterHub, User Groups, and You
JupyterHub, User Groups, and You
 
Yes, you can git!
Yes, you can git!Yes, you can git!
Yes, you can git!
 
Python - The People's Programming Language
Python - The People's Programming LanguagePython - The People's Programming Language
Python - The People's Programming Language
 
Finding your groove
Finding your grooveFinding your groove
Finding your groove
 
2014 06 16_wearables_sdmakers
2014 06 16_wearables_sdmakers2014 06 16_wearables_sdmakers
2014 06 16_wearables_sdmakers
 
2014 01 23_pyladies_san diego python user group
2014 01 23_pyladies_san diego python user group2014 01 23_pyladies_san diego python user group
2014 01 23_pyladies_san diego python user group
 
2014 01 23_pycon_san diego python user group meeting
2014 01 23_pycon_san diego python user group meeting2014 01 23_pycon_san diego python user group meeting
2014 01 23_pycon_san diego python user group meeting
 
PyCon Poster 2014 music21
PyCon Poster 2014 music21PyCon Poster 2014 music21
PyCon Poster 2014 music21
 
PyLadies San Diego 2014 February meeting
PyLadies San Diego 2014 February meetingPyLadies San Diego 2014 February meeting
PyLadies San Diego 2014 February meeting
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Recently uploaded (20)

Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 

Jupyter and Music