Hacker News new | ask | show | jobs
by m_ke 2369 days ago
I'm pretty sure they went with Kotlin before Swift was open sourced, but I agree with you that the likelihood of them doing it is very low.

Swift for Tensorflow hasn't gotten much traction because the overlap between programmers who know swift and machine learning engineers is super tiny. Making the core language differentiable sounds very promising though .

3 comments

Swift was open-sourced 18 months before Google announced support for Kotlin.

There was probably several months or more of debate and work within Google by the time of the announcement, but it seems reasonable that during those 18 months they would have also considered and rejected Swift.

It's an interesting value proposition to consider. From one side, Google could have stood to gain by potentially luring the legion of iOS devs onto their platform. At the same time, it's hard to imagine them surrendering any part of their product to a language which is ultimately controlled by Apple at the end of the day (although I suppose they could fork it).

In any case, open source Swift was not ready for prime time at time of release.

Swift for Tensorflow also isn't at 1.0 AFAIK and hasn't been deemed "ready for primetime".

I think it's going to be hard to get data-scientists using anything other than Python any time soon, but I'm hopeful it will take off at some point, since it's really painful to work with scripting languages once you get used to a decent type system.

It's also a super interesting project to follow. The stuff they are doing with automatic differentiation, and the stuff they are talking about with metaprogramming is truly fascinating stuff, with all kinds of applications outside of machine learning. I really hope they manage to get it off the ground.

Yes it’s not at 1.0, but my point when I mention to people actually doing deep learning that Swift is coming and has support for native differentiation and static typing, the response is underwhelming to the point that I wonder if either of those features provide enough pull to get people to ever drop Python for Swift.
Yeah I think it will be a really hard sell since my perception is that programming is python for a lot of data scientists. Also static typing is something you have to use for a bit before you can understand that the little bit of extra formality is actually saving you a lot of trouble in the medium and long term.

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.

Static typing is useless for exploratory data analysis and data wrangling.

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.

> Static typing is useless for exploratory data analysis and data wrangling.

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?

Julia is the only sound alternative to Python.

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.

What’s with the FUD? You can already run S4TF notebooks on Colab, and it’s trivial to spin up S4TF in any environment using Docker.
How do you spin S4TF on Windows Containers or any kind of Linux distribution in-house?
Using Docker

Edit: or on Ubuntu just download the toolchain.

Swift was released before kotlin
But wasn't open source till the end of 2015 (https://developer.apple.com/swift/blog/?id=34)

Kotlin was open sourced around 2012 and people were using it in Android apps before Google officially started supporting it in 2016.

That was the official support from Google. Kotlin had been around for a long time before that. I used to write Android applications using it before Google officially supported it.