Supporting CS Education Via Virtualization and Packages

Supporting CS Education Via Virtualization and Packages

Supporting CS Education via Virtualization and Packages Tools for Successfully Accommodating “Bring-Your-Own-Device” at Scale Andy Sayler, Dirk Grunwald, John Black, Elizabeth White, and Matthew Monaco University of Colorado Boulder, CO, USA <first>.<last>@colorado.edu ABSTRACT 1. INTRODUCTION Higher education is facing a paradigm shift in the owner- BYOD (Bring Your Own Device) has quickly become the ship and use of computer hardware. The school computer buzzword du jour in many IT circles. The term refers to the lab is no longer the primary place of student computer use. increasing prevalence of employee-owned hardware in tradi- Instead, students increasingly expect to use their own hard- tionally corporate-owned IT settings. Higher education is ware to complete their school assignments. This creates a not immune to this trend. Increasingly, students show up to challenge for computer science educators: we must now sup- college with their own laptops and expect to complete all of port a wide range of heterogeneous hardware without the their required assignments on these machines. We have ob- benefits of tight control over its use. To address this \Bring- served many recent students graduating without ever having Your-Own-Device" (BYOD) challenge, we leverage virtual- entered a school-owned computer lab or worked on a school- ization and software packaging systems to gracefully deploy owned computer. This creates a challenge for educators and and support a standardized development environment for the IT departments that support them: how do we ensure all core CS courses across a range of both school-owned and that students can successfully complete assignments on their student-owned computing devices. We have deployed and own machines? How can we guarantee a good experience evaluated our system for the previous two years at scale and doing so? And how can we achieve both of these objectives continue to actively use and develop it. It has effectively while adhering to budgetary limits, without prohibitive in- helped us support multiple classes comprising hundreds of creases in support staff hours and overhead? students with very limited IT staffing. We describe the de- In computer science, the issue is exacerbated by the pre- sign and management of our system, present our experience dominance of unfamiliar (at least to incoming students) ap- using our system, and discuss the lessons we've learned. We plications and operating systems. Like many universities, also provide data reflecting current student user experience our institution primarily uses a UNIX-derived development with our system. Our system has proven very effective in environment (GNU/Linux). While a Linux development en- addressing the student BYOD challenge in a manageable, vironment has many advantages (discussed below), the fact cost-efficient, and easy-to-use manner. that most students arrive without Linux installed on their computers poses a significant challenge. It is a non-trivial Categories and Subject Descriptors task to ensure students can run Linux, complete with a pre- configured suite of versioned compilers, debuggers, and edi- K.3.2 [Computers and Education]: Computer and Infor- tors to ensure uniform results across student, instructor, and mation Science Education grader machines, on their own hardware. The problem could likely be solved with sufficient hu- General Terms man resources: if we paired each student with an expe- rienced CS practitioner to help them setup a dual-boot, Management, Economics, Human Factors properly-configured development environment on their ma- chine, we could likely deploy and support a uniform environ- Keywords ment across a range of hardware; this is in fact the method BYOD, Virtual Machines, Education, Development Envi- traditionally used in many educational computing environ- ronment, Package Management, Tools, Best Practices ments. But in the age of shrinking budgets, growing teaching loads, and a push toward MOOC courses that can scale to thousands and tens of thousands of students, such a brute Permission to make digital or hard copies of all or part of this work for personal or force approach is simply not feasible in most situations. classroom use is granted without fee provided that copies are not made or distributed Instead, we have leveraged existing off-the-shelf virtualiza- for profit or commercial advantage and that copies bear this notice and the full citation tion and software management systems to create a common on the first page. Copyrights for components of this work owned by others than the virtual machine that is used across all of our core computer author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or science courses. This system allows us to provide students republish, to post on servers or to redistribute to lists, requires prior specific permission with an easily deployable solution that allows them to com- and/or a fee. Request permissions from [email protected]. SIGCSE’14, March 5–8, 2014, Atlanta, GA, USA. plete all of their CS work on their own machines without Copyright is held by the owner/author(s). Publication rights licensed to ACM. forcing them to significantly modify their existing setups. ACM 978-1-4503-2605-6/14/03 ...$15.00. Our approach has allowed us to support over eight-hundred http://dx.doi.org/10.1145/2538862.2538928. undergraduate students, many with little to no prior CS First, VirtualBox is a true multi-platform hypervisor pro- experience, for the cost of a single part-time graduate stu- viding a single unified platform for Windows, OSX, and dent appointment. The primary contributions of this paper Linux. Unlike other products such as HyperV, Parallels, or are twofold: We demonstrate how VMs can be deployed en VMWare, VirtualBox allows us to support a single piece of masse with minimal staffing to provide a single standardized software across all common student platforms, reducing the department-wide development environment across both VM burden of supporting a range of student hardware and op- and lab machines. We also show how using centralized soft- erating systems. Second, VirtualBox is both Free and Open ware management tools can simplify and streamline the dis- Source; students do not have to pay to use it, and they are tribution and maintenance of such a common development able to analyze or modify the source code if they wish. This environment. avoids requiring students or departments to purchase extra software and does not require students to install software 2. USING VIRTUAL MACHINES on their personal machines that they have no means to vet or modify. Finally, VirtualBox has solid support for Linux Leveraging virtualization technology to provide a uniform guests. This made it easy for us to configure our guest OS development environment in an educational setting is not a to interact with VirtualBox in a manner that ensures an op- new idea. At our institution, for example, individual fac- timal experience, allowing us to support functions like copy- ulty have used virtual machines (VMs) in classes for ≈ 7 ing between the VM and host system, sharing files between years. For example, VMs have long proven useful in com- systems, automatically scaling display resolutions, etc. puter security courses, both for use as servers that students Atop the hypervisor, we deploy a virtual machine based can practice attacking, as well as for use as clients that come on the Ubuntu 12.04.3 Desktop OS [6] (the latest Long Term pre-installed with the necessary security tools [15]. We have Support Ubuntu Linux release). We opted for a GNU/Linux- also used VMs since 2006 in a computer systems course to based development environment for its robust support for a enable new pedagogic techniques. VMs have also proven variety of CS tools and software, its widespread industry useful in topics such as robotics [7] and SaaS [8]. These ad- appeal, and its free, open, and permissive licensing. We hoc, per-course VM deployments have a several downsides: opted to use Ubuntu due to its large support base in the they require students to install a separate (and often large) Linux community. Ubuntu also has a rich library of soft- VM image for each course, they require a separate VM sup- ware packages, meaning that required software (i.e. ruby, port stack for each course, and they require students to learn scala, python, gcc, etc) would be available with little ad- simple tasks on multiple unfamiliar systems. ditional work. Ubuntu also provides a five-year supported 2.1 Our Requirements product life-cycle and is designed to be fairly user-friendly To improve upon this situation, we have pursued the de- for new Linux users. velopment a standard department-wide development envi- Our VM image starts as a standard Ubuntu 12.04.3 install. ronment. Our goal was simple: provide students with an We then configure it to work optimally on the average stu- easy to install and use development environment that they dent system. We use disk images that provide up to 30GB of could use across all their CS courses. The development en- VM HD space using a disk format that expands on demand vironment should be available both on department lab ma- to minimize actual disk use on student host systems. We chines, and as a VM for use on student-owned machines (e.g. configure the system to use up to 2GB of RAM and up to 2 as a \lab in a box"). Underlying this goal were a number of CPU cores by default. We make a few minor modifications expectations and requirements from various stakeholders in to the system configuration directly (i.e. setting the desk- the education environment. top background to an image that includes information for From the student perspective, our solution had to: a) Run using and getting help with the VM), but for the most part, on a range of host systems; b) Be easy to install; c) Be the majority of the post-install VM config is handled auto- easy to use and maintain; d) Minimize side-effects on the matically using a series of software meta-packages we have host system; e) Provide a stable experience throughout the created (described below).

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    6 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us