Nem só de código vive o GitHub
Abhay dá os últimos retoques no script antes de o correr mais uma vez. A última execução do script foi quase perfeita, mas algumas partes saíram mal formatadas, pelo que é necessário mais uns retoques para que todos os documentos sejam correctamente processados e formatados.
Abhay, ou captn3m0, está em Bangalore a criar um script cuja função é obter a mais recente versão da constituição indiana em formato zip e processar os documentos contidos no arquivo de modo a recriar o histórico da constituição, desde a sua versão original, escrita em 1949, até ao seu formato mais recente. O resultado do processamento está disponível no GitHub, o site de agregação e armazenamento de código com controlo de versão mais usado por programadores em todo o mundo.
Todos os dias milhares de programadores criam e modificam código nos seus portáteis e computadores espalhados pelo mundo. O histórico de todas estas alterações é feito através do sistema de controlo de versão Git e armazenado em mais de 30 milhões de repositórios públicos e privados alojados no GitHub. Com uma comunidade de mais de 11 milhões de utilizadores, o GitHub não agrega somente código – a simplicidade das ferramentas de comparação de texto e de visualização de outros tipos de documentos (imagens, PDFs, etc) têm atraído a atenção de comunidades à procura de maneiras simples e eficazes de armazenar, comparar e publicar documentos de todos os tipos.
Além das ferramentas de visualização e comparação de conteúdos, o GitHub é largamente conhecido pelas suas ferramentas de colaboração. Qualquer pessoa pode sugerir alterações a um projeto através de um Pull Request, a ferramenta chave usada diariamente por milhões de utilizadores para em conjunto colaborarem em projetos alojados no GitHub.
O facto de o GitHub permitir a visualização e comparação de dados em formatos mais complexos que texto corrido, como tabelas, PDFs, imagens e dados de geolocalização permite que qualquer pessoa possa criar visualizações de dados e colaborar com outros na agregação e processamento de dados, bem como na criação de melhores ferramentas.
O resultado são comunidades compostas por pessoas das mais variadas áreas que se juntam organicamente para colaborar em projetos que têm por objetivo melhorar o acesso dos cidadãos a dados sobre as suas cidades, países, o seu planeta e até fora dele (a NASA é uma das entidades mais ativas na disponibilização de código e dados no GitHub). Através do GitHub, os cidadãos podem contribuir e colaborar com o seu governo, entidades e agências oficiais na criação de sites, leis, propostas, recolha de dados, traduções, mapas e muito mais.
Não teria sido possível a Abhay criar o script que lhe permite processar automaticamente todas as adendas à constituição indiana num só histórico permanentemente actualizado se o utilizador com o handle anoopdixith não tivesse primeiro criado um repositório com todos os documentos da constituição indiana em formato PDF e texto. Anoop obteve os documentos do site do governo indiano, e removeu manualmente todas as amendas à constituição, uma por uma, até obter o documento original. A partir desse ponto, criou arquivos de cada uma das versões da constituição com todos os ficheiros constituintes, recriando assim a versão mais recente e simultaneamente publicando todos os arquivos no GitHub. Além de central de código, o GitHub permite também a criação automática de arquivos em formato zip (ou outros formatos comprimidos) contendo todos os ficheiros de um repositório em qualquer ponto da sua história, e é esta funcionalidade que Abhay usa para automaticamente obter todos os ficheiros em cada ponto da história da constituição, recriando automaticamente um histórico limpo e de consulta rápida, permanentemente acessível online e offline.
Não é só o histórico do conteúdo de um repositório que é permanentemente guardado no GitHub – todo o conteúdo criado à volta dele fica também permanente registado, nomeadamente Pull Requestse Issues, as ferramentas de colaboração. Qualquer pedido de alteração, aceite ou não, torna-se parte integrante do histórico do repositório, e pode ser usado para discussões públicas sobre alterações. Na Alemanha, onde todas as leis federais estão publicadas no GitHub, qualquer pessoa pode sugerir amendas às leis através do GitHub, e estas sugestões são registo público.
Muitos outros tipos de conteúdos estão a ser cada vez mais publicados no GitHub. Vários autores usam as ferramentas de edição de texto disponibilizadas no site para criar artigos e livros com a ajuda de Markdown, uma maneira simples de formatar texto. Através de Pull Requests, editores e até leitores podem sugerir correcções em qualquer altura. Usando repositórios privados, é possível colaborar com equipas restritas usando as mesmas ferramentas sem ter de disponibilizar o conteúdo ao público em geral. Ainda outras comunidades usam o GitHub para colaborar na criação de música, tipografia, códigos de conduta, convites de casamento, blogues, e muito mais.
Com ferramentas de criação, edição, colaboração e gestão de conteúdos aliadas a um histórico permanente de todos os dados e discussões associadas, o GitHub é não só a central para programadores mas acima de tudo a central para colaboração na criação de conteúdos de todo o género, onde só a imaginação é o limite.
Deixe o seu comentário