Kubernetes v1 is here!

Hoje a Google anunciou em seu blog o lançamento oficial da versão v1 do Kubernetes, projeto open-source para clusterização e orquestração de containers. Tive a oportunidade de conversar com alguns Googlers a respeito da expectativa em relação ao tema e posso garantir que é bastante grande! Muito tem se falado a respeito de containers, dockers etc. Grande parte no contexto de DevOps e parte no sentido de portabilidade entre nuvens, APIs etc. Eu, particularmente, tenho um particular interesse no assunto: arquiteturas mais escaláveis e modulares com microserviços na nuvem. Acho que a maturidade do Kubernetes (e sua versão gerenciável: GKE – Google Container Engine) é um passo importante para termos uma base mais sólida na implementação dessas arquiteturas.

Vida longa ao Kubernetes e que venha o GA (general availability) do GKE logo!! 🙂

“Here’s what I think I can do”

Eu estava voltando de um cliente hoje e ouvindo o audiobook do livro “In the Plex” de Steven Levy no carro quando ouvi algo que mexeu comigo. Ao falar de como o Larry Page (um dos fundadores da Google) era visto em Stanford na época da sua faculdade, o autor menciona que havia um espectro de pensamento entre os estudantes. De um lado, a maioria, que pensava: “What thesis should I work on?“. Do outro, estava Larry Page com uma indagação diferente: “Here’s what I think I can do“.

Esse tipo de pensamento muda tudo e é algo que está profundamente conectado a um incômodo que eu venho tendo cada vez mais forte: eu vejo a comunidade de engenheiros de software (pelo menos no Brasil, no Vale do Silício me parece diferente), de modo geral, muito preocupada em aprender novas tecnologias, em aspectos teóricos, na forma e beleza do que estão produzindo e pouca preocupação e energia em como transformar o mundo que vivemos colocando em prática esses conhecimentos. A cada evento ou lançamento tecnológico, vem uma inquietação interna que consome a alma dos nossos bravos developers: preciso colocar as mãos nessa nova tecnologia, fazer labs, posts, meetups, vídeos, festas temáticas, camisetas, stickers para notebooks e, principalmente, me projetar para a comunidade.

Na verdade eu não sou contra nada disso e faço (ou tento fazer) muitas das que mencionei no parágrafo anterior. Agora, o ponto é: fazer tudo isso tendo um problema real de negócio, um propósito humano ou comercial por trás disso tudo não é muito mais interessante? Olhar as novidades e possibilidades tecnológicas mas sempre pensando “como será que isso resolve um problema e como eu posso contribuir com a solução?” me parece o melhor caminho para promover inovação e até mesmo para encaminhar o seu desenvolvimento profissional. Quem nunca ficou ansioso com centenas de novas tecnologias que quer aprender e frustrado por não conseguir fazê-lo por falta de tempo ou foco? Até passar um tempo e boa parte dessas tecnologias ficarem irrelevantes pois parece que nunca foram lá essas coisas mesmo.

Há duas semanas eu fui em um evento de startups aqui em São Paulo que tinha foco em universitários empreendedores. Havia 10 grupos participando do evento. 100% das iniciativas de empreendedorismo eram digitais: criação de mobile ou web apps, 7% dos participantes vindos da área de Computação. A grande maioria vindo de Administração ou outros cursos e engenharias. Percebem o incômodo?

Para finalizar minha reflexão uma sugestão e provocação: inverta o seu pensamento. É muito comum hoje pensarmos “quero mexer com essa a tecnologia, vou pensar em algo que justifique isso”. A inversão é “tenho um propósito que me motiva, essa tecnologia me ajuda a resolver o meu problema?”. E para desenvolver o seu propósito, pense sempre: here’s what I think I can do 😉

Abraços!

Windows Server em GA na GCP

Depois de um período em alpha e beta, os servidores Windows estão finalmente em GA (General Availability, disponível de modo definitivo, com SLA, suporte etc) na Google Cloud Platform (GCP). Apesar de eu nunca ter sido fã de Windows, nem no desktop nem muito menos para servidores, acho que é um passo de vital importância para consolidar a oferta de IaaS da Google.

Há um tempo eu comentei que IaaS é commodity, e reforço minha posição aqui. O anúncio das máquinas Windows na nuvem da Google fecha talvez o único gap realmente relevante que faltava na oferta da empresa. Fico ansioso de ver as novidades onde eu acredito que esses fornecedores vão poder se destacar: serviços gerenciados. Espero em breve escrever sobre novidades no App Engine por aqui 😉

Veja mais em: http://googlecloudplatform.blogspot.com.br/

Abraços!

IaaS é commodity. Qual o real benefício da nuvem?

