Open Source na Globo.com

Open Source na Globo.com

Sempre tive a curiosidade em saber um pouco, pelo menos, do uso do código aberto numa empresa de ponta e tive a oportunidade de entrevistar Rodrigo Senra, desenvolvedor da Globo.com.

Espero que curtam esta pequena entrevista feita por e-mail.

Rodrigo Senra da Globo.com

– Quem é o Rodrigo Senra e qual é o seu papel dentro da Globo.com?

Sou projetista e desenvolvedor de software no cargo de Especialista,  atuante no time de semântica dentro da área de plataformas na Globo.com. No mundo open-source sou mais conhecido pela minha atuação na construção da comunidade open-source relacionada a linguagem de programação Python e tecnologias correlatas. Neste contexto, fiz a primeira tradução do tutorial do tutorial oficial de Python do Inglês para o Português em 2001, organizei a primeira conferência nacional de Python em Campinas 2005, fui membro fundador da Associação Python Brasil em 2007, e fui o primeiro ganhador do prêmio Dornelles Tremea (juntamente com Luciano Ramalho) por contribuições à comunidade Python brasileira em 2011.

No meu site pessoal http://rodrigo.senra.nom.br há mais detalhes, inclusive referências para literalmente mais de uma centena de palestras no Brasil e exterior.

– Como foi a decisão de usar open source como solução em TI na Globo?

Foi fácil. A Globo.com já era uma softhouse aderente ao open-source antes da minha chegada em agosto de 2012, eu simplesmente dei continuidade a essa cultura. Eu diria que no Brasil, a Globo.com é uma importante fonte de projetos open-source, isso pode ser verificado através do Github, pelo link: https://github.com/globocom?query=+only%3Apublic+

– Qual é o processo de escolha, testes e implantação de uma solução open source?

Do ponto de vista de escolha, o processo é o mesmo se a solução for de código fechado. Queremos um código legível, que resolva efetivamente e eficientemente um determinado problema, e que seja bem documentado e que possua suporte se necessário. A diferença é que a maioria das soluções open-source apresenta uma qualidade melhor no código-fonte, uma  maior cobertura de testes, e uma comunidade mais acessível.

Do ponto de vista de implantação, algumas vezes há um custo adicional em liberar um projeto como open-source. Por exemplo, no caso do Brainiak (https://github.com/globocom/brainiak_api e https://twitter.com/brainiak_api) que liberamos recentemente como open-source, foi necessário fragmentar o projeto em dois para isolar informação interna que não pode ser publicada externamente, como senhas para deploy interno ou acesso a bases de dados corporativas.

– Onde existe open source dentro da empresa?

O open-source está em toda parte: nos produtos que tem a cara na Internet (e.g G1, Globoesporte, Techtudo, etc), na plataforma de middleware e backend, no ferramental de deploy da infra-estrutura e até nos sistemas operacionais que executam em nossos servidores (algumas distros de linux foram modificadas para atender a necessidades específicas).

– E seu uso tem alguma discriminação entre os usuários internos?

Não que eu saiba. A Globo.com é um berçário de hackers (não confundir com crackers) onde grandes nomes nascem, crescem e depois se espalham pelo mundo. Neste ambiente, o open-source é visto com muito bons olhos e está no DNA da empresa. Nós seguimos o exemplo de outras grandes empresas que abrem parcialmente sua base de código, como o Facebook e o Netflix. Mas isso não quer dizer, que só código aberto é usado aqui. Por exemplo, eu estou respondendo este e-mail em um Mac Book executando OS X (fechado), e uso o excelente IDE PyCharm (fechado) quando desenvolvo em Python. Outros desenvolvedores usam diferentes combinações incluindo vi e Linux (abertos). Ou seja, existe uma diversidade sadia e preferências individuais são respeitadas.

– Como é formada a equipe e quantas pessoas trabalham com open source?

Eu não tenho números exatos, e tampouco se tivesse não sei se poderia divulgar essa informação com exatidão. O que posso dizer é que certamente há mais de uma centena de desenvolvedores e devops, e praticamente todos tangenciam o open-source em algum momento. Sendo que alguns, se quiserem, podem respirar 100% open-source.

– O sistema operacional que usam é proprietário? Qual?

Nos notebooks de desenvolvimento é possível usar Linux ou Mac OS X. Eu uso Mac, mas tenho VMs com outros sistemas operacionais. Nos servidores, há grande maioria são Linux, com diferentes distros, algumas customizadas. A informação exata de quantos servidores e que versões estão em execução prefiro não revelar, por respeitar uma política de segurança. Mas se procurarem por palestras de integrantes da Globo.com no Brasil e no exterior vão acabar encontrando algumas referências ;o)

– Como você mede a satisfação em usar um código que pode alterar a vontade?

Na minha humilde opinião, para o desenvolvedor de alto nível,  o open-source é sempre uma alternativa mais atraente. É possível aprender com o código-fonte, modificar a matéria-prima para que os objetivos sejam atingidos e os bugs não tem como se esconder.

Agradeço a entrevista ao Rodrigo que nos mostra um pouco do uso do código aberto nas organizações Globo.