Re:Go: What We Got Right, What We Got Wrong
by sebastianz on Friday January 05, 2024 @05:58AM
(#38877776)
> At the time Go was created you could choose between three languages at Google: Python, C++ and Java.
Out of curiosity, what languages can you currently choose from at Google?
Re:Go: What We Got Right, What We Got Wrong
by ncruces on Friday January 05, 2024 @10:11AM
(#38879856)
Just you guess: Python, C++ and Java… and Go.
Or JavaScript, Dart, Objective-C, Swift, Rust; even C#. But then it depends on the problem domain. Google it huge, so it depends. And that's even if you pick Python, C++, Java or Go. So your team will already have it decided for you.
Re:Go: What We Got Right, What We Got Wrong
by bborud on Friday January 05, 2024 @10:18AM
(#38879925)
I haven't worked there for a long time so I wouldn't know. I don't even know if they are still as disciplined about what languages are allowed and how those languages are used.
Can someone still at Google chime in on this?
Well, to be honest, if you chose Python you were kind of looked down on as a bit of a loser() at Google, so there was really two languages: C++ and Java.
Weeeell, to be honest, if you chose Java you would not be working on anything that was really performance critical so there was really just one language: C++.
So we wrote lots and lots of servers in C++. Even those who strictly speaking didn't have to be very fast. That wasn't the nicest experience in the world. Not least because C++ is ancient and the linking stage would end up being a massive bottleneck during large builds. But also because C++ has a lot of sharp edges. And while the bro coders would never admit that they were wasting time looking over their shoulder, the grown ups started taking this seriously as a problem. A problem major enough to warrant having some really good people look into remedying that.
So yes, at Google, Go did replace lots of C++ and did so successfully.
() Yes, that sentiment was expressed. Sometimes by people whose names would be very familiar to you.