At some stage of your career someone would ask “Well, how did you learn this?”. One of the difficulties I found with answering it is that when we think how we solve something retrospectively we generally see that it is a linear experience; however very often that is very often far from the truth.

Very few people like the idea of learning slowly, and articles like “Teach Yourself Programming in Ten Years” are generally quite rare.

This then begs the question: how?

Should we try to replicate this non-linear environment? If so how?

In traditional mathematics education it is outlined in three stages:

  • “pre-rigorous”: where we will examine informally how to apply a methodology in an intuitive manner, based on examples and lots of hand-waving
  • “rigorous”: where we will attempt to be much more formal and precise in explaining why an approach works
  • “post-rigorous”: where we will rely on our intuition to develop and extend our approaches

Then I suppose is the extension to consider how this might relate to programming and machine learning?

Nevertheless the road to learning is a long one, which still hasn’t been solved by the internet where we all what that “quick fix”. Perhaps there is something more to ponder and consider in the realm of online education.