What is so frigging hard in putting this ./configure && make depend && make in a script and calling it setup.script, and making the UI run it on dbclick?
I think that .NET is like Java should've been. (Not dvelling on the techincaleties here, I'm talking about general attidue) It provide an easy way to port existing applications to the new platform, it provide number of languages, and allows you to interact with the underlaying OS. (IIRC, Java didn't have JNI in its first incarnation)
I've a friend that does Java programming. (I know Java enough to recognize the syntax, and maybe do some simple apps, so I don't have 1st hand experiance here) He says that C# (personal experiance here is like my Java's.) is like a better Java.
I must say that the most glaring defect I've found in Java is the case - break statement. Why *allow* this error-prone process? Java eliminate many of the C/C++ defects (usually by saying 'this cause bugs, it wouldn't be on Java'

, why not take this out as well?