Software livre, ajude a fazer

Share on Facebook
Share on LinkedIn

Este post é direcionado a programadores. Repasse-o pra todos os programadores que você conhece. O software livre agradece!

Oi gente, esse é um assunto que sempre menciono nos eventos que vou, e que me incomoda bastante. Por estes dias tava com vontade de fazer um post simples e prático sobre o assunto. Felizmente aconteceram 3 coisas que me motivaram a escrevê-lo:

  1. Depois de ter aberto um bug no ano passado, ainda sem solução, resolvi escrever um pequeno patch que foi aceito, com modificações;
  2. Li isso: http://www.dicas-l.com.br/arquivo/yad_yet_another_dialog.php;
  3. Jomar escreveu um ótimo artigo exatamente sobre esse tema: http://www.trezentos.blog.br/?p=5907

Por que as pessoas se referem ao software livre sempre na terceira pessoa: “Eles”? É comum a gente ouvir:

- Quando o software X implementar a feature Y eu migro.
- Software X? Ah, ele tem muitos bugs, prefiro esperar ficar redondo.
- Não gostei da versão nova do software X. Vou ficar na atual ou testar uma alternativa.
- O pessoal do projeto X é devagar demais.

Gente, quando é que vai cair a ficha que o software é livre e que nós podemos mudá-lo? Vocês já pararam pra pensar que podem tornar o software X um software melhor? Não tô entrando aqui no mérito da liberdade de escolha, você é livre pra usar o software que quiser. O recado aqui é para programadores, que querem ao mesmo tempo ganhar experiência e contribuir para um mundo melhor.

Contribuir com código não é um bicho de 7 cabeças. Software é software em todo lugar do mundo, e software livre é a melhor forma de espalhar e receber conhecimento. Vejam aqui um exemplo muito simples, porém prático de como você pode fazer a coisa acontecer, ao invés de simplesmente esperar “eles” resolverem o bug (explicação do item 1 lá de cima):

  • Ano: 2008. Senti a falta de um conversor de moedas no GNOME. Reportei meu desejo no bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=533690. Pouco mais de 1 ano depois esse recurso foi implementado.
  • Ano: 2010. Usando o recurso acima, senti a falta de um botão pra trocar de moedas. Da mesma forma, reportei meu desejo: https://bugzilla.gnome.org/show_bug.cgi?id=633193.
  • Ano: 2011. 7 meses depois, usando muito o recurso e sentindo realmente falta do tal botão, resolvi dar uma olhada no fonte e ver se seria fácil sua implementação. E foi. Submeti um patch, que no mesmo dia foi aceito, com algumas modificações feitas pelo mantenedor. Na próxima versão, a calculadora do GNOME virá com esse recurso.

O que quero mostrar com isso? Que o software livre basicamente é movido por empresas e voluntários. Se uma empresa não tem interesse em determinado recurso (a ponto de alocar um funcionário para implementá-lo), o recurso tem que ser implementado por algum voluntário. Então, ao invés de ficar dizendo “Eles não ligam pra minha opinião, reportei o bug há mais de um ano e nada até agora…”, simplesmente tente resolver você mesmo! Algumas considerações:

  • Mesmo que o seu patch não esteja correto, não tenha medo de enviá-lo. Dependendo do grau de complexidade, o desenvolvedor pode sugerir algumas modificações, explicar porque tá errado, onde tá errado e tal e pedir pra você corrigir e reenviar… ou ele pode simplesmente modificar e seu patch e aplicá-lo diretamente (foi o que aconteceu comigo acima).
  • Há sempre a possibilidade de entrar em contato direto com o desenvolvedor/mantenedor, via email, irc, jabber, etc. Assim, você pode tirar dúvidas, pedir um direcionamento, e coisas do tipo, antes de efetivamente enviar seu patch para avaliação.

Quanto ao item 2 lá em cima, até mencionei minha “indignação” nos microblogs, e algumas pessoas me perguntaram o por quê. Deixa eu explicar: Minha indignação, neste caso, não é com a pessoa do Júlio. Não quero nem discutir isso. É que tô cansado de ver empresas e pessoas que ganham a vida com software livre, seja usando em seu trabalho, seja escrevendo livros, seja dando aulas, enfim, você captou a ideia, e que são aptas a escrever (ou pagar alguém que escreva) código livre mas não o fazem. Neste caso específico, o Júlio citou no post:

“Sempre esperei que a qualquer momento o gnome lançaria uma nova versão deste software [...] Estava enganado, acompanhei o lançamento de diversas revisões do software mas elas simplesmente tratavam bugs e apresentação. Infelizmente nada de inovação. Porém um dia descobri o YAD.”

Veja que o gnome está sendo tratado na terceira pessoa. “Eles”. Segue o mesmo raciocínio que usei acima. Tanto para o Júlio como para os criadores do YAD. Se o zenity não tava atendendo as expectativas, por que não ajuda-lo? Por que não implementar os recursos tão desejados?

