Julio Biason
4 years ago
2 changed files with 167 additions and 0 deletions
@ -0,0 +1,77 @@ |
|||||||
|
+++ |
||||||
|
title = "Commented link: Expanding Fuchsia's open source model" |
||||||
|
date = 2020-12-13 |
||||||
|
|
||||||
|
[taxonomies] |
||||||
|
tags = ["links", "google", "fuchsia", "open source"] |
||||||
|
+++ |
||||||
|
|
||||||
|
Google recently announced they they are [changing the open source |
||||||
|
model](https://opensource.googleblog.com/2020/12/expanding-fuchsias-open-source-model.html) |
||||||
|
of their new open source OS called Fuchsia. But there are so many red flags one |
||||||
|
has to wonder what the announcement actually is. |
||||||
|
|
||||||
|
<!-- more --> |
||||||
|
|
||||||
|
For example: "We have been developing Fuchsia in the open, in our git |
||||||
|
repository for the last four years." Thing is, nobody had access to the |
||||||
|
repository for *writing*, only Google. And, although it was "open" you couldn't |
||||||
|
suggest changes or anything, even if you were following the development since |
||||||
|
its inception. The model is as "open" as Android is, where only way to |
||||||
|
contribute to the mainline code is being at Google; you can clone the Android |
||||||
|
code as much as you can clone Fuchsia code, but good luck trying to make it run |
||||||
|
without voiding your device warranty. |
||||||
|
|
||||||
|
"Starting today, we are expanding Fuchsia's open source model to make it easier |
||||||
|
for the public to engage with the project." This point is important for the |
||||||
|
next points, but you have to ask yourself: What is actually changing in the |
||||||
|
model? Are they changing the license, to allow people to continuous contribute |
||||||
|
as an open source project? Are they opening the lines for accepting external |
||||||
|
pull requests? No, they are just creating a maillist and writing down how one |
||||||
|
can get permission to submit patches or become a committer. How open is a |
||||||
|
project that you need to have badge to be able to be part of the project? |
||||||
|
|
||||||
|
"In addition, we are also publishing a technical roadmap for Fuchsia to provide |
||||||
|
better insights for project direction and priorities." Remember the first point |
||||||
|
about making easier to the public to contribute? Well, how can it be a |
||||||
|
contribution from the public if the direction is already set? What if the |
||||||
|
public decides that the direction should be another one? Either is a waste of |
||||||
|
time of the current developers or the "easier to contribute" is simply for free |
||||||
|
labor and not for building an open source project, in the end. |
||||||
|
|
||||||
|
"Fuchsia is an open source project that is inclusive by design, from the |
||||||
|
architecture of the platform itself, to the open source community that we’re |
||||||
|
building." This point was raised from another user on Mastodon (hello |
||||||
|
[Berkes](https://bitcoinhackers.org/@berkes)): One does not "build" an open |
||||||
|
source community; you make an inclusive, open to everyone project, where people |
||||||
|
can contribute to code, documentation, ideas, improvements and even direction |
||||||
|
and the community will build itself -- Rust is a great example of that (and I'm |
||||||
|
bringing this for later). |
||||||
|
|
||||||
|
But even with all that, let's take a step back: Why would Google change the |
||||||
|
"model" of such OS? Couldn't they develop it themselves, in the close? Sure |
||||||
|
they could. The fact that they are "open sourcing" it probably means the |
||||||
|
project lost importance inside Google and nobody actually cares to continue |
||||||
|
development of it. The roadmap probably is just the original authors |
||||||
|
"wishlist" for the OS and nothing more. |
||||||
|
|
||||||
|
Also, there is the question of "Why Fuchsia?"; why would Google invest in |
||||||
|
producing another OS when Linux seems to fit most of their needs (after all, it |
||||||
|
fits their ChromeOS and Android systems)? While being developed with Rust, a |
||||||
|
language the provides memory protection and should, in theory, provide a better |
||||||
|
experience for users, it doesn't mean that other languages can't provide the |
||||||
|
same protections -- Rust just means the compiler will do a better job at |
||||||
|
pointing out problems than other languages. But when you have an operating |
||||||
|
system like Linux, which is reviewed by thousands of developers around the |
||||||
|
world, highly modular and with groups focused on different subsystems, the |
||||||
|
protection comes from the *community*. Google could, pretty much, rewrite some |
||||||
|
critical subsystems in Rust and get over it, but they decided to go with a |
||||||
|
completely different OS. And the rumors say that it was simply 'cause Linux is |
||||||
|
licensed under GPL, a license the allows anyone to contribute -- with later |
||||||
|
versions of the license even requesting companies to provide the encryption |
||||||
|
keys for devices that require it -- and that Google simply abhors. |
||||||
|
|
||||||
|
So, an OS created (probably) out of petty spite for rules that actually *build* |
||||||
|
open source communities now is trying to create an open source community. If |
||||||
|
this isn't poetic justice, I don't know what it is. |
||||||
|
|
@ -0,0 +1,90 @@ |
|||||||
|
+++ |
||||||
|
title = "Link Comentado: Expanding Fuchsia's open source model" |
||||||
|
date = 2020-12-13 |
||||||
|
|
||||||
|
[taxonomies] |
||||||
|
tags = ["link", "google", "fuchsia", "open source"] |
||||||
|
+++ |
||||||
|
|
||||||
|
Google anunciou que eles estão [mudando o modelo de código |
||||||
|
aberto](https://opensource.googleblog.com/2020/12/expanding-fuchsias-open-source-model.html) |
||||||
|
do sistema Fuchsia. Mas o anúncio tem tantas bandeiras vermelhas que temos que |
||||||
|
perguntar o que diabos o anúncio realmente é. |
||||||
|
|
||||||
|
<!-- more --> |
||||||
|
|
||||||
|
{% note() %} |
||||||
|
O artigo original está em inglês, e eu traduzi as frases. |
||||||
|
{% end %} |
||||||
|
|
||||||
|
Por exemplo: "Nós estamos desenvolvendo Fuchsia de forma aberta, no nosso |
||||||
|
repositório git nos últimos quatro anos." Acontece que ninguém tem acesso de |
||||||
|
escrita no repositório, apenas o Google. E, embora esteja "aberto", você não |
||||||
|
pode sugerir alterações ou qualquer outra coisa, mesmo que você estivesse |
||||||
|
seguindo o desenvolvimento desde a sua concepção. O modelo é tão "aberto" |
||||||
|
quando o Adnroid, onde a única forma de contribuir com o código principal é |
||||||
|
fazer parte do Google; você pode clonar o código do Android tanto quanto o |
||||||
|
código do Fuchsia, mas boa sorte tentar executar o mesmo sem estragar a |
||||||
|
garantia do seu dispositivo. |
||||||
|
|
||||||
|
"Começando hoje, nos estamos expandindo o modelo de open source do Fuchsia para |
||||||
|
que seja mais fácil para o público participar do projeto." Esse ponto é |
||||||
|
importando para os próximos pontos, mas você tem que perguntar: O que está |
||||||
|
realmente mudando no modelo? Eles estão mudando a licença, para permitir que |
||||||
|
pessoas façam contribuições contínuas como um projeto open source? Eles estão |
||||||
|
mudando as formas de comunicação para permitir pull requests de fora do Google? |
||||||
|
Não, eles somente estão criando uma lista de discussão e escrevendo como alguém |
||||||
|
consegue ganhar permissão para enviar patches ou se tornar um committer. Quão |
||||||
|
aberto é um projeto que você precisa de um distintivo para fazer parte do |
||||||
|
projeto? |
||||||
|
|
||||||
|
"Ainda, estamos publicando um roteiro do Fuchsia para dar uma melhor ideia da |
||||||
|
direção e prioridades do projeto." Lembram do primeiro ponto sobre ser mais |
||||||
|
fácil para que o público possa contribuir com o projeto? Bom, como podem haver |
||||||
|
contribuições do publico se a direção já está definida? E se o público decidir |
||||||
|
que a direção deve ser outra? De qualquer forma, é uma perda de tempo para os |
||||||
|
desenvolvedores atuais ou "fácil de contribuir" é simplesmente para conseguir |
||||||
|
trabalho grátis e não para construir um projeto open source. |
||||||
|
|
||||||
|
"Fuchsia é um projeto open source que é inclusivo por design, da arquitetura da |
||||||
|
plataforma, para a comunidade open source que estamos construindo." Esse é um |
||||||
|
ponto que foi levantando por outro usuário no Mastodon (olá |
||||||
|
[Berkes](https://bitcoinhackers.org/@berkes)): Não é que alguém "constrói" uma |
||||||
|
comunidade open source; você faz uma projeto inclusivo, aberto a qualquer um, |
||||||
|
onde pessoas podem contribuir com código, documentação, ideias, melhorias e até |
||||||
|
mesmo sugerindo a direção do projeto e a comunidade se constrói sozinha -- Rust |
||||||
|
é um grande exemplo disso (e eu só estou comentando porque vou usar mais pra |
||||||
|
frente). |
||||||
|
|
||||||
|
Mas mesmo com tudo isso, vamos voltar um passo: Por que o Google mudaria o |
||||||
|
"modelo" de tal OS? Será que eles não conseguiriam desenvolver eles mesmos, de |
||||||
|
forma fechada? Claro que conseguiriam. O fato é que eles estão "abrindo o |
||||||
|
código" porque provavelmente o projeto perdeu a importância dentro do Google e |
||||||
|
ninguém se importa se o desenvolvimento continua. O roteiro provavelmente é |
||||||
|
apenas a "lista de desejos" dos desenvolvedores originais e nada mais. |
||||||
|
|
||||||
|
Ainda, existe a pergunta do "Por que Fuchsia?"; por que o Google iria investir |
||||||
|
em um novo OS quando o Linux parece servir para praticamente todas as |
||||||
|
necessidades deles (no final das contas, funciona bem no ChromeOS e no |
||||||
|
Android)? Mesmo que esteja sendo desenvolvido com Rust, uma linguagem que provê |
||||||
|
proteções de memória e deve, em teoria, prover uma experiência melhor para os |
||||||
|
usuários, isso não significa que outras linguagens não provêem as mesmas |
||||||
|
proteções -- Rust somente tem elas diretamente no compilador e aponta melhor |
||||||
|
esse tipo de problemas do que outras linguagens. Mas quando você tem um sistema |
||||||
|
operacional como o Linux, que é revisado por centenas de desenvolvedores, sendo |
||||||
|
altamente modular e com grupos focados em diferentes subsistemas, a proteção |
||||||
|
vem da *comunidade*. Google poderia, simplesmente, reescrever alguns sistemas |
||||||
|
críticos em Rust e continuar assim, mas eles decidiram ir com a ideia de um |
||||||
|
sistema completamente novo. E há rumores do que eles fizeram isso simplesmente |
||||||
|
porque Linux é licenciado sob a GPL, uma licença que permite a contribuição de |
||||||
|
qualquer um -- e versões mais recentes inclusive requerem que empresas |
||||||
|
distribuam as chaves criptográficas para dispositivo que existem essas chaves |
||||||
|
-- e que o Google simplesmente odeia. |
||||||
|
|
||||||
|
Assim, um sistema criado (possivelmente) de puro rancor por regras que |
||||||
|
*realmente* constroem uma comunidade open soruce agora está tentando criar uma |
||||||
|
comunidade open source. Se isso não for justiça poética, eu não sei o que é. |
||||||
|
|
||||||
|
<!-- |
||||||
|
vim:spelllang=pt: |
||||||
|
--> |
Loading…
Reference in new issue