I think the idea of a "software component" is a wrong and damaging distraction from a fundamental fact: program text is the ultimate component technology.I almost completely agree, but actually I think there's nothing wrong with a properly thought through VM model of exchangeable code. No doubt, though, improper application of the component mindset has very widespread and farreaching consequences, almost all malignant.
BTW, I completely agree with what you said about language wars, though if we were forced (at gunpoint, naturally) to choose between C# and Java, I think Java has to be the choice. Mono, I think, is a very, very, dangerous thing for GNOME.
