← Back to context

Comment by ncann

4 years ago

When I think of Google I think of Go, Angular, protobuf, Bazel, Dart, Flutter, Android, Chromium, Kubernetes, Tensorflow, etc.

When I think of MS I think of C#, TypeScript, VSCode, .NET

When I think of Facebook I think of React, Flux, Jest, PyTorch, GraphQL, Haxl

When I think of Apple I think of Swift, WebKit

When I think of Amazon...I can't really think of anything

Facebook: Relay, Cassandra, React Native, RocksDB, Presto, Reason, btrfs, osquery.

Apple made significant contributions to LLVM and Clang

Hell IBM has more open source contributions (many through the Apache foundation and standards committees) than Amazon, which is saying something.

  • >Cassandra

    This is an interesting one in the context of this discussion. It likely does not exist as we know it without Amazon's Dynamo paper.

    • Yes that's true. Also interesting is, AFAIK, DynamoDB does not follow the Dynamo paper. DynamoDB uses an architecture based on single-leader replication, and the Dynamo paper describes a process where a coordinator node is in charge of replicating to each node. If I am not confused, any node among the top N nodes in the preference list can act as the coordinator.

      (This information may be slightly out of date at this point)

I would add Kotlin to Google's credit.

But I think it's important to note that these companies don't contribute to open source out of any moral obligation, do they?

I think they do it to tie more developers and development around their eco-systems and products.

Maybe Amazon should get smart and start doing something similar. Or maybe they don't need that. But in any case I don't hold it morally against them that they don't. I think a bigger issue is it seems they pay and have been paying very little or no taxes.

https://www.cnbc.com/2020/02/04/amazon-had-to-pay-federal-in...

  • No I would not add Kotlin to Google's credit. All the initial work and exponential adoption started with JetBrains. Google only greenlit it as an official Android dev language eventually (barring whatever OSS work they're doing on it only now).

    • Google is surely pumping lots of money into Kotlin, had it not been for them, and Kotlin would just be yet another runner up in the long list of JVM guest languages.

      It is also due to Android Studio performance issues that Kotlin compiler improvements came to be, and also the compiler plugins for stuff like kapt and Jetpack Composer.

      Android Java might be stagnant, not kept up to date with standard Java, yet it still rules in Studio tooling performance.

I really don't understand this argument. Why do you think Facebook and Google have so many open source contributions? Is it really out of the goodness of their hearts? Or is it because that was part of their DELIBERATE STRATEGY to attract talent and use OSS as part of marketing outreach.

Microsoft's core business is developer tooling. In the 90's and early 2000's that could be closed-source and proprietary. By the 2010s it was clear that the only way to operate with the kind of tools they have is to be open source, so they pivoted. But their goal is still business.

Google built Kubernetes as a platform play to compete with AWS and Azure - brilliantly - by feeding engineer fears about "lock-in", giving them a set of tools that they could justify feeling "free", and then when the engineers invariably said "this is too complicated to build, maintain, and operate" they turned around and sold a GCP managed kubernetes solution! After all, who better to operate Kubernetes than the team that built it, amirite?

Android is the same play just competing with closed-source iOS instead of AWS.

Facebook built GraphQL for developers on THEIR Platform.

Apple built Swift for developers on THEIR platform.

Examples like this are just as cynical and capitalistic profit-driven as AWS "open sourcing" an SDK for interacting with AWS.