[imagem de um Admirável Mundo GNU]
Admirável Mundo GNU - Número 36
Copyright © 2002 Georg C. F. Greve <greve@gnu.org>
Traduzido para o português por Hilton Fernandes <fernandesh@yahoo.com> e
Fernando Lozano <fernando@lozano.eti.br> e
A declaração de permissão está abaixo.

[DE | EN | FR | IT | JA | ES | KO | PT]

Benvindo a mais um número de Admirável Mundo GNU. Esta edição é a de número 36, que significa que a Admirável Mundo GNU completa seu terceiro aniversário. Por esta razão, vocês lerão a seguir algumas palavras de comemoração, mas antes disso, alguns projetos serão introduzidos. Neste mês, começaremos por outro jogo Livre.

Pingus

Pingus [5] é um jogo desenvolvido sob a Licença Geral GNU (GPL), criado por Ingo Ruhnke, Giray Devlet, Cagri Coltekin, David Philippi e Alberto Curro.

O conceito do jogo foi inspirado pelo projeto muito bem sucedido de jogo chamado "Lemmings", criado pela DMA Design, na qual um jogador tinha de orientar manada de lemingues através de níveis perigosos para a saída salvadora. A única forma de influenciar o fluxo de lemingues é individualizar alguns lemingues e dar a eles trabalhos como policial, escavador ou até mesmo bombardeador.

Pingus permite fazer todas essas coisas com pequenos pengüins que parecem demais com o Tux, o mascote do "kernel", ou núcleo, do Linux.

O jogo foi iniciado em 1998, e depois de um anúncio em Slashdot, alguns usuários adeptos de computação gráfica começaram a melhorar a parte gráfica, dando ao Pingus uma aparência muito atraente. Os gráficos chegaram até a gerar outros projetos, como Xpenguins [6], que permite que os protagonistas do Pingus passeiem pela área de trabalho do micro.

No final de 2000, o desenvolvimento quase parou completamente, mas um ano depois alguns novos programadores ajudaram a superar essa pausa involuntária.

O jogo ainda não está terminado e, de acordo com Ingo Ruhnke, "ele não parece com um jogo de verdade". Isto pode ser parcialmente verdade, pois nenhum efeito sonoro foi implementado, apesar de haver uma variedade de músicas. Também são necessários mais níveis interessantes de jogo.

Procura-se ajuda em muitas formas. Os desenvolvedores são benvindos, bem como pessoas que contribuam com efeitos sonoros, ou com mais níveis de jogo.

O projeto de níveis de jogo não requer conhecimento de programação, pois tudo é feito em XML. O jogo foi escrito em C++ e tem sido executado de fato em GNU/Linux. Talvez ele possa ser executado em outros derivados do Unix, mas no momento os desenvolvedores estão mais interessados em um porte para Win32.

O plano imediato é terminar o porte para Windows e distribuir uma versão nova, totalmente jogável. Depois, a possibilidade de vários jogadores, suporte a redes e uma estória consistente darão o toque final ao jogo.

No momento, o jogo pode apenas ser recomendado para usuários que queiram brincar com jogos por terminar, e que possam querer contribuir com seu acabamento.

Process View Browser, ou "Navegador para a Visualização de Processos"

O Process View Browser (pvbrowser), ou "Navegador para a Visualização de Processos" [7], criado por Rainer Lehrig, cria uma estrutura para a visualização de processos. Isto é importante em todas as áreas onde processo técnicos devem ser visualizados ou controlados. WinCC e Wonderware são exemplos de programas proprietários que realizam tarefas similares.

O projeto consiste em um servidor e um navegador, o qual se comunica com o usuário. Diferente de outros projetos projetos comparáveis, toda configuração é feita no servidor.

Um usuário modifica o servidor de acordo com seus desejos e necessidades. Isto é: escreve rotinas que interagem com o hardware ou software, define quais objetos devem ser apresentados e controlados, e de que forma. Estes componentes são apresentados pelo navegador de acordo com as informações fornecidas pelo servidor através da rede.

Neste projeto foram usadas as linguagens de programação C++ (com Qt como toolkit gráfico) no navegador, e ANSI C no servidor. O projeto é bastante independente de plataforma, e roda em GNU/Linux, bem como em Windows e VMS. De acordo com as informações fornecidas por Rainer Lehrig, o navegador é mais rápido em um notebook de 330 MHz rodando GNU/Linux, do que em um computador de 1 GHz sob Windows NT, o que ele atribui ao código que implementa a rede.

