Tackk is very simple and quick to use, but I soon hit the limits when I put my Scratch course together. Udemy and other online offerings are very much video focused and although I wanted to include video I didn't want it to be the main teaching medium.
So I opted for Versal.
Firstly let me stress Versal isn't really designed with coding courses in mind. It's a general purpose online teaching tool, but it has the flexibility built in to enable me to create the materials that I wanted. However there are some features that make Versal a great choice for this kind of course.
Firstly, you have all the standard tools that you expect to see in an editor such as the ability to insert videos, a good range of interactive quizzes and integration with Google Drive.
The most useful built into Versal is the Markdown editor, which conveniently has a Code option. This is wonderful for including little snippets of code. However it doesn't handle indentation too well, which is important for Python.
Pastebin.com this enabled me to include code quickly and also in a format that students could easily copy and paste materials without annoyances such as numbers and indentation problems. There are some limitations, in an embedded window you can only get about 30 lines of code. If you want to share a longer code sample, you are better off including a link.
Finally I included the code on GitHub. Useful enough to have a quick to download zip file, but I feel it's good for students to start using the industry standard tools as soon as possible: https://github.com/jamesabela/PyGameCourse