Como ter a melhor plataforma de software, ser mais ágil, inovador e por um custo reduzido: construa coletivamente

Ao longo de anos prestando consultoria em TI para empresas de áreas diversas, um ponto sempre me chamou a atenção: a quantidade de gente refazendo as mesmas coisas, inúmeras vezes, não compartilhando seus avanços e experiências.

Temos 2 caminhões de bombeiro aqui. Qual a diferença entre ambos os projetos?

Desde que comecei a trabalhar com tecnologias digitais, se faço algo repetido por umas 3 vezes, em um curto espaço de tempo, avalio se irei precisar repetir de novo e, caso positivo, tento automatizar isso, para evitar retrabalho. Nem diria que o motivo seja uma eterna busca pela otimização não… Acho apenas que quem foi feito para repetir tarefas foram as máquinas.

Partindo desse ponto, uma coisa me chamava a atenção: projetos open source. Para quem não entende isso, é muito mais que algo gratuito, mas sim algo colaborativo, onde várias partes trabalham coletivamente, beneficiando a todos. Relação ganha-ganha, percebeu?

Afirmo sem medo de errar: mais de 80% dos projetos de website/aplicativos web possuem mais da metade de todo seu código e funcionalidades possível de ser compartilhado entre os demais. Exagero?

  • Gerenciamento de usuário/controle de acesso
  • Gerenciamento de arquivos
  • Estruturas para melhoria de performance
  • Envio de mensagens (email, etc)
  • Inserção de conteúdo
  • Exportação de conteúdo
  • Itens de segurança
  • por ai vai…

Te pergunto: porque não criarmos peças flexíveis, colaborativamente, nos ajudando mutuamente para criar as melhores peças básicas possíveis, onde todos teriam acesso a elas, deixando que cada organização se preocupe somente em criar as novas partes, específicas e únicas a seus projetos?

Como criar colaborativamente projetos distintos?

Por partes.
 — Jack the Ripper

Quando falamos de inovação, a primeira coisa que todas as literaturas e experiências pessoais dirão é: quanto maior, mais difícil de algo se mexer. Inovar é fazer algo diferente, logo, se mexer. Uma estrutura grande tem dificuldade em alterar partes, pois são todas interligadas. Solução: break it!

O nome bacaninha é "modular", "componentizado", "Arquitetura Orientada a Serviços" (é, sempre podemos gourmetizar as coisas), e a ideia é simples: pequenas estruturas, cada uma responsável por algo pequeno, se interconectando para criar algo maior. Precisou mudar uma peça? Bem, se a nova continuar fazendo o que a outra fazia, não importa o que mudou por dentro.
Isso lembra sobre termos pequenas equipes para inovarmos, né? A regra é a mesma: coisas grandes se movem devagar.

Quebramos nossos sistemas em pequenas partes, e ai?
 — cara chato e impaciente

Esse é o grande ponto, na verdade: lembra do Lego e do Playmobil, ali em cima? Um boneco de Playmobil dificilmente será compartilhado entre diversas ideias diferentes. Ele é restrito ao que foi pensado inicialmente. Não evolui. Você não solta um pedaço dele, encaixa outro e segue feliz. Você precisa comprar outro boneco inteiro, que faça a outra coisa que você quer.

Quando você tem um Lego em mãos, por outro lado, várias das peças podem ser reaproveitadas, recombinadas para produzir uma ideia diferente.

Reduzir seus sistemas a partes menores que se comunicam permite que você não precise criar todas, pois muitas delas já existem por ai. Vamos além: se alguém criar uma nova peça que se encaixe no seu modelo(para isso existem padrões), você pode ganhar novos benefícios sem ter investido nada. Assim como outros poderão se beneficiar de uma criação sua.

Claro, você ainda pode ter as partes que são realmente únicas e que são consideradas vantagem competitiva sua. Como ficou claro, a esmagadora maioria do que as empresas fazem não se encaixa nessa situação.

Utilizando e colaborando com projetos open source, fazemos com que grande mentes trabalhem conjuntamente, grandes ideias se cruzem, grandes projetos contribuam mutuamente. Aproximar muitas mentes e ideias só pode dar em uma coisa: inovação.

Para terminar, sugiro um breve vídeo, do Steven Johnson, o "De onde vem as boas ideias".