IS&T RCS Spring 2025 Trainings
January 29 – February 27, 2024
Registration is open for the RCS Spring 2025 Tutorials. Please also be aware that we have lots of recordings and slides available from past tutorials by RCS staff and vendors.
- Go to the tutorial you want to register for by clicking on its name or just scrolling down on this page.
- Click the appropriate green ‘Register for this session’ link.
- This will take you to a page on Terrier eDevelopment. Click the blue ‘Add’ button and then click the blue ‘Register’ button on the bottom right of that same page.
- If you wish to register for additional tutorials, return to this page and follow the same process for each.
- For hands-on sessions where you wish to use your own computer, please have the appropriate software installed on your computer before the session starts.
- Tutorials are tagged based on experience required (Beginner, Intermediate, or Advanced), location (details below), and if they are new.
- Tutorial sessions are held either in-person or over Zoom. Note that Zoom sessions will be recorded; keep your camera off if you do not want your image recorded. The recorded sessions may be made available to the BU community.
The IS&T Research Computing Services (RCS) group offers a tutorial series on programming, data analysis, high performance computing, and domain specific topics three times each year. These tutorials are free and open to all members of the Boston University community.
The RCS tutorials cover concepts, techniques, and tools which researchers can use in their own computing environments. Many are designed to help you make effective use of the Boston University Shared Computing Cluster (SCC). The RCS staff can also deliver extra, or customized, tutorial sessions to your course, group, or lab. Please contact us at help@scc.bu.edu if you are interested.
Trainings Schedule
- Vendor Presentations
Tue, Feb 11 10:00am ‐ 12:00pm
Introduction to GRASS GIS Processing Engine (Hands-on)
Wed, Feb 19 2:30pm ‐ 3:30pm
NASA Earthdata’s Application for Extracting and Exploring Analysis Ready Samples (AppEEARS): A Tool for Accessing, Processing, and Visualizing Geospatial Data (Lecture)
Wed, Feb 26 2:00pm ‐ 3:00pm
Introduction to Data and Code Reproducibility for Researchers (Lecture)
Thu, Feb 27 10:00am ‐ 12:00pm
Getting Started with the JMP Student Edition & Data Visualization (Hands‐on)
Thu, Feb 27 2:00pm ‐ 4:00pm
JMP Linear Modeling & Predictive Modeling and Machine Learning (Hands‐on)
- Research Computing Basics Tutorials
Wed, Jan 29 12:00pm ‐ 2:00pm
Introduction to BU’s Shared Computing Cluster (Hands‐on)
Wed, Jan 29 2:30pm ‐ 4:30pm
Introduction to Linux (Hands‐on)
Thu, Jan 30 3:00pm ‐ 5:00pm
Intermediate Usage of the SCC (Lecture)
Mon, Feb 3 9:30am ‐ 11:30am
Intermediate Usage of the SCC (Lecture)
- Computer Programming Tutorials
Thu, Jan 30 10:00am ‐ 12:00pm
Natural Language Processing Basics (Hands-on)
Tue, Feb 4 1:00pm ‐ 3:00pm
Machine Learning with Python scikit-learn, Part One (Hands‐on)
Thu, Feb 20 1:00pm ‐ 3:00pm
Machine Learning with Python scikit-learn, Part Two (Hands‐on)
This session was rescheduled from Feb. 6 due to technical issues.
Wed, Feb 5 2:30pm ‐ 4:30pm
Introduction to Python, Part One (Hands‐on)
Fri, Feb 7 2:30pm ‐ 4:30pm
Introduction to Python, Part Two (Hands‐on)
Thu, Feb 6 10:00am ‐ 12:00pm
Introduction to Julia (Hands-on)
Tue, Feb 11 1:00pm ‐ 3:00pm
Deep Learning with PyTorch, Part One (Hands‐on)
Thu, Feb 13 1:00pm ‐ 3:00pm
Deep Learning with PyTorch, Part Two (Hands‐on)
- Data Analysis Tutorials
Tue, Feb 4 3:00pm ‐ 5:00pm
Using GitHub Copilot in RStudio for Code Development (Hands-on)
Thu, Feb 6 3:00pm ‐ 5:00pm
Creating Pretty Documents using R Markdown and Quarto (Hands-on)
Wed, Feb 12 2:30pm ‐ 4:30pm
Data Preparation for Neuroimagers: BIDS, mriqc, and fmriprep (Hands-on)
Fri, Feb 14 2:30pm ‐ 4:30pm
Python for Data Analysis (Hands‐on)
- High Performance Computing Tutorials
Tue, Feb 13 10:00pm ‐ 12:00pm
MATLAB Performance Optimization (Hands‐on) This session was changed from in-person to Zoom on 2/11/25 due to weather concerns.
- Domain Specific Topics Tutorials
Thu, Jan 30 1:00pm ‐ 3:00pm
Python GIS: Geopandas Library (Hands-on)
Mon, Feb 3 1:00pm ‐ 3:00pm
GIS Using Python: xarray (Hands-on)
Mon, Feb 10 1:00pm ‐ 3:00pm
GIS Using R: arcgis (Hands-on)
You may register for as many tutorials as you like. Registration is required and is accessed with your BU Kerberos password.
If you don’t have a Kerberos password, or if you find that a tutorial is full, or have any other questions, please send email to rcs-tutorial@bu.edu.
Tutorial Locations
Biological Science Center, 2 Cummington Mall, Room 107
Online over Zoom After you register, you will be sent a calendar invite that includes the Zoom link.
Hybrid in 2 Cummington Mall and over Zoom Register for the location you wish to attend the tutorial from. We recommend coming in person if you can.
Tutorial Descriptions and Times
Vendor Presentations
Introduction to GRASS GIS Processing Engine (Hands-on)
Instructor: Dennis Milechin (milechin@bu.edu)