Quanto ao item 3 lá de cima, não tenho muito o que falar. Leiam o texto do Jomar, é muito bom!

Enfim, esse “desabafo” é uma forma de mostrar pra vocês que o software livre é nosso! Vamos colaborar mais (com código). Afinal de contas, já recebemos tanto, de tantos desenvolvedores espalhados pelo mundo, o que custa doar um pouco do nosso tempo e conhecimento como uma forma de retribuição?

Então, esse lance de falar na terceira pessoa (“eles”, “o gnome”, “o pessoal do kde”, etc), deixa para os leigos, meros usuários de software. Na próxima vez que for criticar algum software livre, tome ele para si e pense em uma forma de ajudar, beleza? :)

14 comments ↓

#1 André Gondim on 05.27.11 at 18:41

Daqui a pouco vão fazer igual a música do Michael Jackson “Michael, Michael eles não ligam pra gente..”. Realmente é um ponto interessante.

Abração!! ;)

#2 Vladimir on 05.28.11 at 11:03

Jonh,
Não vou dizer que é o caso do Júlio, mas acho que as pessoas não querem ajudar o upstream porque querem promover o próprio nome. Se fizerem um patch, ninguém vai saber; mas se fizerem um fork, ficarão conhecidos. Em muitos casos, as pessoas querem mesmo é criar um novo projeto a partir de um patch para ganhar notoriedade. Abs.

#3 roney33 on 05.28.11 at 13:06

ola, estou aprendendo java, c++, e delphi, e gostaria de participar ajudando a programacao de software livre, por onde comeco?

#4 Sérgio Berlotto Jr on 05.28.11 at 14:13

Ótimo ponto de vista! Realmente agente se acomoda em muitas situações e acaba fazendo isto.
Mas concordo com seu texto, e acho que ao invés de gastar tempo e inteligência fazendo muitas vezes coisas inúteis, poderiam fazer coisas muito mais legais e úteis mesmo, em softwares que utilizamos dia-a-dia !

E o melhor disto ainda é que podemos investir tempo naquilo que realmente gostamos e utilizamos, e não somente por obrigação, para receber a bufunça no final do mês ! E ainda aprendemos muito…

#5 Anonymous on 05.28.11 at 14:52

Nos esquecemos que os desenvolvedores tem muito serviço para fazer e por causa disso acabam deixando implementar recursos que pedimos por acharem menos importantes. Acredito que devemos nos concientizar que recurso mais especifico (pessoais) deveriam ser feitos por nos e não ficar esperando os programadores oficiais do projeto fazer.

#6 Software livre, ajude a fazer! » Lucas Simões - BLOG on 05.29.11 at 9:09

[...] Vejam aqui um exemplo muito simples, porém prático de como você pode fazer a coisa acontecer, ao invés de simplesmente esperar “eles” resolverem o bug (explicação do item 1 lá de cima) : (…) (via bani.com.br) [...]

#7 Carlão on 05.29.11 at 16:10

Mandou bem!

#8 Marcos Vinícius Santana on 05.29.11 at 17:47

Bem, eu tenho alguma ideias que gostaria de implementar. Mas de uma dica de como começar, por onde agente tem que procurar.

Onde exatamente postamos aquilo que gostaria que implementasse.

Tem algumas coisas que gostaria de fazer, mas minhas ideias são um pouco avançada pelo que sei de programação e meu inglês ainda é um pouco ridiculo(com paciência sempre sai alguma coisa). Tava querendo fazer algo com o touchpad, misturando com o compiz.

Onde consigo a documentação de como programas, com o compiz e com gsynaptcs?

Acho que alguma programadores que como eu, que querem fazer algo, acha que vai conseguir fazer alguma coisa em questão de semanas, mas dependendo da complexidade e da quantidade de conhecimento fazer algo pode ser algo muito demorado e assim tendo desistencias

#9 Julio Neves on 05.30.11 at 11:41

Caro John, acho que vc se não pesquisou antes de escrever a meu respeito.
Vamos lá:
1 – Realmente escrevi um livro, cuja 1a. edição, é totalmente baseada em Unix, pois o SL naquela época ainda não era coisa corriqueira, em compensação, tempos depois, publiquei um novo livro na Internet que pode ser visto em http://www.julioneves.com e que já foi totalmente traduzido para espanhol e parcialmente para inglês;
2 – Experimente colocar uma sugestão no bugzilla do zenity. Nada acontecerá! O projeto está moribundo, assim como o dialog e Xdialog. Com o yad, tenho contribuído na medida do possível, com sugestões e até com 3 ou 4 correções, além da documentação, coisa que tb gosto de fazer, já que aprendo escrevendo.
3 – Procure saber as contribuições que já fiz ao SL, seja dando palestras e principalmente treinamentos para a comunidade, seja reportando erros, seja escrevendo código C. Se vc não sabia disso, é pq não tenho o hábito de sair por aí alardeando minhas contribuições michurucas.
Sou um grande divulgador do SL, tenho certeza que ele é a nossa solução, mas não consigo entender pq as pessoas no nosso país têm um ego tão grande, que sempre se acham no direito de criticar.
Um exemplo disso, é a enorme qtd de pessoas que hoje usam o Ubuntu, mas que bateram com toda força no Carlos Morimoto qdo ele lançou o Kurumin, que nada mais é do que o precursor do kubuntu (sem a imensa qtd de dólares envolvida).
Somente a guiza de informação, o Jomar antes de publicar o artigo mencionado, submeteu-o a apreciação de algumas pessoas, pedindo aval. Eu estava nesse rol e pedi que que o artigo fosse escrito na 1a. pessoa do plural e que o nome de todos que endossavam-no fossem citados como estando de acordo.
Estou escrevendo isso, pq acho que não fica bem falar mal de uma pessoa que atualmente dedica mais tempo ao SL do que a si próprio. Espero e torço para que qdo vc chegar aos 64 anos, esteja divulgando, produzindo e ajudando tanto ao SL qto eu tenho feito.

