Google could not function as a company without protobuf. It is ingrained deeply into every inch of their stack.
Likewise, gRPC is the main public-facing interface for GCP. It's not going anywhere.
Google could not function as a company without protobuf. It is ingrained deeply into every inch of their stack.
Likewise, gRPC is the main public-facing interface for GCP. It's not going anywhere.
Quite recently Google quietly unshipped an effort to make their protobuf build rules more useful to OSS users of Bazel (see the rules_proto repository). This wasted a huge amount of planning and work that'd gone into the migration.
And the fact that these tools are designed first and foremost for Google use shows up everywhere. Stuff that Google fundamentally doesn't care about but is widely used (eg Ruby) is stagnant.
In this state, it's totally reasonable to reconsider whether these tools are worth building on top of. I personally still believe! But I don't blame people who are skeptical.
Google's OSS contributions are largely correlated to the fact that they could _afford_ to do OSS. When you have the best business model in the world, you can afford X% of your engineering hours focused on OSS. Of course, it's purely not altruistic they also get back a lot in return
However, if due to AI or other advancements, Google's business model takes a hit I wouldn't be surprised that their OSS contributions are the first to go off. Like we saw Google codejam being discontinued in 2022 layoffs
Though if your business outlives Google, gRPC going away might be least of your problems
Not sure if the message is still believed as strongly.
Bazel in general has really awful support.
as far as I remember most of the API is built on REST
For newer services, there is an automatic 1:1 mapping between the REST and gRPC APIs, except for features like streaming RPCs which have no REST equivalent.
The REST apis are converted to stubby internally, not gRPC which what makes it relatively disposable
I'm not sure what part of GCP you work in, but in my experience, the big customers are using gRPC, not REST.
Google may have Stubby as the primary internal RPC, but several other large companies rely primarily on gRPC and have contribute to it and have incentives to keep it alive, e.g. Dropbox, Netflix, even parts of Apple and Microsoft. In fact, Microsoft's support of gRPC in C#/.NET is arguably more first-class and polished than any other language.
Although this might have some external implications, most of GCP does not rely on gRPC, even the external customers are not usually dependent on gRPC when using Google services.
Correct me if I'm wrong but gcloud uses REST and so do the libraries google publishes for using GCP apis in different languages.
The question is can Google stop supporting gRPC, protobuf or stubby tomorrow, and I still think gRPC is relatively at risk
Not true. Many Google Cloud client libraries do support gRPC.
> still think gRPC is relatively at risk
I would agree with you that relative to protobuf and stubby, gRPC is less critical to Google infra. Yet, in absolute terms I would put the probability of that happening for any of those in the next couple decades at zero.
for some reason I remembered these used REST
Indeed. I'm quite confident there's never been an RPC library with so many man-years invested in it. Last month was gRPConf and it appeared it was as staffed as ever, if not more, and Rust is being adopted as a new first class language too.