Correndo por fora: o protocolo Gemini e um retorno às raízes do hipertexto

Aproveitando meus comentários recentes sobre o projeto Mastodon, decidi escrever sobre outra iniciativa que merece mais olhares: o protocolo Gemini (ou apenas Gemini, para fins de brevidade)


Tentando ser didático (e pecando pelo simplismo), o Gemini é como um misto das ideias de protocolos como Gopher, HTTPS e RSS e da linguagem de marcação Markdown. O Gemini nasceu pronto e imutável, ou seja, nasceu e deverá permanecer minimalista e limitado por uma escolha deliberada.

Na prática, utilizar um cliente para o protocolo, que nada mais é do que uma espécie de navegador, não difere muito da experiência da Web tradicional: digitamos um endereço, pressionamos a tecla ENTER e aguardamos não mais do que alguns segundos pela carga do conteúdo.

As semelhanças, porém, logo terminam. Resgatando os primórdios da Web e da linguagem de marcação HTML, no Gemini, o controle sobre a apresentação do texto recai sobre o cliente, não sobre o criador. A estilização do conteúdo é mínima e hiperligações só podem ser incluídas individualmente, num parágrafo à parte. Clientes como o magnífico Lagrange capricham nos esquemas de cores e tipografia, extraindo o máximo do universo geminiano.

/images/posts/lagrange_gemini_01.png
Lagrange em todo seu esplendor

O resultado é um conteúdo absurdamente limpo e sem interferências, mas ainda assim, elegante. Nada de propagandas, imagens saltitantes, leiautes complexos ou código JavaScript devorando ciclos de processamento e memória. Apenas texto, hiperligações e, quando muito, uma ou outra imagem, cuja inserção não difere de uma hiperligação qualquer, ficando a critério do cliente como exibi-la.

No jargão geminiano, não acessamos sites ou sítios, mas cápsulas. Atualmente, o medusae.space é o principal diretório de cápsulas que, como nos primórdios do Yahoo!, são classificadas em pouco mais de meia dúzia de categorias, enquanto o geminispace.info é o principal buscador.

Praticamente, não há conteúdo em português e a maioria dos escritos tratam do próprio protocolo ou de temas ligados à tecnologia da informação. Há, ainda, quem se aventure tecendo reflexões mais filosóficas sobre a Web, criticando o capitalismo ou participando de comunidades de cibercultura. Com as limitações deliberadas, o protocolo oferece pouca margem para desvios no formato do conteúdo produzido, um alento para quem observa apreensivamente cada capítulo da transformação da Web.

/images/posts/lagrange_gemini_02.png
Lagrange exibindo favoritos no painel da esquerda e atualizações das inscrições no painel da direita

Utilizando um cliente robusto como o Lagrange, é fácil favoritar as cápsulas mais interessantes e se tornar um inscrito para receber atualizações. O Lagrange suporta múltiplas abas e dois painéis (um à esquerda e outro à direita) que exibem favoritos, atualizações com base nas inscrições, histórico de cápsulas visitadas anteriormente e sumário com base na hierarquia de títulos. Ah, e para quem gosta de voltar às catacumbas do MS-DOS, o Lagrange também oferece temas com tons escuros.

/images/posts/lagrange_gemini_03.png
Lagrange exibindo uma cápsula com o tema “Dark”

Devido à sua simplicidade, a implementação de clientes e servidores é facilitada, reduzindo a monopolização e estimulando o desenvolvimento comunitário e a hospedagem autônoma de cápsulas. Combinado com tecnologias para construção de redes ponto a ponto e ofuscação do tráfego, o protocolo pode se tornar um aliado para difusão de conhecimento e assistência mútua, mesmo em redes lentas ou extremamente lentas, sem depender de grandes provedores e serviços de hospedagem.

A exigência de poucos recursos do lado do cliente também facilita a consulta às cápsulas, que não dependem da interpretação de uma linguagem de eficiência duvidosa, como é o caso do JavaScript, nem de uma interface gráfica.

/images/posts/av98_gemini_01.png
Exemplo do AV-98, um cliente escrito em Python que deve rodar em qualquer tubérculo microprocessado

Para quem tem acompanhado o desenvolvimento de arquiteturas alternativas ao duopólio Intel-AMD, como o RISC-V, a Gemini surge como uma alternativa possivelmente interessante para o consumo de informações em dispositivos como o DevTerm R-01 e uConsole R-01, ambos comercializados como um conjunto de peças (você mesmo monta) pela ClockworkPi.

Por exemplo, como proprietário de um videogame portátil Anbernic RG351V, que possui um adaptador de rede sem fio embarcado, eu adoraria um cliente e uma ou mais cápsulas nas quais pudesse ler sobre jogos, dicas e macetes. Nada assim existe (pelo menos, não por enquanto), mas o desafio de produzir algo do tipo é consideravelmente menor utilizando um protocolo como o Gemini, ademais, há pelo menos um proxy que permite a leitura de verbetes da Wikipédia.

Espero que mais pessoas deem uma chance e abram a mente para experimentarem um mundo para além da Web. É verdade que entusiastas do protocolo Gopher estavam fazendo mais ou menos a mesma coisa, mantendo servidores e conteúdos que “corriam por fora” da Web, demandando muito pouco poder computacional para serem acessados, no entanto, a experiência oferecida pelo Gemini é superior graças à linguagem de marcação Gemtext.

Cada vez mais, tenho flertado com a ideia de espelhar o site do COMMU numa cápsula (ou mesmo este blogue incipiente). Um desafio e tanto, mas que se fosse superado, poderia representar um dos maiores conjuntos de artigos em língua portuguesa do universo geminiano.

Finalmente, se nosso país estivesse verdadeiramente comprometido com a difusão de serviços públicos em mídias eletrônicas, poderia incluir exigências regulatórias que estimulariam a utilização de softwares livres/de código aberto, de protocolos como o Gemini e a construção de redes ponto a ponto. Mesmo em situações extremas, asseguraríamos o acesso aos serviços governamentais e fomentaríamos a produção de conteúdo em português. O suporte à criptografia, identidades e scripts CGI por parte do protocolo, permite a construção de frontends para virtualmente qualquer coisa.