Um autor especialmente inspirador e influente para muita gente que trabalha com computação e plataformas reutilizáveis é o arquiteto e matemático Christopher Alexander, que discute o processo de design da arquitetura em obras como Notes on the synthesis of form (Notas sobre a síntese da forma; Harvard University Press, 1965). Segundo ele, a construção de prédios e cidades seguiria padrões sistemáticos que são verdadeiros templates de construção.

É algo mais ou menos como sempre existir dentro de um ambiente fechado o módulo “quarto” e o módulo “banheiro”, ou a plataforma “quarto” sempre contar com janelas. Pensando em níveis mais macro, como o de uma comunidade inteira, por exemplo, o padrão seria o de prever lugares de lazer para os habitantes, como parques e praças. Para Alexander, esses módulos são uma espécie de plataforma à prova de falhas para qualquer edificação, seja ela uma casa ou uma cidade, e sobre a qual depois se acrescentam outras estruturas e novos detalhes de contexto. 

Na computação muita coisa funciona de forma semelhante, porque existem elementos iniciais que já são definidos e testados e ninguém precisar gastar tempo checando. Uma plataforma básica garante a corretude e a coesão das ideias. Com isso, é possível encapsular as ideias de um componente reutilizável, que já foi bem pensado e estruturado, para seguir com outras partes mais ou menos complexas depois.

Seguindo com o paralelo dos templates arquitetônicos, uma piscina era um elemento que tinha um esqueleto de concepção, mesmo com variação de formatos e de acabamentos, até que um arquiteto teve a ideia de pegar aquele modelo básico e criar em cima dele uma piscina inovadora, sem bordas, no que veio a ser conhecido como piscina de borda infinita. Com plataformas de engenharia pode ocorrer o mesmo: sistemas básicos podem ser reinventados e acabarem se expressando (e sendo usados) de maneiras distintas.

Plataformas evoluem

No livro The timeless way of building (A maneira atemporal de construir, Oxford University Press, 1979), Christopher Alexander discute os padrões de design, a arquitetura atemporal e as limitações de conceito e estilo. O arquiteto acredita que existe uma evolução das formas que é quase como um processo matemático, portanto, se alguém ainda não descobriu como fazer o encaixe das partes de um quebra-cabeça altamente complexo, cabe a essa pessoa estudar mais para chegar lá, já que a solução é sempre possível. 

Apesar de o mundo da computação ter pego emprestado de Alexander a ideia dos padrões arquitetônicos para fundamentar os padrões arquiteturais de software, como no livro Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley Professional Computing Series), isso não pressupõe, contudo, que se mire o tipo de perfeição e forma definitiva do arquiteto. É preciso considerar que pode haver mais de uma maneira de construir um sistema. Outro ponto é que, com o passar do tempo, o que poderia parecer impossível em uma determinada época acaba sendo feito mais para a frente.

Como a revolução da inteligência artificial é bastante significativa, hoje já é realidade aquilo que se achava que demoraria mais ocorrer: a interface com um computador não necessariamente ser programática, e funcionar simplesmente com alguém falando com a máquina. Isso certamente abre outras avenidas de design para se pensar em possibilidades tecnológicas no curto e médio prazo. É mais ou menos como quando surgiu a televisão como uma forma de rádio com imagens, e mudou tudo.

Qualquer produto que se cria atualmente vem com mentalidade de mobile first, em que se considera que o usuário sempre utilizará qualquer serviço pelo celular primeiro, e não por um  computador. Porém, antes de o smart phone existir, isso era impensável. 

É difícil saber o que vai acontecer, porque tudo depende de como as coisas evoluem, mas a tendência é de a computação ficar mais difundida ainda e de todos os dispositivos serem conectados por interfaces mais centradas na tarefa que se deseja realizar. Em vez de usar um computador genérico para escrever um livro, por exemplo, uma pessoa possivelmente terá um dispositivo melhor e mais específico para isso, talvez por voz. Em um ambiente assim, as plataformas fazem muito sentido.

O engenheiro Luiz André Barroso, precursor do conceito dos data centers atuais, costumava dizer que impor restrições a plataformas é uma espécie de convite para que todas as mentes brilhantes do mundo reflitam sobre aquela restrição, sobre como usar aquela interface de maneira melhor, sobre como fazer aquele componente ser mais eficiente ou mais escalável. 

Para Barroso, um bom exemplo foi o conjunto de instruções (ISA, instruction set architecture) do chip  x86, desenvolvido pela Intel em 1978, que roda amplamente pelos computadores do planeta. O engenheiro contava que, quando a Intel definiu essas instruções, as pessoas foram logo falando que eram restritivas demais, porém o que ocorreu de fato é que elas viraram padrão e geraram incontáveis inovações. 

Se cada pesquisador que estivesse estudando arquitetura de computadores tivesse o próprio padrão, seria muito mais difícil evoluir a arquitetura, porque, em vez de as pessoas trabalharem em cima do mesmo problema, elas estariam se dedicando a um monte de problemas diferentes. A noção de Barroso é a de que restrições de padrão muitas vezes impõem o foco para as inovações.

Para o universo de interfaces e plataformas, a padronização também gera ambiente propício para a inovação.

Em vez de usar um computador genérico para escrever um livro, uma pessoa possivelmente terá um dispositivo melhor e mais específico para isso, talvez por voz. Em um ambiente assim, as plataformas fazem muito sentido.

Marcus Fontoura
Sobre o autor

Marcus Fontoura

Marcus Fontoura é atualmente technical fellow na Microsoft e CTO do Azure Core. Iniciou a carreira na área de pesquisa da IBM em 2000, depois de concluir o doutorado na PUC-Rio e o pós-doutorado na Universidade de Princeton, nos Estados Unidos. Teve passagens pelo Yahoo! e pelo Google, e promoveu uma transformação digital na fintech brasileira StoneCo, onde atuou como CTO. É autor do livro Tecnologia Intencional e publisher da plataforma com o mesmo nome.