domingo, junho 28, 2009

Why free software shouldn't depend on Mono or C#

"by Richard M. Stallman

Debian's decision to include Mono in the default installation, for the sake of Tomboy which is an application written in C#, leads the community in a risky direction. It is dangerous to depend on C#, so we need to discourage its use.

The problem is not unique to Mono; any free implementation of C# would raise the same issue. The danger is that Microsoft is probably planning to force all free C# implementations underground some day using software patents. (See http://swpat.org and http://progfree.org.) This is a serious danger, and only fools would ignore it until the day it actually happens. We need to take precautions now to protect ourselves from this future danger.

This is not to say that implementing C# is a bad thing. Free C# implementations permit users to run their C# programs on free platforms, which is good. (The GNU Project has an implementation of C# also, called Portable.NET.) Ideally we want to provide free implementations for all languages that programmers have used.

The problem is not in the C# implementations, but rather in Tomboy and other applications written in C#. If we lose the use of C#, we will lose them too. That doesn't make them unethical, but it means that writing them and using them is taking a gratuitous risk.

We should systematically arrange to depend on the free C# implementations as little as possible. In other words, we should discourage people from writing programs in C#. Therefore, we should not include C# implementations in the default installation of GNU/Linux distributions, and we should distribute and recommend non-C# applications rather than comparable C# applications whenever possible."

Link: Free Software Foundation

Mais nada!



5 comentários:

roimatola disse...

O problema aqui é o C# ser, na minha opiniao a melhor linguagem de programação (claro que na minha pobre e estupida opinião, e não a vou discutir aqui) para desktop. Sempre foi a estratégia da microsoft em todos as suas plataformas (PC, XBox, Palms, ...), dar de graça aos developers as melhores ferramentas possiveis para desenvolver nas suas plataformas, de maneira a que maior parte das aplicações escritas fiquem presos á sua plataforma. Até nos jogos comecam a aparecer estudios que não querem fazer mais jogos para a playstation porque perdem muito mais tempo do que a desenvolver o mesmo jogo para a playstation.

jocaferro disse...

Ok, perfeitamente de acordo. Como é óbvio não vou discutir se C# é o melhor do mundo e arredores ou não.
O que aqui se discute é o facto da M$ poder a qualquer momento processar o mundo Livre por quebra de patentes.
Esse é o real problema e como toda a gente assistiu no caso contra Tom-Tom foi que apesar de fomentar há décadas o uso de FAT e consequente implementação de long-filenames em tudo quanto se usa por esse mundo fora, lá conseguiu arrancar à força uma patente desta implementação "long-filenames". Recordo que essa mesma patente tinha sido recusada nos princípios deste século/milénio mas mesmo assim a M$ lá conseguiu patentear há 3 anos esta treta.
Passaria pela cabeça de alguém, incluindo quem lhe deu a patente, que a M$ não a usasse para se proteger mas sim para atacar!?

Infelizmente, neste caso as coisas podem ir muito mais longe e o perigo é muito maior. Aliás, nestes últimos tempos a M$ nada mais sabe fazer do que processar.
No que toca a GNU/Linux e restante Software Livre (mais de 99,99999999% do existente) a verdade é que nunca tal foi preciso para chegar onde está.
Felizmente.
Recentemente, Fedora aboliu por completo a inclusão de mono ou programas mono-dependentes na instalação padrão.

Na realidade, GNU/Linux e o mundo do Software Livre, não precisam da M$ para nada.
Absolutamente para nada.
Ou melhor, até se aceitava uma MS, como era no princípio em que lutava contra os monopólios, como parceira desde o momento em que abrisse o código e o entregasse a uma instituição que o mantivesse verdadeiramente Livre.

Grátis não é Livre.

Lusitano disse...

roimatola:

Na minha opinião, a melhor linguagem de programção é o Python ( http://www.python.org/ )

P.S.: "Python is the thing that can do anything"

:-)

Anónimo disse...

O Miguel De Icaza (pai do Gnome, não custa relembrar por muito que alguns queiram esquecer) já escrever mais do que uma vez que não há nada que possa destruir o Mono como Software livre tendo ele chegado já aonde chegou. Ele já corre em quase todas as plataformas possíveis e imaginárias (dentro em breve haverá implementações finais para Android/WM/iPhone/Nokia N###,...
Se houverem ataques, reimplementa-se de outras formas as partes de código em causa.
Se a M$ neste momento fizesse isso seria um suicídio para ela própria.
Haveria migrações maciças para Java por exemplo. Aliás a migração não seria assim tão dolorosa. Existem conversores de código com alguma qualidade de C# para Java, pois as similaridades são mais que muitas (classes paralelas em quase tudo, sintax semelhante, etc).

No entanto, retirar das distribuições também não afecta muito. Quem quiser pode instalar uma VM com OpenSuse, ou compilar de raíz.

Penso ser muito bom (mais para programadores que para pedantes da causa do software livre) haver uma opção fabulosa para desenvolver aplicações desktop que correm em todo o lado.

Isto é ainda mais liberdade que o próprio R. Stallman alguma vez sonhou.

jocaferro disse...

"Isto é ainda mais liberdade que o próprio R. Stallman alguma vez sonhou."

Como?
Liberdade com grilhetas?
Obrigado nas dispenso.