Econ 369
Econ 369, led by Professor Chris Carroll and (in Fall 2023) Teaching Assistant Matt Zahn, introduces students to the elements involved in writing research papers in quantitative disciplines such as economics. Early in the semester, with guidance from the instructor, students pick a topic for a research paper they will write piece-by-piece over the semester. Students are taught to use the tools that cutting-edge scholars use in their own research—GitHub, ChatGPT and other AI’s, and Jupyter notebooks, among others. At the end of the semester, students present the findings of their research just as they would in a research seminar.
This piece describes the benefits of two of these tools, and how the course enables students to develop proficiency with them—while also helping students to manage a long-term project and compose arguments with data.
GitHub promotes a more structured writing process
GitHub is an online collaboration and organizational tool that provides the repository (“repo”) for all materials and assignments for the course. Students create a “fork” (copy) of the master page updated by the Professor and Teaching Assistant which hosts their assignments (i.e., writing prompts, paper drafts, and presentations).
One of GitHub’s core functions is to track every change a user makes to materials stored on the repo. Students edit materials locally, logging changes using the Git command-line tool and then pushing the updated version back to GitHub as a “commit.” To understand this workflow, students practiced using Git from their own laptops alongside an instructor—focusing heavily on the status
, add
, commit
, push,
and pull
commands. GitHub keeps a record of these commits—what file(s) were altered, the specific changes made, and a user-provided description of the update. This feature means that there is a record of each paper’s development over time, from the initial brainstorming, through the “pitch” or proposal assignment, to the final edits.
The class makes use of commits to reinforce the value of working iteratively on a writing project. Students are assigned to make at least three commits, spaced a few hours apart, between class sessions. This expectation ensures that writing and revising happen over the course of the week and not just immediately before the deadline. Their grade in the course depends partly on their adherence to this requirement, which should incentivize them to develop the good habit of repeated engagement with their writing.
Since every commit includes a brief description of what changes were made, students must be intentional about how they divide a larger project into discrete tasks. This type of assignment, in which students write about their own writing process, develops metacognition.
GitHub provides a convenient way to record and share the writing process, and recover earlier versions of a draft. However, instructors not comfortable with GitHub could obtain similar pedagogical benefits by asking students to keep a log of the work they do on a project and awarding credit for making revisions.
Jupyter notebooks seamlessly integrate writing and data visualization
To ensure everyone has access to the same working environments, a JupyterHub instance is provided to all students that they could sign into. Students perform all of their work through this interface including the editing of Jupyter notebooks as well as their Git and GitHub work for creating and sharing commits.
Jupyter Notebooks enable the students to write their research papers and perform their data manipulation and analysis. These notebooks are a versatile tool that integrates Markdown text (a type of text editor) with Python code and outputs. To create a publication ready document from their notebook, students also used Markedly Structured Text (MyST) and the associated MyST Jupyter Lab Plugin.
Class time is devoted to teaching students how to use these applications and how to produce effective data visualizations. One class session includes a lecture on creating data visualizations that are not only aesthetically pleasing but help to convey a fact or pattern that advances their argument or analysis. Students also provide updates on their progress at the beginning of classes, which enables them to gather informal feedback and suggestions from each other as well as the instructor and teaching assistant. This information, along with feedback on a rough draft, is applied in the research paper and presentation the students submit at the end of the semester.
As this sample student paper demonstrates, Jupyter notebooks can be an effective tool for building multimodal writing skills. Students can directly experiment with their visualizations and see what choices best illuminate their analysis.
The student response to this course was overwhelmingly positive. Several reached out to discuss further opportunities for research at Hopkins as well as graduate students. For instance, one graduating senior went on to complete their senior thesis in economics using the same tools and methods that they learned in this class.