Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3393527.3393545acmotherconferencesArticle/Chapter ViewAbstractPublication Pagesacm-turcConference Proceedingsconference-collections
research-article

Developing (Almost) Free Distributed System Labs Using Container-based Technique

Published: 26 October 2020 Publication History

Abstract

Developing successful labs is essential to advanced CS courses. As the fast development on novel programming models and system frameworks, our CSE education calls for a collaborative, community-sourced design effort that maximizes the benefit from effective lab practice. However, building one unified lab platform is expensive, while outsourcing lab works to students faces challenges like infrastructure requirements, heterogeneous operating environments, and the desire to incentivize individual work. To address these challenges, we present our recent efforts on developing, deploying, and analyzing up-to-date distributed system labs based on container-based techniques and open source community supports. Our work uses docker containers that provide a light and consistent environment to support fast lab exercise construction and migration. This enables our students host their own labs with a modest laptop or desktop. Further, We provide a machine learning engine that automatically crawls students' homework images and evaluated with the weighted Adaboost algorithm on elected course topics. As such, we allow to build novel and practical distributed computer labs for (almost) free. We deployed and evaluated our work in a continuous three-year course teaching. The results show that our students provide positive feedback on learning and experiencing complex computer system concepts without increasing the complexity of lab setup or assessment.

References

