News for hackers. Stuff that matters.
Re:What the web platform can learn from Node.js: The Darwini... by paulddraper on Wednesday December 16, 2015 @07:31PM (#10748590)
Always getting HEAD seems like a rookie mistake that rejects decades of lessons from mature systems and is a real deal breaker.

But that may just be me. I think the same thing about generics, and others clearly don't.

Re:What the web platform can learn from Node.js: The Darwini... by muraiki on Wednesday December 16, 2015 @08:39PM (#10748905)
As far as I understand it, always fetching HEAD was the default because Go was developed with Google's giant monorepo full of vendored dependencies in mind, where doing this is both safe and sane.

FWIW, I've been using Go 1.5's vendoring alongside govendor and it seems pretty nice. While this situation is a bit of a disappointment given the generally awesome tooling in Go, it's hopefully something that will be resolved soon.

Re:What the web platform can learn from Node.js: The Darwini... by kashif on Wednesday December 16, 2015 @10:32PM (#10749317)
This is the kind of reasoning which bothers me about Go. How can you write a language that you expect the world to use based on assumptions which are only true within 'Google'

Brittle.

Re:What the web platform can learn from Node.js: The Darwini... by muraiki on Thursday December 17, 2015 @08:23AM (#10751296)
Well, I think that it is reasonable to say that the practice of vendoring dependencies is not limited to Google alone. It might not be as common in dynamic languages, but it's fairly common in static languages like C++, which Go was designed to replace. `go get` is basically a better curl for _getting_ dependencies, not _managing_ them. The language authors and the community are addressing the problem of management right now.

Before dismissing Go, please try to understand its history and the fact that it is changing.