A independência de plataforma é ligada diretamente a um aspecto negativo do projeto, que me fez pensar muito se eu deveria apresentá-lo no Admirável Mundo GNU. O Process View Browser só é Software Livre sob GNU/Linux, para o qual ele é liberado sob a GPL, Licença Geral Pública GNU. O projeto é proprietário sob Windows e VMS.

Dois fatores me convenceram a escrever sobre ele no Admirável Mundo GNU. Antes de mais nada, esta área foi dominda por versões totalmente proprietárias até aqui. Além disso, o usuário pode usar o jogo inteiramente como Software Livre desde que a plataforma GNU/Linux seja usada.

Ademais, em termos de licença, a situação do toolkit Qt é muito semelhante, pois apenas a versão para X11 é oferecida como Software Livre, ao passo que as versões para Windows e Mac são mantidas proprietárias. Uma vez que o Qt está sendo usado pelo Process View Browser, uma versão Livre para Windows do pbrowser não seria muito diferente, pois ainda haveria a dependência com o Qt proprietário.

Qt é uma biblioteca respeitada de Software Livre sob o GNU/Linux, que é usada para muitos projetos importantes, como o KDE ("K Desktop Environment", ou "Ambiente de Trabalho K"), e já foi mencionada várias vezes no Admirável Mundo GNU. Por isto, pareceu injusto não mencionar o Process View Browser devido a uma política de licenciamento comparável à do Qt.

Resta a esperança de que, a longo prazo, versões para sistemas que não o GNU/Linux também sejam oferecidas como Software Livre -- uma esperança que se aplica tanto ao Qt quanto ao Process View Browser.

Rainer Lehrig tem trabalhado sozinho no pbrowser, e procura outros que queiram ajudá-lo nos testes ou contribuindo com idéias e código. Também se procuram voluntários para a documentação.

Caso você esteja interessado neste campo, sinta-se encorajado para participar do Process View Browser. Contudo, recomendo que se faça isso apenas para a versão GNU/Linux, e que os autores da documentação tomem o cuidado de liberá-la sob a Licença de Documentação Livre do GNU (FDL) ou uma licença similar. Apenas nestes caso será razoavelmente seguro que o trabalho contribuído continuará a beneficiar a comunidade do Software Livre.

Para impedir possíveis mal entendidos, gostaria de enfatizar que os problemas descritos não diminuem a contribuição de Rainer Lehrig para o Software Livre. Colocar Software Livre em um campo até aqui proprietário é sempre uma tarefa muito importante.

Ainda assim, é importante estar consciente dos problemas e entender o que eles significam.

PowerPhlogger

Em julho de 2000, Philip Iezzi começou a trabalhar em software para acomodar contadores de página sob PHP, e o resultado desse trabalho está disponível desde janeiro de 2001 como PowerPhlogger [8] sob a GPL, Licença Geral Pública GNU.

Serviços similares são relativamente comuns na net, mas em geral eles são proprietários e também muito insatisfatórios. PowerPhlogger permite a qualquer um definir um tal serviço, mesmo que as páginas usadas não suportem PHP. A criação de contas com esses serviços pode ser feita tanto por um administrador como pelos próprios usuários. Um exemplo disso é o "Freelogger" [9], um serviço PowerPhlogger gratuito.

A funcionalidade do PowerPhlogger supera aquela da maioria das soluções proprietárias. Entre os recursos está a contagem do número real de visitantes, em vez da contagem de cada acesso a página. Isto é feito através da comparação de endereços de IP, em combinação com uma verificação de cookies e por um timeout, ou intervalo de tempo, definido pelo usuário. Além disso, PowerPhlogger oferece o chamado "caminho do usuário", permitindo seguir o caminho que um usuário seguiu em uma página. Além disso, ele também monitora o tempo que um usuário gastou navegando pela página.

É claro que o PowerPhlogger é capaz de mostrar contadores em páginas que possam ser ajustadas ao layout da página através de arquivos TTF e cores definidas pelo usuário. Mesmo o layout das estatísticas da página pode ser ajustado ao gosto dos usuários com modificações em CSS. Além disso, o projeto foi internacionalizado para 16 línguas e suporta diferentes fusos horários.

Todos dados são atualmente armazenados em um banco de dados mySQL, mas a versao 3 do PowerPhlogger vai conter um nível de abstração de bancos de dados. Além disso, algumas partes menos elegantes do código serão passadas a limpo e reescritas para uma maior orientação ao objeto.

É benvinda qualquer ajuda - inclusive o apoio financeiro. Philip também precisa de voluntários que ofereçam suporte no forum online.

GNU Stow

GNU Stow [10] é um projeto útil para quem quer que instale software que não está disponível na distribuição usada, ou que tenha de ser instalado a partir do fonte por outras razões.