Actual Instructor: Vaclav (Vashek) Petras, NC State University (vpetras@ncsu.edu)
This tutorial will introduce participants into the fundamentals of processing geospatial data using the GRASS GIS engine. We will cover the basics of GRASS GIS, ingesting data into a new project, and visualizing spatial data in a Jupyter Notebook. We will work through a focused example—a viewshed analysis case study—where we will compute and evaluate the visible area from a road. Designed for those new to geospatial analysis or GRASS GIS, this tutorial will demonstrate how GRASS GIS can support spatial data science workflows. No installation is required on your computer. No previous experience with GRASS GIS is necessary, although familiarity with Python may be helpful.
NASA Earthdata's Application for Extracting and Exploring Analysis Ready Samples (AppEEARS): A Tool for Accessing, Processing, and Visualizing Geospatial Data (Lecture)
Instructor: Dennis Milechin (milechin@bu.edu)

Actual Instructor: Cole Krehbiel, NASA LP DAAC Project Scientist (ckrehbiel@usgs.gov)
AppEEARS is an easy-to-use web interface and API for accessing, processing, and visualizing geospatial data products. This tutorial will introduce AppEEARS and provide end-to-end walkthroughs demonstrating how to subset geospatial data spatially, temporally, and by band/layer from missions such as Harmonized Landsat Sentinel-2 (HLS), ECOSTRESS, EMIT, MODIS, Daymet, VIIRS and others. The demo will show how to visualize the results, interpret quality information, and download or work directly with the output files in the cloud. The LP DAAC also provides R and Python tutorials highlighting how users can use the AppEEARS API to automate processing requests. AppEEARS allows new users to begin using remote sensing data in minutes!
Introduction to Data and Code Reproducibility for Researchers (Lecture)
Instructor: Dennis Milechin (milechin@bu.edu)

Actual Instructor: Lindsay Platt, CUAHSI Environmental Data Scientist (lplatt@cuahsi.org)
This tutorial will introduce the idea of reproducibility for scientific analysis, including motivation and practical tips for getting started. While some examples may be given in R with environmental applications, concepts should be applicable to any analysis that depends on data and code. This tutorial will have useful reminders to all skill levels but will be targeted towards researchers newer to coding and data management.
Getting Started with the JMP Student Edition & Data Visualization (Hands-on)
Instructor: Jack Chan (jack@bu.edu)


