Award Abstract # 1730170
CyberTraining: DSE. The Code Maker: Computational Thinking for Engineers with Interactive, Contextual Learning

NSF Org: OAC
Office of Advanced Cyberinfrastructure (OAC)
Recipient: GEORGE WASHINGTON UNIVERSITY (THE)
Initial Amendment Date: July 13, 2017
Latest Amendment Date: July 13, 2017
Award Number: 1730170
Award Instrument: Standard Grant
Program Manager: Ashok Srinivasan
OAC
 Office of Advanced Cyberinfrastructure (OAC)
CSE
 Directorate for Computer and Information Science and Engineering
Start Date: September 1, 2017
End Date: August 31, 2022 (Estimated)
Total Intended Award Amount: $499,965.00
Total Awarded Amount to Date: $499,965.00
Funds Obligated to Date: FY 2017 = $499,965.00
History of Investigator:
  • Lorena Barba (Principal Investigator)
    labarba@gwu.edu
  • Ryan Watkins (Co-Principal Investigator)
  • Adam Wickenheiser (Co-Principal Investigator)
Recipient Sponsored Research Office: George Washington University
1918 F ST NW
WASHINGTON
DC  US  20052-0042
(202)994-0728
Sponsor Congressional District: 00
Primary Place of Performance: George Washington University
800 22nd Street NW
Washington
DC  US  20052-0086
Primary Place of Performance
Congressional District:
00
Unique Entity Identifier (UEI): ECR5E2LU5BL6
Parent UEI:
NSF Program(s): CyberTraining - Training-based,
CDS&E
Primary Program Source: 01001718DB NSF RESEARCH & RELATED ACTIVIT
Program Reference Code(s): 026Z, 7361, 9102, 9261, 9263
Program Element Code(s): 044Y00, 808400
Award Agency Code: 4900
Fund Agency Code: 4900
Assistance Listing Number(s): 47.070

ABSTRACT

The Code Maker is a new vision for educating engineers who can apply computational thinking to many endeavors. It is a program that embeds computational skills in the curriculum using learner-centered design, informed by the latest research in how people learn. The project will develop the curriculum and materials for interactive learning of computing, in context. The philosophy is to move from "learning to code" toward "coding to learn," so that computing becomes a natural tool for the new engineer to solve problems, investigate nature, design and build projects. The Code Maker serves the national interest by training engineers that are effective users of cyberinfrastructure. It serves NSF's mission - to promote the progress of science; to advance the national health, prosperity and welfare; to secure the national defense - by delivering needed intellectual infrastructure. The project is open source and open access. Locally, it builds community via maker-inspired activities and student support via learning assistants at the new George Washington (GW) STEM Works Lab. Outward-looking, the project will use an online platform to share the training widely, and will coach a close group of collaborators who bring the program to their respective institutions. The NSF funding will also support a thorough assessment of the program, continuous improvement, and dissemination of the results. The Code Maker will train computationally skilled engineers who are prepared to enter the workforce competitively, and ready to use computing effectively as a research tool if joining a graduate program in computational science and engineering.

The Code Maker project will deliver eight or more learning modules, each consisting of a series of four or more lessons, written as a Jupyter Notebook. The modules will be available online and can be completed asynchronously or assigned as a graded course component. They will embed the learning in the existing courses of the engineering curriculum: mechanics, statistics, heat and mass transfer, and so on. Short term, the program will train 50 to 100 students at GW, impact similar numbers at partner institutions, and potentially reach hundreds via the online dissemination. The modules adopt a mastery-learning approach. The program will be supported by learning assistants and a program of maker-inspired events at a newly created space in the GW Library, the STEM Works Lab. It will use cloud infrastructure, both public and private: an instance of the Open edX learning platform on Amazon AWS that effectively allows running the program publicly as a MOOC; and a local JupyterHub server to eliminate installation friction and ensure a consistent compute environment for local students. The evaluation will apply a combination of 4-level training evaluation and a Technology Acceptance model.

PUBLICATIONS PRODUCED AS A RESULT OF THIS RESEARCH

Note:  When clicking on a Digital Object Identifier (DOI) number, you will be taken to an external site maintained by the publisher. Some full text articles may not yet be available without a charge during the embargo (administrative interval).