Sob circunstâncias usuais, tais atividades tendem a ser uma prova de que a segunda lei da termodinâmica se aplica também aos computadores: a entropia permanece a mesma ou aumenta, mas nunca diminui. Em outras palavras, isto significa que os sistemas têm a tendência de se tornar crescentemente desorganizados. O GNU Stow oferece uma solução para esse problema.

Stow tem sua própria árvore de diretório que em geral reside sob /usr/lib/stow. Os novos pacotes podem ser instalados sob seus próprios diretórios nesta árvore de diretórios. A chamada do Stow vai criar links, ou "vínculos", simbólicos, garantindo que todos arquivos do pacote apareçam na hierarquia padrão do sistema de arquivos, onde outros programas procuram por eles. Se o pacote tiver de ser desinstalado, pode-se simplesmente remover o diretório de instalação e/ou remover os links chamando Stow outra vez.

Stow foi originalmente escrito em 1993 por Bob Glickstein em Perl, mas a falta de tempo o forçou a abandonar o desenvolvimento. GNU Stow é agora mantido por Guillaume Morin, que na maior parte do tempo tem de fazer muito pouco, pois o projeto é estável há muitos anos.

Se você ainda não experimentou o GNU Stow, eu só posso recomendar que você dê uma olhada nele.

GNU gettext

GNU gettext [11] é um projeto provavelmente já conhecido por muitos desenvolvedores, e também um pacote com o qual apenas os desenvolvedores e tradutores vão algum dia entrar em contato.

Contudo, ele tem um papel crucial para usuários, uma vez que ele permite que os programas se comuniquem com eles em sua própria língua. Por isso, gostaria de apresentar aqui esse importante componente.

Apesar de que alguns detalhes tenham de ser deixados de lado, uma introdução ao seu conceito funcional parece útil neste ponto: quando se desenvolvem programas, toda saída é normalmente escrita em inglês. Todas cadeias de caracteres de interação são coletadas pelo GNU gettext em um único arquivo.

Se um programa tiver de ser localizado (ou adaptado a uma linguagem), os tradutores podem fazer uma cópia deste arquivo, traduzir todas suas cadeias de caracteres em neste arquivo ASCII comum para sua própria língua e então enviá-lo para o desenvolvedor. Se este arquivo for então copiado no diretório certo sob o nome certo, o programa passa a suportar aquela língua em sua próxima compilação.

Quando o usuário rodar o programa, o GNU gettext vai tentar fornecer as mensagens para usuários na língua que eles preferirem. Se isso não for possível porque a tradução não está completa, ou não existe, gettext passa a usar a versão original, possivelmente em inglês.

O suporte a traduções incompletas foi uma das metas de projeto do GNU gettext, pois os programas são feitos passo a passo, e é muito comum que os tradutores estejam um ou dois passos atrás do desenvolvedor.

GNU gettext consiste de várias ferramentas sob a Licença Geral Pública do GNU (GPL), bem como de bibliotecas sob a Licença Pública Menos Geral do GNU (LGPL). Ele está de acordo com os padrões para Unix X/Open e Li18nux2000, foi criada por Ulrich Drepper e de modo impressionantemente rápido se tornou um padrão de fato para a internacionalização de software dentro e fora do Projeto GNU.

Recentemente, Bruno Haible assumiu como mantenedor do GNU gettext. Ele atualmente focaliza o projeto na expansão do GNU gettext para mais línguas e pensa em integrar a ele um verificador ortográfico muito simples.

Bruno achou que duas anedotas deviam ser compartilhadas com a audiência do Admirável Mundo GNU. A primeira é que existe uma equipe destacada e aparentemente muito ativa trabalhando em traduções do inglês americano para o britânico. Para ele, isto parece ser mais vácil do que uma tradução para o japonês.

Ele também adverte todos programadores a não tentar traduzir seus programas para outra língua - particularmente se ela não for sua língua nativa. Ele descobriu algumas traduções tão ruins que, para ele, parecem ser piores do que a falta de tradução.

A experiência mostra que as traduções para o francês, sueco, alemão e inglês são muito freqüentes; por isso, outras línguas (NT: como o Português) poderiam ter mais voluntários. A localização de um programa para sua língua é uma forma muito boa de fazer avançar o Software Livre de forma prática, que necessita de pouca especialização técnica.

Três anos de Admiravel Mundo GNU

O que começou como uma experiência já tem três anos de idade: este é o número 36 da Admirável Mundo GNU, por isso me sinto tentado a fazer uma breve retrospectiva.

A coluna começou inicialmente como uma idéia muito ousada de Tom Schwaller, editor da revista alemã "Linux-Magazin" na época, e eu, sobre o cluster de 512 nós GNU/Linux chamado "CLOWN", a respeito do qual fiz minha primeira apresentação como porta voz europeu para o Projeto GNU [12].

