He lists that there's no Windows IDE, which is far from being able to run the program everywhere and using whatever I want to use to build it (as I have said it). I also think that .NET languages (like Visual Basic .NET and C# .NET) are not a good starting language, even though one of them was my starting language thanks to my high school and my college (both taught me Visual Basic .NET for one year). Plus, he states that Swift is open source at the moment, which, as far as I know, is not true. He didn't mention any of those three points I made.
EDIT: Replaces .NET with .NET languages.
Now, if Apple actually released the code of its Windows port of iTunes, will Apple actually care about it enough to accept the contributions from the community and make the community feel welcome? Will iTunes on Windows drastically improve as the time goes on? Will developers on other platforms accept it and use it for their products? How well does it behave when compared to other programming languages? There are too many unknowns.
Although I'd love to see that future, I don't think that this will happen. In theory, releasing the code of something is all that is needed to do to make something actually useful. In reality, things are not that simple.
Right now the issue is library support - swiftc can already just spit out LLVM IR: https://github.com/kripken/emscripten/issues/2427
The stdlib would be included in the open source release.
Linux boxes would fulfill "non-Apple product" though. Unixy programming languages like Swift and Python have always been weird on Windows.
Even then, building some of the fancier libraries (with native code) by hand is bit involved.
In fact, Anaconda works very well on Windows, as long as you don't require extreme latest versions of modules.
Well, that's sort of obvious, in that .NET is a platform for which many languages (VB.NET, C#, F#, Python, etc.) are available, not a language.
And if you are using Java, not only can you test your application wherever you want, you can also write it wherever you want.
Languages that don't offer this multiple flexibility will have a tough time becoming a main teaching language in schools.
1. Where am I going to test my applications? Not all students have Apple's products (I never had any of them). On the other hand, if I use Python, or Java, or C/C++, I can test my application wherever I want.
2. As far as I know, Swift will be open source (at least, that's what Apple said). But Swift is not open source _at the moment_ (please correct me if I'm wrong).
3. Swift is a new language. If I type "Swift tutorial" on Google, and I type "Python tutorial" on Google in a second tab, I'll get much more relevant results for much more platforms when I type "Python tutorial".
I don't care how good the syntax is. If a programming language is not currently available on like every platform and if I can't build my application using whatever I want to use (including a text editor and a compiler), it's not a good choice for students no matter what you say.