Removing barriers enabling programming outside of computer science
Removing barriers: enabling programming outside of computer science courses
Outline for our session Frame the problem Share the solution Consult with the panel
What opportunities do students have to learn programming on your campus? Computer science courses Other courses “Boot camp” like programming workshops Hackathons Other?
Problem to solve Programming helps students learn science and conduct research but non-CS instructors are challenged by how to introduce programming without overwhelming their students.
Course needs 1. Friendly Programming Interface 2. Compute without setup 3. Distributing Content for Programming Assignments 4. Collecting and Grading Programming Assignments
The solution: Friendly Programming Interface Live code, equations, visualizations and text Web-based Interactive Multiple programming languages http: //jupyter. org Multiple ways to share
The solution: Friendly Programming Interface Use it View it Share it
Compute without setup: Deploy a Jupyter. Hub
Compute without setup: Deploy a Jupyter. Hub ● Compatible Authentication ● Scalable to classes of different sizes ● Pre-configured environment ● (Lab) Interface with access to notebook interface, file editor, terminal window and more ● Persistent storage
Distributing and Collecting Lectures and Assignments ● Introduce students to version control ● WHY? ○ Fundamental practical skill in Software Engineering ○ Tracking changes over time ○ Good collaboration practices ○ Reusability ○ Improve course organization
Distributed Git development Largest Visibility Great for Public repos Academic discounts for private
Distributing and Collecting Lectures and Assignments
Distributing and Collecting Lectures and Assignments ● ● ● Git. Hub Classroom for distribution and collection Canvas for PDF submission and grading Optional Workflows for Lecture distribution
Faculty Feedback The students were able to see how air resistance affects how fast an object falls. Usually we neglect air resistance when we talk about experiments like those performed by Galileo. . . [But] Computers make it easy to simulate drag's effects on falling. ~ Jim Valles, Professor of Physics, Brown University
Student Feedback Students’ perception of the importance of programming Students’ reported desire for more programming in courses
Considerations ● On-prem compute vs. Cloud ● Cost of Cloud compute resources and open use. ● Support model ● Finding campus partners
Q&A with the panel
- Slides: 18