Calendar

Center for Integrated Research Computing (CIRC) Winter Boot Camp

January 26, 2015 - March 05, 2015
HSCCI VISTA Collaboratory, Carlson Library (1st floor)

We are very excited to announce that the Center for Integrated Research Computing (CIRC) will be hosting a 6 week program 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 4 days. The lectures are designed to integrate with the existing student class schedules for convenience. Exercises will be assigned between each lecture, so each attendee has time to work independently on programming tasks. Participants are expected to attend each lecture over the 4 days that the module is offered. Each programming module is independent, and participants may sign up for one or more modules (i.e. languages to learn).

The classes will be taught in the HSCCI VISTA Collaboratory, located on the first floor of Carlson Library. Classes start on January 26th and continue through March 5th. Please see the schedule and descriptions below for more information of the days and times of the sessions. Space is limited, so please register early!

To register for any of the sessions, please visit:

http://www.circ.rochester.edu/bootcamp_registration.php

Module 1: Perl - 3:00 - 4:20 pm on 1/26, 1/28, 2/2, 2/4

- Basic elements of Perl scripts (comments, variables, strings, numbers, quotes)

- Print statements

- Arrays

- Associative arrays (i.e. dictionaries, hashes)

- Conditionals (if-then, if-then-else, unless, etc.)

- Loops (while, do-while, for, etc.)

- Subroutines

- Input and output

- Regular expressions

 Module 2: Fortran - 4:30 - 5:50 pm on 1/26, 1/28, 2/2, 2/4

- History

- Fortran program structure and compiling

- Variables and data types

- Arrays and pointers

- Basic input/output and formatted input/output

- Operators and intrinsic functions

- Control structures

- Loops

- Derived data types

- Subroutines and functions

Module 3: Linux - 3:00 - 4:20 pm on 1/27, 1/29, 2/3, 2/5

- 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 4: C - 4:30 - 5:50 pm on 1/27, 1/29, 2/3, 2/5

- C Program structure

- Compiling C code from source

- Variables and data types

- Operators

- Control structures

- Loops

- Arrays and pointers

- Input/output and files

 

Module 5: Bash Shell Scripting - 3:00 - 4:20 pm on 2/9, 2/11, 2/16, 2/18 (Note: Prerequisite is Linux)

 

- 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 6: Stata - 4:30 - 5:50 pm on 2/9, 2/11, 2/16, 2/18

- 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 7: SAS - 3:00 - 4:20 pm on 2/10, 2/12, 2/17, 2/19

- 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

Module 8: MySQL - 4:30 - 5:50 pm on 2/10, 2/12, 2/17, 2/19

- 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 9: Python - 3:00 - 4:20 pm on 2/23, 2/25, 3/2, 3/4

- 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 10: R - 4:30 - 5:50 pm on 2/23, 2/25, 3/2, 3/4

- Scalars, vectors, lists, and data frames

- Basic calculations and syntax

- Importing and exporting data

- Graphing and visualizing data

- Statistical analysis of data sets

- R packages

- Functions

- R programming

- Running R on BlueHive

- Managing memory

Module 11: MATLAB - 3:00 - 4:20 pm on 2/24, 2/27, 3/3, 3/5

- 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

Module 12: Mathematica - 4:30 - 5:50 pm on 2/24, 2/27, 3/3, 3/5

- Mathematica notebook environment

- Variables and operators

- Data structures

- Functional programming

- Functions

- Linear algebra

- Importing and exporting data

- Plotting data

- Statistics and data analysis

- Mathematica scripts

Category: Other