Radicle um grande candidato como alternativa ao Github, Gitlab e Bitbucket!
Recentemente eu estava navegando pelo Twitter e me deparei com um projeto sensacional que parecia querer mudar bastante coisa na forma que lidamos com serviços na Web. Essa aplicação chama Radicle e o seu site oficial é o radicle.xyz, o código fonte está no seu Github em github/radicle-dev e inclusive já tem está bem documentado aqui.
Levei alguns minutos para entender o que exatamente eles queriam propor e o mais interessante é que eles podem estar certos! E já explico o porque.
Primeiro vamos ver do que se trata o programa e como ele é!
Sobre o programa
Indo no site na aba Try It
você pode ter acesso à beta do Radicle.
Por enquanto apenas está disponível para Linux (Appimage) e Mac (dmg)
No linux eu apenas precisei usar o terminal executando o arquivo correspondente
./radicle-upstream-0.1.13.AppImage
Basicamente sua interface é dessa forma:
Ele pede o seu nome
Uma senha para seu usuário. Cuidado, por enquanto nessa versão beta não se pode mudar a senha.
Depois ele dá um UniqueID que representa nosso dispositivo. Ele é necessário para compartilhar nossos repositórios.
Sua "página inicial" começa vazia. E a sua interface é bem intuitiva. Com várias opções e configurações.
Clicando em novo projeto, você pode criar um novo ou existente. O novo exige um projeto sem a pasta .git
.
E voilá temos nosso primeiro repositório pronto.
O seu repositório tem um ID único também, podendo compartilhar com seus amigos.
Se estiver curioso, muitas pessoas já postaram seus repositórios e eles podem ser encontrados aqui (ainda em beta):
Inicialmente há apenas 1 peer, que é o seu próprio. Mas ele pode aumentar, podendo ser seus amigos, colegas de trabalho ou comunidade inteira.
Mas porque eu vou querer usar isso?
O motivo eu ter gostado da ideia:
Basicamente tudo se resume em Servidores Centrais x Servidores Distribuídos.
Atualmente vemos que há uma grande quantidade de serviços que rodam pela internet a fora e não são poucos aqueles que tentam encontrar algo que torne o mundo do desenvolvimento mais rápido e produtivo.
As iniciativas são exponenciais e não param de surgir. E tão certo foi o boom de projetos open source a partir de 2008 que logo após houve a troca do CEO da Microsoft, empresa no qual passou de "Linux is cancer" para "Microsoft loves Linux" ocasionando na compra do Github pela Microsoft em 2018. É certo que até para as grandes empresas a inovação é disruptiva.
Porém há um contra em todos esses serviços que as grandes empresas fornecem, apesar de muitos serem de código aberto, é que todos são serviços centralizados na empresa com um servidor central.
A vantagem de um servidor distribuído para uma rede Cliente-Servidor é nas questões de falhas, em uma rede Cliente Servidor é sempre esperado que o Servidor esteja "escutando" e servindo as informações necessárias. Caso ele caia, teoricamente, nenhum dos clientes consegue acessar seu conteúdo. O mesmo não ocorre em uma rede P2P.
Web2 centralizada e Web3 distribuída
Antigamente, você tinha seu código, seus binários, eles estavam com você. Hoje em dia um serviço como o Google Docs, por exemplo, os arquivos nem são seus mais, eles são do Google, Microsoft, Amazon etc. Isso é a Web 2.0. Que basicamente concentra todos os serviços, arquivos e binários em um servidor externo ao seu. Seguindo por essa linha de raciocínio você não concorda que o mesmo se aplica no Github?
Foi esses problemas que novos devs estão surgindo com propostas open source em Computação distribuída, buscando usar como rede o P2P e contratos blockchain em seus serviços. É algo novo que pode ser uma aposta alta, porém bem promissora. E já tem nome, Web3 segundo a Ethereum Foundation .
Gostou da primeira impressão?
Deixe seu comentário e seu like no artigo!
Até mais!