[1]
[n.d.]. coursera. https://www.coursera.org/.
[2]
[n.d.]. dockerhub. https://hub.docker.com.
[3]
[n.d.]. Harvard online courses. https://online-learning.harvard.edu/.
[4]
[n.d.]. OpenStack. https://www.openstack.org/.
[5]
[n.d.]. Xilinx University Program. https://www.xilinx.com/support/university.html.
[6]
J. L. F. Aleman. 2011. Automated Assessment in a Programming Tools Course. IEEE Transactions on Education 54, 4 (2011), 576--581.
[7]
Pavlo Antonenko, Serkan Toy, and Dale Niederhauser. 2004. Modular Object-Oriented Dynamic Learning Environment: What Open Source Has to Offer. Association for Educational communications and Technology (2004).
[8]
Ken Barr, Prashanth Bungale, Stephen Deasy, Viktor Gyuris, Perry Hung, Craig Newell, Harvey Tuch, and Bruno Zoppis. 2010. The VMware mobile virtualization platform: is that a hypervisor in your pocket? Acm Sigops Operating Systems Review 44, 4 (2010), 124--135.
[9]
Sue-Jen Chen and Chaoli Hsu. 2005. Instructional design strategies for intensive online courses. In M. Simonson, M. Crawford & Association for Educational Communications, and Technology (Eds.), Annual proceedings of selected research and development papers presented at the national convention of the association for educational communications and technology (28th, orlando, florida, 2005), Vol. 2. Citeseer, 143--151.
[10]
Christopher Clark, Keir Fraser, Steven Hand, Jacob Gorm Hansen, Eric Jul, Christian Limpach, Ian Pratt, and Andrew Warfield. 2005. Live migration of virtual machines. In Nsdi05 Conference on Symposium on Networked Systems Design Implementation.
[11]
C. Daly and J. M. Horgan. 2004. An automated learning system for Java programming. IEEE Transactions on Education 47, 1 (2004), 10--17.
[12]
Marijana Despotovic-Zrakic, Aleksandar Markovic, Zorica Bogdanovic, Dusan Barac, and Srdjan Krco. 2012. Providing Adaptivity in Moodle LMS Courses. Journal of Educational Technology Society 15, 1 (2012), 326--338.
[13]
Douglas H. Fisher. 1987. Knowledge acquisition via incremental conceptual clustering. Machine Learning 2, 2 (1987), 139--172.
[14]
Lee Wang Fu and Tak Lam Wong. 2008. Designing Programming Exercises with Computer Assisted Instruction. In International Conference on Hybrid Learning Education.
[15]
Stephen Gilmore and Mirco Tribastone. 2006. Evaluating the scalability of a web service-based distributed e-learning and course management system. In International Workshop on Web Services Formal Methods.
[16]
Ronald L Graham, Donald E Knuth, Oren Patashnik, and Stanley Liu. 1989. Concrete mathematics: a foundation for computer science. Computers in Physics 3, 5 (1989), 106--107.
[17]
Colin A. Higgins, Geoffrey R. Gray, Pavlos Symeonidis, and Athanasios Tsintsifas. 2005. Automated assessment and experiences of teaching programming. Journal on Educational Resources in Computing 5, 3 (2005), 5.
[18]
David Jaramillo, Borko Furht, and Ankur Agarwal. 2014. Mobile Virtualization Container Performance Analysis.
[19]
Xiaobo Jin, Xinwen Hou, and Cheng-Lin Liu. 2010. Multi-class AdaBoost with Hypothesis Margin. In 20th International Conference on Pattern Recognition, ICPR 2010, Istanbul, Turkey, 23-26 August 2010. 65--68. https://doi.org/10.1109/ICPR.2010.25
[20]
PI-Hai Lin and Melissa Lin. 2005. Design and implementation of an internet-based virtual lab system for eLearning support. In Fifth IEEE International Conference on Advanced Learning Technologies (ICALT'05). IEEE, 295--296.
[21]
Charlie Mcdowell, Linda L. Werner, Heather E. Bullock, and Julian Fernald. 2006. Pair programming improves student retention, confidence, and program quality. Communications of the Acm 49, 8 (2006), 90--95.
[22]
D. Mckinney and L. F. Denton. 2006. Developing collaborative skills early in the CS curriculum in a laboratory environment. Acm Sigcse Bulletin 38, 1 (2006), 138--142.
[23]
Edna Holland Mory. 2004. Feedback research revisited. Handbook of Research for Educational Communications Technology (2004).
[24]
J. Van Der Pol, B. A. M. Van Den Berg, W. F. Admiraal, and P. R. J. Simons. 2008. The nature, reception, and use of online peer feedback in higher education. Computers Education 51, 4 (2008), 1804--1817.
[25]
Luisa M. Regueras, Elena Verdu, M. F. Munoz, María A. Perez, Juan P. De Castro, and M. J. Verdu. 2009. Effects of Competitive E-Learning Tools on Higher Education Students: A Case Study. IEEE Transactions on Education 52, 2 (2009), 279--285.
[26]
T. Rongas, A. Kaarna, and H. Kalviainen. 2004. Classification of computerized learning tools for introductory programming courses: Learning approach. In IEEE International Conference on Advanced Learning Technologies.
[27]
G. Rätsch, T. Onoda, and K. R. Müller. 2001. Soft Margins for AdaBoost. Machine Learning 42, 3 (2001), 287--320.
[28]
Jaime Spacco, David Hovemeyer, William Pugh, Fawzi Emad, Jeffrey K. Hollingsworth, and Nelson Padua-Perez. 2006. Experiences with mar-moset: designing and using an advanced submission and testing system for programming courses. Acm Sigcse Bulletin 38, 3 (2006), 13--17.
[29]
Andrew S. Tanenbaum and Maarten van Steen. 2006. Distributed Systems: Principles and Paradigms (2Nd Edition). Prentice-Hall, Inc., Upper Saddle River, NJ, USA.
[30]
John M Tauer and Judith M Harackiewicz. 2004. The effects of cooperation and competition on intrinsic motivation and performance. J Pers Soc Psychol 86, 6 (2004), 849--861.
[31]
Maarten Vansteenkiste and Edward L. Deci. 2003. Competitively Contingent Rewards and Intrinsic Motivation: Can Losers Remain Motivated? Motivation Emotion 27, 4 (2003), 273--299.
[32]
Elena Verdú, Luisa M Regueras, María J Verdú, José P Leal, Juan P de Castro, and Ricardo Queirós. 2012. A distributed system for learning programming on-line. Computers & Education 58, 1 (2012), 1--10.

Index Terms

  1. Developing (Almost) Free Distributed System Labs Using Container-based Technique

      Recommendations

      Comments

      Information & Contributors

      Information

      Published In

      cover image ACM Other conferences
      ACM TURC '20: Proceedings of the ACM Turing Celebration Conference - China
      May 2020
      220 pages
      ISBN:9781450375344
      DOI:10.1145/3393527
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      In-Cooperation

      • Baidu Research: Baidu Research

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 26 October 2020

      Permissions

      Request permissions for this article.

      Check for updates

      Qualifiers

      • Research-article
      • Research
      • Refereed limited

      Conference

      ACM TURC'20

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • 0
        Total Citations
      • 47
        Total Downloads
      • Downloads (Last 12 months)9
      • Downloads (Last 6 weeks)1
      Reflects downloads up to 27 Jan 2025

      Other Metrics

      Citations

      View Options

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Figures

      Tables

      Media

      Share

      Share

      Share this Publication link

      Share on social media