Comment on page
Thursday, 8 June
Introduction to Programming
Today's tutorials will occur along four tracks, each devoted to a different programming language, running concurrently. Each tab below corresponds to one of these tracks. The tutorials associated with each track are listed on the relevant tab.
Julia
MATLAB
Python
R
The Julia programming language has been gaining popularity in the scientific computing and data science communities. The language boasts performance characteristics approaching that of compiled languages like C, C++, and Fortran, while also being as expressive as Python, R, Ruby, or Matlab. This will be an introduction to the Julia language for users without previous experience using Julia. This will be a "hands-on" introduction, and will cover the basics of the language. No prior experience with Julia is required; some familiarity with another programming language will be benficial, but is not necessary.
This tutorial will discuss best practices for writing reusable code in Julia. Topics will include:
- basic terminal commands
- basics of git for managing changes
- managing environments
- creating/managing a project
- setting up a code editor (vscode) for development
- test driven development
- working collaboratively
An introduction to using MATLAB on Oscar. Topics covered include: working with MATLAB interactively on Oscar, using the MATLAB GUI, and using MATLAB in batch jobs.
An introduction to programming using MATLAB. Topics covered include: working with the MATLAB Desktop, variables and arrays, and basic plotting.
An introduction to programming using MATLAB. Topics covered include: MATLAB scripting, functions, relational operators, logical operators, controlling flow with if statements and loops, and using MATLAB's debugger.
This workshop will cover basic performance optimization and parallel computing techniques in MATLAB, including: code profiling, pre-allocation, sequential memory access, vectorization, parallel for-loops and efficient matrix-vector storage and operations. We will assume that participants have a basic understanding of the MATLAB programming language.
An introduction to Python fundamentals. This session will cover key python concepts of: data types and data containers; the logic of control-flow techniques such as if-then statements, for loops, list comprehensions; and a basic understanding of writing functions.
A continuation of Part I with hands-on exercises.
An introduction to EDA of tabular data covering techniques of data loading, inspection, cleaning and pre-processing. This session will provide an overview of data validity considerations, how to inspect data using statistics and visualizations, and methods of correcting common data issues.
A continuation of Part I with hands-on exercises.
This session will cover an introduction to R, including data types and data formats, useful R functions, writing your own functions, importing and exporting data, and installing packages.
This session will cover data wrangling (filtering, reshaping, joining) using Tidyverse.
This session will cover data visualization using ggplot.
Last modified 5mo ago