IDK. On paper I agree with you, but I'm just so darn productive with Go. C is great until I need to open a socket. Rust is awesome but slows me down. Dynamic languages need types for serious projects, and I can't be bothered to add a build step just for that. I use them all, but I only picked up Go relatively recently, and I've been very impressed.
Your opinions of Go are quite clear, given every time there is a thread on HN about Go your relish telling everyone how backwards a language it is. Yet weirdly you’re not the only competent engineer out there.
I’ve been programming for 30+ years and used many of the languages you’ve described. In fact I’ve written code professionally in well over a dozen different languages (I stopped counting somewhere in the last decade). Yet I still find myself productive in Go. It’s not just the compiler speed either. You talk as if people are idiots or are delusional when actually Go is quite a nice language for a great many people with real world problems to solve.
I’m sure I’ll get downvoted for saying this but there is so much snobbery and elitism in these kinds of threads and it’s absurd. Live and let live guys.
Google has fuck all to do with my decision to use Go and nor has it ever been a consideration. In fact I’m about as decoupled from Google as one can reasonably expect to be.
I think you need to do some research into what “personal preference” actually means because you seem to think your own preference is gospel and everyone who disagrees is a magpie (which is just an indirect way of saying “idiot”). And frankly it’s getting tiresome watching you derail every software development thread.
Yeah. But your reply to pushpop just lost validity.
And you might at least consider whether the person who's wrong on the Internet might in fact be you.
And you might consider whether, even if you're right, you're also being counterproductive in how you're going about trying to persuade others. When someone raises a valid point against something you say, you don't acknowledge the point. Instead, you find something - anything - that you can quibble with in what they said. This makes you look like someone who wants to win the argument at any cost, rather than someone who wants to have a reasonable conversation. This makes some of us wonder how biased your interpretation of events is. That is, your hyper-argumentativeness makes you less persuasive*, rather than more.
You too noticed pjmlp keeps regurgitating the same stuff about Go on every chance he gets?
Pretty combative and low effort content. Snarky replies with little respect to others opinions. Always posting jabs at Go about how 90's languages are better in every way yada yada. Do mind the tendency to veer into offtopic too.
Given the effort, I sometimes wonder how painful it must be for this person to see others enjoying and being productive in the language.
The "live and let live" point would be stronger if there was not a stream of people arguing that "go is so productive", as if other languages were adding wikipedia links in compiler logs to distract us.
Go is productive in specific ways. Other languages are productive in other specific ways. That’s why we have different programming languages solving different problems.
So if someone says they like Go because they’re productive in it that doesn’t mean all other languages are shit. That only means Go solves the specific kind of problems they need solving.
This is why I hate languages flame wars and why commenters like the GP exasperate me. They have different problems they need solving and talk about programming languages like there is a one size fits all. That’s not the case.
Are you advocating something, or just sad that Go is more popular than you think it deserves?
What languages do you think people should be using instead? My use case is mostly backend network services. My next two choices would be Rust (absolutely love it but slows me down and async isn't ready) or Clojure (would rather avoid a VM). Would you suggest others?
More disappointed with its design decisions, and how some believe that Go is special in some way, just because they don't bother to learn computing history.
Example, Go's compilation speed is nothing to wonder about, when one enjoyed languages like Modula-2 and Object Pascal compiling on 4 Mhz CPUs.
Fair enough. I agree it's sad how much gets lost from generation to generation. Unfortunately progress is not monotonically increasing, even in the internet age. But that doesn't mean Go isn't one of the best languages we have today, which has been my experience.
I've done lots of Java and C++. C# looks like a better Java to me, with a few really cool features like LINQ. But I used to be a MS hater so never tried it, and now with Go/Rust I see few reasons to use a VM language. Performance is fine for lots of my use cases, but deployment is strictly worse than compiled languages IMO.
I've never been willing to make the religious commitment to truly get good at C++. It's insanely complicated.
That's fine if you just prefer the language. I don't really agree that performance or deployments are any better in Go though, compared to those. That's where I was curious, I've only toyed with Go, but havn't really seen anything better on those angle.