Sunday, July 09, 2006

Open Source

Eu apóio essas coisas de Open Source (programas de computador com código aberto, em geral gratuitos). Mas minha experiência com a coisa me sugere que ela não deve ser vista como um substituto perfeito para o software comercial. Eu acho esse um dos temas mais interessantes da atualidade.

Eu uso um programa de estatística chamado R (na verdade, não é bem um programa, é um ambiente onde você roda pacotes,que são, pelo que eu entendo, programas). Ele é gratuito. E é, em geral, bom. Se você entende muito, mas muito mesmo de computação e de estatística, é, sem dúvida, uma opção excelente. Eu não entendo disso.

Em geral, uso o R como complemento ao SPSS, o sofware comercial mais comum, e mais simples. Mas agora precisei, por sugestão da banca, fazer um negócio meio abtruso de estatística, que o SPSS não faz. Procurei no arquivo R ( link é para o espelho na UFPR) e encontrei pacotes que fazem. Fui fazer.

Primeiro problema: onde é que eu vou aprender a usar isso? Os pacotes foram feitos por pesquisadores que queriam resolver problemas de suas próprias pesquisas, não para consumo comercial. Quando acabaram de desenvolver, deixaram de graça na rede. Nenhum deles vai, de graça, perder tempo escrevendo um manual de instruções para leigos.

Há sempre um manualzinho, mas em geral é muito pouco útil. Nessas coisas muito criativas sempre tem um engraçadinho. O cara que escreveu o pacote "sandwich", por exemplo, escreveu todos os seus comandos usando piadinhas com o nome do programa. Se você quer descobrir o que faz o comando "meat" (carne), por exemplo, digita "help.search(meat)" e descobre que meat é "o que vai no meio do pão".

Se as coisas começam a dar errado com as suas análises, você primeiro procura nas instruções, não acha nada, e depois vai até a R-help, uma lista onde os caras mais fodões que tem discutem problemas de implementação do R e dão dicas para inúteis como eu. A lista é excelente. Mas: o nível é muito alto, e não dá para não ter a sensação de que se está sendo inconveniente com sua pergunta boba. Uma das primeiras mensagens que recebi sobre minha dúvida entendeu errado meu problema e me deu um conselho errado que me custou alguns dias de desespero. Até que um dos feras da lista viu a discussão e explicou o que fazer (e explicou para o cara que tinha me ajudado que ele tinha me explicado a coisa errada).

Já tendo compreendido como fazer, faltava fazer. Ao importar os dados do SPSS (no R você não guarda dados, só faz contas com eles), fiz a conta e descobri que os resultados eram totalmente diferentes dos que eu tinha obtido antes (e que eram o resultado da minha tese). Ou seja, minha tese estava errada.

Mas, como vocês podem perceber pelo fato de que eu não me suicidei, não estava, não. É que o programa que importa dados do SPSS tem uns bugs, que não interferem na vida dos caras que bolaram o programa, mas que interferem na minha e na de manézinhos que não entendem tanto do assunto. Na R-help havia várias mensagens sugerindo que o programa fosse aperfeiçoado, mas, cá entre nós, por que seria? O cara que inventou o programa não ia perder tempo fazendo isso (de graça). Se mais alguém se voluntariasse, ia perder um tempo miserável (sem ganhar nada por isso) entendendo como o cara fez o programa original.

Ou seja: continuo usando o R, basicamente, por que ele é de graça (os outros programas são muito caros), e porque ele é, de fato, mais atualizado do que os softwares comerciais. E é também mais inteligente. É meio chato de aprender, mas, depois que você aprende, entende um pouco mais o que está fazendo.

Agora: deu pra sacar que não há muitos incentivos na comunidade Open Source para os criadores serem mais preocupados com o consumidor.

No comments: