Debates sobre o futuro do Compiz

Por:

Debates on the future of Compiz
Autor original: Bruce Byfield
Publicado originalmente no: lwn.net
Tradução: Roberto Bechtlufft

O Compiz está morrendo? Pode ser que não, mas há um consenso entre os desenvolvedores do gerenciador de janelas com composição de que o projeto necessita desesperadamente de uma reorganização para sobreviver.

Fundado há três anos, o Compiz logo ganhou reconhecimento por ser um dos primeiros projetos a oferecer efeitos gráficos tridimensionais no desktop. Seu efeito mais conhecido é provavelmente a apresentação dos espaços de trabalho em um cubo giratório. O estado atual do projeto data da união entre o Compiz e o Beryl, um fork do Compiz, no final de março de 2007.

Desde então, o desenvolvimento se dividiu em dois projetos: o Compiz, que inclui o grosso da funcionalidade e os plugins básicos, e o Compiz Fusion, que inclui utilitários e mais plugins. Na teoria, os dois projetos teriam se unido, mas na prática isso nunca aconteceu. Os projetos ainda mantêm sites, listas de discussão e rastreadores de bugs separados, embora a maioria dos desenvolvedores de um projeto também trabalhe no outro.

Parece faltar organização e direção à comunidade. Vários desenvolvedores trabalham em suas próprias versões do Compiz em segredo, ao invés de discutirem interminavelmente sobre seus objetivos. Outros se afastaram do projeto. Nessas circunstâncias, a comunidade não apenas não conseguiu lançar a versão 1.0, como ainda luta para concluir a versão 0.8, 18 meses após o lançamento da última versão estável.

Recentemente, a comunidade foi afetada pela renúncia do líder do projeto Compiz, David Reveman. Sua saída, que pelo visto não foi acompanhada de nenhum pronunciamento oficial, levou a uma falta de liderança, já que nenhum desenvolvedor experiente do Compiz parece disposto a assumir o papel de organizador da comunidade. Igualmente importante foi a recusa de Reveman em responder a emails após sua saída, o que causou problemas aos outros desenvolvedores, já que a maior parte da base de código do Compiz não está documentada.

O resultado disso é que o Compiz, outrora visto como um projeto empolgante e inovador, já está sendo denegrido em alguns círculos. Por exemplo, neste comentário postado em um vídeo do Compiz no YouTube:

Dramaticamente feio, impossível de usar, lento, mal animado e inconsistente. O desenvolvimento em código aberto sem desenvolvedores sérios e experientes pode resultar no crescimento caótico de um projeto e no desperdício de recursos humanos com código que não faz sentido. O projeto Compiz-Fusion certamente é o maior representante disso.
A situação atingiu o ápice no final de dezembro, quando o desenvolvedor Dennis Kasprzyk anunciou a criação de uma nova ramificação do código, o compiz++. A nova ramificação é escrita em C++, e não em C como o código principal, e requer inúmeras alterações no comportamento dos plugins. Poucos dias depois, o anúncio de Kasprzyk motivou Kristian Lyngstol, outro desenvolvedor, a começar uma discussão na lista do Compiz sobre “O Futuro do Compiz”. A discussão ecoou no artigo “O Compiz está morrendo e precisamos curá-lo”, de Kevin Lange. De lá para cá, as discussões sobre o estado do Compiz emergiram em várias outras listas de discussão, especialmente nas dedicadas a distribuições específicas.

De acordo com Lyngstol, “pode-se dizer que não houve progresso desde a fusão. Estamos basicamente fazendo trabalho de manutenção. O motivo, ao meu ver, é uma completa falta de direção e liderança.”

Para Lyngstol, há várias razões para o estado atual do Compiz. Para começar, ele sugere que os membros do projeto esperaram demais por “algo que mudaria tudo”, e isso resultou em ramificações excessivas do código, com muita incompatibilidade entre elas. “A verdade é que todas essas ramificações diminuem a produtividade, independente do quão divertidas e interessantes elas sejam”, escreve Lyngstol. Ele acrescenta:

