Some time ago a colleague had the idea to take an online course at Coursera, and he asked me whether I'd like to join. So I did. We've chosen a course called "Programming Languages", which focuses on functional programming and introduces ML (namely Standard ML of New Jersey), Racket and Ruby.
It's over a decade, since I've learnt and used functional programming on a day-to-day basis. Now, that the first week is over and the first homework has to be submitted, I really have a positive impression: The sections are split into small pieces and can be consumed on your own pace, the material is quite extensive and the lecturer is really decent - plus a users' forum and reasonable homework.
So, I can really recommend this online course.