Learning

These are the MOOCs that I have took, and how I feel about them.

Table of Contents


Artificial Intelligence

Deep Learning Specialization

This course is the best way to quickly learn the basic stuff of neural networks, computer vision, and natural language processing. It is however a little obsolete in 2023’s context. Found it helpful to rewatch a few episodes before AI job interviews.

Introduction to PyTorch

This course can help you quickly learn how to use PyTorch, in an afternoon. I also recommend the official PyTorch beginner’s tutorial.

Machine Learning

This course is currently the best MOOC I’ve ever took. Sadly, it is now replaced by the Machine Learning Specialization. Fortunately, Andrew promises that the specialization is even better (but is now paid instead of free).

  • Course Provider: Coursera
  • Course Instructor: Andrew Ng
  • Course Language: English
  • Recommendation: ★★★★★

Algorithms

Data Structures and Algorithms (数据结构与算法)

The best Chinese course for data structures and algorithms. Professor Deng is well known for his teaching skills and vivid animations showing the running steps of algorithms.

  • Course Provider: xuetangX
  • Course Institution: Tsinghua University
  • Course Instructor: Junhui Deng
  • Course Language: Simplified Chinese
  • Recommendation: ★★★★★

Design and Analysis of Algorithms (算法设计与分析)

RIP Professor Qu. This is a more introductory-level course compared to Professor Deng’s. The slides and pseudocode are old-school but do a great job in helping me understand the concepts.

  • Course Provider: Coursera
  • Course Institution: Peking University
  • Course Instructor: Wanling Qu
  • Course Language: Simplified Chinese
  • Recommendation: ★★★★★

Programming

Learn to Program: Crafting Quality Code

Advanced continuation of the Learn to Program course below. Talks about more advanced topics such as unit testing, time complexity, and code optimization.

  • Course Provider: Coursera
  • Course Institution: University of Toronto
  • Course Instructor: Jennifer Campbell, Paul Gries
  • Course Language: English
  • Recommendation: ★★★★☆

Learn to Program: The Fundamentals

The goto course for learning Python from scratch. Does a great job in teaching the basic programming concepts.

  • Course Provider: Coursera
  • Course Institution: University of Toronto
  • Course Instructor: Jennifer Campbell, Paul Gries
  • Course Language: English
  • Recommendation: ★★★★★

Introduction to Programming with MATLAB

Good systematic intro to learning MATLAB. Teaches the basic stuff, like input & output, if statements, loops etc.


Other Courses

Introduction to Mathematical Thinking

This course teaches formal logic and mathematics, and trains you on how to think rigorously in the mathematical world.

  • Course Provider: Coursera
  • Course Institution: Stanford University
  • Course Instructor: Keith Devlin
  • Course Language: English
  • Recommendation: ★★★★☆

Think Again: How to Reason and Argue

This course is now split up and renamed to the Introduction to Logic and Critical Thinking Specialization. It teaches logic, reasoning, critical thinking, and how to avoid fallacies.

中國古代歷史與人物:秦始皇(Qin Shi Huang)

This course not only talks about the history of Qin Shi Huang, but tries to give people a glimpse of how history researchers view historical artifacts, and why everyone needs to study history.

  • Course Provider: Coursera
  • Course Institution: National Taiwan University
  • Course Instructor: Shih-Hao Lu
  • Course Language: Traditional Chinese
  • Recommendation: ★★★☆☆