Por que a Microsoft anda tão interessada em open source?

Por Carlos Ferreira | 30.03.2016 às 09:32

Embora não seja estranha ao desenvolvimento em esquema open source, a Microsoft sempre se manteve relativamente reservada no que se refere a um abraço um pouco maior à criação compartilhada baseada em código aberto – pelo menos até recentemente. Em um misto de política de boa vizinhança com estratégia mercadológica muito bem ponderada, a companhia tem mostrado interesse crescente no modelo.

Em uma empresa cujo CEO afirmava que licenças como a GPL eram “tumores se espalhando”, tem-se visto novos anúncios de plataformas e de sistemas abertos a fim de favorecer o intercâmbio de informações e de acelerar o desenvolvimento otimizado de software - conforme sempre pregaram os defensores do código aberto. Mas é uma mudança disciplinada, de fato.

Conforme colocou o site TechRadar, a Microsoft tem compartilhado sobretudo softwares/designs pouco ligados aos seus produtos notoriamente geradores de renda. E isso inclui desde a junção de forças com a fundação Eclipse (cuja IDE compete com o Microsoft Visual Studio) até a parceria – incluindo donativos à – Linux Foundation.

.NET, TypeScript, Chakra, R Tools etc.

Embora a lista de softwares tornados abertos pela Microsoft seja constantemente expandida, nomes como .NET, TypeScript, Chakra, R Tools, Service Fabric (Azure) entre outros deixam clara uma certa intenção do quartel-general de Redmond. Afinal, tratam-se, basicamente, de ferramentas intermediárias utilizadas para o desenvolvimento – levando tecnologias da companhia aonde elas normalmente não se encontravam disponíveis, é verdade.

sql server

Em termos mais claros, não há nada ali que, uma vez comercializado para usuários do Windows, tenha subitamente se tornado gratuito. De fato, mesmo o Visual Studio contém, já há um bom tempo, uma versão gratuita para o sistema operacional. “E a versão do SQL Server para o Linux?”, seria uma pergunta razoável. Bem, conforme aponta o referido site, é de se duvidar que o software para banco de dados seja também disponibilizado em código aberto.

“A Microsoft abriu seus códigos-fonte em várias áreas, mas tratam-se de áreas sobretudo isoladas, sem envolver aquelas responsáveis por partes significativas da sua receita hoje”, explicou o vice-presidente do grupo de consultoria Directions on Microsoft, Wes Miller, em entrevista ao TechRadar. “Dessa forma, adotar o código aberto para áreas como essas não representa a grande mudança de direcionamento sobre a qual alguns têm teorizado.”

Difusão estratégica de conhecimento

Trata-se, portanto, da provável adoção do mesmo modus operandi normalmente associado à Apple e também ao Google. Basicamente, uma anuência à difusão estratégica de conhecimento preconizada pelo open source – angariando os frutos da construção de comunidades e esforços de desenvolvimento colaborativos -, mas sem comprometer a receita dos finais de trimestre.

“As áreas da companhia que ainda representam o ‘ganha-pão’ não possuem código aberto – e eu não acredito que isso possa ocorrer em um futuro próximo”, disse o analista.

Uma nova cultura de desenvolvimento

Entretanto, vale notar que mesmo essas mudanças têm menos relação com mudanças de perspectiva da Microsoft do que com uma adequação às mudanças notáveis na cultura do desenvolvimento de softwares. Mudanças certamente embaladas pelo compartilhamento de código em nuvem, algo tornado cada vez mais comum nos últimos anos.

“Como uma companhia, nós estamos mudando para um desenvolvimento bastante aberto e estamos abraçando as comunidades para que nos ajudem a ampliar ainda mais as nossas tecnologias e ferramentas”, disse o responsável pelo desenvolvimento em nuvem do Visual Studio Team, Brian Harry. “Isso tem sido muito visível com o .NET”, acrescenta ele, explicando como as comunidades têm assumido o formado de pequenas unidades de desenvolvimento capazes de “ramificar os códigos e de levá-los a novos lugares”.

.net

Originalmente um framework de software desenvolvido para rodar primariamente no Windows, o .NET não apenas foi levado ao Linux como a celeridade do processo colaborativo ainda culminou em uma versão para o OS X.

O exemplo do TypeScript

