Voltar para Notícias para desenvolvedores

Código Aberto da Meta: Uma análise do ano de 2022

17 de janeiro de 2023PorPhilip Bell

O ano passado foi um período de comunidade e conexões humanas renovadas para muitas pessoas em todo o mundo. Esse tema foi estendido para o trabalho de código aberto na Meta, à medida que colaboradores, usuários e organizações se reuniram para promover o impacto do código aberto.

Os projetos divulgados pela Meta abordam as necessidades e os desafios dos desenvolvedores, desde a potencialização da IA de última geração até a criação de experiências e apps da web inovadores e acessíveis aos usuários, ao mesmo tempo que a comunidade de código aberto fornece um canal para compartilhar e desenvolver tecnologias de modo colaborativo.

Esta publicação explora os destaques do Código Aberto da Meta e como a Meta ajudou a construir a comunidade de código aberto em 2022. Ela também aborda atualizações sobre ferramentas e o código que a Meta e os seus engenheiros compartilharam, incluindo importantes desenvolvimentos para o PyTorch, o lançamento do React 18 e a introdução do cliente de controle de fonte do Sapling e muito mais.

Explore as seções:

Transferindo projetos para fundações: expandindo a abertura, a colaboração e o alcance

Perspectivas e contribuições diversificadas fortalecem o código aberto, e a Meta está sempre buscando oportunidades de alcançar metas compartilhadas por meio do trabalho com fundações existentes. No ano passado, uma série de projetos da Meta foi transferida para uma fundação a fim de democratizar ainda mais os recursos de código aberto oferecidos e expandir a sua governança.

Em setembro, a estrutura do PyTorch para IA se uniu à Linux Foundation, por meio da formação da nova PyTorch Foundation. A diretoria, que inclui líderes do setor, pretende se expandir com o passar do tempo e servirá como um administrador para trabalhos de divulgação, bem como marketing de negócios e produto da tecnologia.

A imagem mostra que a Meta tem 1.034 projetos de código aberto ativos e não arquivados desde 2022.

O Jest começou a ser transferido para a OpenJS Foundation no ano passado. O projeto de código aberto é uma das estruturas de teste do JavaScript mais usadas. As metas para a fundação incluem deixar o projeto mais acessível para novos usuários e desenvolver novos recursos.

A Meta tem o compromisso de estimular ainda mais a inovação em projetos de código aberto doados para fundações. Em 2022, a Meta intensificou a colaboração com a Presto Foundation, mudando para o nível de associação mais alto da fundação. A Meta também patrocinou o PrestoCon Day e o PrestoCon, a primeira conferência presencial da fundação.

Promovendo o impacto por meio da divulgação do código aberto

Membros da equipe do Código Aberto da Meta reunidos na conferência All Things Open em outubro de 2022.

Legenda: Os Developer Advocates da Meta e outros membros da equipe do Código Aberto da Meta na conferência All Things Open em outubro do ano passado.

Os engenheiros e Developer Advocates da Meta foram em busca de oportunidades impactantes para divulgação ao longo do ano. Eles aprenderam com especialistas e organizações de toda a comunidade e compartilharam conhecimento sobre projetos de código aberto lançados pela Meta.

Explore conteúdo criado pelos Developer Advocates da Meta:

Os Developer Advocates e membros da equipe do Código Aberto participaram do 10º aniversário da conferência All Things Open para representar o Código Aberto da Meta. Antes do evento, o diretor de engenharia, Killian Murphy, compartilhou algumas considerações sobre como a Meta está trabalhando para quebrar barreiras para os colaboradores do código aberto e se esforçando para fazer com que o código aberto esteja disponível para todos. A Meta tem o compromisso de estabelecer um padrão alto para acolher todos que desejam usar e contribuir com as tecnologias que tiveram o seu código aberto.

A imagem diz: "Em uma época em que a comunidade de código aberto está maior do que nunca, a Meta está otimista em relação ao potencial do código aberto de se tornar mais inclusivo e, por sua vez, mais empoderador". Killian Murphy, diretor de engenharia

A equipe do Código Aberto da Meta também se reuniu em um estande na conferência All Things Open para divulgar os projetos da Meta e se encontrar com desenvolvedores que usam essas tecnologias na área de pesquisa e na indústria. Engenheiros e Developer Advocates também falaram no evento.

Explore as palestras da equipe de Developer Advocates na All Things Open de 2022:

Publicações no blog da equipe do Kernel Linux na Meta destacaram o seu trabalho contínuo com desenvolvimento e pesquisa. As publicações incluíram como se juntar à comunidade do Linux. 11 membros de toda a equipe do Kernel da Meta deram palestras na Linux Plumbers Conference de 2022. Você pode ver a lista completa das palestras no site do evento. A equipe também lançou a série "Meet the Developers" com vários engenheiros da Meta que se apresentaram na conferência, a qual abordou tópicos como uma visão geral da experiência do usuário e dos hooks de rede do BPF na Meta, aplicação de patches durante o uso do Kernel em escala e muitos outros.

