The Scholars Backpack: Using virtual environments to support modern - - PowerPoint PPT Presentation

the scholar s backpack using virtual environments to
SMART_READER_LITE
LIVE PREVIEW

The Scholars Backpack: Using virtual environments to support modern - - PowerPoint PPT Presentation

The Scholars Backpack: Using virtual environments to support modern research practice. Bret Davidson | Eka Grguric NCSU Libraries bretdavidson.github.io/las-2017 Agenda Open science as problem space Open science as modern research


slide-1
SLIDE 1

The Scholar’s Backpack: Using virtual environments to support modern research practice.

Bret Davidson | Eka Grguric NCSU Libraries bretdavidson.github.io/las-2017

slide-2
SLIDE 2

Agenda

Open science as problem space Open science as modern research practice Open science at NC State Scholar's Backpack

slide-3
SLIDE 3

Open Science: what is it?

Open Access Open Data Open Notebooks Open Source

slide-4
SLIDE 4

Open Science is a return to rst principles of scientic practice.

slide-5
SLIDE 5
slide-6
SLIDE 6

Nullius in Verba

"Take nobody's word for it."

slide-7
SLIDE 7

Open Science can increase reproducibility.

slide-8
SLIDE 8

Five Schools of Thought

by Sönke Bartling & Sascha Friesike Editors, http://book.openingscience.org/ Infrastructure Public Measurement Democratic Pragmatic

slide-9
SLIDE 9

Why Libraries?

slide-10
SLIDE 10

Aligns with core library values

research support information access

  • pen peer review

community-based knowledge creation the preservation and dissemination of research libraries are champions of open (open source; open data)

slide-11
SLIDE 11

Libraries

are about

supporting their users

slide-12
SLIDE 12

Academic Libraries

are about

supporting research practice

slide-13
SLIDE 13

Ongoing disruption by digital technologies in modern research practice

slide-14
SLIDE 14

Hypothetical Open Science Workow

101 Innovations in Scholarly Communication, https://innoscholcomm.silk.co/

slide-15
SLIDE 15

Policy Shifts in support of open

slide-16
SLIDE 16

Ecosystem of Support for Research Practice at NCSU Libraries

slide-17
SLIDE 17
slide-18
SLIDE 18
slide-19
SLIDE 19
slide-20
SLIDE 20
slide-21
SLIDE 21
slide-22
SLIDE 22

The NCSU Libraries' Open Science Initiative

slide-23
SLIDE 23

Goals

explore open science practice at NCSU better understand researcher needs in context

slide-24
SLIDE 24

Take a non-prescriptive user-centered approach.

slide-25
SLIDE 25

Create opportunities for communication.

slide-26
SLIDE 26

Open Science Unconference

slide-27
SLIDE 27

Follow-up Informal Interviews

Perceived Skills Gap Insufcient Incentives

slide-28
SLIDE 28
slide-29
SLIDE 29
slide-30
SLIDE 30

Goals

Hands on skill building Provide networking opportunities Increase visibility of library spaces & services

slide-31
SLIDE 31

Skills

Scholarly identity creation Scientic computing Building a website Data harvesting Code collaboration

slide-32
SLIDE 32

Summer of Open Science

Workshops Intro to the Command Line Interface Web Scraping with Python Understand and Build Your Scholarly Identity Scientic Computing with Python & Raspberry Pi Build Your Scholarly Website the Easy Way Events Meetups End-of-Summer Showcase

slide-33
SLIDE 33
slide-34
SLIDE 34

Scientic Computing with Python & Raspberry Pi 40 person waiting list

slide-35
SLIDE 35

Interdisciplinary Need

  • ver 40 departments across ~16 colleges
slide-36
SLIDE 36

Takeaways

Libraries are well positioned to ll gaps in the curriculum "Open Science" attracted a range of disciplines High demand for introductory skill training, particularly coding skills (Python) Interest in interdisciplinary research sharing Summer presents interesting opportunities and challenges

slide-37
SLIDE 37

Virtual Environments for Reproducible Computing

slide-38
SLIDE 38

Technical workshops are ripe for disaster.

slide-39
SLIDE 39

What could go wrong?

Images reset overnight Improper permissions Network connectivity issues Language Versions Missing packages

slide-40
SLIDE 40

Instructor Challenges

Consistency across user environments Consistency of course materials Time to provision computing environments Ease of collaboration

slide-41
SLIDE 41

Student Challenges

Basic data types and structures 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 le system

slide-42
SLIDE 42

Computing Tasks vs. Computing Environments

slide-43
SLIDE 43

Many Options

Custom Operating System Images Custom Distributions, e.g. Anaconda Interactive Environments, e.g. Jupyter

slide-44
SLIDE 44

Our Approach

Vagrant for managing operating system Ansible for provisioning and conguration Course or lab specic packages and resources

slide-45
SLIDE 45

Easy!

  • 1. Install Vagrant
  • 2. Install VirtualBox
  • 3. Clone project

repo

  • 4. `vagrant up`
  • 5. `vagrant ssh`
  • 6. Execute code!
slide-46
SLIDE 46

This is reproducible computing!

slide-47
SLIDE 47

Benets

Consistent environment user to user Single target for course materials Faster provisioning for new workshops Repeatable course to course

slide-48
SLIDE 48

Rise of Scholarly Code

slide-49
SLIDE 49

Researcher Challenges

Consistency across lab environments Ability to see results of code Consistency across time Ease of collaboration

slide-50
SLIDE 50

github.com/NCSU-Libraries/scholars-backpack

slide-51
SLIDE 51

Features

Python R and R Studio Jupyter Notebook Server Example Notebooks

slide-52
SLIDE 52

Vagrant

slide-53
SLIDE 53

Create and congure lightweight, reproducible, and portable development environments.

slide-54
SLIDE 54

Usage

Easy installation through binary package Flexible conguration via text-based conguration le Single command: `vagrant up`

slide-55
SLIDE 55

Ansible

"Automation engine" for provisioning and conguration management.

slide-56
SLIDE 56

Provisioning

"To make something available." Installation!

slide-57
SLIDE 57

Conguration Management

"Establish and maintain consistency of an environment."

slide-58
SLIDE 58

Provisioning

Text editor Python & R Git Web Browser etc.

slide-59
SLIDE 59

Conguration

Start Jupyter notebook server Set environment variables Set default login directory

slide-60
SLIDE 60

Benets

Improved consistency Ability to see results of code Ease of collaboration

slide-61
SLIDE 61

Future Work

slide-62
SLIDE 62

Richer Environment

Broader scientic computing Improved adherance to best practices Docker containers for portability

slide-63
SLIDE 63

Embedded Use

Curricular use Laboratory use

slide-64
SLIDE 64

Thanks!

bret_davidson@ncsu.edu eka_grguric@ncsu.edu | @egrguric github.com/NCSU-Libraries/scholars-backpack bretdavidson.github.io/las-2017