Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

C# popularity industry-wide or is SO atypical? [closed]

I feel I'm a well rounded programmer, I'm comfortable in C# and java (several large projects with both) but I tend to use C++ for most applications when I have a choice. (and sometimes R,Python, or Perl as appropriate..)

But I am astounded to see the popularity of C# here on SO. There are 18500 C# topics, more than C, C++, and java combined. I've never felt C# as having such an impact in the companies I've worked with but the SO popularity of C# is undeniable.

My question: Why is C# so popular on Stack Overflow? My question is not so much a SO question as a desire to understand C#'s current acceptance/growth compared to C++ and java.

Possible explanations for the popularity:

  • C# is truly that popular and accepted in industry, it's everywhere!
  • SO is not typical, it seems to have attracted a disproportionate number of C# users
  • C# has more questions/confusions that tend to need community help to solve
  • Microsoft (maybe on its forums?) encourages people to use SO for questions

The first explanation is likely the reason, but I just haven't felt that popularity in the real world!

What's your reason you discuss C# topics here?

like image 792
SPWorley Avatar asked Apr 23 '09 01:04

SPWorley


2 Answers

I think the founders of SO are .Net gurus. Most of the people who follow their blogs found out about the site, and started coming here. The original user base was probably pretty .Net/C# focused.

I also think that C# is the preferred language in .Net with it's interop and ability to use old C and C++ code. Those familiar with C, C++, and Java can easily get a useful application built and working in C#, and be pretty certain it will run on any system with the proper .Net framework installed.

And, C# sounds cool.

like image 167
scottm Avatar answered Oct 18 '22 04:10

scottm


I wrote about the popularity of C# on another thread, but to discuss why it's popular on SO, I'd say others have the right of it. C# is popular here because most of the people who first came to SO did so following Jeff Attwood's blog. That's certainly how I came here.

The thing is, SO really is language neutral, even if it's written in C#. Both Jeff and Joel have programmed in other languages and are hardly bigots when it comes to language; they just chose C# because it really is an amazing language to program in.

Comparing C# to Java and C++, the growth has been astounding. C# when it was first introduced was basically Java with a better GUI library (Win.Forms beats the ever-lovin' snot out of Swing any day, IMO, and WPF is heads-and-shoulders above both) and a few extra concepts, the biggest of which was delegates and properties as first-class citizens. Since then it's grown meteorically, constantly adding newer and better things. The entire concept of LINQ has drastically changed the way I approach iterations; couple that with WCF for contract-based inter-process/computer communications and WPF for a truly amazing way to build GUIs, and you've got a rock-solid language and library.

Hell, WCF alone makes .NET the correct enterprise/SOA choice.

By contrast, Java hasn't released a new version in, what, 5 years?

C# is innovating. Java is stagnating. C++ is... well let's call it "stable", shall we? The newest version, which is dubbed "C++0x" will soon need to be called "C++1x". The features that are planned require so many changes to the runtime that you're almost going to have Java or C# when you're done anyway so why bother?

Finally, to answer your last question, I come here to answer questions about any topic. I mostly prefer to deal with abstract problems rather than language-specific issues, but I'm always willing to help regardless of language. Just because I love C# doesn't mean it's all I know. :)

like image 32
Randolpho Avatar answered Oct 18 '22 05:10

Randolpho