13 de agosto de 2016

Fuchsia, porque não faz sentido um novo sistema do Google


Ah, o Google, aquela empresa de publicidade travestida de empresa de tecnologia. Eu sei, é difícil de aceitar.

Parece que ela está desenvolvendo um novo sistema, o Fuchsia.

Navegar na Interweb (para quem não sabe, interwebs é a parte web, o hypertext mesmo, da Internet) antigamente era complicado, era estilo a Deep Web: você só acessava sites que já sabia o link ou havia alguma página com uma lista de links.

Então, eis que surgem dois jovens usando dinheiro público americano e cria uma ferramenta que analisa o conteúdo de páginas pré-selecionadas. Depois, faz a mesma coisa com os links das mesmas. Com os links das páginas, faz a mesma coisa. Então é uma ramificação. Então depois faz um "rankeio" das páginas mais acessadas para exibir no topo, pois teoricamente se são mais acessadas é porque é o melhor resultado praquele termo. Algo genial criado em uma universidade pública que deu início a uma das empresas mais valiosas do mundo. E só se tornou valiosa porque vocês sabem, consumismo é o que move o mundo, infelizmente.

Enfim, não irei me prolongar senão os googlesheep piram. Ao longo do tempo ela foi criando e comprando serviços para diversificar seu faturamento, mas não conseguiu: 90% é com publicidade. Um comércio que fatura 90% com coxinhas e 10% com pasteis não pode ser chamada de pastelaria, certo? Então.

Mas sou honesto e sei reconhecer que dois produtos dela, além da busca, foram revolucionários para a época: Gmail e Chrome. Usei muito o finado Hotmail, mas muito limitado, na época apenas como POP3. Passei a usar o GMX.NET que dava 7x1 no serviço da Microsoft. Aquela p*rra era toda em alemão e eu não entendia bosta nenhuma, na época não havia um Google ou Bing Translate. Tinha que ir caçando as palavras em um dicionário. Enfim, o serviço era excelente, usava com o Microsoft Outlook Express, já que também tinha POP3.

Quando surgiu o Gmail era apenas por convite. Por sorte, recebi, acredito que por ser um dos primeiros a usar o finado Orkut. Todo mundo enchia meu saco pedindo convites para ter um nome bacana, estilo raposaodoartico@gmail.com. Na época, era um dos únicos, senão o único gratuito, que oferecia 1GB de armazenamento e IMAP, então tudo o que fazia no cliente desktop acontecia no servidor! Era mágico!

Já o Chrome, aquele navegador leve, robusto... e depois veio a sincronização, extensões etc. E também era multiplataforma, dava para usar no Linux, MacOS e depois em celulares.

Falta de inovação


Para o consumidor comum, final, infelizmente parou por aí. O Waze, o Blogger (o qual uso faz anos) e vários outros produtos e serviços foram comprados, não criados, por ela. Ela os melhorou? Sim, mas com a ajuda da comunidade, o Waze é a maior prova disso, depois do Android. Ah, vamos falar dele.

A Internet revolucionou e os browsers serviam de janela para esse mundo mágico e maravilhoso, por isso criou o Chrome Browser. Como os smartphones estavam começando a bombar e a Microsoft já dominada os desktops, resolveu investir num sistema operacional para servir de plataforma para seus produtos (sim, você). Como o Google dificilmente cria algo, resolveu usar o kernel Linux e softwares GNU, entre outros, e lançou o Chromium Project, que é a versão obrigatoriamente aberta na qual é usada no Chrome OS.

Mas, sabendo das limitações, a empresa percebeu que não iria conseguir competir com o Apple iOS, que estava ganhando o mercado em cima da Blackberry. Não ia conseguir nem competir com o Symbian, Windows Mobile, isso porque já estavam em decadência. O jeito foi então partir para  velha tática de comprar uma startup e ver no que dá.

A melhor aquisição de todos os tempos


Android Inc. foi a empresa escolhida e investiram no Android OS. Perdão, quem realmente investiu foram os desenvolvedores do Linux, GNU e trocentos outros produtos que a comunidade open-source gastou horas. A startup era apenas mais uma de várias outras que usavam essas soluções em dispostivos móveis. A própria Nokia criou o Maemo baseado no Debian Linux, que depois se juntou com a Intel e criou o MeeGo. A grande sacada da Google foi usar o sistema e investir pesado, já que tinha muita grana com publicidade, o óleo de pedras do mundo moderno.

Comprou uma empresa, se deliciou com o FLOSS e teve a ajuda de duas grandes empresas: Motorola e Samsung. A HTC apenas fez uma parceria com o Google, mas foram essas duas que não apenas usaram o sistema, mas também criaram novos recursos que não havia de forma nativa, desde um leitor biométrico até mesmo dual-chip. Funções que só se tornaram nativas bem depois.Alias, o primeiro tablet Android foi uma gambiarra da Samsung, nem o Google tinha ideia de usá-lo. Alias,parece que até hoje não há um esforço, nem do Google nem dos devs. Inclusive a própria Samsung desaqueceu os tablets com o sistema. Talvez porque já é dominada pelo iPad e, EmBreve™, pelo Surface (para os mais exigentes).

A continuidade


Apesar do ChromeBook ser um sucesso em algumas universidades nos EUA, globalmente está longe de bater até mesmo o Linux. Quem compra um é porque já tem um PC ou Mac. Dificilmente alguém comprará um ChromeBook como primeiro e único computador.

Google é brasileiro e não desiste nunca. Ela vai comprando e vê no que dá, se não der certo, simplesmente enterra e a vida segue.

A Microsoft tem o Continuum, que é usar o mesmo sistema e /o dispositivo e o aplicativo se adapta ao tamanho da tela e a forma de interação, seja touch, teclado+mouse ou realidade aumentada. Já a Apple aposta em sistemas diferentes com usos diferentes, porém com uma forte integração, o Continuity.

E o Google? Bem, o Google aposta que alguém crie isso por ela. Há várias tentativas frustadas que falharam miseravelmente tentando trazer o Android ao computador. Se com tablet já não deu muito certo, imagine com computadores. Ela até tentou fazer um tablet híbrido: um tablet que vira um tablet com teclado, mas também falhou

Seu sistema operacional para computadores não vinga. O sistema operacional para dispositivos móveis não dá certo em telas grandes. E, conforme o próprio Google, em 2015:

Nos últimos dias, houve confusão sobre o futuro do Chrome OS e dos Chromebooks com base em especulações de que o Chrome OS seria mesclado com o Android. Apesar de estarmos trabalhando em maneiras de unir o melhor dos dois sistemas operacionais, não há nenhum plano para encerrar o Chrome OS.

Não é uma questão ideológica, simplesmente não dá para fundir os dois. Nem dá para rodar o .apk no Linux, no máximo uma containerização, que é o foi divulgado na última I/O. Ou seja, pura gambiarra. Além disso, os aplicativos para Chrome OS (Linux) não iriam rodar no Android. Então de integração não tem bosta nenhuma.

Há uma distro, a Maru OS, que roda um fork do Debian num smartphone com Android. Ou seja, você pluga o aparelho numa tela, teclado e mouse e funciona como um linux normalmente, enquanto o smartphone roda Android. De novo, não há nenhuma integração, apenas dois sistemas distindos rodando separadamente. Um aplicativo de um sistema não tem acesso (integração) com o outro.

Não importa se é o mesmo sistema ou são devices independentes, as pessoas querem uma continudade das coisas. Querem fazer algo no celular e continuar no PC. A nuvem, a qual o Google nasceu e se baseia, é essencial mas não o suficiente. Não basta "sincronizar", tem que oferecer a mesma experiência.

Uma nova tentativa


