segunda-feira, 27 de fevereiro de 2012

Considerações sobre software livre, compartilhamento e ciência


Recentemente, li o artigo The case for open computer programs na revista Nature, o qual trata sobre a relação entre a questão do código-fonte aberto e a reprodutibilidade de um experimento científico. Considero, então, relevante fazer algumas reflexões sobre a importância e a necessidade do software livre na ciência.

Primeiramente, se considerarmos que a reprodutibilidade é uma das partes fundamentais do método científico, compartilhar o código-fonte empregado em experimentos e em pesquisas torna-se tão fundamental quanto compartilhar os próprios resultados. Certamente não é interessante ler um artigo desenvolvemos um software para tal coisa, veja nossos resultados e não ter acesso a ele, não poder repetir os mesmos casos de teste e exemplos que os autores usaram, não poder achar bugs etc...

Simplesmente descrever o código, colocar pseudocódigo, ou colocar as equações empregadas serve em algumas circunstâncias, mas em casos onde a maior parte dos resultados são obtidos usando ferramentas computacionais, já não basta: não tenho como comparar com a implementação que você usou, não tenho como verificar se você não deixou um bug que possa ter invalidado seus resultados, tampouco sei quais os métodos que você empregou para resolver o problema e quais as limitações (ex. limitações de precisão, erros numéricos) etc... que você possa vir a ter encontrado no decorrer da sua pesquisa.

Torvalds afirmou em uma entrevista de 2004 uma posição similar:

I compare it to science vs. witchcraft. In science, the whole system builds on people looking at other people's results and building on top of them. In witchcraft, somebody had a small secret and guarded it -- but never allowed others to really understand it and build on it.

Eu [Torvalds] comparo [o software livre contra o proprietário] como ciência vs. magia negra. Na ciência, o sistema inteiro se constrói com pessoas olhando para os resultados de outras pessoas e construindo a partir deles. Na magia negra, alguém tem um pequeno segredo e o guarda -- mas nunca permitindo que os outros efetivamente entendam-no e construam a partir dele.

Ciência feita com métodos computacionais, mas sem o código-fonte, é quase magia negra, simplesmente porque torna-se praticamente impossível reproduzir resultados. Eu consigo entender o que você fez e ter uma visão geral de como isso foi feito, mas não consigo entrar em detalhes.

É importante notar que o Linus não diz que o modelo "magia negra" é ruim em outra entrevista:
But I don't think you need to think that alchemy is "evil." It's just pointless because you can obviously never do as well in a closed environment as you can with open scientific methods. 

Mas eu não quero que você pense que alquimia é 'ruim'. É apenas sem sentido, porque você obviamente não pode fazer tão bem em um ambiente fechado como você faria em um ambiente aberto.

Após, temos outro motivo para a adoção de software livre na ciência: o custo da maioria dos softwares científicos é altíssimo, o que prejudica principalmente os países em desenvolvimento, aqueles que justamente mais precisam de pesquisa e desenvolvimento para se manterem competitivos. Muitas vezes, acaba-se em um círculo vicioso: usa-se um programa proprietário - várias vezes sem licença - por ser o que todo mundo usa, impondo-se assim uma ditadura da maioria.

Existem as licenças para estudantes ou educacionais? Existem, e elas são uma solução extremamente lucrativa para os fabricantes (no aspecto mindshare), mas elas não atacam o segundo problema. Pelo contrário, podem fazer com que ele se aprofunde: formam-se futuros profissionais usando ferramentas proprietárias, os quais continuarão empregando elas em sua carreira profissional, e assim sucessivamente.

O software livre é a maior chance que temos para quebrar esse ciclo de dependência: empregar as diversas ferramentas e bibliotecas já existentes, evitando a reinvenção de rodas (reinvenções essas que muitas vezes saem quadradas, frágeis e com material de péssima qualidade), e saindo da condição de meros consumidores de ferramentas para produtores de ferramentas. No ambiente acadêmico e científico, onde estão sendo formados os profissionais do amanhã, torna-se uma forma de cortar os problemas da pirataria e da dependência tecnológica pela raiz, ou ao menos diminuí-los.

