My personal number one language to learn anything related to coding or programming has been always JS.
But after glancing over Ruby, I must say it looks interesting to learn more about
But what is the level of career opportunities of Ruby?
I searched around the internet for any rapport about the future of this language but have not found anything concrete about for example employment ratings in Europe, lots of info about the US but that is not relevant for me.
Long story short, my actual questions are:
-If somebody knows reliable resources/links about programming employment (in Ruby) ratings/numbers in Europe, please share these
-What are, in your opinion, the advantages/disadvantages in working with Ruby as opposed to JS for full stack web development, if there are any?
I look forward to your insights and/or opinions…
Thnx in advance!
This text will be hidden
So firstly, you’re using a forum written in Ruby. And Exercism is written in Ruby. So as the person primarily in charge of choosing tech for Exercism, I’m probably pretty biased!
Ruby is awesome - it’s fun, productive and has a great community. I’d strongly argue that Ruby on Rails should be the backend of choice for most non-enterprise websites, and there are thousands upon thousands of companies out there using Ruby for that purpose.
I don’t have figures to give (I’d only be doing the same Googling you’re doing) but I don’t think you’ll have anything to worry about from an employability perspective. And once you’ve learnt one language, it’s a thousand times easier to learn another anyway if you choose a different direction.
You qualified this as “full stack”. But it should be noted that embedded systems, systems administration, “devops”, telephony, and a lot of less visible work is done with Ruby, than just “web”.
I started using it in 1997 for systems administration, and replaced some of the Perl work that was being done and had been done. I have used it as well with Voice over Internet Protocol (VOIP) systems.
The things to look for in employment in Ruby, might be to include Hanami, Sinatra, and, of course, Rails, in your searching, but also include JRuby.
I wish I knew of where you could find the reporting that you were looking for, but I can not.
I also think that Ruby is a great language, has an awesome community, and enough job opportunities that I think you’ll be fine. My city has a lot of Ruby jobs, but I think that’s in part because one of our universities teaches it as introductory programming language, so it’s easier to find junior devs that already know a bit of Ruby.
One of the reasons why companies choose Ruby for the backend is that it’s a very productive framework with a strong ecosystem.
But I think on a personal level it’s a lot about personal preference which language and which framework you prefer for a certain task. And this might also change over time, just as your views on software development changes. But that’s also a reason why I think it’s good to learn more than one language in the beginning, so you gain a broader perspective on things.
Well, let me answer a slighty different question. The main advantage of of developing using the Framework called Ruby on Rails is that it frees you of thinking about many things. It’s structure allows anyone on the planet who is familiar with Ruby on Rails to easily find where code should be added or modified to achieve that feature you want to add or modify. Migrations help you setup/tear-down the database. There is a culture of TDD/BDD, a really friendly community and productivity tends to be very high in a good team. It’s just a sweet experience!
Regarding JS, the one advantage of JS for full stack web development is you only have one language to master.
@iHiD Thank you for your response
I did not realize that this forum and exercism is written in Ruby, that is nice to know!
@kotp Thank you for responding
I will check out Hanami & Sinatra and JRuby, I am still trying to see the big picture of the ‘world’ where Ruby lives in and this will help me with that so thank you
There are a few different implementations of Ruby that all have their own runtime characteristics. Besides the default implementation that most people use, there is JRuby runs on the Java Virtual Machine (JVM), there’s GitHub - mruby/mruby: Lightweight Ruby for the embedded work that @kotp mentioned, and TruffleRuby, a Ruby implementation that runs on GraalVM, a new VM developed by Oracle that allows compiling to native code with ahead-of-time compilation (AOT). There has also been work of speeding up Ruby with a just-in-time compiler, YJIT, by Shopify. Shopify runs on Ruby and they have been investing a lot into the ecosystem in the last couple of years. Another interesting project of theirs is Sorbet, their type checker. The details are not important for you right now, what I’m trying to communicate is that a lot of interesting development is happening in the Ruby space, imo.
A lot of the Ruby web frameworks where and are influential in the space, a lot of frameworks in other languages have been inspired by them, see this list for Sinatra.
Example for the DevOps space are Puppet and Chef. Another non-web project that I really like is Asciidoctor, an amazing toolchain for the AsciiDoc markup language, that is often used for documentation in the tech space. People are even writing whole books with it, and not only in the self-publishing space, eg. O’Reilly supports it.
By the by, Shopify and Github are also ruby babies.
Down the line you will also find work less cumbersome. Ruby has 9000 methods pre-defined for you, which is rivaled only by Java and Python, in its ecosystem richness.
I think I can understand what you are saying as 5 years ago I was in same situation. I was PHP developer and one of my colleague pushing me to learn Ruby, but I have wait 2 years to beginning learn Ruby because internet was telling me it is gone, it is dieing lnaguage. But then finally I started learning and got huge benefits in job search and opportunities. I do understand it is not so common like php/nodejs jobs but still there is requirement everywhere for Ruby and Ruby on Rails.
There are two advantage one if coding fun, Ruby is very friendly, beautiful language and give you happiness, it will make your solution very easy to understand and enjoyable when you code. The changes are part of software engineer, Ruby is geard to help to make those changes very easy, I have worked in two very large monoloithic project and did huge changes without any sweat.
How is your bootcamp going at Le Wagon?