Some links on this page may take you to non-federal websites. Their policies may differ from this site.

Barba, Lorena A. "Engineers Code: Reusable Open Learning Modules for Engineering Computations" Computing in Science & Engineering , v.22 , 2020 https://doi.org/10.1109/MCSE.2020.2976002 Citation Details

PROJECT OUTCOMES REPORT

Disclaimer

This Project Outcomes Report for the General Public is displayed verbatim as submitted by the Principal Investigator (PI) for this award. Any opinions, findings, and conclusions or recommendations expressed in this Report are those of the PI and do not necessarily reflect the views of the National Science Foundation; NSF has not approved or endorsed its content.

This project developed curriculum and pedagogical methods for computing in engineering education, based on contextualized learning modules using Python and Jupyter. Python has become the lingua franca of data science, but has had slow adoption in engineering education. Jupyter, the open-source ecosystem for creating computational narratives and data analysis workflows, emerged as an enabling technology for teaching and learning computational materials. The PI of this project is an early adopter of Jupyter for teaching engineering students, and developed open educational resources for courses in computational fluid dynamics and numerical methods for engineering. In this project, her team developed a two-year curriculum for first- and second-year science and engineering students, covering the foundations of technical computing, exploratory data analysis, basic statistics, linear algebra, differential equations, and Fourier analysis. The project also created opportunities for dissemination of the materials and methods, notably with a multi-day faculty development workshop that brought participants from around the country (https://engineerscode.github.io/facultydev1/). The PI also organized a book sprint during which a fifteen-author team co-wrote the open book “Teaching and Learning with Jupyter,” which is recognized as a seminal work that anchors many related efforts. The curriculum was evaluated in the classroom, in particular with respect to changes in student attitudes towards computing, and also as to whether an open-source teaching ecosystem influenced students’ outlook regarding collaboration. The PI presented at conferences such as the Open Education Global Conference 2018 ("A Qualitative Study of Open Educational Practice using Jupyter Notebooks”), the Open edX Conference 2018 ("Jupyter-based courses in Open edX: authoring and grading with notebooks”), the Scientific Python Conference (SciPy: Engineers Code: re-usable, open educational modules for engineering undergraduates”), and JupyterCon, where she organized a session titled "Flipped learning with Jupyter: Experiences, best practices, and supporting research.” For two summers, she taught a session for talented Hispanic high-school juniors at the GW Cisneros Institute “Caminos al Futuro” program. She also developed and facilitated a faculty workshop titled "Hybrid to online with Jupyter-first course development,” University at Buffalo, 2019. At the George Washington University, the PI partnered with the Library to bring her foundational curriculum across the university, via Python camps taught by the data services librarians. These events are held several times per year and are filled up in just days, with long waiting lists, in view of the high demand for such informal training. The PI also worked with the Library to provide a central Jupyter server (JupyterHub) for the university community, which now supports several courses across schools. Together with others in the growing community of faculty teaching with Jupyter, she founded The Journal of Open Source Education, to provide a venue for instructors to publish their contributions in the form of open educational resources and open-source software for educational applications.

All the materials developed in this project are available under open licensing models, at https://github.com/engineersCode

Publications of note: 

- Barba, L.A., 2020. Engineers Code: reusable open learning modules for engineering computations. Computing in Science & Engineering, 22(4), pp.26-35. doi:10.1109/MCSE.2020.2976002 Preprint on arXiv::2001.00228

- Barba, Lorena A.; Barker, Lecia J.; Blank, Douglas S.; Brown, Jed; Downey, Allen; George, Timothy; et al. (2022). Teaching and Learning with Jupyter. figshare. Online resource. https://doi.org/10.6084/m9.figshare.19608801.v1 and online at http://go.gwu.edu/jupyter4edu – Read more on the Jupyter Blog (Jan. 7, 2019), https://blog.jupyter.org/teaching-and-learning-with-jupyter-c1d965f7b93a

 


Last Modified: 06/18/2023
Modified by: Lorena A Barba

Please report errors in award information by writing to: awardsearch@nsf.gov.

Print this page

Back to Top of page