A imagem mostra que havia 252 novos repositórios e projetos de código aberto publicados pela Meta em 2022.

A equipe do kernel Linux da Meta apoia a condução do kernel de maneira que melhora o seu uso na Meta e aumenta a integridade da comunidade inteira. A equipe trabalha de perto com a comunidade upstream do kernel Linux e garante que os projetos sejam desenvolvidos para inclusão upstream e cheguem upstream primeiro ao kernel.

No blog do Código Aberto da Meta, a história do colaborador da Hasher-Matcher-Actioner destacou o trabalho dos ganhadores da MLH Fellowship,Franklin Phan e Samyak Mehta; a Meta continuou apoiando o programa de estágio em parceria com a GitHub e a Major League Hacking.

A série de histórias dos colaboradores da Meta compartilhou conquistas e desafios de contribuir com o código aberto juntamente com as boas práticas para participar da comunidade. Explore as publicações do blog de 2022:

Criando entusiasmo na comunidade de código aberto para VR/AR

O objetivo do metaverso é ser um lugar onde as pessoas podem se encontrar e interagir de maneiras novas e inovadoras. Para criar um metaverso que seja bem-sucedido para todos, ele precisa ser baseado em uma fundação de comunidade forte e incorporar ideias diversas.

As comunidades de código aberto, com a sua inerente mentalidade de "construir juntos", são um ponto de partida natural para ajudar a conduzir conversas importantes que modelarão o metaverso, e os Developer Advocates da Meta compartilharam isso na conversa. Navyata Bawa continuou a série "Fostering Inclusivity in VR", na Conferência global Women in Tech Network em junho, e explorou como os apps de VR podem ser desenvolvidos com acessibilidade e inclusão conforme o trabalho em VR/AR continua crescendo.

No episódio, "Here’s what it’s like to develop VR at Meta" do podcast Stack Overflow, a gerente de Developer Advocates, Cami Williams, compartilhou como laboratórios de realidade podem aprender e construir uma ponte com a comunidade do React, juntamente com algumas ferramentas e recursos a fim de começar a desenvolver para VR.

A imagem diz: "Crie a diversidade de dentro para fora. Não somente com usuários e testadores, mas também entre os desenvolvedores. Apenas assim conseguiremos desenvolver apps que atendam e representem com precisão um grande público, aprendendo com essas experiências diversas vividas." Navyata Bawa, Developer Advocate, Reality Labs

Como parte do compromisso da Meta com a expansão da presença da comunidade e do fornecimento de ferramentas para fazer criações dentro do ecossistema de VR, amostras de demonstração do Quest foram lançadas no GitHub. Para ajudar a divulgar essas ferramentas, Bawa criou a série "Building Your Multiplayer VR Experience" para a amostra do Oculus Platform SDK e Unity SharedSpaces, bem como o tutorial "Construindo interações intuitivas para VR" para as amostras do Interaction SDK e doFirst Hand.

A publicação do blog "Summer of Open Source: Moving Virtual Reality Forward" apresentou algumas das mais recentes inovações no espaço da Meta e destacou uma entrevista com o engenheiro de software Eric Le Saux no episódio 14 do podcast The Diff. Confira a lista de reprodução de AR e VR para ver as conversas mais recentes com desenvolvedores da Meta, tutoriais e recursos neste espaço.

Avanços em IA/ML

2022 foi um grande ano para o PyTorch e novos modelos da IA da Meta desenvolvidos para empoderar todos, desde pesquisadores até criadores. Veja a seguir alguns exemplos de como a Meta avançou no treinamento, na otimização e na implantação de modelos de IA.

Atualizações do PyTorch

Depois de ser transferido para a PyTorch Foundation (sob a Linux Foundation), o PyTorch 2.0 foi apresentado na PyTorch Conference, realizada em Nova Orleans, em dezembro. Os números apresentados na conferência mostram o nível de crescimento do PyTorch e da sua comunidade em 2022: 63% das implementações de pesquisa de IA optaram por usar o PyTorch. Já o número de repositórios do GitHub usando o PyTorch cresceu em 45% em relação ao ano anterior, de acordo com os dados do GitHub.

O PyTorch 2.0 traz anos de pesquisa conjunta para melhorar o seu desempenho de compilador enquanto mantém a experiência do PyTorch que os usuários já conhecem e amam. As atualizações incluem acelerações de uma linha com o torch.compile, 100% de compatibilidade retroativa e um compilador exclusivo do Python.

Descubra mais sobre o conteúdo de 2022 do PyTorch dos colaboradores e Developer Advocates da Meta:

Modelos de IA da Meta alcançam novos marcos

