A participação em projetos de código aberto pode ser benéfica para as empresas - por que e o que isso oferece

Em setembro , um artigo sobre a importância do código aberto apareceu no site da Harvard Business School (HBS). Seus autores declaram que as empresas de TI que participam de projetos de código aberto e abrem seu software proprietário obtêm uma vantagem competitiva no mercado. Decidimos discutir esse tópico e conversar sobre os prós e contras dessa estratégia .


/ Pexels / Syed Abdullah / PD

Atualização de habilidades


Quando o gerenciamento da empresa permite que os desenvolvedores participem do desenvolvimento de projetos abertos, os funcionários ganham nova experiência e conhecimento prático. Ao mesmo tempo, os desenvolvedores não precisam ser enviados para treinamento ou cursos adicionais. Isso economiza o dinheiro da empresa e os programadores aprendem resolvendo tarefas divertidas e úteis para a comunidade de TI.

A maior parte do código - 85% - é escrita por funcionários de grandes empresas de TI. Entre eles estão Intel, Red Hat, IBM e outros.Os desenvolvedores do primeiro fizeram 13% das alterações nas versões mais recentes do kernel, os especialistas do segundo são "responsáveis" por 7% e a IBM por 4%.

Os programadores dessas empresas observam que trabalhar no kernel lhes permite aprender Linux de dentro para fora, entender os "internos" dos subsistemas e fazer uma contribuição pessoal ao desenvolvimento do maior projeto de código aberto. Posteriormente, eles aplicam as habilidades práticas adquiridas para resolver problemas corporativos.

Acelere o desenvolvimento


Quando um produto corporativo se torna parte do código-fonte aberto (desde que haja uma demanda por esse produto na comunidade de TI), a comunidade gradualmente começa a se formar.

Quando em 2005, o desenvolvedor Luke Kanis criou o aplicativo cliente-servidor Puppet, ele inicialmente planejava atrair usuários através da distribuição gratuita de software. Como resultado, aconteceu - agora 40 mil empresas usam sua ferramenta para automação do gerenciamento de SO, 75 das quais estão incluídas na classificação da Fortune 100.

Aqui, uma regra simples se aplica: quanto mais pessoas participam do desenvolvimento, maior a velocidade dos lançamentos. Tomemos, por exemplo, o Linux - novas versões do kernel deste sistema operacional são lançadas a cada dois meses, e as atualizações para outros sistemas operacionais às vezes precisam esperar vários anos.

Outro exemplo: o Google usa a estrutura de código aberto Angular da empresa e investe no seu desenvolvimento. Quando desenvolvedores da web de terceiros se juntaram ao projeto, o Angular rapidamente adquiriu novas ferramentas e extensões. Todos se beneficiaram disso.

Detecção de bug


A crescente comunidade permite não apenas lançar novas versões de aplicativos mais rapidamente, mas também ajuda a corrigir bugs. Devido ao fato de qualquer pessoa (incluindo especialistas em segurança) poder visualizar o código-fonte do software de código aberto para vulnerabilidades, ele é considerado mais seguro. E essa idéia está cada vez mais encontrando uma "resposta nos corações" de várias empresas.


/ Flickr / Henri Bergius / CC BY-SA

Em agosto deste ano, Elon Musk postou no Twitter um recorde de intenção de abrir o software de segurança automóvel Tesla.

Os críticos acreditam que essas declarações parecem uma jogada de marketing, alegadamente para que Ilon esteja tentando impor seu padrão de segurança a outros fabricantes de veículos não tripulados. Mas há quem pense que essa solução ajudará a aumentar a segurança dos sistemas Tesla. Uma nova aparência de desenvolvedores de terceiros permitirá que você faça alterações e melhorias no código. Portanto, o produto final será mais confiável para proteger os proprietários de automóveis.

Voar na pomada


Nem todas as empresas estão prontas para publicar suas soluções proprietárias no GitHub. Eles estão convencidos de que, se você transferir o projeto para o código aberto, poderá perder sua vantagem competitiva. Há uma chance de que os análogos apareçam e o projeto não seja mais único. Por exemplo, a Cisco se recusa a tomar suas decisões em aberto porque não deseja que o "ingrediente secreto" de seus produtos seja disponibilizado ao público.

Se a empresa aceita os riscos e ainda deseja trazer o software para o código aberto, basta abrir o software e assistir ao seu desenvolvimento falhará.
"Se uma organização quiser trazer sua solução para o código aberto assim, haverá pouco sentido", diz Sergey Belkin, chefe do departamento de desenvolvimento de serviços de aluguel de infraestrutura na nuvem 1cloud.ru . - Para que a comunidade se forme em torno da nova solução, você precisará fazer o mesmo que para produtos comerciais.

Primeiro, entenda por que sua empresa precisa e, em seguida, elabore um roteiro e elabore uma estratégia para o desenvolvimento de uma solução de software. ”

Qual é o resultado


As opiniões sobre se as empresas devem se envolver em projetos de código aberto variam. Alguns vêem apenas vantagens nisso: a capacidade de "bombear" as habilidades dos funcionários, acelerar o crescimento da popularidade do produto e ajudar a comunidade e o setor de TI. Outros não têm pressa em investir recursos em código aberto por medo de "se perder" no mercado.

Há alguma verdade em ambas as declarações, mas a maioria da comunidade de TI está convencida de que os benefícios do suporte a projetos de código aberto superam as falhas. No entanto, as empresas precisam entender os motivos exatos pelos quais desejam se tornar parte da comunidade de código aberto.

Sobre o que escrevemos em um blog corporativo:

Source: https://habr.com/ru/post/pt431430/


All Articles