Advanced NLP with spaCy
NLTK has been the king of NLP for most of recent history. I've used it extensively and found its API to be fine, though somewhat clumsy. In my humble opinion, spaCy is definitely more user-friendly. This course capitalizes on that fact and takes advantages of some of the best qualities of python.
Not to mention it's created with Gatsby and the Juniper plugin - which lets users run Jupyter Notebook backed python in the browser. The creator, Ines Montani, did an excellent job at sequencing content and coding exercises. Hats off to her. The code snippets have a fill-in-the-blank, Datacamp-esque feel (the course was originally created for Datacamp).
Chapter 1 uses bite-sized examples well and left me craving more industrial strength versions. Chapter 2 nicely transitions into large-scale data analysis. Chapter 3 deals with pipelines, which the previous two chapters set you up for effectively. I always felt challenged, and only occasionally unsure of myself. A lovely mix. Chapter 4 is neural networks, and I was definitely ready when this chapter came around. My favorite part of the course, it really did a nice job of highlighting how useful spaCy can be.
The code snippets are a bit wonky. Sometimes the submit and run code buttons work, sometimes they don't. I had to refresh things a lot. Wasn't too distracting but even slight disruptions in flow can knock you off course.
Also, I wanted more practice. It would have been nice to conclude each chapter with a full Kaggle Kernel or Google Colab challenge. Take a real world example and apply the spaCy just learned to a Kaggle competition dataset or something.
The course is available for free here.