3 ms·
> Being written in a language that isn't well-suited to large projects and refactoring efforts doesn't help either. How is Go not suited to those? I'm not seei
by gilbetron 5y ago
> Being written in a language that isn't well-suited to large projects and refactoring efforts doesn't help either.
How is Go not suited to those? I'm not seeing it - and are you comparing Go to Java or C++?
- papito 5y agoGo is a very hard language to work on as a team. It does not push a lot of conventions on you, and when it does, they just seem weird and anachronistic. Even the original k8s codebase was notoriously horrible in Go, and that was "from the source". Ironically, HashiCorp has a better Go codebase, and that's where I picked best practices from, not from Google. The problem with Go is that the Googlers fail to challenge some of the design decisions. The giants of computer science working on it at the company cannot be questioned, and that just leads to a broken feedback process. As someone said, Go is the new C, skipping decades of new language design concepts.
- tazjin 5y ago> The problem with Go is that the Googlers fail to challenge some of the design decisions. The giants of computer science working on it at the company cannot be questioned, and that just leads to a broken feedback process. Well, they can be questioned but they're not very receptive to it, so most people don't bother. During my time at Alphabet I didn't see much use of Go anyways, other than in glue tooling (including a horrific large-scale incident due to non-obvious behaviour of Go code in such a glue tool).
- cpuguy83 5y agoThe original k8s codebase was Java, then rewritten in Go by Java developers. K8s is not a good example of Go, and it has nothing to do with the size of the project.
- still_grokking 5y ago> As someone said, Go is the new C, skipping decades of new language design concepts. Well, some are doomed to repeat their errors. In fact C was even crappy for it's own time.
- gilbetron 5y agoWhat are you even talking about? Plenty of languages were around then and C dominated all of them because it let people write great software.