Tom me procurou com idéia de uma coluna GNU. Chegando em casa, descobri que queria tentar escrever uma coluna que seria também uma mistura de problemas técnicos e filosóficos que fazem do Projeto GNU tão especial. Ainda assim, estava cético sobre a possibilidade disso, e se eu conseguiria ter assunto todos meses para preencher em tempo a coluna até a data de publicação.

Desde o primeiro momento estava claro que a coluna devia também ser publicada na Net para torná-la disponível para tantos leitores quanto possível. Fazê-la apenas em alemão pareceu de utilidade limitada, por isso o número 1 foi primeiro escrito em alemão e depois traduzido por mim para o inglês para publicação conjunta online.

Depois de publicar o número 2, algo notável aconteceu. Em poucos dias, Okuji Yoshinori e François Thunus me contataram e perguntaram se eu concordaria que eles traduzissem a coluna para o japonês e o francês. É claro que fiquei contente com isso, e imediatamente os incluí no processo de produção da Admirável Mundo GNU.

Então, a barragem rompeu: mais voluntários me contataram para outras traduções, e logo outras revistas pediram permissão para imprimir a Admirável Mundo GNU.

Hoje a coluna aparece em até 7 línguas online e em 4 revistas em todo mundo. Sem a ajuda de tantos voluntários, isto nunca teria sido possível.

Os companheiros dos primeiros dias mencionados acima foram todos por seus próprios caminhos, e seus papéis foram assumidos por outros. Gostaria de listar todos envolvidos com a Admirável Mundo GNU, mas não haveria espaço para isso. Em um único número, encontram-se 30 pessoas envolvidas como "scout" (ou "acompanhante"), revisor, tradutor, webmaster etc. E mesmo que alguns participem já há algum tempo, há sempre uma certa flutuação.

A todas essas pessoas e outros que apoiam a Admirável Mundo GNU, eu gostaria de expressar meus agradecimentos do fundo do coração pelos três últimos anos.

Gostaria também de agradecer a todos que me contataram pessoalmente ou por email para conversar sobre seus projetos interessantes, dar retorno ou discutir tópicos sobre os quais eles tinham opiniões diferentes. Seu envolvimento ajudou seminalmente a encher de vida a Admirael Mundo GNU.

... para mais um ano

Isso tendo sido dito, espero que este seja mais um bom ano para a Admiravel Mundo GNU. E é claro que não vou terminar sem o pedido mandatório de retorno, comentários, novos projetos, questões e idéias.

Que projeto é inacreditavelmente útil, divertido ou bom, e mesmo assim ainda desconhecido da maioria dos usuários? Por favor enviem respostas para o endereço usual [11].

Informações
[1] Enviem idéias, comentários e questões para Admirável Mundo GNU <column@brave-gnu-world.org>
[2] Página inicial do Projeto GNU http://www.gnu.org/home.pt.html
[3] Página inicial da Admirável Mundo GNU, de Georg Greve http://brave-gnu-world.org/brave-gnu-world.pt.html
[4] Campanha "Nós rodamos GNU" http://www.gnu.org/brave-gnu-world/rungnu/rungnu.pt.html
[5] Página inicial do Pingus http://pingus.seul.org
[6] Página inicial do XPenguins http://xpenguins.seul.org
[7] Página inicial do Process View Browser http://pvbrowser.sourceforge.net
[8] Página inicial do PowerPhlogger http://www.phpee.com/
[9] Página inicial do Freelogger http://www.freelogger.com
[10] Página inicial do GNU Stow http://www.gnu.org/software/stow/
[11] Página inicial do GNU gettext http://www.gnu.org/software/gettext/
[12] "History and Philosophy of the GNU Project", ou "História e Filosofia do Projeto GNU" http://www.gnu.org/philosophy/greve-clown.en.html

[ número anterior | Página inicial da Admirável Mundo GNU ]

Retornar à página inicial do GNU.

Envie consultas & questões sobre a FSF & o GNU para gnu@gnu.org.
Existem também outras formas de contactar a FSF.

Envie comentários para a Admirável Mundo GNU (em inglês ou alemão) para column@gnu.org,
envie comentários sobre estas páginas na Web para webmasters@www.gnu.org,
envie outras questões para gnu@gnu.org.

Copyright (C) 2001 Georg C. F. Greve
Traduçao para o português por H. Fernandes e Fernando Lozano

É dada permissão para fazer e distribuir cópias literais deste transcrito desde que o copyright e este aviso de permissão sejam mostrados.

Last modified: Thu Jan 31 13:32:56 BRST 2002