A menudo, cuando leo sobre algún programa, ya sea GNOME Do o Banshee o algo más, veo personas escribiendo que usan mono, y la implicación es peyorativa. ¿Por qué es esto? ¿Se hacen estos comentarios sobre bases prácticas, ideológicas u otra cosa?
33
Respuestas:
Ideológicamente
Algunos suponen que Mono es compatible con Microsoft y su plataforma .Net. Algunas personas creen que esto es contrario a los objetivos de Ubuntu, o al menos a sus propios objetivos personales, y quieren evitarlo.
Perdón por las palabras de meneo, pero me mantengo objetivo. La discusión sobre si Mono realmente hace esto, e incluso si apoyar a Microsoft es algo bueno o malo, pertenece a otra parte .
Prácticamente
Los programas que usan una máquina virtual (como los que están escritos en Java y C #) tienden a usar más memoria, en mi experiencia, en comparación con los equivalentes que no lo hacen. Esta generalización no siempre es válida. Si bien hay usuarios para los que esto es una preocupación válida, las personas a menudo se preocupan por el rendimiento más de lo necesario.
Por ejemplo, estoy usando una computadora portátil con solo 1 GB de memoria: esto solía ser enorme. La máquina está comenzando a mostrar su edad, pero aún puedo ejecutar la mayoría de las cosas cómodamente. Los usuarios con 4 GB de memoria no notarán los "cerdos de memoria" casi tanto y deberían centrarse en otras preocupaciones. (Y volveré aquí en 5 años y me reiré de ese número de 4 GB).
fuente
Algunas personas creen que Microsoft posee patentes de software sobre aspectos de .NET y que, como implementación de .NET, Mono viola esas patentes. Por lo tanto, estas personas sienten que usar Mono podría dejarlo abierto a demandas de patentes.
Supongo que Mono es tan controvertido porque la ley de patentes en general es controvertida. Pero luego hay casos específicos en los que las entidades que promueven Mono han hecho acuerdos con Microsoft que se parecen mucho a los acuerdos de patentes, lo que podría verse como un refuerzo del argumento de Microsoft para la validez de tales patentes. (Por supuesto, Microsoft en realidad no ha proporcionado ninguna prueba de que las patentes existan, manteniendo así un estado de incertidumbre, al igual que con su reclamo de patentes violadas por el núcleo de Linux). Estos acuerdos generan sentimientos de traición y desconfianza por parte de otra comunidad miembros, porque el acuerdo parece perjudicar a la comunidad en su conjunto (al aumentar el riesgo de patente percibido) al tiempo que beneficia a la entidad que hizo el acuerdo con Microsoft. Eso lleva a otra razón por la que Mono es controvertido:
Por cierto, debo mencionar que escribo desde la perspectiva de un espectador, y no tengo un conocimiento detallado o específico de toda la situación. He tratado de seguir siendo imparcial y he evitado principalmente los nombres propios para evitar arrastrar esta pregunta a la controversia sobre la que pregunta.
Editar: En los comentarios, alguien señaló que Microsoft tiene una promesa de la comunidad de no hacer valer los derechos de patente contra las implementaciones de .NET. Pero la promesa tiene suficiente jerga legal que no siento que realmente pueda estar seguro de que la promesa brinda protección hermética sin contratar a un abogado para que la revise. Después de leerlo, puedo pensar en algunas lagunas potenciales que podrían permitir a Microsoft hacer valer los derechos de patente sobre Mono, pero desde IANAL , no tengo idea de si alguna de estas lagunas es legalmente defendible, o simplemente mi malentendido de la jerga legal de Microsoft. Entonces, aunque la promesa de la comunidad es alentadora, ciertamente no puede poner fin a la controversia sobre la posible responsabilidad de patente de Mono.
fuente
Mono es un puerto abierto de Microsoft .net.
En el terreno ideológico, esto hace uso de una tecnología cerrada para tecnologías abiertas y que puede no coincidir con algunos ideales de GNU y / o Linux.
En la práctica, Mono no es (por ahora) compatible con tantas funcionalidades como .NET en su versión 3.5. Sin embargo, permite programar en C # (y otros lenguajes .NET) para Linux, lo que creo que es algo bueno y sería imposible sin Mono.
fuente
Como otros han dicho, hay dos razones principales:
1) Ideología: los usuarios no se sienten cómodos con la idea de que Mono se base en un producto de Microsoft de código cerrado. Sin embargo, Mono en sí es de código abierto.
2) Patentes: Esto solía ser una preocupación importante que desde entonces fue abordada por Microsoft cuando aplicaron la Promesa de la Comunidad a las especificaciones ECMA 334 y ECMA 335. Desafortunadamente, una parte sustancial de las personas no lo saben.
fuente
No uso Mono porque
Creo que cualquiera puede y debe usar Mono si lo desea, pero los usuarios que no lo desean no deberían tenerlo puesto de forma predeterminada.
fuente