Estruturas de otimização e treinamento de modelos ajudam a criar modelos de IA que podem assumir tarefas do mundo real de maneiras que complementam as habilidades das pessoas. Essa reciprocidade é evidenciada na tradução de idiomas em que modelos de IA podem aprender centenas de idiomas, mesmos aqueles falados por somente algumas pessoas. Em 2022, a IA da Meta apresentou o modelo de IA No Language Left Behind que traduz 200 idiomas diferentes com resultados avançados juntamente com um conjunto de dados de avaliação e um respectivo código aberto. Esses trabalhos de código aberto podem ajudar a melhorar modelos para traduzir documentos importantes e preservar idiomas que têm poucos dados de registro.

A imagem mostra que, em 2022, 186.210 commits foram feitos nos repositórios públicos da Meta, considerando que 159.723 foram internos e 26.487 externos.

O CICERO com código aberto da Meta, é o primeiro agente de IA a alcançar um desempenho em nível humano no jogo complexo de estratégia de linguagem natural Diplomacy*. A integração de um modelo de linguagem com algoritmos de aprendizado de reforço e planejamento fornece ao CICERO a capacidade de raciocinar e criar estratégias com relação às motivações dos jogadores, além de usar a linguagem para chegar a acordos para atingir objetivos compartilhados, formar alianças e coordenar planos. Aconteceram muitos outros momentos em IA e no código aberto que não são abordados aqui, e mais histórias relacionadas à IA podem ser encontradas no Blog de IA da Meta.

Explore outros avanços da IA da Meta em 2022:

*Todos os direitos do Diplomacy são de propriedade da Hasbro, Inc.

React 18 e outras atualizações para web/dispositivos móveis

Além das notícias sobre o Jest começando a sua mudança para a OpenJS Foundation, o Jest 29 foi lançado em agosto. O projeto ultrapassou 40.000 estrelas no GitHub no segundo semestre deste ano. Outro momento importante para web e dispositivos móveis foi o lançamento do React 18, com suporte do grupo de trabalho público do React 18. Isso incluiu atualizações para renderização de simultaneidade, com recursos adicionais e APIs de suporte. Confira os trabalhos para atualizar o Beta da documentação do React juntamente com o lançamento, incluindo a documentação dos Efeitos e o início rápido.

Em setembro, as equipes de tecnologias do React da Meta se juntaram aos principais colaboradores e mantenedores de biblioteca para a React Native Core Contributor Summit. As discussões na cúpula exploraram os ecossistemas atuais e futuros do React Native e Metro, e os participantes estabeleceram iniciativas ativas para melhorar o ecossistema do React Native.

A imagem mostra que 7.353 colaboradores no total fizeram parte dos projetos de código aberto da Meta em 2022. Foram 3.727 colaboradores internos e 3.626 colaboradores externos.

Entre outros projetos que tiveram código aberto da Meta para web e dispositivos móveis, o Js-flipper é um pacote do NPM que expõe um cliente do Flipper aos apps JavaScript e permite que os desenvolvedores criem facilmente novos plugins do Flipper ou reutilizem os existentes. Outro projeto, o MemLab, fornece testes de memória do JavaScript que automatizam a detecção de vazamentos de memória.

Por fim, os desenvolvedores da Meta compartilharam insights sobre como criaram com as tecnologias de código aberto para web e dispositivos móveis e desenvolveram para elas. Uma publicação do blog investigou um relatório de bugs do Hermes e como esse relatório levou a equipe de resposta a programar uma exploração que executou a versão de 1993 do Doom dentro do Hermes. Outra destacou um novo modo de exibição da web baseado no Chromium, que fornece uma experiência melhor para usuários do navegador no app do Facebook para Android.

Explore a série Meet the Developers: Mobile Edition:

Ferramentas para desenvolvedores: controle de fonte, ferramentas de documentação e outros avanços

Os desenvolvedores da Meta usam ferramentas de código aberto desenvolvidas na empresa para apoiar a sua infraestrutura. Essas ferramentas são muitas vezes testadas e melhoradas no trabalho diário na Meta, resultando em projetos de código aberto que atendem aos desafios únicos de escala e velocidade.

Em 2022, a equipe do Sapling apresentou um novo cliente de controle de fonte compatível com Git. Com usabilidade e escala em mente, o Sapling é um sistema de controle de fonte que tem como objetivo compartilhar o que os desenvolvedores na Meta refinaram por mais de dez anos para inspirar trabalho contínuo nessa área e mostrar aos desenvolvedores um futuro promissor para sistemas de controle de fonte. Agosto foi o mês de lançamento do Docusaurus 2.0, um gerador de site estático eficiente, ampliando o seu uso do React e suporte a sites para além da documentação.

