Below is a list of courses we regularly offer. Some of them may be available to take online at any time. Others are only available when we schedule them. Check our calendar to see what courses are currently scheduled.
Request a Course – Let us know if you would like us to schedule one of these courses or help us design new courses by telling us about what you wish we offered.
ITC offers Software Carpentry workshops that aim to help researchers get their work done in less time and with less pain by teaching them basic research computing skills. This hands-on workshop will cover basic concepts and tools, including program design, version control, data management, and task automation. Participants will be encouraged to help one another and to apply what they have learned to their own research problems.
Reproducible Research at Dartmouth
The Library and ITC fully collaborate on the RR@D initiative to bring workshops and training related to data acquisition, management, storage and transformation, automation and scripting, and best practices.
Introduction to Containerization with Docker
Docker is the #1 most wanted and #2 most loved software developer tools, and helps millions of researchers and IT professionals build, share and run any app, anywhere – locally, in the institution’s infrastructure, or in the cloud. It is a pivotal tool for Reproducible Research that allows anyone with a container to run any analysis the way it was designed, including all the dependencies and necessary software. Research Computing is offering this hands-on workshop as an introduction to containerization. In this introduction, you’ll learn the fundamentals of containerization and how to build/use Docker/container images.
Please install Docker Desktop (https://www.docker.com/products/docker-desktop) before the workshop if you plan to follow along.
Workshop Presented by: Jonathan Crossett and Elijah Gagne, Research Computing (ITC).
Workshop useful links:
- https://git.dartmouth.edu/research-itc-public/containerization-workshop
- https://hub.docker.com/
- https://docs.docker.com/engine/reference/builder/
- https://www.docker.com/products/docker-desktop
Past workshop recordings: 01/19/2022
Introduction to Container Automation and Orchestration with Kubernetes
After having deployed a few containers with Docker, look into Kubernetes, an open-source container-orchestration system for automating computer application deployment, scaling, and management. It was originally designed by Google. Research Computing is offering this hands-on workshop as an introduction to Kubernetes. In this introduction, you’ll learn the fundamentals of Kubernetes. Topics will include Pods, Deployments, Services, Persistent Volumes, Persistent Volume Claims, and more.
Please install VirtualBox (https://www.virtualbox.org/) and Minikube (https://minikube.sigs.k8s.io/docs/start/) before the workshop if you plan to follow along.
Workshop presented by Jonathan Crossett and Elijah Gagne – Research Computing (ITC)
Workshop material: follow along
Past workshop recordings: 02/16/2022
Hands-on Tutorial: Introduction to Database Design and Implementation
Research Computing offers this hands-on workshop providing an introduction to database design. Using a relational database can help you store and analyze your research data and results more efficiently (than flat/text files). We will be using the relational database paradigm, the Unified Modeling Language (UML), and the Entity-Relationship (ER) model, and implement a simple MySQL database.
In order to actively participate, please bring your own laptop (Mac/Win) and install the following software:
- MySQL Workbench: https://dev.mysql.com/downloads/workbench/
Please note that this Introduction to Database Design will be followed by an Introduction to Database Query and Analytics.
Hands-on Tutorial: Introduction to Database Query and Analytics
Research Computing offers this hands-on workshop providing an introduction to database query in Structured Query Language (SQL). Using a relational database can help you store and analyze your research data and results more efficiently (than flat/text files). We will be using SQL on a pre-populated database to extract, filter and answer simple analytics questions. If time permits, we will explore ways of programmatically accessing databases from tools such as R or Python in order to automate the analytical process.
Please note that this Introduction to Database Query and Analytics is preceded by an Introduction to Database Design.
Getting Started with Databases Design and Query
This hands-on workshop starts with an introduction to database design, followed by an overview of the basics of querying data stored in a database. Using a relational database can help you store and analyze your research data and results more efficiently (than flat/text files). We will be using the relational database paradigm, the Unified Modeling Language (UML), the Entity-Relationship (ER) model, and implement a simple MySQL database. Then, we will be using the Standard Query Language (SQL) on a pre-populated database to extract, filter and answer simple analytics questions.
This workshop is a combination of:
- Introduction to Database Design and Implementation
- Introduction to Database Query and Analytics
Media material:
- PDF slides
- Recording of the previous session: 4/29/21
Workshop: Getting Started Using The Discovery Cluster
Dartmouth College and Research Computing offer access to Discovery, our High-Performance Computation (HPC) cluster to the entire research community. This class is for users new to the Discovery cluster. It covers how to set up your environment, submit jobs, transfer files to and from the cluster, how to use available storage, and how to monitor your jobs.
Come prepared:
Discovery account
if you already have one, make sure you know the login ID and password. E-mail Research.Computing@dartmouth.edu if you need help with your existing login info (reset password, etc)
if you do not have one, request one at least 24 hours before the class: dartgo.org/rc-account
Please make sure you have the following software installed before the beginning of the class
Windows: http://mobaxterm.mobatek.net/download-home-edition.html
Linux: none
Research Data Storage on Campus and Beyond
Dartmouth College offers a comprehensive set of storage solutions for your research data. Storage comes in many models, each adapted to its own use cases (OneDrive, Box, AFS, SMB, (no)SQL, etc). During this workshop, we will cover strategies, tools, and computational solutions to ensure the availability, safety and security of your research (input) datasets and results, and your documents. We will compare and contrast online vs. on-premise solutions, databases and directory-based storage (file systems), and personal and shared (lab) spaces.
Related videos:
Hands-on Training: Introduction to scripting with Python
Research Computing will be presenting this workshop for those that have no prior programming experience and want to learn more about scripting/programming for the first time. Python is a popular programming/scripting language, used for data analytics and automation of tasks with scripts as well as a host of other uses. We’ll introduce the basic programming structures:
-
- what is scripting/programming and why do I need it?
-
- Python interactive mode and interpreter
-
- variable declaration (strings, numbers, lists, and arrays, etc)
- looping and forking (‘if… then… else’, ‘while’, ‘for’ statements)
Time permitting, we’ll introduce additional concepts:
-
- defining a function (avoid repetition of code and increase re-usability)
- modules/libraries (avoid reinventing the wheel)
Prerequisite:
- Request and obtain (allow 48h) a Research ITC account (including Andes/Polaris login privileges) here: Request an Account
- Bring your own laptop (Mac/Win PC/Linux) and pre-install Python 3 or higher and Jupyter Notebook via Anaconda: http://swcarpentry.github.io/workshop-template/#python
Hands-on Training: Introduction to data analysis with Python
Research Computing will be presenting this workshop for those that want to learn more about using the Python programming language for basic data analysis. Python is a popular programming language that is widely used to automate tasks and analyze datasets. Having prior programming experience is helpful but not required to attend this workshop. We’ll cover a brief refresher on declaring variables and importing modules, and then dive right into importing datasets, building data structures/dataframes, and performing basic analysis and data visualization programmatically with Python.
Prerequisite and links:
- Bring your own laptop (Mac/Win PC/Linux)
- pre-install Anaconda 3 or use Google Colab (via your personal Gmail account or your institutional GSuite account NetId)
- Datasets – no need to pre-download
- Software Carpentry lesson for material
Recorded live session(s): Oct. 8, 2020
Introduction to GIS Workshop
Learn about geographic and spatial information, map projections, sources of data, and how software can be used in digital map-making and spatial analysis. Gain an understanding of how to put your research data into a geographic information system, and overlay it with other vector and raster base layers from online sources.
The target audience is faculty, graduate students, and anyone else interested in learning more about geographic information systems for their research.
Prerequisite: None
Course Length: 1 hour
Recorded sessions: (videos are sequential and ‘chunked’ in to short, manageable bites)
Brief Intro to GIS (runtime ~9 minutes)
ArcGIS Online hands-on tutorial (runtime ~12 minutes) Brief ArcGIS Online tutorial
Intro to R and GIS Workshop
Did you know that the R statistical package has Geographic Information Systems and mapping tools? Various R packages can be imported to analyze and display spatial information right in R studio. During this session, you will get a chance to work with R and spatial datasets and be introduced to techniques for finding spatial and non-spatial datasets for use in R and GIS. No experience is necessary to attend the workshop.
The target audience is faculty, graduate students, and anyone else interested in learning more about geographic information systems for their research.
Prerequisite: None
Course Length: 1 hour
Pre-recorded Sessions (sequential and ‘chunked’ into short, manageable bites)
R Spatial Intro (~7 minutes)
Getting ready to code in R (~3 minutes)
Basic coding in R (~5 minutes) Spatial analysis with R
R Spatial Intro (~19 minutes)
GIS Lite: Tools for Easy Mapping (Co-taught by Research Computing and the Dartmouth College Library Evans Map Room personnel)
This workshop will cover some basic mapping and GIS tools through Dartmouth College Library and Dartmouth ITS. These lightweight tools allow access to simple geographic analysis, without having to learn a full-blown GIS system. We will cover Social Explorer, ArcGIS Online, and other tools as time allows. With these tools, we will look at US Census Bureau data, imagery, and cultural statistics. We will also introduce and review other mapping sites listed on the web gis Research Guide.
The target audience is faculty, graduate students, and anyone else interested in learning more about geographic information systems for their research.
Prerequisite: None
Course Length: 1 hour
Programming with R, parts 1 & 2
Introduction to Linux OS and BASH command interpreter
The Unix shell (BASH) has been around longer than most of its users have been alive. It has survived because it’s a powerful tool that allows users to perform complex and powerful tasks, often with just a few keystrokes or lines of code. It helps users automate repetitive tasks and easily combine smaller tasks into larger, more powerful workflows.
The use of the shell is fundamental to a wide range of advanced computing tasks, including high-performance computing. These lessons will introduce you to this powerful tool.