Actual Instructor: Ross Metusalem, PhD, Academic Ambassador, JMP Statistical Discovery (ross.metusalem@jmp.com)
Getting Started with the JMP Student Edition:- Overview of the JMP Student Edition
- Navigating the interface
- Basic graphicing and analysis
- Importing data
- Saving and reproducting analysises
- Drag-and-drop graphing with Graph Builder
- Creating foundational graph types
- Visualizing high-dimenional data sets
- Producing publication-quality graphics
JMP Linear Modeling & Predictive Modeling and Machine Learning (Hands‐on)
Instructor: Jack Chan (jack@bu.edu)


Actual Instructor: Ross Metusalem, PhD, Academic Ambassador, JMP Statistical Discovery (ross.metusalem@jmp.com)
Linear Modeling:- Least squares regression
- Logistic regression
- Generalized linear models
- Mixed models
- Common supervised machine learning techniques
- Automatic model crross-validation
- Deploying models
- Deep learning with the Touch add-in
Research Computing Basics Tutorials
Introduction to BU's Shared Computing Cluster (Hands-on)
Instructor: Aaron Fuegi (aarondf@bu.edu)

Introduction to Linux (Hands-on)
Instructor: Augustine Abaris (augustin@bu.edu)

Intermediate Usage of the SCC (Lecture)
Instructor: Katia Bulekova (ktrn@bu.edu)


- Customizing your environment
- Parallel computing on the SCC
- Jobs monitoring and profiling: CPU and GPU utilization, memory usage
- Profiling programs for performance optimization
- General optimization strategies
Computer Programming Tutorials
Natural Language Processing Basics (Hands-on)
Instructor: Josh Bevan (jbevan@bu.edu)

Machine Learning with Python scikit-learn, Part One (Hands-on)
Instructor: Atish Kamble (akamble@bu.edu)

This is the first part of a two-part tutorial series. Be sure to also register for Part Two on Thursday, Feb 6 from 1:00pm to 3:00pm to continue building your knowledge.
What to Expect: This session introduces Scikit-Learn, a powerful Python library for machine learning. Scikit-Learn supports supervised and unsupervised learning and offers tools for:
- Data preprocessing
- Model fitting
- Model selection
- Evaluation
- And much more
Through hands-on exercises with real datasets, you'll learn to develop models using modern algorithms, including:
- Linear regression
- Decision trees and random forests
- K-means clustering
- Dimensionality reduction
We'll also provide an overview of the general machine learning workflow and wrap up with guidance on further ML resources.
Preparation: If Python is not installed on your machine, follow these instructions.
A conda environment file with all necessary packages will be shared before the session, along with activation instructions.
Prerequisites: Experience with Python programming using Jupyter Notebook and familiarity with libraries like NumPy, Pandas, and Matplotlib.
Get ready to explore the capabilities of Scikit-Learn and start building practical machine learning solutions!
Machine Learning with Python scikit-learn, Part Two (Hands-on)
Instructor: Atish Kamble (akamble@bu.edu)

This is the second part of a two-part tutorial series. Be sure to also register for Part One on Tuesday, Feb 4 from 1:00pm to 3:00pm.
What to Expect: This session introduces Scikit-Learn, a powerful Python library for machine learning. Scikit-Learn supports supervised and unsupervised learning and offers tools for:
- Data preprocessing
- Model fitting
- Model selection
- Evaluation
- And much more
Through hands-on exercises with real datasets, you'll learn to develop models using modern algorithms, including:
- Linear regression
- Decision trees and random forests
- K-means clustering
- Dimensionality reduction
We'll also provide an overview of the general machine learning workflow and wrap up with guidance on further ML resources.
Preparation: If Python is not installed on your machine, follow these instructions.
A conda environment file with all necessary packages will be shared before the session, along with activation instructions.
Prerequisites: Experience with Python programming using Jupyter Notebook and familiarity with libraries like NumPy, Pandas, and Matplotlib.
Get ready to explore the capabilities of Scikit-Learn and start building practical machine learning solutions!
Introduction to Python, Part One (Hands-on)
Instructor: Brian Gregor (bgregor@bu.edu)

This is an introduction to the essential features of Python. This first part of the tutorial includes an introduction to basic types, if-statements, functions, lists, dictionaries, loops, and modules. The tutorial includes the use of a popular Python development environment and covers setting up Python on your own computer in addition to using Python on the SCC. This is a two-part tutorial so please remember to sign up for both sessions.
If you do not have Python installed on your home machine, please read and follow these instructions prior to attending the tutorial.
Introduction to Python, Part Two (Hands-on)
Instructor: Brian Gregor (bgregor@bu.edu)

