Desenvolvimento

16 jul, 2015

O cubo mágico e o conceito de DevOps

Publicidade

O primeiro protótipo do cubo mágico foi fabricado em 1974, pelo professor do Departamento de Desenho de Interiores na Academia de Artes e Trabalhos Manuais Aplicados em Budapeste (Hungria), Ernő Rubik. A intenção do criador deste quebra-cabeça era criar uma peça que fosse perfeita em si mesma, no que se refere à geometria. No início, sua principal função era ajudar a ilustrar o conceito de terceira dimensão aos alunos de arquitetura.

cubo-mágico

O termo DevOps, por sua vez, só foi criado de fato 35 anos depois, em 2009, durante a conferência Velocity, da O’Reilly. Nesta conferência, John Allspaw, da Etsy.com, e Paul Hammond, da Typekit, apresentaram o trabalho “10+ Deploys Per Day: Dev and Ops Cooperation at Flickr”. Foi este trabalho que entusiasmou Patrick Debois, um grande entusiasta do tema, a promover o encontro DevOpsDay, finalmente consolidando o termo.

devops

Atualmente, DevOps é uma posição fundamental nas corporações. Esse profissional é responsável pela integração entre os desenvolvedores e a infraestrutura, aplicando métodos ágeis, gerenciando o ciclo de vida das aplicações e criando uma prática de entrega contínua de software. A história de ambos os termos remete a conceitos totalmente distintos… Mas o que eles possuem em comum?

O cubo mágico (ou cubo de Rubik), é um quebra-cabeça com quatrilhões de combinações possíveis diferentes. Ele traz uma ideia de dificuldade e desafio que nos leva a tentar resolvê-lo quase que imediatamente. A relação entre os Devs e a Infra, por sua vez, também foi baseada nessas características: assim que surge um problema para os Devs, os responsáveis pela Infra devem tentar resolvê-lo rapidamente.

Após a adoção do conceito de DevOps, o número de problemas entre as equipes de desenvolvimento foi diminuído consideravelmente. Hoje, a missão deste profissional é incentivar a colaboração das equipes e promover integração e o deployment contínuo como as melhores práticas para entrega de software com qualidade. Como consequência, temos uma diminuição da interação humana no ambiente, o que em boa parte dos casos é a causa dos problemas nas aplicações.

Grandes corporações como Google e Amazon, por exemplo, já fazem uso desse conceito há algum tempo. A agilidade nos deploys e a diminuição no downtime das aplicações acaba proporcionando muito menos esforço das equipes. Voltando à nossa comparação com o cubo mágico, acredito que o DevOps deve possuir essas seis principais características:

  • Ágil
  • Dinâmico
  • Técnico
  • Curioso
  • Agregador
  • Colaborativo

Além disso e para finalizar, o cubo e o DevOps compartilham a ideia de que grandes dificuldades e desafios serão sempre superados com as melhores práticas. Ou quatrilhões de práticas…

Concorda, discorda ou tem algo a acrescentar? Utilize os campos abaixo!