Mesmo que alguma pesquisa precise de uma ferramenta proprietária (como é extremamente comum na engenharia), ainda assim é possível tirar proveito das metodologias de software livre e do compartilhamento: muitas dessas ferramentas são baseadas em scripts ou pequenos programas, os quais também podem ser compartilhados e servirem para outros cientistas. Podem inclusive servir como fundamentação para criar um software livre que desempenhe o mesmo trabalho.

Com o compartilhamento, abre-se um enorme potencial para um peer review mais amplo do que aquele feito pelos revisores, para críticas e sugestões, melhorias no código - e até mesmo vários códigos menores tornarem-se parte de um programa maior (o exemplo que me vem à cabeça agora é o Sage, sobre o qual já falei no meu blog).

Por fim, dados abertos podem evitar problemas de retraction (quando um periódico tira um paper de circulação, seja por erros, problemas com direitos autorais etc...) e também permitir novas descobertas: vários pesquisadores podem usar diferentes ferramentas para processar esses dados, podem aplicar diferentes metodologias, permitindo a extração de novas conclusões ou a refutação de resultados anteriores.

Assim, tendo em vista o fato de cada vez mais pesquisas serem computacionais ou envolverem software no seu decorrer, considero que faz-se necessário o compartilhamento de código-fonte e o uso de formatos abertos na ciência; o cientista tem pouco ou nada a perder com isso. Também faz-se extremamente importante a adoção de software livre na pesquisa, como forma de promover a colaboração tão necessária para uma construção de conhecimento que possa vir a gerar lucro (não apenas no aspecto financeiro) para todos.

"In mathematics information is passed on free of charge and everything is laid open for checking."
"Na matemática, informação é distribuída sem custo, e tudo está aberto para verificação." . Por que não adotar este approach para as outras áreas do conhecimento?

sábado, 18 de fevereiro de 2012

Só tem porcaria? e outras coisas

Frequentemente vemos no Facebook, e em outras redes sociais, gente furiosa com os artistas que estão fazendo sucesso, ficam de mimimi, ficam reclamando que atualmente só tem porcaria, a música boa morreu, e defendem que esses músicos e compositores devem morrer ou sofrer de forma cruel; igualmente, falam da sexualidade deles, falam disso ou aqui. Talvez a música deles realmente não seja um paradigma de qualidade, talvez ela seja algo projetado para vender, mas ainda assim cabem algumas pequenas considerações.

Primeiramente, só existe porcaria musical, e realmente nada atual presta, ou é você que não sabe procurar? Ninguém está te obrigando a ouvir o que está tocando no rádio. Talvez esse argumento colasse há 10 anos atrás, quando a descoberta de novos estilos era muito mais difícil para quem não tinha uma boa rede de contatos, mas hoje não existe mais desculpa para não escolher o que se ouve.

Outra coisa interessante é que eu já vi gente auto-intitulada racionalista, humanista, que diz carregar a bandeira do não ao preconceito, tolerância, paz, defendendo violência contra esses artistas. Como no caso do vocalista do Restart que levou uma pedrada: vi pessoas dizendo que o viadinho colorido (olha o bloco da intolerância aí, gente!) tinha merecido aquilo. Que comportamento interessante para alguém que se diz contra a violência.

E muitas vezes, eles são os mesmos que dizem que a sociedade não sabe interpretar/não está pronta para/não respeita/etc... o estilo deles, que são vistos como bagunceiros, etc... É inegável que existem preconceitos e existe intolerância, mas a resolução deles torna-se muito mais difícil se as vítimas continuarem a apontar a mesma arma que elas odeiam ver apontadas para o grupo delas.