This tutorial is a continuation of "Introduction to Python, Part One" and introduces more features of the language, common libraries such as numpy and matplotlib, and the basics of debugging Python programs. Please make sure you sign up for part one as well.
If you do not have Python installed on your home machine, please read and follow these instructions prior to attending the tutorial.
Introduction to Julia (Hands-on)
Instructor: Josh Bevan (jbevan@bu.edu)

Deep Learning with PyTorch, Part One (Hands-on)
Instructor: Atish Kamble (akamble@bu.edu)

This is the first part of a two-part tutorial on PyTorch. Be sure to also register for Part Two on Thursday, February 13, from 1 PM to 3 PM to continue building your knowledge.
What to Expect: This session introduces PyTorch, a popular and versatile Python library for deep learning, optimized for acceleration processing using GPUs. You’ll gain hands-on experience building and training neural networks for binary classification.
Key Topics Covered:- Why PyTorch?
- GPU acceleration using PyTorch Tensors
- PyTorch Autograd for automatic differentiation
- Working with Data
- Datasets and Data Loaders in PyTorch
- Building Neural Networks
- Developing deep learning models for binary classification using PyTorch
- Experience with Python programming, especially using Jupyter Notebook, is required.
- Before the tutorial, ensure Python is installed on your machine. Detailed setup instructions and a conda environment file with the required packages will be shared.
- If you plan to use your own computer, the conda environment must be installed and activated in advance.
- Familiarity with Python NumPy library.
- Basic understanding of machine learning and deep learning concepts and experience in using them.
Additional Recommendation: For those new to machine learning, consider attending the preceding tutorials on Machine Learning with Python Scikit-Learn to build foundational knowledge.
Get ready to dive into PyTorch and create powerful deep learning models!
Deep Learning with PyTorch, Part Two (Hands-on)
Instructor: Atish Kamble (akamble@bu.edu)

This is the second part of a two-part tutorial on PyTorch. Be sure to also register for Part One on Tuesday, February 11, from 1 PM to 3 PM.
What to Expect: This session introduces PyTorch, a popular and versatile Python library for deep learning, optimized for acceleration processing using GPUs. You’ll gain hands-on experience building and training neural networks for binary classification.
Key Topics Covered:- Why PyTorch?
- GPU acceleration using PyTorch Tensors
- PyTorch Autograd for automatic differentiation
- Working with Data
- Datasets and Data Loaders in PyTorch
- Building Neural Networks
- Developing deep learning models for binary classification using PyTorch
- Experience with Python programming, especially using Jupyter Notebook, is required.
- Before the tutorial, ensure Python is installed on your machine. Detailed setup instructions and a conda environment file with the required packages will be shared.
- If you plan to use your own computer, the conda environment must be installed and activated in advance.
- Familiarity with Python NumPy library.
- Basic understanding of machine learning and deep learning concepts and experience in using them.
Additional Recommendation: For those new to machine learning, consider attending the preceding tutorials on Machine Learning with Python Scikit-Learn to build foundational knowledge.
Get ready to dive into PyTorch and create powerful deep learning models!
Data Analysis Tutorials
Using GitHub Copilot in RStudio for Code Development (Hands-on)
Instructor: Katia Bulekova (ktrn@bu.edu)

Discover how GitHub Copilot, an AI-powered coding assistant, can revolutionize your coding workflow in RStudio. This tutorial session will guide participants through integrating and effectively using GitHub Copilot within the RStudio environment.
Attendees will learn how to:- Set up and enable GitHub Copilot in RStudio.
- Leverage its capabilities to streamline code development in R.
- Generate, debug, and optimize code snippets with AI assistance.
- Incorporate best practices for integrating Copilot into collaborative coding projects.
Designed for data analysts, researchers, and programmers, this session empowers participants to harness the power of AI to enhance productivity and focus on the creative aspects of coding. Whether new to AI-assisted development or looking to refine your skills, this tutorial will provide practical insights and hands-on examples tailored to R users.
Creating Pretty Documents using R Markdown and Quarto (Hands-on)
Instructor: Katia Bulekova (ktrn@bu.edu)

