In the second week of #EL30 we explored the topic of Cloud. Stephen begins by introducing the idea:
The joke is that “the cloud” is just shorthand for “someone else’s computer.” The conceptual challenge is that it doesn’t matter whose computer it is, that it could change any time, and that we should begin to think of “computing” and “storage” as commodities, more like “water” or “electricity”, rather than as features of a type of device that sits on your desktop.
On initial reading I found this a difficult concept to wrap my head around. How could I consider cloud computing more like water? I found it a little difficult to interpret it in that way. However, the more I learned about the topic from the resources, the weekly activity, from reading fellow participants blog posts, and from my own research, the more that Stephen’s words carried greater weight and meaning for me.
One of the defining features of cloud computing is that it can be an on-demand self-service – “the cloud is a form of utility computing”. And like a utility service, take for example electricity in our homes, we can choose a provider, sign up and create an account with them and use the service whenever we need it, as much or as little of it as we can or want. We’re then billed by the provider for the extent of our usage of that service. The utility or commodity comparison makes clear sense in this regard. One distinct advantage that the cloud possesses is that by placing our data and the services we use on the cloud they becomes accessible to us from virtually anywhere, not just at home but on the train, in the office, and on any device that can access the web.
In the #EL30 guest conversation this week, Tony Hirst, Senior Lecturer in Telematics at the Open University, UK, spun up a virtual server using Digital Ocean into which he installed a pre-built Docker container and ran the Jupyter Notebook application. The Jupyter web app facilitates creation of a shared living document. Manipulations of the programming code (the input) can be run and instantaneously outcomes (the output) can be viewed. Stephens points us towards the idea that
These new resources allow us to redefine what we mean by concepts such as ‘textbooks’ and even ‘learning objects’.Source
It took Tony a matter of seconds to do this at a cost to him of approximately £0.03 per hour of usage. Tony, in England, communicated the IP address for the web application auto-generated by Digital Ocean in the form of a URL to access the container that he had spun up to Stephen, in Canada. Half way around the world, Stephen browsed to this URL address and was able to access the application along with Tony. Essentially, the cloud made it possible for them to share a computing service over the internet.
In terms of its application to eLearning, cloud offers some powerful opportunities and benefits: virtual sandboxes could be easily created to test out proprietary software on (or any software) at much reduced costs to both educators and students in a variety of disciplinary contexts; through removal of the barriers of device, OS, particular device configuration etc., anyone with a web-enabled device and internet access could begin working independently, with peers, teachers, or colleagues, within the specific online learning environment of choice.
In particular, anyone who has used or is familiar with some Linux OS distributions will be familiar with package installation and the need to have dependencies installed in order for the package you want to work properly. Spinning up a virtual server to host a pre-built container including all necessary code and dependencies to support the application(s) you want to work on with students or colleagues, removes the problematic support requirement to troubleshoot the myriad of different devices, OS’s, configurations, dependencies and versions that each individual person’s device can have. The cloud overcomes this – everyone starts off singing from the same hymn sheet, the same shared online computing environment.
A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another. A Docker container image is a lightweight, standalone, executable package of software that includes everything needed to run an application: code, runtime, system tools, system libraries and settings.Source
An aspiration that Tony felt would be worthwhile for institutions to work toward is that of developing institutional clouds – for more institutions to begin to offer Docker machines (or similar) that staff and students could log into via URL from their personal desktop computers. These machines run on institutional servers, could, for example, host a multiplicity of Docker containers or cluster containers catering for an extensive array of disciplinary and trans-disciplinary subject matter that interfaces through a web browser. Ideally it could be mounted to each individual’s own file store so that items could be launched and saved back to the file store. Currently, using the Digital Ocean virtual server setup described above, it’s not possible to save work within the Jupyter Notebook running within the Docker container. Work done during a session is destroyed upon exiting the application unless it is downloaded in the specific file format (.ipynb) that can be re-uploaded to continue working on it the next time the containerised application is being used.
Here’s a snapshot of Tony’s ‘showntell’ Github respository. Notice that he has branches with different Jupyter Notebooks for astronomy, chemistry, computing, electronics, engineering, linguistics, etc. Same application, multiple trans-disciplinary uses and users.
In a context where I am reading more and more about ownership of our own data and self-hosting as a possible means of reclaiming digital identity, Keith Harmon set a interesting and intriguing scene over on his blog:
As a complex system myself, I self-organize and endure only to the degree that I can sustain the flows of energy (think food) and information (think EL 3.0) through me. The cloud is primarily about flows of information, and the assumption I hear in Stephen’s discussion is that I, an individual, should be able to control that flow of information rather than some other person or group (say, Facebook) and that I should be able to control the flow of information both into and out of me. I find this idea of self-control, or self-organization, problematic—mostly because it is not absolute. As far as I know, only black holes absolutely command their own spaces, taking in whatever energy and information they like and giving out nothing (well, almost nothing—seems that even black holes may not be absolute).Source
Keith provides a deeper insight into his perspective and extends an invite to his readers to journey with him outside, where he likes to think about these kind of discussions.
It helps me to walk outside for discussions such as this, so come with me into my backyard for a moment. The day is cool and sunny, so I’m soaking in lots of energy from sunlight. I’ve had a great breakfast, so more energy. I’ve read all the posts about the cloud in the #el30 feed, so I have lots of information. Of course, I’m pulling in petabytes of data from my backyard, though I’m conscious of only a small bit. Even with the bright light, I can see only a sliver of the available bandwidth. I hear only a little of what is here, and I certainly don’t hear the cosmic background radiation, the echo of the big bang that is still resonating throughout the universe. I’m awash in energy and information. I always have been. Furthermore, I can absorb and process only a bit (pun intended) of the data and energy streams flowing around me, and very little of this absorption is my choice. Yes, if the Sun is too bright, I can go back inside, put on more clothing, or put on sunscreen, but really, what have I to do about the flow of energy from the Sun?Source
I’m going to take some time to mull over thoughts of being
truly able to control the flow of information both into and out of me. It’s an intriguing question.
If anyone is seeking to implement Jupyter Notebooks into their practice, Tony has authored a resource entitled “Getting Started With Jupyter Notebooks for Teaching and Learning”, which might be useful.
If you’d like to test-drive Jupyter for yourself you can do so at
If your HEI provides Microsoft O365, your credentials should be able to log you into notebooks.azure.com to run notebooks from.
Google also offer a notebook environment at colab.research.google.com which includes integrated storage within Drive.