回答:
一部の人は、MonoがMicrosoftとその.Netプラットフォームをサポートしていると考えています。一部の人々は、これはUbuntuの目標、または少なくとも自分の個人的な目標に反すると信じており、それを避けたいと考えています。
小刻みの言葉で申し訳ありませんが、私は客観的です。Monoが実際にこれを行うかどうか、Microsoftをサポートすることが良いことなのか悪いことなのかについての議論は、別の場所にあります。
仮想マシンを使用するプログラム(JavaおよびC#で作成されたものと同様)は、私の経験では、使用しない同等のものと比較して、より多くのメモリを使用する傾向があります。この一般化は常に当てはまるわけではありません。これが有効な関心事であるユーザーもいますが、人々はしばしばパフォーマンスよりも必要以上に心配しています。
たとえば、メモリが1GBしかないラップトップを使用していますが、これは以前は非常に大きかったものです。 マシンはその年齢を示し始めていますが、私はまだほとんどのものを快適に実行できます。4GBのメモリを使用しているユーザーは、「メモリホグ」にほとんど気付かないため、他の懸念に集中する必要があります。(そして、5年後にここに戻って、その4GBの数値を笑います。)
一部の人々は、Microsoftが.NETの側面に関してソフトウェア特許を保持しており、.NETの実装としてMonoがそれらの特許に違反していると考えています。したがって、これらの人々は、Monoを使用することで、特許訴訟を受け入れることができると感じています。
特許法は一般的に物議を醸しているので、Monoは非常に物議をかもしていると思います。しかし、その後、Monoを促進する団体がマイクロソフトと契約を結んだ特定の事例があり、特許契約のように見えるため、こうした特許の有効性に対するマイクロソフトの主張を強化することができます。(もちろん、Microsoftは実際に特許が存在するという証拠を提供していないため、Linuxカーネルによって侵害された特許の主張と同様に、不確実性の状態を維持しています。)なぜなら、マイクロソフトとの契約を結んだ企業に利益をもたらす一方で、合意は(知覚される特許リスクを増加させることにより)コミュニティ全体を傷つけるようだからです。したがって、Monoが物議を醸す別の理由につながります。
ところで、私は観客の観点から書いていることに言及する必要があり、私は全体の状況に関する詳細なまたは特定の知識を持っていません。私は偏見を持たないようにし、この質問をそれが尋ねる論争に引きずり込まないように、ほとんど固有名詞を避けました。
編集:コメントの中で、Microsoftは.NETの実装に対して特許権を主張しないことをコミュニティが約束していると誰かが指摘しました。しかし、この約束には十分な法的情報が含まれているので、弁護士を雇わずにその約束が気密保護を提供することを本当に確信できるとは思えません。それを読んだ後、私はMicrosoftがMonoに対する特許権を主張する可能性のある潜在的な抜け穴を考えることができますが、IANAL以来、これらの抜け穴のいずれかが法的に防御可能であるかどうか、またはMicrosoftの法律に関する私の誤解だけです。コミュニティの約束は勇気づけられますが、Monoの特許責任に関する論争を確実に終わらせることはできません。
Monoは、Microsoft .netのオープンポーティングです。
イデオロギーの観点からは、これはオープンテクノロジーにクローズドテクノロジーを使用しており、GNUやLinuxの一部の理想と一致しない場合があります。
実際には、Monoは(今のところ).NETが3.5バージョンでサポートしているほど多くの機能をサポートしていません。ただし、Linux用のC#(および他の.NET言語)でプログラムできます。これは良いことであり、Monoなしでは不可能だと思います。
他の人が述べたように、2つの主な理由があります:
1)イデオロギー:ユーザーは、MonoがクローズドソースのMicrosoft製品に基づいているという考えに満足していません。ただし、Mono自体はオープンソースです。
2)特許:これはかつて主要な懸念事項でしたが、Microsoft がECMA 334およびECMA仕様335にCommunity Promiseを適用したときに対処されていました。
Monoを使用しないのは、
必要に応じて誰でもMonoを使用できますし、使用する必要がありますが、Monoを使用したくないユーザーはデフォルトでMonoを使用しないでください。