A imagem diz: "Em 2022, o Código Aberto da Meta ganhou mais 133.854 estrelas no GitHub, levando o número total para 1.563.562 stargazers."

Entre outras atualizações em projetos, um novo detector de bloqueio para Android, a inclusão de importações lazy no Cinder e uma prévia do editor de última geração OpenStreetMap, o RapiD 2.0. Outro projeto, o Hermit, implementou um sistema operacional prático e determinista que permite aos desenvolvedores resolver problemas como testes flaky e controle para entradas implícitas, como programação de tópicos, geração aleatória de números e muito mais.

Uma das publicações gerais feitas compartilhou como as ferramentas para desenvolvedores da Meta funcionam juntas como parte do fluxo de trabalho de um desenvolvedor , muitas das quais têm código aberto. Isso incluiu projetos, como o sistema de compilação Buck, o SuperConsole, EdenFS (um sistema de arquivos estritamente integrado ao Sapling), a estrutura de testes Jest e outras ferramentas.

Descubra outros artigos e lançamentos que abordam ferramentas para desenvolvedores feitos em 2022.

Dados: atualizações no Velox, Presto e RocksDB

A biblioteca de código aberto do C++, o Velox, foi anunciada em agosto de 2022. O Velox é uma evolução em redução do consumo de energia e ganhos de desempenho para mecanismos de dados. A biblioteca usa execução nativa e está sendo integrada a muitas ferramentas da Meta como uma camada unificada de mecanismo de execução.

O Velox foi desenvolvido para reduzir significativamente a manutenção de código, além de contar com aumentos no desempenho de 2x a 10x em vários casos de uso. Saiba mais sobre a comunidade crescente do Velox e a sua inovadora refatoração de como os mecanismos de big data e bancos de dados executam consultas de dados no artigo "Velox: Meta’s Unified Execution Engine", publicado na VLDB 2022.

Somente no ano passado, o projeto de código aberto do Presto no GitHub teve 21 lançamentos, ganhou um pouco menos de 2.000 novas estrelas, teve 600 novos forks e 152 novos colaboradores. A Presto Foundation organizou o seu primeiro evento presencial, a PrestoCon, no Museu da História do Computador em Mountain View, na Califórnia, onde Tim Meehan fez uma apresentação de abertura como Presidente do TSC, e Philip Bell anunciou os rumos da Presto para o ano seguinte.

Em dezembro, a equipe do RocksDB retomou o seu encontro presencial anual na sede da Meta em Menlo Park, reunindo engenheiros da Meta e colaboradores externos para discutir casos de uso, últimas inovações e aspirações para o projeto.

Segurança e hardware

A segurança e o hardware desempenham um importante papel no suporte ao trabalho dos desenvolvedores. De ferramentas de depuração a hardware de rede, o código aberto da Meta pode ajudar a garantir que sistemas e código sejam robustos, seguros e confiáveis.

No início do ano, a história de um colaborador compartilhou o trabalho realizado na Pysa, uma ferramenta de análise estática do Python no projeto de verificação do Pyre. A história destacou como desenvolver comunidades de código aberto fortes pode ter um impacto direto no sucesso de projetos, como o Pysa, resultando em maior segurança para o código.

No hardware, o Precision Time Protocol foi implantado nas redes e nos data centers da Meta. A tecnologia fornece novos níveis de precisão e exatidão para sincronização de relógio em sistemas distribuídos. Juntamente com a Open Compute Project, o hardware e o software desenvolvidos para apoiar o protocolo tiveram o seu código aberto para apoiar a adoção no setor.

Em 2022, a Meta deu seguimento ao trabalho com código aberto em produtos, como o WhatsApp e o Messenger. O Code Verify, que teve o seu código aberto em março, é uma extensão de navegador que permite aos desenvolvedores proteger a integridade do código no WhatsApp Web e no Messenger visualizando se o código em uma página da web pode ter sido adulterado ou alterado.

Um agradecimento à comunidade de código aberto

Esta publicação abordou apenas alguns dos mais de 1.000 projetos de código aberto da Meta e as suas atualizações realizadas no ano de 2022. Para explorar mais desses projetos de código aberto, visite o site do Código Aberto da Meta e nos siga no Facebook, no Instagram, no Twitter e no LinkedIn. Um especial agradecimento para a comunidade de colaboradores, usuários, organizações e parceiros que colaboram com a Meta em projetos de código aberto.

Na Meta, acreditamos que o código aberto acelera o ritmo da inovação no mundo. Ao compartilhar o nosso código, a nossa pilha e até mesmo os nossos projetos de hardware, esperamos avançar o setor, dando a outras empresas e indivíduos a chance de usar as nossas soluções para dimensionar com mais rapidez e desenvolver grandes produtos.

Esta publicação foi escrita em colaboração com os Developer Advocates da Meta, Dmitry Vinnik, Suraj Subramanian e Cami Williams.