TensorFlow Is Open-Source, But Why? | by Haifeng Jin


A popular business model of open-source software

The most popular business model for running open-source software is the “free code, paid service” model. They use the open-source code to attract more users, but there is always a paid service based on the code down the road somewhere to earn the money back from the users. Let us see two examples.

The first example is a big open-source software, Android. Android is open-source so all smartphone manufacturers want to use this operating system instead of developing their own. Therefore, whatever brand of smartphone you buy, you are going to use the android operating system. A large number of users are connected to their ecosystem. If any of these users ever purchase an app, android will get its share.

The second example is reveal.js from a small startup company. It is a JavaScript library for making slides. You need to write JavaScript code to use it. It is open-source and free to use. They also host a premium service on slides.com, which is a web graphical user interface based on the open-source library. Again, the open-source library is to make technical impacts and attract users, and the premium service is to make profits from some of the attracted users.

A similar conspiracy theory around TensorFlow

Similarly, we can expect that TensorFlow is trying to board more people on the platform and get profit from them somewhere down the road. The most widely spreaded theory is that Google open-sourced TensorFlow to connect users to their cloud services.

It makes perfect sense. TensorFlow is there to make a technical impact and attract users, and the Google Cloud Platform (GCP) would be the best premium service for using TensorFlow. Especially, the TPUs, which pushed TensorFlow’s performance to the next level, are exclusive to the GCP.

If this is true …

If this theory is true, the slide from using open-source TensorFlow to premium TensorFlow services should be buttery smooth. It is because they want to push the conversion rate from free users to paid users as high as possible. We should at least see the following things happening.

First, TPUs should be promoted in the TensorFlow documentation. Promoting TPUs can direct users to GCP, where the TPUs live. However, the TPU instructions are hidden quite deep on the website. If you land on the index page of the website, it is hard to find anything related to TPU unless you use the search bar.

Second, TensorFlow services on GCP should be super easy to use. However, on the AI & ML page of the GCP website, there is only one dedicated product for TensorFlow, which is the TensorFlow Enterprise. None of the rest of the products even mention TensorFlow as a promotion.

Third, Google Colab users should be able to pay more for premium services. Google Colab is the most popular TensorFlow service hosted by Google. Many data scientists and machine learning practitioners use it as their “TensorFlow IDE”. Google Cloud can easily make a profit by providing premium GPU and TPU services in Google Colab. However, Google Colab has extremely strict computing resource limits and there is no way to pay more to get more. You are only allowed to use a single GPU or TPU. Even if you are on the Colab Pro+, which is the top tier, your environment may still be preempted after running for 24 hours.

Why Google did not follow this path

There are always such conspiracy theories about giant companies. There is a big brother, who oversees everything and makes all the decisions. However, in reality, it is largely not true. Google is one of the world’s biggest companies. We cannot think of it as a small company, where all teams work towards a single clear goal pointed out by the upper management.

Each division at Google makes its own OKRs. As a big tech company, Google has always been living in the fear of being broken up into pieces by antitrust lawsuits. In preparation for the apocalypse, Google let every division makes its OKRs, a side effect of which is that the divisions are harder to have deep strategic cooperation as they have to prioritize their own OKRs.

TensorFlow and GCP belong to different divisions at Google. TensorFlow was a tool first developed for internal research and machine learning applications at Google, which is more like an internal infrastructure software. However, cloud services are aiming at driving external revenue. Therefore, they have their own top priority goals to care of. Thus, may not have deep collaborations with each other.



Source link

Be the first to comment

Leave a Reply

Your email address will not be published.


*