Se quisermos um ambiente saudável de desenvolvimento, e se tivermos esperanças de tirar o Compiz de um estágio alfa constante, precisamos ter objetivos de desenvolvimento e um modo de cooperação. Antes que alguém invista mais de seis meses de desenvolvimento em seu trabalho e o apresente como uma solução final.
Depois, Lyngstol observa que a comunidade continua pequena, com menos de 20 pessoas contribuindo com código, se pudermos nos basear na lista de inscritos no Compiz Fusion Planet. Na verdade, de acordo com Lyngstol, “a não ser que algo óbvio me tenha escapado, desde a fusão não surgiu nenhum novo desenvolvedor de base que contribua de maneira significativa com o código principal do projeto. Porém, nós perdemos alguns.”

Lyngstol sugere razões para a falta de desenvolvedores. Como o projeto não tem direção, diz ele, “todo desenvolvimento e design é feito como uma corrida individual. Não dá para saber se dá para trabalhar em algo sem correr o risco de perder o trabalho por causa da integração de alguma ramificação obscura.”

Para piorar, a suposta fusão do Compiz ao Compiz-Fusion nunca se concretizou, resultando numa duplicação de esforços que Lyngstol descreve como “bagunça”. Boa parte desse estado de caos se reflete no código, que “não é documentado” e “nem um pouco bonito”. Além disso, quando algum código novo é adicionado, suas funções “fazem mais do que as funções em C deveriam fazer”. Mas o problema básico, de acordo com Lyngstol, é que o “Compiz é um projeto de pesquisa”, em constante estado de mudança e sem foco no lançamento de uma versão estável.

Para resolver esse problema, Lyngstol sugere uma fusão das várias ramificações do código – ou talvez que se chegue a um consenso de que algumas (ou todas) são forks – e que se dê bastante atenção ao gerenciamento do projeto. “Nós deveríamos ter objetivos bem definidos para cada versão”, afirma, “e definir esses objetivos deveria ser a maior prioridade após uma versão estável. Para cada versão estável em uma série de desenvolvimento, deveríamos ter um objetivo bem definido. Com isso, seria mais fácil fazer previsões quanto às versões e obter ajuda dos desenvolvedores.”

Talvez o maior indicador do estado da comunidade do Compiz não sejam as críticas de Lyngstol, mas sim o fato de terem sido recebidas com a polidez de quem concorda com elas. Até agora, os que responderam ao post de Lyngstol discutiram apenas detalhes de algumas de suas opiniões, sem no entanto contestar seriamente suas observações de um modo geral, ou as sugestões por ele oferecidas.

Outro indicador infeliz é que, embora todos tenham concordado que faltam liderança e direção ao projeto, até agora ninguém se ofereceu para assumir o controle. Ao invés disso, Lyngstol e vários outros desenvolvedores ativos já afirmaram que, embora apóiem as mudanças, não estão dispostos ou não podem aceitar funções de liderança.

Até agora, ninguém sugeriu possíveis razões externas para a decadência do Compiz. Mas pode ser que, agora que os efeitos tridimensionais não são mais novidade e que a empolgação diminuiu, haja poucos motivos para se continuar a desenvolvê-los. Os poucos efeitos práticos, como os zooms, não bastam para encorajar a maioria dos usuários a abandonar os desktops bidimensionais padrão.

Outro possível fator é que os drivers de vídeo 3D estáveis e lançados sob uma licença livre estejam demorando mais a aparecer do que se esperava, e que isso tenha diminuído o interesse dos usuários em projetos como o Compiz, que precisam deles.

Um comentário anônimo no artigo de Lange sugere que o Compiz talvez tenha servido ao seu propósito, mostrando que o desktop livre poderia ultrapassar o Windows e o OS X em termos visuais. Mas nem todos concordam: a desenvolvedora Quinn Storm, por exemplo, postou um comentário na lista de discussão do Compiz no qual deixa claro que o Compiz de fato possui esse objetivo, mas que ainda não o atingiu.

Quaisquer que sejam as razões, e o que quer que aconteça, o consolo é que, no software livre, nada realmente se perde. Mas do jeito que estão as coisas, sem que ninguém queira assumir a liderança do projeto, há uma fortíssima possibilidade de que o Compiz continue a definhar, ainda que seus membros estejam a par da situação mas não sejam capazes (ou não estejam dispostos) a mudá-la.

Créditos a Bruce Byfield – lwn.net
Tradução por Roberto Bechtlufft <roberto at bechtranslations.com>

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X