Skip to content

Training Levels

Richard Darst edited this page Dec 13, 2017 · 15 revisions

This page lists a structured training program for computational scientists. The goals are:

  • Gamify learning. Provide some psycological rewards.
  • Make it clear what courses are at what level, and what levels are useful for each person. There should be less of "I might go to this, but it's too advanced and irrevevant for me"
  • Provide more tangible benefits for education (e.g. group leader sees value in reaching a level)

There are four core levels providing core skills which almost everyone should know (A-D, come up with better names). Then, there are "electives" which are at each level, which each person can need.

Class A (basic local resources, 1 hour only)

  • Example from Aalto:
    • Aalto managed computer basics. Installing own packages
    • Data storage locations and policies. Basic data management.
    • Remote access, remote data access
    • How to get support, where, etc.

Class B (using Linux somewhat well, ~1 day)

  • Files, dirs, permissions, filesystems,
  • Shell use (shells, tab completion, paths, programs, environment, etc)
  • Shell scripting
  • Version control Electives:
  • Jupyter notebooks

SW dev track:

  • Modular code development
  • SW testing

Other options include Python, R, data analysis, etc.

Class C (using HPC for research, ~1 day)

This is basically Science-IT summer kickstart

  • Slurm
  • Modules and software
  • Storage
  • Deep learning software frameworks,

Class D (advanced HPC use and development, assorted specialized courses)

All electives. Typical Science-IT monthly talks

  • GPU computing
  • parallel programming

Clone this wiki locally