4 ms·
This is the summary at the top of the page: Rob Pike explains how Google designed Go to address major development issues they encounter while using other
by oinksoft 14y ago
This is the summary at the top of the page:
Rob Pike explains how Google designed Go to address major
development issues they encounter while using other
languages: long build times, poor dependency management,
lack of robustness, etc.
In any case, Google is heavily invested in Go. There's no need to "sell it."
- deleted 14y ago[deleted]
- deleted 14y ago[deleted]
- laureny 14y ago> In any case, Google is heavily invested in Go. There is very little evidence of that. The language is a few years old now and the only presentations are coming not even from random Google employees but exclusively Go team members. If Rob Pike wasn't involved in this language, it would be completely invisible. So, there's not a lot of concrete evidence that Go has made any inroads inside Google against Java and C++ and from what I can see, the language is hardly every used outside Google as well.
- voidlogic 14y agoI would like to see more internal Google stats as well but- "and from what I can see, the language is hardly every used outside Google as well." 3 Months ago Go was more popular on github by number of unique committers than Lua, Clojure, Haskell, Erlang, D, OCaml, Lisp/Scheme, Rust, Delphi, Prolog, F#, Ada etc [1]. Surely you consider some of those languages as being relevant? That is not a perfect metric, but those stats don't fit your narrative of Go being unused very well. 1: https://gist.github.com/igrigorik/4440674 https://gist.github.com/igrigorik/4440674
- pjmlp 14y agoI doubt GitHub reaches at all 1% of the code developed in all companies in the world.
- coldtea 14y ago>3 Months ago Go was more popular on github by number of unique committers than Lua, Clojure, Haskell, Erlang, D, OCaml, Lisp/Scheme, Rust, Delphi, Prolog, F#, Ada etc [1]. Surely you consider some of those languages as being relevant? No, none of them is really relevant industry-wise at this point. That doesn't preclude them being excellent languages, used in a lot of projects, but the "a lot" for Haskell and even Clojure is some orders of magnitude less than the "a lot" for Java, C, VB, etc. The listing has Java and Ruby head-to-head which is not at all the case, not even close, in programming at large. It's just that Ruby is more popular with the GitHub using type of people, whereas tons of enterprise programmers using Java can never put their source up there for all. (The same listing has VimL and Emacs Lisp above of Go -- I guess people merely storing their Emacs configuration on GitHub are probably counted as programmers doing actual development work).
- Lewisham 14y agoa) It doesn't make a lot of sense for Random Google Engineer #62 to give a presentation about a small project. b) Go, like every other programming language, will take time to get up to speed. Programmers need to be familiar with it. Managers need to be OK approving new projects to use it. Old projects will need a really good reason to get a rewrite in it. There is no edict at Google to use any given language, it just has to be one of the four blessed languages: Java, C++, Python or Go. Go has to prove its value against languages that are decades old with full library support. So no, I wouldn't say that it is clear Go has made inroads at El Goog, because I don't think anyone reasonable would expect it to. Is it fair to say "Google is heavily invested in Go"? I don't know. I think it's fair to say Rob Pike and his team are very clever, and they're spending their time on Go, so that bodes well.
- laureny 14y ago> I think it's fair to say Rob Pike and his team are very clever Rob's cleverness and contributions to computer science are indisputable, but that doesn't make him a good language designer. From what I've seen of Go, it seems like it was designed by a team that stopped looking at other programming languages in the late 90's.
- coolsunglasses 14y agoLate 90's is being gracious to a language that smells like an ALGOL and Pascal cross-over. Leaves me to wonder why some of these people bothered with C to begin with and didn't just use Pascal. Momentum in the Unix world maybe?
- justin66 14y ago> If Rob Pike wasn't involved in this language, it would be completely invisible. Being the last item on Ken Thompson's resume prior to his retirement makes it kind of visible, too. > So, there's not a lot of concrete evidence that Go has made any inroads inside Google against Java and C++ and from what I can see, the language is hardly every used outside Google as well. Do you work at Google?
- weareconvo 14y ago> Do you work at Google? I did for over 5 years. While I left before the Go programming language was released, I seriously doubt they've transitioned much of the codebase to it, for one simple reason: The Google codebase is fucking massive. I simply cannot describe how unbelievably huge it is, and while I don't doubt for a second that Go will be used for some of the systems-level projects (some of which Rob Pike is directly involved with - how's that for vague), you simply don't transition that big of a codebase to a new language. It would basically be impossible... unless you're Jeff Dean.
- justin66 14y agoThank you. That's fair, but I think a better metric of the success of Go - which is how this train of thought started - would be how much new stuff is being started with it, for just the reason you stated. It'd be nutty to rewrite a bunch of working code.
- weareconvo 14y agoIn addition to the difficulty of rewriting existing code, even when you program something new at Google, you'd be a fool not to leverage what infrastructure already exists. If you try to do that while at the same time writing the new project in Go, you run into weird interoperability issues.
- Evbn 14y agoDo you know whether Go is compatible with Google infrastructure? With protobufs and stuff like SwIG/JNI, why would it not be?
- Evbn 14y agoAccidental NoTrueScotsman alert. If a Googler thinks Go is awesome and builds a bunch of stuff in Go, what happens to that Googler? They become member of the core Go team!
- coldtea 14y agoIf I understand correctly, your argument is: "Parent says only members of the core Go team are known to be doing stuff with Go in Google. But that is circular reasoning on his part, because anybody who makes something in Go also becomes a member of the core Go team (or he considers him one, anyway). I don't think it holds. The core Go team is more or less specific and stable over the years, and the news about projects and stuff usually come from certain core members (Rob, Brad, and 1-2 more). Very rarely do they come from other, random guys at Google (the YouTube thing being the exception IIRC). So it's not like Google has mass adoption from tons of Google developers but he dismisses it because they all are "just from members of the Go team" in his eyes. And, of course, thinking a language is excellent and using it in your project, by no means necessitates you becoming a member of said language's core team. We don't see much rise in the Go core team members anyway (if any).
- pjmlp 14y ago> In any case, Google is heavily invested in Go. There's no need to "sell it." Really? That is why Go is part of the standard Android SDK/NDK. Oh wait! That is why Go is part of the NaCL SDK. Oh wait! That is why I can have first class treatment for all Google APIs with Go. Oh wait!
- drivebyacct2 14y agoIs the last one less than at least 90% the case?
- coldtea 14y ago>Rob Pike explains how Google designed Go to address major development issues they encounter Only Google never "designed Go" -- in the way it designed the V8 or Dart, SUN designed Java or MS designed C#, ie. assembled a team, funded them, and told them to specifically build a language as a project to fix some specific issues. A team at Google designed Go on their own, as a side project, to scratch their own itches/pain-points. For me at least, those are two clearly distinct cases. Now, you can argue that the second, being grassroots and all, is better, or whatever, but I would not use the words "Google designed Go to address major development issues they encounter" for the second case. Now, afterwards, the team got some funding from Google to work on it now, and Google even has added other people to work on it, but it was never "designed" by Google (ie as a company decision at large) to solve their pain points, and the language was never officially adopted by Google by some decree in the "teams, use that, it solves our pain points" sense. As for heavily invested, I don't know. A few projects seem to use it, but mainly minor ones. A db balancer for YouTube, Google Downloads (which was "no longer actively maintained" before switching to Go, etc). Of course they could adopt the language more in the future, but as of yet I haven't heard of any heavy rewrites and main components done in it. Not to mention that at some point Google was "heavily invested" in Wave too, and that didn't come out that good. Who's to say at some point during the regular spring cleaning they wont kill the funding for the Go work, to streamline their development story? I can even see them killing Dart at some point, if it fails to get any adoption in 3-4 years.