#10 Arx Cruz on 05.30.11 at 12:06

Olá,

Sou um dos desenvolvedores/mantenedores do Zenity. No nosso bugzilla, realmente algumas coisas estão bastante atrasadas. Peço minhas sinceras desculpas e estou disposto a começar a implementar novas funcionalidades no Zenity, com a ajuda de vocês claro. Atualmente é somente eu e mais um desenvolvedor a trabalhar no Zenity, e estamos tentando diminuir a quantidade de bugs do bugzilla, vejam que algumas implementações já foram feitas na versão 3.0, e caso vocês queiram novas funcionalidades, não hesitem em nos contactar, se via bugzilla não for possível, me mandem um e-mail. Tenho todo o interesse em melhorar o Zenity. Às vezes é complicado, pois precisamos manter compatibilidade com sistemas legados, mas farei o possível para agradar a comunidade SL.
Enviem patches com novas funcionalidades e correções (sempre super bem vindos), sugestões, prometo que irei ver todas (talvez não no mesmo dia, mas também não irá demorar um ano para responder).

Meu email é arxcruz arroba gmail ponto com para qualquer dúvida.

Abraços,
Arx Cruz

#11 Jonh Wendell on 05.30.11 at 12:53

Prezado Julio. Não queria que você levasse para esse lado, talvez houve um erro de interpretação.

Em nenhum momento questionei suas contribuições com o SL. O que eu falo aqui é sobre a oportunidade de contribuir que todos nós temos mas somente poucos o fazem. Citei seu exemplo porque foi o evento mais recente que me fez lembrar desse post que tava querendo fazer há tempos.

O que foi dito tá dito e não quero mudar isso. Apenas queria que você não levasse para o lado pessoal, sei e reconheço sua importância para o SL aqui no Brasil.

Abraços,

#12 Renato Cavalcanti Nóbrega on 05.30.11 at 15:24

Muito bom post. Além de ajudar com a contribuição, é uma boa oportunidade para aprendizado.

#13 Julio Neves on 05.31.11 at 1:40

Caro Jonh,
se vc citou meu nome e um trecho do que escrevi, é pq pelo menos parcialmente, vc foi para o lado pessoal.

Tb não houve erro de interpretação de minha parte, o que deve ter havido, isso sim, foi que vc não pesquisou acerca do que falei sobre o zenity antes de citar o meu nome.

Qdo disse que esperava que o Gnome lançasse algumas novidades, foi apenas uma forma gentil de dizer que já havia solicitado diversas implementações (e o sincero depoimento do Arx aí em cima enfatiza isso), já havia pedido a um ex-aluno (muito bom de GTK) que fizesse estas implementações e já haver publicado na internet e na Linux Magazine um curso completo de zenity (com um total de 60 páginas A4) que até onde eu saiba, é a única documentação de zenity que fala em comboboxes, que descobri que estava implementado pesquisando no código, pois o man, o help e o info (todos incompletos) não abordam o assunto.

Dois conselhos finais para um blogueiro ou um repórter:
- Qdo fizer uma citação, pesquise fundo antes de escrever;
- Qdo ver que errou na citação, peça desculpas pelo engano.

Sem rancor e dando o assunto por encerrado,
Julio Neves

#14 Sérgio on 11.02.11 at 21:27

Está é uma das facetas do negócio do soft livre. Mas os programadores não são nem os principais usuários do soft livre. O problema maior está nas empresas que oferecem produtos que ficam muitas vezes emperrados durante anos afiou de uma versão a outra sem uma solução apropriada. Que lotam fóruns e sites de comunidades com soluções duvidosas p/ não dizer maliciosas. Como resolver isso é o grande desafio. O mercado de soft precisa de alternativas e o soft livre oferece essa oportunidade, mas parece que só o Jobs conhecia mesmo do negócio.

P.S.: Se vc souber como instalar o Avast no ubuntu 10,04 LTS sem apresentar a seguinte mensagem :”argumento inválido” depois de instalado me avise. E comente a seguintes soluções.
http://forum.avast.com/index.php?topic=57812.0