Também, justamente as pessoas que não conseguem tirar o nome do Restart ou do Michel Teló da boca, são as que mais odeiam. Falam neles mais, talvez, do que os fãs desses artistas. Conhecem cada detalhe da vida deles. Interpolam isso em todas as conversas e fazem questão de explicitar seu ódio, mesmo que não tenham perguntado.

Atiram críticas vazias, falaciosas para todos os lados, e se exaltam para estabelecê-las, como numa competição para descobrir quem grita mais alto: caps-lock? Falar gritando e com erros de português? Ataques pessoais? Tudo está lá, pois um argumento sem conteúdo precisa ser embrulhado em uma embalagem chamativa. Falsas dicotomias: se você não odeia, você imediatamente ama, e portanto você também merece tomar pedradas. Xingar todos os membros da família desta pessoa. Interpretações intencionalmente erradas de frases.

Ficam zumbizando, vagando por fóruns, sites de notícias, pelo YouTube, pelo Twitter etc... até aparecer uma notícia ou mensagem na qual elas possam dizer que Fulano é uma porcaria, que Sicrano é um artista comercial, que certo artista não merece o sucesso que ele faz (afinal, lá no Cazaquistão teve um carinha que fez muito mais, morreu com 27 anos e ninguém lembra dele - e se você não conhece, você é o alienado ignorante) , e que apenas o estilo dessa pessoa é o verdadeiro (foi nessa mesa que pediram uma falácia do escocês?).

Sim, acho a música de muitos artistas atuais extremamente enjoativa e chata
. Simplesmente não os ouço, eles não me ouvem, não perco nada e não ganho nada, e continuo a vida, procurando coisas das quais eu goste, e não que eu odeie. E o melhor nessas horas, como já aprendi, é ficar longe da linha de fogo, e mais longe ainda da audiência.

A música deles não é de qualidade? Primeiramente, conceitue qualidade e defina métricas para dizer que música (ou qualquer outra arte) é boa ou ruim. Critérios objetivos e mensuráveis, que possam ser avaliados por qualquer observador. Ficou um tanto óbvio que aquilo que uma pessoa subjetivamente julga como bom pode ser visto como ruim para outra pessoa, não?

Ah, mas não tem técnica. Já ouvi músicos com técnica perfeita mas que não me agradaram em nada: achei a música deles desagradável, não fez meu estilo, simplesmente não gostei. Deletei o CD ou fechei o vídeo e continuei minha vida. Se apenas a técnica bastasse, qualquer pessoa que soubesse gramática e ortografia poderia escrever textos de excelente qualidade, por exemplo.

Ah, mas é comercial, música feita para vender. Hein? Gravadoras, rádios etc... são negócios e têm a missão de dar lucro para seus funcionários. Elas têm a obrigação de disponibilizarem aquilo que dá retorno para elas, e você tem a liberdade de não consumir os produtos delas.

O mimimi hater do só existe porcaria não cola mais, exceto para quem quer continuar nessa condição: um idiotinha que percorre a internet procurando formas de demonstrar que sim, ele odeia, que sim, ele não é alienado. Que ui, ele é revoltado, ele odeia os coloridos viadinhos. Em vez de ficar reclamando, saia da porcaria do hating e de ficar dando atenção para o que você mais odeia, e vá procurar coisas que você goste.

P. S. : não, você não tem a missão de evangelizar os outros para o que você gosta.

domingo, 12 de fevereiro de 2012

Idiotas em bibliotecas


Há um tempo atrás, fui fazer um trabalho na biblioteca da faculdade, e após ver certas atitudes extremamente desagradáveis lá, me motivei a escrever algumas pequenas considerações sobre certos comportamentos não tão educados de algumas pessoas lá.

O primeiro deles: usar os terminais de consulta para fazer tudo, menos para procurar livros. Em um período de algumas horas, vi algumas pessoas usando esses para baixar músicas, para ficar horas e horas passeando no Facebook ou no Orkut, para fazer trabalhos, entre outras coisas. Aparentemente, não existem outros lugares para isso (nos laboratórios de informática é tudo bloqueado, e isso é chato), e quem quer procurar livros pode ir direto ao acervo, não é?

Na universidade onde estudo (e em outras também, acredito) há uma demarcação clara entre os computadores a serem usados para consulta e para pesquisa - isso exclui navegação geral - que pessoas insistem em desrespeitar.

Outro tipo característico, e extremamente chato, é aquele que usa a conexão da biblioteca para baixar filmes (ou qualquer outra coisa) e aproveita o ambiente para assistí-los. Ele dá risadas histéricas, afinal todo mundo quer compartilhar da sua intensa diversão. E se ele não está a fim de assistir nada? A biblioteca é o melhor ambiente para ele jogar online e ficar gritando, narrando tudo que ele vê na tela.


Lembro de uma pessoa que inventou de jogar Colheita Feliz/Mini Fazenda/qualquer outro jogo do momento na biblioteca e simplesmente achou genial convidar seus amigos para darem pitaco no jogo. De biblioteca a lan-house em alguns minutos: versatilidade nunca antes vista para seus ambientes.

E curioso é ver que às vezes, quando certos sites são bloqueados, o ambiente se torna mais agradável: menos bagunçado e com pessoas usando os recursos de forma produtiva.

Também existe o revolucionário, o torcedor, o romântico, pessoas que vêem nas paredes, nas mesas e nos livros um amplo espaço para protestar, homenagear ou mesmo deixar recados anônimos. Escrever contra o sistema, homenagear seu time preferido, declarar amor para uma pessoa cuja existência é duvidosa (queria saber qual o nível de Forever Alone desse), etc... tudo isso pode ser mais divertido que estudar certas matérias.

E ainda por cima, depois pode-se reclamar que falta infra-estrutura, que está tudo sujo, que ninguém cuida do patrimônio público, pode incluir isso tudo na coleção de mimimis.

Já que falei em mimimis, existe um outro tipo que também é extremamente desagradável: aquele que usa a biblioteca para conversar e para chamar a atenção. Seja no celular - invariavelmente com um toque espalhafatoso - seja encontrar os amiguinhos para aquela conversa deliciosa pós-almoço, a biblioteca torna-se um lugar ótimo para você contar cada pedacinho do seu - muitas vezes irrelevante e, de acordo com certos assuntos que já ouvi, até mesmo vazio - dia.

Por fim, o pior tipo (na minha opinião, e acredito que muitos compartilharão dela) é aquele que não assume as consequências de estar com um livro emprestado em suas mãos. Ele suja os livros, ele os risca, ele acha engraçado desenhar bigodes nas fotos e fazer carinhas, sem falar nos sublinhados e nas marcações de texto, ele acha divertido rabiscar nos livros que os outros usarão. (E geralmente, culpa os outros: os outros isso, os outros aquilo, etc... mas isso é assunto para outro post).

Não estamos falando de nenhuma igreja (embora alguns falariam em "templos do conhecimento", metáfora bem razoável), de nenhum lugar santo onde todos sejam obrigados a se comportar impecavelmente e a ficarem perfeitamente quietos, estamos falando de regras de convivência que deveriam ser tão simples e tão triviais - a ponto de ser desnecessário colocar avisos pedindo silêncio

Mas infelizmente, já vi funcionários tendo que mandar pessoas calar a boca na biblioteca, e sinceramente, na hora eu me senti como se eu tivesse voltado ao ensino fundamental. Pensava que as pessoas conseguiam deixar isso para trás quando se formavam, mas não, ainda haviam pessoas que achavam que lá era o melhor lugar para rir alto e trocarem gritos.


(Foto: "Books on a Shelf", disponível em http://www.sxc.hu/photo/492740).