O que fazer então se a tática de esperar a comunidade ou OEMs resolverem o problema não está funcionando? Tentar de novo.

Recentemente aparece um repositório do Google com o nome fuchsia com a seguinte descrião:

Pink + Purple == Fuchsia (a new Operating System)

O que seria? Pink? Purple? Um sistem mágico? Pink seria o Android OS e Purple o Chrome OS fundidos? Android não roda apps do Chrome e o Chrome não roda (nativamente) os apps do Android. Qual o sentido? Uma revolution?

No repositório fala sobre os kerneis Magenta e LK e suas diferenças:

LK is a Kernel designed for small systems typically used in embedded applications. It is good alternative to commercial offerings like FreeRTOS or ThreadX. Such systems often have a very limited amount of ram, a fixed set of peripherals and a bounded set of tasks.

On the other hand, Magenta targets modern phones and modern personal computers with fast processors, non-trivial amounts of ram with arbitrary peripherals doing open ended computation.

Magenta inner constructs are based on LK but the layers above are new. For example, Magenta has the concept of a process but LK does not. However, a Magenta process is made of by LK-level constructs such as threads and memory.

More specifically, some the visible differences are:

- Magenta has first class user-mode support. LK does not.
- Magenta is an object-handle system. LK does not have either concept.
- Magenta has a capability-based security model. In LK all code is trusted.

Over time, even the low level constructs will change to accomodate the new requirements and to be a better fit with the rest of the system.

No github do kernel LK (littlekernel) diz que:

LK (Little Kernel) is a tiny operating system suited for small embedded devices, bootloaders, and other environments where OS primitives like threads, mutexes, and timers, but there’s a desire to keep things small and lightweight. On embedded ARM platforms the core of LK is typically 15-20 KB.

Já no github do kernel Magenta, aponta para um Fuchsia OS, que o separa em dois: 

MAGENTA REPOSITORY

Welcome to the Magenta repository.

The documentation is divided into

- Magenta specific
- LK specific

Indo para o Magenta:

Magenta is a new kernel that powers the Fuchsia OS.
This page is a non-comprehensive index of the magenta documentation.

 Bem, pelo que eu entendi o Magenta usa o LK como base porém, por ser limitado, acrescenta várias funcionalidades. O curioso é que no repositório diz que está sob licença MIT, não aquelas que o Linux costuma usar. Se fosse baseado no Linux, deveria usar as licenças comuns a ela.

The Magenta Kernel (kernel/...) is under the MIT License, a copy of which
may be found in kernel/LICENSE

The Magenta System (system/...) is under the Apache 2 License, a copy of
which may be found in system/LICENSE

The Third Party Components (third_party/...) are under various licenses
(of the BSD, MIT, or Zlib style), which may be found in the root directory
of each component, respectively.

Não entendo bosta nenhuma disso, mas algo de MuitoEstranho™.

O que realmente se passsa


Bem, aparentemente o Google está desenvolvendo um novo sistema operacional. O Android já dominou o mercado de smartphones, mas não consegue competir com os de smartwatches nem tablets. Já para computadores o Chrome OS vem falhando miseravelmente, porém pela descrição do kernel não me parece ser focado em desktop. Sobre Internet of Things e sistemas embarcados ela lançou o Brillo.

Resumindo, contratou dois especialistas em sistemas operacionais (beOS, palmOS, iOS etc), está usando um kernel open-source na faixa, talvez inserir algo proprietário e torcer para não ser processada , ver se recebe uma mãozinha da comunidade e depois chamar de seu.


Ninguém de fora sabe o porquê nem para o que dela desenvolver um sistema diferente do que já tem (Android OS e Chrome OS) e o pior: por que diabos não focar na porra do Linux em si? Ou algum BSD, que seja. Tentar reinventar a roda em vez de melhorar o que já existe, dessa vez não tem como não torcer para falhar miseravelmente.