Registration Open for Research Computing Boot Camp

CIRC class in visualization labThe Center for Integrated Research Computing (CIRC) will be hosting a 6-week Winter Boot Camp to help students, postdocs, research staff, and faculty learn new programming languages and sharpen their computing and data analytics skills. The classes are designed for beginners and will cover basic topics to give enough direction to move on to self-learning tutorials or other more advanced coursework.

Each language or topic is an individual module that will take place during 1.5-hour lectures over 3 or 6 days. Each programming module is independent, and participants may sign up for one or more modules.

The classes will be taught in the VISTA Collaboratory, located on the first floor of Carlson Library. Classes start on January 26 and continue through March 3. Space is limited, so early registration is encouraged.

Register for Boot Camp

Schedule and Modules

Module 1: Linux — 3:00 - 4:30pm on 1/26, 1/27, and 1/28
  • History
  • Basic file system layout
  • Commands for manipulating files and directories
  • Creating and editing files
  • Monitoring and controlling processes
  • Input/output redirection and pipes
  • Wildcards and conventions
  • Survey of useful commands (e.g. find, tar, etc.)
  • Scheduling jobs on BlueHive
Module 2: Visualization — 4:30 - 6:00pm on 1/26, 1/27, and 1/28
  • Scientific visualization concepts
  • Applications for static visualization
  • Applications for dynamic visualization (e.g. VisIt, ParaView, Amira, etc.)
  • Remote visualization (GPUs, VNC, etc.)
  • VISTA visualization
Module 3: C Programming Language — 3:00 - 4:30pm on 2/2, 2/3, and 2/4
  • C Program structure
  • Compiling C code from source
  • Variables and data types
  • Operators
  • Control structures
  • Loops
  • Arrays and pointers
  • Input/output and files
Module 4: Bash Shell — 4:30 - 6:00pm on 2/2, 2/3, and 2/4
  • Review of basic Linux commands
  • Overview of shell scripting
  • File permissions and execution of scripts
  • Variables and expressions
  • Environment variables
  • Conditional expressions
  • If and while statements
  • Loops and control
  • Case and select
  • Strings, parsing, and text processing

Module 5 and 7: Python — 3:00 - 4:30pm on 2/9, 2/10, 2/11, 2/16, 2/17, and 2/18
  • Basic elements of Python scripts (comments, variables, strings, numbers, quotes)
  • Variables
  • Lists and tuples
  • Dictionaries
  • Conditionals and loops
  • Functions
  • Input and output
  • Numerical expressions
  • String expressions
  • Regular expressions and text
  • Classes and objects

Module 6: MATLAB — 4:30 - 6:00pm on 2/9, 2/10, and 2/11
  • History
  • MATLAB desktop environment
  • Data types (operators, arrays, etc.) and intrinsic function
  • Basic plotting
  • Saving and loading sessions
  • MATLAB scripting
  • Control structures and loops
  • Functions
  • Reading/writing data to files
  • Symmetric multi-processing and the Parallel Computing Toolbox
  • Accelerated MATLAB with GPUs
  • Turning MATLAB routines into C code

Modules 8 and 10: R — 4:30 - 6:00pm on 2/16, 2/17, 2/18, 2/23, 2/24, and 2/25

  • Scalars, vectors, lists, and data frames
  • Basic calculations and syntax
  • Importing and exporting data
  • Graphing and visualizing data
  • Summary statistics of data sets
  • Probability distributions and statistical tests
  • Clustering and supervised learning
  • R packages
  • Functions
  • R programming
  • Running R on BlueHive
  • Managing memory

Module 9: MySQL — 3:00 - 4:30pm on 2/23, 2/24, and 2/25
  • General overview of structured data
  • General overview of relational databases
  • Creating a MySQL database on BlueHive
  • Creating schema, entity relationships, models, and indexes
  • Querying a database
  • Importing and exporting data
  • Using Oracle MySQL Workbench

Module 11: Stata — 3:00 - 4:30pm on 3/1, 3/2, and 3/3
  • Stata language and common use cases
  • Variables and data types
  • Control syntax
  • Basic calculations
  • Importing and merging data
  • Exporting, graphing, and exploring data
  • Statistical analysis of data sets (including t-Test, ANOVA, regression, etc.)
  • Hierarchical Linear Modeling (HEL) and Structural Equation Modeling (SEM)
  • Project management and limitations of Stata
  • Using Stata on BlueHive and with large memory requirements
Module 12: SAS — 4:30 - 6:00pm on 3/1, 3/2, and 3/3
  • Introduction to SAS and its usage
  • SAS program editor line commands
  • SAS data sets and data types
  • Importing and exporting data
  • Summarizing and creating statistical reports for data analysis
  • Exploring an visualizing data
  • Conditional and iterative processing
  • SAS and Excel
  • Using SAS on BlueHive