MakeCode, once discovered, was a revelation for us: it allowed us to introduce coding while also allowing the kids' creativity to roam free in creating their own 8-bit game. This game can then be exported to allow others to play it, giving them a solid product at the end of the course.
A screenshot of a MakeCode project is above. As you can see, it uses blocks instead of code, so kids can easily drag what they need into the code area. However, for more advanced students, there is a Python tab at the top which converts their blocks into lower level code automatically. This code can actually be published to GitHub and opened in any IDE, which makes custom modifications easy for advanced students and instructors.
In addition, any custom made functions will also be turned back into blocks. In both cases, changes will be visible immediately.
The other feature is has that none of the other platforms has is a debugger, which allows students to step through their blocks and find out where a problem is. In Minecraft, this would have to be done in a physics-centric way, where you can test and investigate the mechanics as if they were in real life. But coding is not like real life, and this gets the kids used to that.