The SESYNC Computational Summer Institute will offer participants hands-on training in managing the lifecycle of their data and code with a focus on using open source tools, including R. Topics will include, but are not limited to:
- best practices and techniques for collaborative code development;
- developing and testing code for data management, modeling, and analysis; and
- visualizing and disseminating results.
Our curriculum includes:
- Day 1 afternoon: Introduction to the shell and git
- Day 2 morning: Introduction to databases, combining and querying data using SQL.
- Day 2 afternoon: Data analysis and some visualization in R
- Day 3 morning: Putting it all together, workflow and best practice
- Day 3-5: Hands on consultation and advanced topics
The concepts, skills and tools taught during the tutorial section are domain-indepentand, but the lesson will be taught around a common data and problem set in order to better demonstrate how learned skills can be applied to real-world problems.
Data Carpentry's teaching is hands-on, so participants are required to bring their own laptops. Instructions on setting up the required software are detailed below. There are no pre-requisites, and we will assume no prior knowledge about the tools.
Updates will be posted to this website as they become available.
Instructors: Mary Shelley, Mike Smorul, Ian Munoz
Assistants: Nick Magliocca, Drew Hart, Joe Webster, Derek Yarnell
Who: The course is aimed at graduate students, postdocs, research staff, and other researchers.
Requirements: Participants must bring a laptop with a few specific software packages installed.
Contact: Please email firstname.lastname@example.org for questions and information not covered here.
Acknowledgements & Support
The Data Carpentry portion of the workshop is a partnership of several NSF-funded BIO Centers (NESCent, iPlant, iDigBio, BEACON and SESYNC) and Software Carpentry.The structure and objectives of the curriculum as well as the teaching style are informed by Software Carpentry.
We'll have coffee and snack breaks at 10:30am and 3:30pm daily. Lunch will be served at 12:30 each day, except Monday when box lunch will be available starting at 11:15 prior to the workshop start at 12:00. While the workshop does not officially start until 12:00pm Monday, attendees are welcome to stop over early for software setup help, to chat, or just to hang out and use our WiFi.
SESYNC is providing lunch only, attendees are responsible for their own breakfast and dinner arrangements (we can make recommendations)
|Monday||9:00am||SESYNC open, staff available to help with software setup|
|11:15||Boxed lunch available|
|12:00pm||Welcome and introductions|
|12:15||Shell and Git|
|4:45||Reception and informal group presentations|
|Tuesday||9:00am||SQL Basics (theory, navigating, importing, queriws)|
|1:30||R basics (Rstudio, data structures, basic operations|
|5:00||Day 2 Wrap-up|
|Wednesday||9:00am||Pulling it all together, end to end workflow using day 1 & 2 tools|
|10:45||Scaling up, walk through example of a large SESYNC project|
|1:30||OpenSci, data and code sharing|
|2:00||Consultation and open topics|
|5:00||Day 3 Wrap-up|
|Thursday||9:00am||Consultation and open topics (postgis, git, etc)|
|1:30||Consultation and open topics|
To participate, you will need working copies of the software described below. Please make sure to install everything before the start of your bootcamp.
When you're writing scripts or text, it's nice to have a text editor that is optimized for writing code, with features like automatic color-coding of key words. The default text editor on Mac OS X and Linux is usually set to Vim, which is not famous for being intuitive. if you accidentally find yourself stuck in it, try typing the escape key, followed by ':q!' (colon, lower-case 'q', exclamation mark), then hitting Return to return to the shell. (This will lose any unsaved changes to the file.)
The Bash Shell
Bash is a commonly-used shell. Using a shell gives you more power to do more tasks more quickly with your computer.
R is a programming language that specializes in statistical computing. It is a powerful tool for exploratory data analysis. To interact with R, we will use RStudio, an interactive development environment (IDE).
SQL is a specialized programming language used with databases. We use a simple database manager called SQLite, either directly or through a browser plugin.
Notepad++ is a popular free code editor for Windows. Be aware that you must add its installation directory to your system path in order to launch it from the command line (or have other tools like Git launch it for you). Please ask your instructor to help you do this.
Install Git (version control) and a Bash shell for Windows from the msysGit project's homepage. This will provide you with Bash in the Git Bash program.
Software Carpentry Installer
Other tools used in Data Carpentry have been packaged up by Software Carpentry in an installer. This installer requires an active internet connection.
- Download the installer.
- Double click on the file to run it.
- Accept all defaults.
Mac OS X
The default shell in all versions of Mac OS X is bash,
so no need to install anything. You access bash from
the Terminal (found
/Applications/Utilities). You may want
to keep Terminal in your dock for this workshop.
The default shell is usually
but if your machine is set up differently
you can run it by opening a terminal and typing
There is no need to install anything.
Kate is one option for Linux users.
In a pinch, you can use
which should be pre-installed.
sqlite3 comes pre-installed on Linux.
Also install the Firefox SQLite browser plugin described below.
Firefox SQLite Plugin
Instead of using
sqlite3 from the command line,
you may use this plugin
for Firefox instead.
To install it:
- Start Firefox.
- Go to the plugin homepage.
- Click the "Add Now" button.
- Click "Install Now" on the dialog that appears after the download completes.
- Restart Firefox when prompted.
- Select "SQLite Manager" from the "Tools" menu.