No dia 16/06 aconteceu o Google Next – evento sobre Google Cloud Platform (GCP) – em várias cidades como Nova Iorque, Tokyo e São Francisco com live stream para o mundo inteiro. O keynote foi bem interessante e me fez refletir sobre o ponto que estamos no assunto cloud computing e o que esperar do futuro próximo. Compartilho abaixo algumas das  minhas reflexões:

1. Acabou o medo de se adotar infraestruturas e plataformas em nuvem

Pelo menos para cenários como hospedagem de aplicações não-críticas, campanhas de marketing, big data ou aplicações digital / mobile. Há mais de 5 anos trabalhando quase que exclusivamente com o assunto, é nítida para mim a diferença de comportamento e aceitação de empresas de todos os tamanhos com o assunto. Hoje eu vejo empresas de todos os tamanhos e nacionalidades tratando o assunto com total naturalidade. A exceção acontece em alguns poucos segmentos mais conservadores ou fortemente regulados, mas mesmo assim movimentos significativos já acontecem em setores financeiros e farmacêuticos, por exemplo.

2. IaaS está se tornando commodity

Principalmente se considerarmos os principais provedores mundiais de nuvem. E commodity no sentido mais puro da palavra: pouca diferenciação por valor agregado e maior diferenciação por preço. Apesar do entusiasmo das empresas ao moverem os seus primeiros sistemas para um servidor rodando na nuvem, elas estão apenas no primeiro passo da jornada. Cada dia mais, a decisão de adotar GCP, AWS ou Azure – para IaaS – se parece com a decisão de ter um chip Vivo, Claro ou TIM. Algumas diferenças aqui e ali em termos de funcionalidades, mas condições comerciais e preços acabam sendo os principais fatores de decisão.

3. A diferenciação em potência de 10 acontece com serviços gerenciados

O salto de 10x de agilidade e agressividade de posicionamento digital vai acontecer para os que souberem fazer o melhor uso dos serviços gerenciados em nuvem. São eles que vão permitir criar coisas incríveis como aplicações com escalabilidade infinita em semanas, analisar e gerar insights a partir de volumes estrondosos de dados, manter sincronização real-time entre dispositivos etc, tudo isso com foco apenas em desenvolvimento. Isso significa colocar o foco e energia da sua empresa no local correto: gerar valor. E não em complexas arquiteturas lógicas e de infraestrutura. E aqui teremos um dilema que as empresas vão precisar lidar: vendor lock-in. Serão 3 opções:

IaaS para ter total controle com menor produtividade de desenvolvimento e maior custo de gerenciamento e operações;
PaaS e Serviços Gerenciados para ter maior produtividade e agilidade, muitas vezes sem necessidade de investimento em operações, utilizando soluções e arquiteturas definidas pelo provedor (vendor lock-in);
CaaS (Containers-as-a-Service) para ficar no meio termo, conciliando controle e abstração de ambiente de execução e escalabilidade. Por enquanto, tecnologia ainda amadurecendo;

Meu palpite é que grandes empresas vão considerar as três opções e decidir a melhor sob demanda.

E a Google Cloud Platform nesse cenário?

Vejo com bastante entusiasmo a posição atual da GCP nesse cenário desenhado. O evento “NEXT” mostrou como empresas como JDA e PwC estão adotando a plataforma no mundo corporativo com sucesso. Depoimentos de executivos dessas empresas deixaram clara a consistência de performance, escalabilidade e segurança da plataforma. E o mais interessante é que a GCP possui ofertas para todos os cenários que mencionei:

IaaS com Google Compute Engine: para hosting de aplicações legadas ou novos desenvolvimentos que demandem maior controle de código e infra;
PaaS com Google App Engine: para sistemas com alta-disponibilidade e escalabilidade e foco em produtividade e desenvolvimento;
Containers com Google Container Engine e Kubernetes: para criação e gerenciamento de cluster de conteineres;
Big Data com Big Query, Cloud Storage, Dataflow, Pub-sub etc: serviços gerenciados para processar, armazenar e analisar altos volumes de dados em tempo real;
Firebase e Cloud endpoints: para criar aplicações móveis utilizando serviços em nuvem e com sincronização em tempo real de todos os dispositivos conectados;

O distanciamento com relação a concorrentes vai acontecer para quem conseguir explorar ao máximo o que as plataformas de nuvem têm a oferecer. E principalmente para quem explorar os serviços gerenciados oferecidos por estas plataformas. Como disse o executivo da PwC no evento: “_Google is the original cloud company_”. Eu concordo. Na minha visão, a Google lidera indiscutivelmente em visão e execução de entrega destes serviços.