Agenda
- Open science as problem space
- Open science as modern research practice
- Open science at NC State
- Vagrant, Ansible, & Python
Nullius in Verba
"Take nobody's word for it."
What is Open Science?
- Open Access
- Open Data
- Open Notebooks
- Open Source
Open Science is a return to first principles of scientific practice.
Open Science can improve reproducibility.
Open practices require new skillsets.
“Open Science
is an umbrella term encompassing
a multitude of assumptions about the future of knowledge creation and dissemination."
The way that research is
carried out
The way that research is
disseminated
How
digital technologies
are affecting the practice of science
Paul David
Economist / Historian
The Knowledge Economy
Science
(as we know it)
has always been open
Increasing fragility
of this traditional openness
A response to a
crisis of the scientific method
Ask
questions of nature
through experimentation
Uncover
possible answers
to these questions
Share
these answers
so that others may question them
Infrastructure
tech. architecture
Publicaccessibility of knowledge creation + citizen science
Measurement
alt. impact measurement
Democratic
access to knowledge
Pragmatic
collaborative research
Why Libraries?
Aligns with core library values such as:
- information access
- peer review
- community-based knowledge creation
- the preservation and dissemination of research
Libraries are champions of open source
Libraries
are about
supporting their users
Academic Libraries
are about
supporting research practice
Ongoing disruption of digital technologies in modern research practice
Policy Shifts
in support of open
The NCSU Libraries'
Open Science Initiative
Goals
- explore open science practice at NCSU
- better understand researcher needs in context
We took a non-prescriptive user-centered approach
Creating opportunities for
communication
Open Science Unconference
Follow-up Informal Interviews
Modern Research Skills Gap
Sharing Collective Knowledge
Ekatarina [Eka] Grguric (Project Lead)
Lauren Di Monte (Project Manager)
Alison Blaine (Content Development)
Bret Davidson (Technical Lead)
Jennifer Garrett (Community Development)
Workshops and Events:
- Introduction to the Command Line Interface
- Web Scraping with Python
- Understand and Build Your Scholarly Identity
- Scientific Computing with Python & Raspberry Pi
- Build Your Scholarly Website the Easy Way
- Meetups
- End-of-Summer Showcase!
Python and Scientific Computing Workshop:
40 person waitlist
Interdisciplinary Need: over 40 departments across ~16 colleges
Tech instruction as gap filler
Learning Outcomes
- Basic Python data types and structures
- Python module system
- Retrieve a web page with Requests
- Parse content with Beautiful Soup
- Generate a word cloud with matplotlib
- Control Structures
- Exception Handling
- Working with file system
Python Course Challenges
- Consistency across user environments
- Consistency of course materials
- Time to provision computing environments
- Ease of collaborating on the creation of course materials
Many Options
- Custom OS Images
- Custom Distributions, e.g. Anaconda
- Interactice Environments, e.g. Jupyter
Our Approach
- Vagrant: for managing OS
- Ansible: for provisioning and configuration
- Course or lab specific packages and resources
Vagrant
Create and configure lightweight, reproducible, and portable development environments.
Usage
- Easy installation through binary package.
- Flexible configuration via text file.
- Single command: `vagrant up`
Ansible
"Automation engine" for provisioning, configuration management, app deployment, and other IT needs.
Provisioning
"To make something available."
Installation!
Configuration Management
"Establish and maintain consistency of an environment."
playbook.yml
Easy!
- Install Vagrant
- Clone python-vagrant
- `vagrant up`
- `vagrant ssh`
- Execute code!
Richer Environments
- Better suited to scientific computing
- Improved adherance to best practices
- Optimize relationship between images, provisioner, and tutorials
Scholarly Backpacks
- General Research Tools
- Data Science
- Visualization
Embedded environments
- Curricular use
- Laboratory use
Emphasis on reproducibility has ignited a shift toward new practices.
With these new practices come new requirements for researchers.
Reproducible and portable computing environments are critical for future success.
Tools like Vagrant and Ansible can help researchers develop the scientific environments they need to be productive.