Rails is just a popular web framework for Ruby, there's a lot more the language can do.
Rails is just a popular web framework for Ruby, there's a lot more the language can do.
Fortunately Elixir/Erlang releases include all the executables you'll need. They aren't quite as slick as Go binaries, which all live in one file, but it's still pretty cool.
Ansible's moment in the sun is fading now that Docker came onto the scene, but that was a glorious moment. It's still very useful for anyone with long-running, non-removable machines. Ansible requires Python and allows a great deal of behavior to be defined in simple YAML instructions.
The classical case is Ruby + Rails + Passenger + CentOS. While there is SCL with any Ruby and Rails version you might want, that does not mean, that the Passenger package will work with it :(.
I quite like the SCL [1]. It solves the problem, that you might need different version of node/python/ruby/rails/php/whatever, than is packaged with the OS release of your choice. It has the software nicely packaged and maintained. Now getting third party packages to work with that, that's the problem. Passenger rpm [2] requires system-provided ruby, not just any ruby... I will survive that that App X wants Gem Y installed by rubygem. I won't like it, but it is workable and makes maintenance/updates slightly more difficutlt. But I will not put unpackaged module into Apache config.
[1] https://www.softwarecollections.org/
[2] https://www.phusionpassenger.com/library/install/apache/inst...
1: https://www.techempower.com/benchmarks/#section=data-r12&hw=...
2: https://benchmarksgame.alioth.debian.org/u64q/compare.php?la...
If you like Go, I don't see much reason to try Ruby except intellectual curiosity. Ruby is clearly a language on its way out and it is not just a lot slower than Go, it's also dynamically typed.
It is even described in many of the project contracts.
For one example, check this comparison: https://dockyard.com/blog/2016/08/09/phoenix-channels-vs-rai...
I've found Ruby code the hardest to debug over the years. Also, I think the web development community is waking up to the value of type safety.
I will use Ruby for the occasional script because I like its backtick syntax for invoking other commands, but that's it.
I've been struggling at work to learn and use Rails for the better part of a year. I constantly have to grab someone and have them help me. Either I'm an idiot, or Rails has a bigger learning curve than people make it out to have because I've never experienced this in all my 10 years of programming professionally.
I've spent way too much of my life trying to optimize Ruby performance and memory usage, switching from one web server to the next, then fixing threading issues in dependencies, and so on. It's not fun. All that upfront productivity is lost in the end.
Quite happy to spend more time upfront investing in a reliable end-product.
Swift is by far being the best all-rounder language and between the fastest and slowest.