Teaching with Colab (Part 1 of 2)
I’ve been teaching Python programming for several years and I’ve discovered some great tools and techniques to help students learn and to make my life easier. My absolute favorite teaching tool is Google Colab — read on to learn why I love it.
This article (part 1) is for people who may be new to Jupyter or Colab. In Part 2, I’ll share more about how I use Colab in my virtual classrooms.
What is this Jupyter thing?
Jupyter is an open source software technology which enables authoring and executing interactive documents combining explanations and code. The name derives from the three most popular supported languages: Julia, Python, and R (in a previous life, this tool was called IPython).
The key takeaway is that this software presents a kind of virtual interactive notebook, where you can run code in-line, experiment freely, and iterate on your ideas without breaking anything. It’s a kind of computational playground. If you’ve not experienced this sort of computing tool before, the best way to get acquainted is to try one.
In fact, it’s even better than a real world notebook because you can save your work so you have a record of your learning session, you can access it from anywhere, you can copy and remix other peoples’ notebooks, and you can easily share your creations with the world.
Ok, but how do I make this available to my students?
Once you understand the power of Jupyter Notebooks, your next question might be “how do I setup a service so my students can use this tool?” In the bad old days, the answer went something like this:
- acquire some hardware
- install some software
- configure and administer everything
- deal with it when it breaks
And congratulations, you’re a system administrator!
Fortunately, nowadays we have cloud services that can make your life much easier. Since this is a blog about Colab, that’s the service I’m going to focus on in this article, though you should know there are other good services that provide online notebooks. Colab provides free cloud hosted notebooks for everyone. I like to think of Colab as “Google Docs for Jupyter”.
How do I get started?
This is the best part. Whether you’re a teacher or a student, your journey starts the same way: just click on a link. You’ll be able to create a new notebook, run someone else’s notebook (or one of your own), share a notebook with others — all in your favorite web browser.
Let’s imagine today is the first day of your Python Programming 101 course. An inquisitive student raises her hand and earnestly asks: “what software do we need to install?” Your answer is music to students’ ears: “There’s nothing to install; we’ll be doing all our coursework in a web browser. Let me show you how.” Doesn’t that feel great?
Hopefully you now understand, at a high level, how Colab can help you in the classroom. In Part 2 of this series we’ll see some concrete, practical examples, like using Colab for lecture and review notes, for homework assignments, and for learning assessments.
Are you using Colab in the classroom? Please add a comment below about your experience. And let us know how we can make Colab better for your use case!