Courses (Programming)

  • I generally recommend being as hands-on as possible.
  • Everyone learns differently. Talk to someone similar to you in experience, learning style, domain, etc. to find out what they did or do to learn. I learned Python a decade ago and had some previous coding experience, so my information might not be as relevant.
  • If you need video instruction & have specific needs, start with YouTube to answer your specific questions.
  • If you need video instruction & prefer a course to maintain accountability and set a learning path, then try all free options first, including Coursera. For example, Python for Everybody Specialization, which I have not taken.
  • If you are ok with text instruction, many new tools include built-in editors that code as you go. For example, Kaggle is a great resource: Learn Python Tutorials.

Courses (Machine Learning & AI)

  • Know your objective and search accordingly. Some examples include: business impact, technical implementation of algorithms, technical implementation of deployment, hands-on data analysis, general survey of AI, Deep Learning, NLP, understanding the difference between different techniques, etc.
  • Know your technical background and search accordingly. If you are weak or don’t know how to program, then certain courses will challenge your programming abilities and detract from learning ML, which is ok as long as you are aware. If you don’t have a Linear Algebra or optimization background, then certain courses will challenge your mathematical background.
  • Know that there is a lot of content out there, so do some work upfront before you invest your time. (See above notes).
  • An example of a clear explainer is Andrew Ng. This course is a bit outdated (not many people use Octave or Matlab), but this seems to be a new course (I did not take) and here is his newsletter.
  • is another great resource skewed to more technical users and deep learning.
  • There are many, many other resources.
  • Here is a very nice curated list.