Vários projetos baseados em open source conduzidos no interior da Microsoft ajudaram a fomentar o atual abraço (ainda que condicionado) do código livre. Entre os pioneiros, vale nota particular para o TypeScript, por exemplo.

Inicialmente uma ferramenta para JavaScript desenvolvida para uso interno – sobretudo durante o desenvolvimento do Office Online -, a tecnologia acabou disponibilizada a outros desenvolvedores e a outros projetos. Atualmente, o TypeScript é tanto open source quanto open design. “Durante o nosso primeiro ano, nós desenvolvemos grande parte do nosso design atrás de portas bem fechadas”, afirmou o ex-diretor da equipe TypeScript, Jonathan Turner.

typescript

Ele continua: “Era algo secreto, mas não de uma maneira nefasta; isso ocorria simplesmente porque era a forma como nós normalmente lidávamos com o design na Microsoft. Nós tentávamos projetar algo da melhor forma que podíamos para em seguida jogá-lo para o mundo”.

Turner conta que as coisas foram mudando conforme a equipe passou a conhecer melhor a proposta do open source – com a utilização de ferramentas de colaboração como o GitHub (serviço de web hosting compartilhado baseado no controle de versionamento Git). “Em vez de eu mesmo escrever toneladas de especificações nos bastidores e liberá-los para a equipe aqui, nós dissemos, ‘Não, tudo se resume a pedidos de alteração e a relatórios de bugs’.”

Aberto à comunidade

Turner conta que, em seguida, novas adições ao TypeScript foram disponibilizadas publicamente, de forma que qualquer um em uma comunidade poderia comentar e sugerir alterações – indo além da simples disponibilização de documentação de design, portanto.

“Caso você tivesse uma sugestão, caso quisesse uma nova funcionalidade no TypeScript, você poderia chegar e interagir com a equipe dizendo ‘Ei, esta é a minha ideia, e eis o motivo que a torna uma boa ideia’, e caso a equipe dissesse ‘Sim, é uma boa ideia’, então você poderia mandar um pedido de compartilhamento”, contou o ex-líder da equipe de desenvolvimento da tecnologia.

Open source e a nuvem

O processo exemplificado pelo pioneiro TypeScript é, de fato, bastante semelhante ao que tem surgido naturalmente em outros desenvolvimentos colaborativos dentro da Microsoft, como o .NET – cujo design eminentemente aberto sugere que a companhia tem tornado o modelo open source cada vez mais presente em sua cadeia de desenvolvimento.

E há, inclusive, um novo pivô desse processo: o Microsoft Azure. A plataforma de desenvolvimento em nuvem da Microsoft tem se mostrado uma excelente fomentadora do desenvolvimento colaborativo, conforme os engenheiros internos da empresa passam a se envolver com projetos abertos – acomodando mais e mais as propostas e as vantagens do open source.

open compute project

De fato, o Azure abraçou recentemente o Open Compute Project – organização que compartilha designs de data centers entre diversas companhias, incluindo Facebook, Google, Cisco e Apple. Mas isso em uma via de mão-dupla: embora colha as vantagens do design aberto de hardware, a companhia contribui com a sua própria infraestrutura para servidores em nuvem, a Open Cloud Server.

Uma agenda de dez anos

Entre a colheita de vantagens do código aberto e as novas estratégias comerciais, a Microsoft vai aos poucos amadurecendo uma pauta que, desde seus primeiros movimentos, já toma uma década – chegando atualmente a um ponto em que novas propostas relacionadas ao formato têm ganhado espaços cada vez maiores.

“A jornada da Microsoft pelo open source se iniciou há mais de dez anos, e nós temos sido contribuidores significativos e crescentes desde então – sobretudo com relação ao Microsoft Azure, onde nós oferecemos suporte a numerosos modelos de programação open source, e também a bibliotecas e distribuições do Linux”, disse o diretor de tecnologia do Azure, Mark Russinovich, em nota recente.

microsoft azure

Enfim, entre estratégias executivas e o entusiasmo de desenvolvedores adeptos da criação aberta, é fato que a Microsoft tem encontrado seu próprio ponto de equilíbrio – algo não propriamente novo, considerando-se que diversas entidades relevantes do open source mantêm concomitantemente propostas comerciais. Certamente uma expansão disciplinada capaz de alterar drasticamente o horizonte do código aberto ao longo dos próximos dez anos.