6 ms·
It feels like the author made the jump straight from PHP to Go without spending much time actually using Node or Ruby and he's subsequently shocked at how much
by codecurve 11y ago
It feels like the author made the jump straight from PHP to Go without spending much time actually using Node or Ruby and he's subsequently shocked at how much better modern languages are when contrasted to PHP.
Many of these "solved problems" have also been solved with the other languages, albeit not always at the surface level. For Node specifically:
WebSockets -> SockJS, Socket/Engine.io
Concurrency -> Generator Functions
Testing -> import assert from 'assert' and npm test
Syntax -> Some great improvements with ES6 and solid styleguides (airbnb, standard) + eslint as an autoformatter
The major win here for Go is that as a new platform it was designed with simplicity in mind. These features are probably easier to pick up in Go than any of the alternatives, which is great. However, don't make the mistake of thinking that Go is the first language to solve these problems.
- kayoone 11y ago> he's subsequently shocked at how much better modern languages are when contrasted to PHP yeah no, please compare node/ruby whatever to modern PHP and not some ancient versions you used some time ago. Modern PHP is very much up there.
- Shorel 11y agoAlso mention Laravel.
- prabodhm7 11y agoYou have made a really good research on authors background. His previous post really support your point dude.
- pluma 11y agoYou sound sarcastic. I'm not sure what you're trying to say. At a glance his previous articles seem to be about Go and PHP (with a little bit of shell scripting) as well, so GP's point seems to stand.
- vegancap 11y agoAuthor here, I have used both Node and Ruby fairly extensibly. I think I touched upon Ruby's performance issues in the post. That's why I don't consider Ruby a solid solution. Also, as far as I'm aware, Ruby doesn't have built in concurrency like Go does. Yes, Nodejs is close to being concurrent, but it really doesn't hold a candle to Go. Yes Node has socket.io, something I've used a lot and love. But Go has all of those features natively.
- ocean3 11y agoHave you tried Elixir/Phoenix framework?
- vegancap 11y agoNot yet, I've got as far as reading the Elixir docs start to back, I really enjoyed what I saw, I'm yet to have a play around with it though. I'm hoping to this weekend :)
- commentzorro 11y agoI looked at it a while back. Even played around with Elixir, which I liked as a language quite a lot. But the deployment and configuration for Elixir/Phoenix/Ecto was pretty horrendous. Lots of dependencies, lots of tweaking, I think even NPM was required too?! I do have fun bashing Go, but I also use it. It's too practical not to. And the Go team, above all other of the latest wave of language that are ready for production, got that 100% right. I just can't overstate how simple Go makes setup, deployment, and updates. And how complex Elixir is in comparison. I wish Elixir et al. could have a zero dependency, zero external configuration, and single/xcopy file deployment too.