Some of the other answers are very good, so I'm going to answer this from a different angle.
The first people to see your resume/CV are not likely to be the technical managers who would be your superiors, but rather the HR people that don't know that C# is C sharp, RoR is Ruby on Rails, or that "4 years of experience" doesn't mean 4 years of one thing AND 4 years of another AND 4 years of a third thing (in their minds adding up to 12 years experience). Nor will they understand that means 4 years ideally, but 2 years plus another 2 years in something similar is good enough. I've even seen job descriptions where the experience level on a specific technology exceeded the age of the tech, yet HR still expected that much experience in that tech.
The HR dept isn't likely going to understand that Ruby on Rails is similar to X, Y, and Z languages/frameworks/libraries/technologies, so they won't understand that because you know how to OOP in RoR, you have a solid understanding of how to do it in many other languages. I have spent the last 6 years working in C#, which I learned on the job based on my schooling and personal experience in Java (which I started learning in 1996-7), however, I can't get a Java job to save my life.
I also can't get a PHP job either, even though I've been doing that for the past 10+ years on my own. Even with C#, Java, PHP, and even JavaScript all being very closely related, HR doesn't understand how knowing one means you can easily switch to another. They think of all languages being as distinct as spoken languages: C# = Greek, Java = Spanish, RoR = Chinese, etc. It doesn't even matter that spoken languages can be very similar, they just have some misunderstandings due to them not having our experiences.
Then again, maybe my experience has left me bitter, since I also can't seem to find another C# job, either. Personally, I think that's because I don't know all the names of all the techniques I use. I just use whatever works and don't care what it's called. Sort of like playing chess and not knowing that I'm using the "Queen's Gambit", or whatever.
I've also done quite a bit of VB/6/.Net {shudder} in my previous positions, which seems to get me a lot of interest for similar positions almost regardless of how much/little I know. Some tech is like that. If you can find a niche in your area that does RoR when there are few devs to fill the positions, you might have a good lead on a well paying career. That is, if you like RoR.
Your first job doesn't have to define you, but it can be very hard to prevent that. I spent 15 years as a computer repair tech and it took essentially all of that time for me to find a programming job, as I was always looking for a dev job while also looking for a repair job. My first IT job in high school was in computer repair and I think because of that, even though I started a BS in Computer Engineering in college, I couldn't find a programming job even though I learned programming before computer repair.
Maybe this is also part of my cynicism (as well as possibly just based in the USA), but many jobs want a Bachelors degree as a "minimum", even though the job can be learned without one. I've even seen positions that suggest a Masters or PhD, which again the HR department will assume means it's a requirement, rather than a "nice to have". Fortunately, more job descriptions also include "or equivalent work experience".
At my last position, the team lead was a high school dropout yet he had more years professional experience in programming than me as well as was a better programmer because he specialized more than I did. That's even considering that I only have an Associates degree, but over 25 years of total programming experience and in almost 20 distinct languages. (I don't consider MySQL, T-SQL, MS-SQL, Oracle SQL, or plain SQL as different languages. I also lump XHTML, HTML, and HTML5 together, as well as including CSS with CSS3. JavaScript, TypeScript, and ECMAScript are also pooled together, IMO.)
So what do all my ramblings try to conclude? Figure out what you want to do and then do it. Don't get side tracked by what others want you to do. They don't know how the future will unfold any better than you. At the same time, don't be afraid to try several different things, as that's really the only way you are likely to find out what it is you really want to do. Also, don't give up if things don't immediately go the way you want them to. If you can't find a job in the language/technology you want right away, keep at it and you'll get there, eventually. And yes, at the same time, don't be afraid to get a different job, too, as you still need to survive to get the job you want, which may not end up being the dream job you expected, anyway.
Maybe I'm helping, maybe I'm not. I won't know until you tell me one way or another. I'm fine with that. I didn't intend for this to be a resume or a rant, but it's the only way I can seem to tell this story, even after rereading it 3-4 times.
Good luck and I hope you have better luck than I have had!