I doubt many companies will off-shore rails development to India. Rails is mostly used by small teams of developers in an agile environment. I currently work in a rails shop and there are four of us building all the systems. We pair everyday and switch it up every other day so everyone works with each other. I feel like most off shore developers receive a spec and start hammering out code mostly in one of the two traditional "enterprisey" platforms (java or net). Rails may never blow up to be as big as java or net but that's fine with me. I'd rather specialize in a niche than be a master of frameworks that have a gazillion other masters. Check out Chad Fowlers book sometime "the passionate programmer" it will change your life
I don't think you should have one technology under your belt..
Learn many.
And to answer some of your questions.
Ruby & Rails have testing tools, test:unit, rpsec, cucumber, webrat,
shoulda, to name but a few.
Why isn't it big in industry?
It doesn't really have much commercial support for starters. Sun wrote
Java, and spent a lot of $$$ pushing it to the developers. .Net has
Windows who did the same thing.
Also, each language does what it does great.. Java has a massive
amount of libraries and some great minds behind it to build heavy
weight industry tools. .Net seamlessly integrate's with Windows. Ruby
shares it's space with many other languages. No one language will
solve all of the worlds problems..
Is it the right decision to buildup a career in ROR?
Well as I said earlier, I think pigeon holing yourself to one language
will seriously restrict your movement in the job market. Learn many,
be enthusiastic and learn new languages, follow your enthusiasm.
The moment I stopped treating "learning a new language" as a task, but
instead starting treating it as a bit of fun, I had a more enjoyable
time, both at work and in my off time.
I'm sure a lot of others on this list will be more insightful then me.
But do whatever makes you happy, and your career will be great, is my
advice.
I use RoR because it excels at fast, quality development if one is
willing to learn and use its conventions. It is not perfect, but for
99% of business applications, it is more than adequate. My clients
have complex business problems that require well-documented,
methodical solutions - they don't need gee-whiz buzzwordy anything.
I'm also not married to RoR - we've done projects in MS SQL Server,
Excel VBA (shudder) and ACLScript. We have a major web-based product
done in Java and C#. RoR is still in the 'introductory' stage in my
company - I'm driving it because after running a few projects on other
platforms, RoR is best suited to what I do.
Learn to solve problems and organize and present solutions. Sharpen
your English skills - for the US at least, it is difficult to get
clients to trust someone to work on their team if there is a concern
that the individual does not understand the language well. Your post
was well written and understandable, but there were some quirks to it
suggesting a non-native writer. For some, that can be an issue - more
than it should be, in some cases. If your English skills are
sufficient and your comprehension of the problem is such that you can
prepare and present quality workproduct *and documentation*, you will
be in high demand - and rightfully so. You will also be head-and-
shoulders above most people I have worked with in the US.
In short, don't tie your future to a single technology - technology
changes. COBOL developers still work, but mostly on legacy systems. By
all means - learn it in depth, but don't limit yourself, or think that
tool-specific knowledge will always be as useful as it is right now.
Best of luck.
SR
PS - I assume ou were talking about doing outsource work from the
English-speaking parts of the globe. If not, then disregard the
'polish your English skills' bit - that is nice for the future if you
plan to work outside India, but if you can do quality work and
documentation in Hindi or whatever your target audience speaks and
reads, you should be fine.
PPS - COBOL Devs reading this, I am not disrespecting you, and I am
aware that there is still active development in COBOL going on, and
even new products, but you have to admit, it is somewhat of a niche
compared to Java, or even RoR.