[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/3328778.3366887acmconferencesArticle/Chapter ViewAbstractPublication PagessigcseConference Proceedingsconference-collections
research-article

Exploring the Benefits and Barriers of Using Computational Notebooks for Collaborative Programming Assignments

Published: 26 February 2020 Publication History

Abstract

Programming assignments in computer science courses are often processed in pairs or groups of students. While working together, students face several shortcomings in today's software: The lack of real-time collaboration capabilities, the setup time of the development environment, and the use of different devices or operating systems can hamper students when working together on assignments. Text processing platforms like Google Docs solve these problems for the writing process of prose text, and computational notebooks like Google Colaboratory for data analysis tasks. However, none of these platforms allows users to implement interactive applications. We deployed a web-based literate programming system for three months during an introductory course on application development to explore how collaborative programming practices unfold and how the structure of computational notebooks affect the development. During the course, pairs of students solved weekly programming assignments. We analyzed data from weekly questionnaires, three focus groups with students and teaching assistants, and keystroke-level log data to facilitate the understanding of the subtleties of collaborative programming with computational notebooks. Findings reveal that there are distinct collaboration patterns; the preferred collaboration pattern varied between pairs and even varied within pairs over the course of three months. Recognizing these distinct collaboration patterns can help to design future computational notebooks for collaborative programming assignments.

Supplementary Material

MP4 File (ert020.mp4)
Supplemental video

References

[1]
Marcel Borowski, Roman R"a dle, and Clemens Nylandsted Klokmose. 2018. Codestrate Packages: An Alternative to “One-Size-Fits-All” Software . CHI EA '18 Proceedings of the 2018 CHI Conference Extended Abstracts on Human Factors in Computing Systems (2018). https://doi.org/10.1145/3170427.3188563
[2]
CodePen. 2019. CodePen . https://codepen.io accessed.
[3]
GitHub, Inc. 2019 a. Atom . https://atom.io accessed.
[4]
GitHub, Inc. 2019 b. Teletype for Atom . https://teletype.atom.io/ accessed.
[5]
Carl Gutwin and Saul Greenberg. 2002. A Descriptive Framework of Workspace Awareness for Real-Time Groupware. Computer Supported Cooperative Work (CSCW), Vol. 11, 3 (01 Sep 2002), 411--446. https://doi.org/10.1023/A:1021271517844
[6]
Jessica B. Hamrick. 2016. Creating and Grading IPython/Jupyter Notebook Assignments with NbGrader. In Proceedings of the 47th ACM Technical Symposium on Computing Science Education (SIGCSE '16). ACM, New York, NY, USA, 242--242. https://doi.org/10.1145/2839509.2850507
[7]
Petra Isenberg, Danyel Fisher, Sharoda A. Paul, Meredith Ringel Morris, Kori Inkpen, and Mary Czerwinski. 2012. Co-Located Collaborative Visual Analytics Around a Tabletop Display. IEEE Transactions on Visualization and Computer Graphics, Vol. 18, 5 (May 2012), 689--702. https://doi.org/10.1109/TVCG.2011.287
[8]
JSFiddle. 2019. JSFiddle . https://jsfiddle.net accessed.
[9]
Thomas Kluyver, Benjamin Ragan-Kelley, Fernando Pé rez, Brian Granger, Matthias Bussonnier, Jonathan Frederic, Kyle Kelley, Jessica Hamrick, Jason Grout, Sylvain Corlay, Paul Ivanov, Damiá n Avila, Safia Abdalla, and Carol Willing. 2016. Jupyter Notebooks -- a publishing format for reproducible computational workflows . Positioning and Power in Academic Publishing: Players, Agents and Agendas (2016), 87--90. https://doi.org/10.3233/978--1--61499--649--1--87
[10]
Google LLC. 2019 a. Google Chrome . https://www.google.com/chrome accessed.
[11]
Google LLC. 2019 b. Google Colaboratory . https://colab.research.google.com accessed.
[12]
Google LLC. 2019 c. Google Docs . https://docs.google.com accessed.
[13]
Microsoft. 2019. Visual Studio Code . https://code.visualstudio.com accessed.
[14]
K. Jarrod Millman, Fernando Pérez, Victoria Stodden, Friedrich Leisch, and Roger D. Peng. 2014. Developing open source scientific practice. Implementing Reproducible Research, Vol. 149 (2014).
[15]
Donald Norman. 2013. The Design of Everyday Things: Revised and Expanded Edition .Basic Books. 2013024417
[16]
Observable, Inc. 2019. Observable . https://observablehq.com accessed.
[17]
Keith J. O'Hara, Doug Blank, and James Marshall. 2015. Computational Notebooks for AI Education. (2015). https://doi.org/10.13140/2.1.2434.5928
[18]
Judith S. Olson, Dakuo Wang, Gary M. Olson, and Jingwen Zhang. 2017. How People Write Together Now: Beginning the Investigation with Advanced Undergraduates in a Project Course. ACM Trans. Comput.-Hum. Interact., Vol. 24, 1, Article 4 (March 2017), bibinfonumpages40 pages. https://doi.org/10.1145/3038919
[19]
Overleaf. 2019. Overleaf . https://www.overleaf.com accessed.
[20]
Roman R"adle, Midas Nouwens, Kristian Antonsen, James R. Eagan, and Clemens N. Klokmose. 2017. Codestrates: Literate Computing with Webstrates. In Proceedings of the 30th Annual ACM Symposium on User Interface Software and Technology (UIST '17). ACM, New York, NY, USA, 715--725. https://doi.org/10.1145/3126594.3126642
[21]
Amanda Silver. 2017. Introducing Visual Studio Live Share . https://code.visualstudio.com/blogs/2017/11/15/live-share accessed.
[22]
Matthew N. Srnec, Shiv Upadhyay, and Jeffry D. Madura. 2016. Teaching Reciprocal Space to Undergraduates via Theory and Code Components of an IPython Notebook. Journal of Chemical Education, Vol. 93, 12 (2016), 2106--2109. https://doi.org/10.1021/acs.jchemed.6b00392
[23]
Ornprapat Suwantarathip and Saovapa Wichadee. 2014. The Effects of Collaborative Writing Activity Using Google Docs on Students' Writing Abilities . Turkish Online Journal of Educational Technology - TOJET, Vol. 13, 2005 (2014), 148--156. https://eric.ed.gov/?id=EJ1022935
[24]
Anthony Tang, Melanie Tory, Barry Po, Petra Neumann, and Sheelagh Carpendale. 2006. Collaborative Coupling over Tabletop Displays. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI '06). ACM, New York, NY, USA, 1181--1190. https://doi.org/10.1145/1124772.1124950
[25]
Jenifer Tidwell. 2010. Designing Interfaces .O'Reilly Media, Inc.
[26]
Karthikeyan Umapathy and Albert D. Ritzhaupt. 2017. A Meta-Analysis of Pair-Programming in Computer Programming Courses: Implications for Educational Practice. ACM Trans. Comput. Educ., Vol. 17, 4, Article 16 (Aug. 2017), bibinfonumpages13 pages. https://doi.org/10.1145/2996201
[27]
Greg Wilson, Fernando Perez, and Peter Norvig. 2014. Teaching Computing with the IPython Notebook (Abstract Only). In Proceedings of the 45th ACM Technical Symposium on Computer Science Education (SIGCSE '14). ACM, New York, NY, USA, 740--740. https://doi.org/10.1145/2538862.2539011
[28]
Soobin Yim, Dakuo Wang, Judith Olson, Viet Vu, and Mark Warschauer. 2017. Synchronous Collaborative Writing in the Classroom: Undergraduates' Collaboration Practices and Their Impact on Writing Style, Quality, and Quantity. In Proceedings of the 2017 ACM Conference on Computer Supported Cooperative Work and Social Computing (CSCW '17). ACM, New York, NY, USA, 468--479. https://doi.org/10.1145/2998181.2998356

Cited By

View all
  • (2024)Bridging Incremental Programming and Complex Software Development EnvironmentsProceedings of the 3rd ACM SIGPLAN International Workshop on Programming Abstractions and Interactive Notations, Tools, and Environments10.1145/3689488.3689991(29-40)Online publication date: 18-Oct-2024
  • (2024)Computational Notebook as a Tool for Supporting Black Engineers Non-Profit Organizations in the Context of Workforce ParticipationExtended Abstracts of the CHI Conference on Human Factors in Computing Systems10.1145/3613905.3637130(1-9)Online publication date: 11-May-2024
  • (2023)Supporting Co-Regulation and Motivation in Learning Programming in Online ClassroomsProceedings of the ACM on Human-Computer Interaction10.1145/36100897:CSCW2(1-29)Online publication date: 4-Oct-2023
  • Show More Cited By

Index Terms

  1. Exploring the Benefits and Barriers of Using Computational Notebooks for Collaborative Programming Assignments

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    SIGCSE '20: Proceedings of the 51st ACM Technical Symposium on Computer Science Education
    February 2020
    1502 pages
    ISBN:9781450367936
    DOI:10.1145/3328778
    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]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 26 February 2020

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. application development
    2. collaborative programming
    3. computational notebooks
    4. programming assignments

    Qualifiers

    • Research-article

    Funding Sources

    • Deutsche Forschungsgemeinschaft (DFG German Research Foundation)
    • Aarhus University Research Foundation

    Conference

    SIGCSE '20
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 1,595 of 4,542 submissions, 35%

    Upcoming Conference

    SIGCSE TS 2025
    The 56th ACM Technical Symposium on Computer Science Education
    February 26 - March 1, 2025
    Pittsburgh , PA , USA

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)48
    • Downloads (Last 6 weeks)6
    Reflects downloads up to 11 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2024)Bridging Incremental Programming and Complex Software Development EnvironmentsProceedings of the 3rd ACM SIGPLAN International Workshop on Programming Abstractions and Interactive Notations, Tools, and Environments10.1145/3689488.3689991(29-40)Online publication date: 18-Oct-2024
    • (2024)Computational Notebook as a Tool for Supporting Black Engineers Non-Profit Organizations in the Context of Workforce ParticipationExtended Abstracts of the CHI Conference on Human Factors in Computing Systems10.1145/3613905.3637130(1-9)Online publication date: 11-May-2024
    • (2023)Supporting Co-Regulation and Motivation in Learning Programming in Online ClassroomsProceedings of the ACM on Human-Computer Interaction10.1145/36100897:CSCW2(1-29)Online publication date: 4-Oct-2023
    • (2023)VizProg: Identifying Misunderstandings By Visualizing Students’ Coding ProgressProceedings of the 2023 CHI Conference on Human Factors in Computing Systems10.1145/3544548.3581516(1-16)Online publication date: 19-Apr-2023
    • (2022)Between Principle and Pragmatism: Reflections on Prototyping Computational Media with WebstratesACM Transactions on Computer-Human Interaction10.1145/356989530:4(1-53)Online publication date: 27-Oct-2022
    • (2022)Webstrates, Codestrates v2, and Varv: A Software Stack for Computational MediaAdjunct Proceedings of the 2022 Nordic Human-Computer Interaction Conference10.1145/3547522.3547714(1-2)Online publication date: 8-Oct-2022
    • (2022)ReLive: Bridging In-Situ and Ex-Situ Visual Analytics for Analyzing Mixed Reality User StudiesProceedings of the 2022 CHI Conference on Human Factors in Computing Systems10.1145/3491102.3517550(1-20)Online publication date: 29-Apr-2022
    • (2022)Promoting Computational Thinking Skills in Non-Computer-Science Students: Gamifying Computational Notebooks to Increase Student EngagementIEEE Transactions on Learning Technologies10.1109/TLT.2022.318058815:3(392-405)Online publication date: 1-Jun-2022
    • (2021)Introducing Reproducibility to Citation Analysis: a Case Study in the Earth SciencesJournal of eScience Librarianship10.7191/jeslib.2021.119410:2Online publication date: 13-May-2021
    • (2021)PuzzleMe: Leveraging Peer Assessment for In-Class Programming ExercisesProceedings of the ACM on Human-Computer Interaction10.1145/34795595:CSCW2(1-24)Online publication date: 18-Oct-2021

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media