I prefer it to ASP.NET in most regards and for most of the web-development I have done in the last few years. Performance wise I have not noticed any problems introduced by the Rails framework or the Ruby language. The answer is the same for all frameworks and languages; design well.
I work with C#, but I'm sure there are still many Java coders which are raged against "C-sharpers". A reason could be that C# seems to be a thief-brother of Java, but there are many aspects which Java doesn't cover as C# does
If the Java programmers are fewer and fewer, their wages will increase? Or could C# programmers become some "code behind designer users" with an appropriate salary
Yes, you're right, I have friends that were forced to work with Java, after previous C# programming, and they wouldn't give up to work with Java. But they were complaining in some situations. Microsoft became very popular in the last years and they prepare amazing future releases of their products. I would like to see the same competition for Java products. Maybe I am wrong, it's my perception problem
You can't exactly do a C# vs Java and point out that there's less Java respondents here as a demise of the language. TCP is a ".net" oriented site with a focus that originally started as a C# site (way back in the day). While I use and love C#, this premise is just flawed.
C# is better, MS has provided a platform that Sun tried to and only managed to get because of the Apache Software Foundation. I was a Java programmer for well over 5 years and coded everything from 1 offs to enterprise. I am now a C#/.NET coder and I can tell you that I see the light, thought I think C# programmers lack the sophistication that Java programmers offer... I don't see many new C# guys using XML by implementing a recursive call back parser... (Let alone know what that even is…)
Hmm... I must respectfully disagree with that logic, the C# language, for one thing, makes it worthy of note, descendant of C++ (I'm certain that God himself developed the C++ language). The thing is, unlike C++, C# is a high-level language with a good ratio of neat little built-in tricks and improvements (i.e. operator overloading, for example) to crippled features (i.e. #define) Nothing is perfect, but C# is pretty d*mn good, and, in my meager opinion, one of the best languages out there today.
It's only fair to note that, other than HTML (which doesnt really count when put in context), C# was the first language I learned, followed by C++ after I mastered C#.