Teaching Data Science with Literate Programming Tools
This paper presents a case study on using Emacs and Org-mode for literate programming in undergraduate computer and data science courses. Over three academic terms, the author mandated these tools across courses in R, Python, C++, SQL, and more. The onboarding relied on simplified Emacs tutorials an...
Main Author: | |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2023-09-01
|
Series: | Digital |
Subjects: | |
Online Access: | https://www.mdpi.com/2673-6470/3/3/15 |
_version_ | 1797580577170259968 |
---|---|
author | Marcus Birkenkrahe |
author_facet | Marcus Birkenkrahe |
author_sort | Marcus Birkenkrahe |
collection | DOAJ |
description | This paper presents a case study on using Emacs and Org-mode for literate programming in undergraduate computer and data science courses. Over three academic terms, the author mandated these tools across courses in R, Python, C++, SQL, and more. The onboarding relied on simplified Emacs tutorials and starter configurations. Students gained proficiency after undertaking initial practice. Live coding sessions demonstrated the flexible instruction enabled by literate notebooks. Assignments and projects required documentation alongside functional code. Student feedback showed enthusiasm for learning a versatile IDE, despite some frustration with the learning curve. Skilled students highlighted efficiency gains in a unified environment. However, the uneven adoption of documentation practices pointed to a need for better incorporation into grading. Additionally, some students found Emacs unintuitive, desiring more accessible options. This highlights a need to match tools to skill levels, potentially starting novices with graphical IDEs before introducing Emacs. The key takeaways are as follows: literate programming aids comprehension but requires rigorous onboarding and reinforcement, and Emacs excels for advanced workflows but has a steep initial curve. With proper support, these tools show promise for data science education. |
first_indexed | 2024-03-10T22:51:50Z |
format | Article |
id | doaj.art-0fdd24abede14a959b6231962864dd77 |
institution | Directory Open Access Journal |
issn | 2673-6470 |
language | English |
last_indexed | 2024-03-10T22:51:50Z |
publishDate | 2023-09-01 |
publisher | MDPI AG |
record_format | Article |
series | Digital |
spelling | doaj.art-0fdd24abede14a959b6231962864dd772023-11-19T10:14:57ZengMDPI AGDigital2673-64702023-09-013323225010.3390/digital3030015Teaching Data Science with Literate Programming ToolsMarcus Birkenkrahe0Department of Math and Science, Lyon College, Batesville, AR 72501, USAThis paper presents a case study on using Emacs and Org-mode for literate programming in undergraduate computer and data science courses. Over three academic terms, the author mandated these tools across courses in R, Python, C++, SQL, and more. The onboarding relied on simplified Emacs tutorials and starter configurations. Students gained proficiency after undertaking initial practice. Live coding sessions demonstrated the flexible instruction enabled by literate notebooks. Assignments and projects required documentation alongside functional code. Student feedback showed enthusiasm for learning a versatile IDE, despite some frustration with the learning curve. Skilled students highlighted efficiency gains in a unified environment. However, the uneven adoption of documentation practices pointed to a need for better incorporation into grading. Additionally, some students found Emacs unintuitive, desiring more accessible options. This highlights a need to match tools to skill levels, potentially starting novices with graphical IDEs before introducing Emacs. The key takeaways are as follows: literate programming aids comprehension but requires rigorous onboarding and reinforcement, and Emacs excels for advanced workflows but has a steep initial curve. With proper support, these tools show promise for data science education.https://www.mdpi.com/2673-6470/3/3/15data scienceliterate programmingteachingEmacsorg-modeIDE |
spellingShingle | Marcus Birkenkrahe Teaching Data Science with Literate Programming Tools Digital data science literate programming teaching Emacs org-mode IDE |
title | Teaching Data Science with Literate Programming Tools |
title_full | Teaching Data Science with Literate Programming Tools |
title_fullStr | Teaching Data Science with Literate Programming Tools |
title_full_unstemmed | Teaching Data Science with Literate Programming Tools |
title_short | Teaching Data Science with Literate Programming Tools |
title_sort | teaching data science with literate programming tools |
topic | data science literate programming teaching Emacs org-mode IDE |
url | https://www.mdpi.com/2673-6470/3/3/15 |
work_keys_str_mv | AT marcusbirkenkrahe teachingdatasciencewithliterateprogrammingtools |