For students, and O’Reilly School of Technology students in particular, beginning a course likely means paper notebooks, notebook computers, and learning sandboxes. I spend a lot of time thinking about learning environments, because we provide them to the students of the O’Reilly School of Technology. I thought I’d share some of my thoughts regarding these tools, and give some insight into the way we are taking one traditional piece of the educational puzzle and updating it to improve the way we deliver learning tools to students.
This might seem obvious, but notebooks are the way we document and communicate most learning in schools. How do you demonstrate that you understand the underlying tensions of the American Civil War? You write an insightful paper on that topic. Books, research papers, notebooks, reports, and even source code generally serve the same purpose: to document and communicate. Of course there are tangible differences between all of those formats, but for purposes of this discussion, I’ll refer to them all as “notebooks.”
In the beginning, there were only static notebooks. Not static in the sense that they couldn’t ever change, but it was certainly a chore to do so. Writing on paper is linear, and thinking isn’t always so. It’s hard to make room in the middle of a page when you want to add something new. Even so, paper is great – you can take it to the beach and brush the sand off it, and edit using cheap pencils until the eraser is gone. You can tell how far someone’s ideas have evolved by examining the eraser smudge marks on the pages.
Active notebooks gained favor when word processing became more user friendly, allowing writers to record thoughts and edit without worry. Way back in 1990, Microsoft released Object Linking and Embedding (OLE) for Windows, which enabled users to create compound documents that contained items like Word and Excel documents. Apple had a similar technology: OpenDoc. With these technologies your Word files (notebook) could include live Excel data, grab some bits from a database application, and you could share it all with your coworkers.
In practice, these technologies didn’t create the “notebooked” world of the future as promised. Back then, computers had much more limited resources. Getting programs of different types and usages to play nicely with each other was also a huge engineering challenge, even if you had no political issues (remember Mac OS vs. Windows in the early 1990s?) I think Wikipedia sums it up nicely:
It also appears that OpenDoc was a victim of an oversold concept, that of compound documents. Only a few specific examples are common, for instance most word processors and page layout programs include the ability to include graphics, and spreadsheets are expected to handle charts.
Today, it’s easy to take a Word or HTML document and link to outside resources, or just copy and paste things into your file. Hyperlinks, image links, and iframes help to facilitate that. Blog software like WordPress and sites like Tumblr remove much of the day-to-day friction of creating content and lets you focus on the content itself. Word’s “Track Changes” feature and various revision control systems document your learning timeline, a fancy digital version of sidenotes and eraser smudges.
Yet another development in notebooks was interactivity. Suppose you want to include a mortgage amortization schedule in your document. Before interactive notebooks, you had to run the amortization calculation by hand, using a calculator, or using a computer program. It was up to you to take the data and put it into your document, and instead of copy and paste, you may have had to print out and re-type. If you wanted a graph in your final document, you usually had to print your text, print your graph separately, and then manually merge the results. I have even seen old documents where graphs from a dot matrix printout were cut with scissors and physically pasted into a page. Times were tough!
Students continue to learn mathematics by hand, and by using notebooks. Eventually somebody wondered about the possibility of learning math using interactive notebooks as well. The original interactive notebook interface on a computer was Mathematica 1.0, released on June 23, 1988. Using Mathematica, you could keep your notebook on the computer, perform computations, and generate tidy output that documents all of your work. You could share this notebook with coworkers and let them explore your analysis, or you could change your assumptions, and be a Shift-Enter away from seeing changes on your screen. Want to present your findings? My good friend and Mathematica expert, Bruce Carpenter, created a Mathematica notebook style in the early 1990s called “MathPoint” that transforms notebooks into PowerPoint presentations!
Around the time Mathematica was released, Jerry Uhl was pondering the same possibilities that led him to create courseware to teach mathematics using Mathematica. Finally, students were able to use the power of a computer to handle the mundane tasks of editing a math learning document, which allowed students to focus on learning instead. In addition, on a computer, graph paper and erasers are in endless supply, which further encourages students to practice and learn. Jerry’s work inspired the founders of Useractive, which is now the O’Reilly School of Technology.
We have come a long way since 1989. Before internet technology was widespread, Calculus and Mathematica courses could be technologically challenging. In order to use Mathematica you had to install it on your computer, and use floppy disks and a local network or email to submit your interactive notebooks to your instructor, making collaboration and the act of “handing in” a project difficult. It would take some time for technology to smooth out that process.
A few years ago the O’Reilly School of Technology took all of the math technologies I’ve described online with our Making Math project, effectively eliminating the often painful process of installing software and shuffling files back and forth–now we have connected interactive notebooks. We have come a long way from the days of sneakernet.
So what else is out there now? In the past year, the iPython project released version 1.0. iPython is a wonderful project. It offers an interactive notebook for the web, and supports a variety of languages and technologies (besides Python), such as R, Bash, and Ruby. People have made iPython interactive notebooks on topics from statistics and data science to earth science.
Google Docs is also considered an interactive notebook. Multiple people can edit it, it can link to outside content, and it tracks changes well.
Interactive notebooks are powerful tools for learners of many disciplines including math, science, and the humanities. I have seen a few interactive notebooks designed to help students learn specific programming skills in a nicely packaged environment that avoids most if not all of the friction encountered by new learners in computer science and programming.
What is the friction? Students may have to download and install software, then configure it, and be sure to keep it up to date to avoid any security issues. The degree of difficulty encountered depends on the specific operating system; I haven’t experienced DLL hell in a while, but it still happens more than it should.
Let me offer you another analogy. As a chef you might keep your recipes in a notebook, but you still go into the kitchen (the culinary sandbox) to experiment, learn, and create. Sharing a recipe is rewarding, but the real satisfaction comes when someone enjoys a slice of the pie you worked so hard to create.
To really learn programming, you have to use the same sandboxes that professional programmers use TO experiment and create – IDEs such as Eclipse or Visual Studio – even command-line MySQL prompts. The O’Reilly School of Technology removes nearly all of the friction between you and the real learning environment, and between you and your mentor. Instead of sharing pie with your mentor, you share your cool Android application.
Our courses let students face the real tool without fear. These tools aren’t so scary once we remove the unnecessary junk and give students a “reset” button to take things back to normal. Students can explore the tools freely, make mistakes, and be fearless, because we provide a parachute just in case.
The O’Reilly School of Technology currently offers these all-important sandboxes and notebooks to cover programming and mathematics courses. We’re currently working to integrate a sandbox for writing into our offerings as well, which will enable our students and mentors to create and collaborate using interactive notebooks in an even broader array of endeavors. The future of online learning is happening right here, right now.
If you want to learn more about our course offerings and our unique methods, or you’re ready to take advantage of the opportunity for real online learning, please contact our Student Services staff. They’re available to answer your questions Monday through Friday, from 8am to 12pm and 1pm to 5pm Pacific Time. They can be reached by telephone at 707-827-7288 or email at firstname.lastname@example.org.