R Markdown is a powerful tool that helps produce elegantly formatted documents.
In this tutorial, we will learn how to use the rmarkdown, ggplot2, and kable packages, as well as their extensions to develop reports that include code, graphics, and tables.
We will cover various options to customize code chunks, figures, and tables and go over the best practices for organizing the code.
We will also explore Quarto which is a new tool that allows using markdown and creating elegantly formatted articles, reports, and presentations.
If you do not have R and RStudio installed on your laptop, please read and follow these instructions prior to attending the tutorial.
Data Preparation for Neuroimagers: BIDS, mriqc, and fmriprep (Hands-on)
Instructor: Kyle Kurkela (kkurkela@bu.edu)

Python for Data Analysis (Hands-on)
Instructor: Brian Gregor (bgregor@bu.edu)

This tutorial will introduce the basics of Data Analysis with Python and its powerful libraries such as Pandas and Matplotlib.
What you will learn:- Importing and Exporting the data
- Basic data processing, cleaning, and manipulation
- Basic inferential statistical analysis
- Data Visualization techniques
High Performance Computing Tutorials
Matlab Performance Optimization (Hands-on)
Instructor: Josh Bevan (jbevan@bu.edu)

On 2/11/25, this session was changed from in-person to Zoom. Zoom link: https://bostonu.zoom.us/j/97519540489?pwd=XHwtVprkvsYsxZE0CzwTDUBYLtCDAp.1
For many programs speed is the main research productivity factor, meaning the difference between hours versus months in getting results. For many applications it is possible to write MATLAB programs that are as fast or only a factor of 2-3 times slower than a compiled C++ or Fortran version, while requiring dramatically fewer lines of code and/or being faster to develop. For existing MATLAB programs, optimizing their performance can provide dramatic speedups. This tutorial will take a "case study" hands-on approach, examining several example programs and optimizing their performance. In the process this will demonstrate useful speedup techniques including vectorization, bsxfun, memory management, and "big O" algorithmic improvements.
Basic knowledge of MATLAB is assumed.
If you do not have MATLAB installed on your home machine, please read and follow these instructions prior to attending the tutorial.
Domain Specific Tutorials
Python GIS: Geopandas Library (Hands-on)
Instructor: Dennis Milechin (milechin@bu.edu)

GeoPandas is a Python library that extends the functionality of the Pandas DataFrame object. This allows one to import vector data (points, polylines, and polygons) into a DataFrame object but the python library enables additional functions and spatial attributes used for spatial operations on the DataFrame and enables one to generate maps showing the spatial data. In this tutorial I will introduce you to the GeoPandas functions that will allow you to import GIS data, apply select spatial operations, and produce some simple maps.
Prerequisite: Basic programming in Python and using Pandas DataFrame.
GIS Using Python: xarray (Hands-on)
Instructor: Dennis Milechin (milechin@bu.edu)

Xarray is a Python library that has a goal "working with labelled multi-dimensional arrays simple, efficient, and fun!". This tool is often used in the fields like climate science, oceanography, and remote sensing. In these fields one will often work with raster type data that have dimensions representing coordinates (e.g. latitude and longitude) and time (e.g. year or days) and one or more values (e.g. Carbon Dioxide concentration or a heat index value for each cell in the grid). Xarray provides tools to manage, subset, and analyze this type of data by incorporating the use of labels. In this tutorial we will cover the basics on understanding the terminology used to describe the Xarray object and go over on how to get started using xarray.
Prerequisite: Basic programming in Python and some understanding of numpy.
GIS Using R: arcgis (Hands-on)
Instructor: Dennis Milechin (milechin@bu.edu)

The R arcgis library is part of ESRI's R-ArcGIS Bridge toolbox that allows one to interact with ArcGIS Online services within an R environment. This enables one to load data hosted on ArcGIS Online into an sf object within your R environment. Create GIS data using sf in your R environment and then publishing that layer to your ArcGIS Online account. Update existing data you have hosted on ArcGIS Online. In this tutorial I will work through several workflows that will demonstrate how you can interact with ArcGIS Online services using the R arcgis library.
Prerequisite: Basic programming in R, knowledge of sf library, and having an ArcGIS Online account.