Alex left a good comment in my post that responded to his original assertion that .Net coders code for money more so than they code for “the love”.  His points have made me a bit curious.  So I did some digging.  First I looked at Sourceforge projects separated by operating system.  Here is what you’ll find. 

OS                        Projects
Linux                 19731
OS Independent  19191
Microsoft            19117
MacOS               3225
BSD                  3008
SunOS/Solaris    1785
Other OS           1010
PDA Systems      718
Other                  648
BeOS                 426
HP-UX               224
IRIX                   211
AIX                    167
OS/2                  132
GNU Hurd         81
SCO                  51

Most of the OS Independent projects are written in Java so you could probably split these between MS and Linux making it a virtual dead heat.  It’s actually better than I imagined when I first thought to look, but much worse when you consider the Linux compared to Windows market share.  If OSS was a reflection of end users or “for profit” software you’d imagine the Linux projects to be around the MacOS realm. 

Next I wanted to look at the language breakdown. 

Language  Projects
C              12888
C++          12887
Java          11364
PHP          8544
Perl           5365
Python               3034
Visual Basic        1754
JavaScript           1628
Delphi/Kylix        1402
Unix           1390
C#             1298
Assembly   1225
PL/SQL     938
Tcl             782
Objective C        489
ASP           469
Lisp            288
Ruby          286
Pascal        282
Object       208
Assembly   201
Cold Fusion 177

NOTE: I removed a bunch of languages beneath this threshold. I wanted to leave it with only 1k and above, but I have found memories of an easy Cold Fusion class in college. 

Clearly neither VB nor C# are very high on the count when compared to Java.  I did expect C/C++ to rule since they have been around the longest and have the best free tool support.  Java has almost three times the share on sourceforge.  Again, I’m willing to bet a big difference here is in tool support.  Microsoft tools are expensive and until recently there haven’t been very good alternatives to write VB/C#.  So maybe it does come down to money.  But rather than for a love of money versus a love of tech it may be that enterprises have been willing to shell out money for the smooth Microsoft integration with Visual Studio, but with the good developers go home and start a hobby they don’t want to invest the dough and people don’t generally mind the additional tinkering required when it’s a hobby.  

Back to the original question that Alex was asking.  Should MS have an Apache like foundation for .NET apps?  It could be a chicken/egg sort of thing. Do you wait for the developers to create the opportunity or create the opportunity to help get developers to flock towards it?   Is helping to establish a community leaning to far towards being the community?  I’ve spent some time around several different OSS sites and I truly believe there is a TON of room for improvement around these community experiences given the right amount of polish and resources.  What do you think?