Still given the growth of that industry, it's hard to imagine that Python can bear the burden of the increasingly complex work there forever.
Once you get to the modelling step all of the data is in typed arrays.
Static types start to shine once the project grows and the new type annotation syntax works great for that.
I've tried doing machine learning in C++, Java, Scala and JavaScript and all of them are a pain compared to python.
Python would be perfect if I could annotate parts of my code and compile them. (Pretty much what's commonly done with cython or numba jit.
In my experience, doing this kind of task in an weak-typed or duck-typed language is already tedious. Function signatures don't tell me enough detail to know exactly what I'm working with, so I end up spending a lot of time digging through documentation or print debugging. Why not let the compiler, or the function signatures do this work for you?
If they want to make an Apple only version of Tensorflow, so be it, but don't expect it to take off on Linux and Windows research labs.
Edit: or on Ubuntu just download the toolchain.
But I would assume a lot of people just want a notebook to do their work in. Does it really matter if it’s running in a container or natively? Most python projects run inside a virtual environment anyway, which is comparable if not more poorly encapsulated.
Also the cloud use-case is expanding. Environment basically doesn’t matter at all in that case.
Yes it matters, because many organisations get development stations managed by IT, and there are very strict compliance regulations regarding where data processing takes place.