A Dura Verdade
Este artigo baseia-se em algo muito simples, vale a pena trocar uma funcionalidade por um bug?
Bem sei que já aqui falei, mais ou menos, disto, mas é algo que me incomoda profundamente. Porque é que a reconhecida robustez e qualidade do software opensource de nível técnico ou servidor é contrastada com a imperfeição e rudez da maioria dos programas gráficos?
Não digo que na maior parte dos casos não façam bem o trabalho a que se destinam, mas nota-se quase sempre uma falta de polimento que não é decorrente de nenhuma falha do modelo de desenvolvimento, mas sim uma espécie de tendência irritante para deitar os problemas para debaixo do tapete.
Falo de coisas simples, como um Firefox que pega erradamente nas cores do menu definidas pelo tema do GNOME, fazendo com que usar o tema Simple signifique ter os itens realçados nos menus com texto branco sobre fundo branco, invisíveis; Ou um Thunderbird que, com certos temas, desenha erradamente toda e qualquer progress bar, fazendo com que o rectângulo que "cresce" comece e acabe fora da sua moldura, ou teima em pendurar durante alguns segundos (poucos, mas o suficiente para que o GNOME pense que bloqueou e lance a janela de "not responding") sempre que se fecha e se têm contas IMAP1. Os exemplos podiam continuar.
São estas pequenas imperfeições, que apesar de parecerem triviais e irrelevantes deixam ficar um travo amadoresco e pouco profissional. O pior é que estes pequenos problemas são conhecidos e resistem ao lançamento de versão após versão.
Daqui vem a minha frase inicial. Eu prefiro sempre não ter uma funcionalidade, se isso significar que as que existem funcionam convenientemente. Prefiro dizer que o programa não faz x do que ter de reconhecer que é uma porcaria porque faz x de uma forma incorrecta.
Uma forma de tornar este meu princípio abstracto em algo concreto é dizer que prefiro algo do tipo Fluxbox, estável e consistente, do que um KDE com uma série de pequenos glitches (normalmente uso GNOME, que está no meio) ou que prefiro gravar ISOs para CD usando o cdrecord directamente na linha de comando do que ter de aturar uma interface mal conseguida de algum frontend.
É preciso alguém enfiar nas cabeças dessa gente que um programa gráfico tem de ser tão robusto quanto um SGBD e ao mesmo tempo elegante e bem desenhado. E entulho gráfico, preferências a granel e instabilidade2 não são sinónimo de nenhuma destas características.
Para isso é preciso que comecem a ser picuínhas, ou a dar ouvidos a quem o é, não minimizando a importância dos botões estarem espaçados 3 pixels em vez de 2, por exemplo. Porque é este nível de exigência (gráfica) que ocorre numa Microsoft ou numa Apple. E para sermos melhores que eles não basta que o nosso código invisível seja mais capaz, aquilo que os utilizadores vêem também tem de o ser. A elegância gráfica é tão ilustrativa do profissionalismo e qualidades do programador (que neste caso também é o designer de interfaces) como a qualidade do código que produz.
Ainda não estou a ponto de concordar com os que dizem que o Linux (ou o Unix em geral) é só para servidores e não tem lugar no desktop, mas admito que o panorama actual não aponta para outra coisa...
1 Tem piada que nenhum destes problemas aparece nas versões para Windows, o que é bem exemplificativo do que falo quando digo que o problema não está no modelo de desenvolvimento. Além disso também serve para ilustrar a percepção de polimento. Tanto o Firefox como o Thunderbird em Windows me parecem aplicações perfeitamente capazes de tomar o seu lugar no desktop de qualquer pessoa, enquanto as mesmas versões em Linux me parecem ainda imaturas.
2 Reconheço que aqui já não estamos muito mal, mas ainda não estamos lá.
Bem sei que já aqui falei, mais ou menos, disto, mas é algo que me incomoda profundamente. Porque é que a reconhecida robustez e qualidade do software opensource de nível técnico ou servidor é contrastada com a imperfeição e rudez da maioria dos programas gráficos?
Não digo que na maior parte dos casos não façam bem o trabalho a que se destinam, mas nota-se quase sempre uma falta de polimento que não é decorrente de nenhuma falha do modelo de desenvolvimento, mas sim uma espécie de tendência irritante para deitar os problemas para debaixo do tapete.
Falo de coisas simples, como um Firefox que pega erradamente nas cores do menu definidas pelo tema do GNOME, fazendo com que usar o tema Simple signifique ter os itens realçados nos menus com texto branco sobre fundo branco, invisíveis; Ou um Thunderbird que, com certos temas, desenha erradamente toda e qualquer progress bar, fazendo com que o rectângulo que "cresce" comece e acabe fora da sua moldura, ou teima em pendurar durante alguns segundos (poucos, mas o suficiente para que o GNOME pense que bloqueou e lance a janela de "not responding") sempre que se fecha e se têm contas IMAP1. Os exemplos podiam continuar.
São estas pequenas imperfeições, que apesar de parecerem triviais e irrelevantes deixam ficar um travo amadoresco e pouco profissional. O pior é que estes pequenos problemas são conhecidos e resistem ao lançamento de versão após versão.
Daqui vem a minha frase inicial. Eu prefiro sempre não ter uma funcionalidade, se isso significar que as que existem funcionam convenientemente. Prefiro dizer que o programa não faz x do que ter de reconhecer que é uma porcaria porque faz x de uma forma incorrecta.
Uma forma de tornar este meu princípio abstracto em algo concreto é dizer que prefiro algo do tipo Fluxbox, estável e consistente, do que um KDE com uma série de pequenos glitches (normalmente uso GNOME, que está no meio) ou que prefiro gravar ISOs para CD usando o cdrecord directamente na linha de comando do que ter de aturar uma interface mal conseguida de algum frontend.
É preciso alguém enfiar nas cabeças dessa gente que um programa gráfico tem de ser tão robusto quanto um SGBD e ao mesmo tempo elegante e bem desenhado. E entulho gráfico, preferências a granel e instabilidade2 não são sinónimo de nenhuma destas características.
Para isso é preciso que comecem a ser picuínhas, ou a dar ouvidos a quem o é, não minimizando a importância dos botões estarem espaçados 3 pixels em vez de 2, por exemplo. Porque é este nível de exigência (gráfica) que ocorre numa Microsoft ou numa Apple. E para sermos melhores que eles não basta que o nosso código invisível seja mais capaz, aquilo que os utilizadores vêem também tem de o ser. A elegância gráfica é tão ilustrativa do profissionalismo e qualidades do programador (que neste caso também é o designer de interfaces) como a qualidade do código que produz.
Ainda não estou a ponto de concordar com os que dizem que o Linux (ou o Unix em geral) é só para servidores e não tem lugar no desktop, mas admito que o panorama actual não aponta para outra coisa...
1 Tem piada que nenhum destes problemas aparece nas versões para Windows, o que é bem exemplificativo do que falo quando digo que o problema não está no modelo de desenvolvimento. Além disso também serve para ilustrar a percepção de polimento. Tanto o Firefox como o Thunderbird em Windows me parecem aplicações perfeitamente capazes de tomar o seu lugar no desktop de qualquer pessoa, enquanto as mesmas versões em Linux me parecem ainda imaturas.
2 Reconheço que aqui já não estamos muito mal, mas ainda não estamos lá.
0 Comentário(s)