Recommended Courses#
Here are some recommended online courses for various topics in research computing.
They are useful complements to your studies and the various Training Courses we provide here.
Contents#
Software Engineering#
Programming#
Python#
Composing Programs, John DeNero, 61A course, UC Berkeley.
Python Distilled, David Beazley, 2021.
OpenMP#
Introduction to OpenMP from Cornell University
Advanced OpenMP from EPCC
Programming your GPU with OpenMP containing slides and exercises, from Bristol University, presented at SC22
Algorithms and Data Structures#
Introduction to Algorithms, Srini Devadas and Erik Demaine, MIT 6.006, 2011.
Distributed Systems#
Distributed Systems, MIT 6.824, Robert Morris, 2020.
Cloud Computing#
Microsoft Azure Fundamentals (AZ-900), Adam Marczak.
Testing#
Research Software Engineering#
Research Software Engineering with Python, The Alan Turing Institute.
Packaging#
Python Packages, Tomas Beuzen & Tiffany Timbers, 2021.
Version Control#
First Week on GitHub, GitHub Learning Lab.
Data Science#
Foundations#
Computational and Inferential Thinking: The Foundations of Data Science, Data 8: Foundations of Data Science course, UC Berkeley.
Causal Inference#
Causal Diagrams: Draw Your Assumptions Before Your Conclusions, Miguel Hernan, Harvard University.
Introduction to Causal Inference, Brady Neal.
Applied Maths#
Engineering Mathematics (ME564 and ME565), Steve Brunton, University of Washington.
Statistics#
Statistical Rethinking, Richard McElreath.
Machine Learning#
Machine Learning#
Machine learning, Coursera, Andrew Ng.
Video lectures, CS229, Standford University.
Machine Learning for Intelligent Systems, Kilian Weinberger, 2018.
CS4780, Cornell: Video lectures.
Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow, 2nd Edition, Aurélien Géron, 2019, O’Reilly Media, Inc.
Deep Learning#
Deep Learning Specialization, Coursera, DeepLearning.AI.
Video lectures, CS230, Stanford University.
Syllabus, CS230, Stanford University.
NYU Deep Learning, Yann LeCun and Alfredo Canziani, NYU, 2021.
Maths for Machine Learning#
Linear Algebra, Gilbert Strang, MIT 18.06, 2005.
Essence of linear algebra, 3Blue1Brown.
Essence of calculus, 3Blue1Brown.
Matrix Methods in Data Analysis, Signal Processing, and Machine Learning, Gilbert Strang, MIT 18.065, 2018.
MLOps#
Applications#
Machine Learning for Healthcare, MIT 6.S897, David Sontag and Peter Szolovits, 2019.
Numerical Modelling#
Weather and Climate#
Art of Climate Modeling, Paul Ullrich, UC Davis.