Jupyter notebook

  • Json file
  • You need a tool to "see" this file as as set of cells, either text or code cells
  • It is language agnostic and it supports execution environments (aka kernels) in several dozen languages among which are Julia, R, Haskell, Ruby, and Python
  • When you run a notebook, you create a session
  • You can create and share documents/notebooks that contain live code, visualizations and narrative text.

Google colab

  • Colaboratory, or “Colab” for short, is a product from Google Research. Colab allows you to run jupyter notebook, so you can write and execute python live code in the browser.
  • It is especially well suited to machine learning, data analysis and education.
  • Offers GPU and TPU

combine jupyter notebook and colab


  • how to create a notebook?
  • how to run a notebook at colab?
  • Lesson dynamic: student needs only to save/push the notebook file

  • Walkthru project and Milestone dynamic: student needs to push files from session to repo; and save notebook file
    • how to connect a colab session to the repo? (so you can push files and save notebook changes)
    • in reality we are providing a notebook template with the code for cloning/connecting, the student would copy and past this template and rename it
    • how to push a file from colab session to repo?
    • how to save a notebook at colab?

  • see lesson format example
  • see challenge section
    • open notebook as raw file and look for "challenges" cell