Feliz 1º aniversário, Snyk Code!
Frank Fischer
6 de maio de 2022
0 minutos de leituraSnyk Code está completando um ano! Alcançamos muitos marcos nos últimos 12 meses e, hoje, convidamos você a relembrar essa trajetória, comemorar e vislumbrar conosco o futuro da segurança de código.
De DeepCode a Snyk Code
Snyk Code é impulsionado por seu mecanismo exclusivo e por processos de ponta, baseados em pesquisa. Suas raízes remontam ao movimento “big code”, que começou em 2013.

Big code é um termo usado para descrever a crescente disponibilidade de programas em repositórios de código aberto. Por exemplo, no início de 2016, o GitHub hospedava 30 milhões de repositórios públicos. Quatro anos depois, em março de 2020, esse número havia chegado a mais de 128 milhões.
Desde 2007, círculos acadêmicos debatem como o big code pode impulsionar a programação ao aproveitar o conhecimento da comunidade global de desenvolvimento.
No entanto, havia vários obstáculos. O big code herda todos os problemas do big data e outros decorrentes da natureza do código-fonte, como comportamentos de execução infinitos e a necessidade de aproximação. Tratar o código-fonte como texto simples — como fazem as ferramentas modernas de machine learning — é simplista demais.
A base do Snyk Code foi desenvolvida no SRILab do professor Martin Vechev, na Escola Politécnica Federal Suíça (ETH), em Zurique. A partir de 2013, o doutorando Veselin Raychev (hoje Head of Artificial Intelligence da Snyk), o professor Vechev e outros pesquisadores conduziram estudos de machine learning e criaram protótipos de sistemas baseados em IA. Esses sistemas aprenderam com programas de código aberto ao combinar análise estática de código baseada em raciocínio simbólico com métodos de machine learning orientados por dados.
Raychev recebeu a medalha da ETH Zurique por sua tese de doutorado de destaque, além da prestigiosa menção honrosa do ACM Doctoral Dissertation Award, por sua tese sobre machine learning aplicado a big code. Ele foi o terceiro europeu (e o primeiro búlgaro) a receber esse reconhecimento em 40 anos.
Com base nas descobertas de sua tese de doutorado, Raychev uniu forças com Vechev e Boris Paskalev (hoje Head of Product, AI for Code da Snyk) para fundar a DeepCode em 2016, com o objetivo de transformar a pesquisa em uma ferramenta acessível.
Um dos desafios de aprender com big code é a escalabilidade. É preciso processar grandes volumes de código do mundo real com rapidez suficiente para executar várias iterações. A DeepCode contribuiu para várias das inovações que transformaram o setor e que temos hoje. O machine learning, por exemplo, é impulsionado pela capacidade de realizar análises semânticas profundas sem comprometer a velocidade. Esses recursos aprimorados permitiram que o mecanismo de ponta da DeepCode criasse e mantivesse o conjunto de regras que sustenta sua base de conhecimento cada vez maior e mais precisa. Para saber mais, confira nossa publicação no blog sobre as tecnologias por trás do Snyk Code e veja exemplos de publicações e sistemas de pesquisa.

A DeepCode buscou simplificar a análise semântica profunda, ocultando as complexidades e oferecendo uma ferramenta intuitiva e acessível — e, a julgar pelo feedback de centenas de milhares de desenvolvedores, conseguiu. A velocidade das verificações e a confiabilidade dos conjuntos de regras foram fundamentais para o sucesso da DeepCode. Para conquistar uma base global de usuários, faltava uma abordagem centrada em desenvolvedores, algo que o mecanismo baseado em IA da DeepCode atendeu plenamente. O machine learning permitiu que a DeepCode explicasse suas descobertas aos usuários e apresentasse exemplos de correções recomendadas, ajudando os desenvolvedores a entender por que o código estava vulnerável e como corrigi-lo.
Quando Snyk e DeepCode começaram a conversar sobre unir forças, em 2020, tudo se encaixou. O mecanismo da DeepCode era um avanço tecnológico que transformou profundamente o cenário da análise estática. A Snyk tinha uma plataforma técnica madura, experiência em segurança, equipes consolidadas de vendas e marketing e uma rede internacional. Acima de tudo, as duas empresas priorizavam a cultura interna e uma mentalidade que coloca os desenvolvedores em primeiro lugar. Assim, a DeepCode passou a fazer parte da Snyk.
Após alguns meses de trabalho intenso, o Snyk Code foi criado e integrado à plataforma Snyk, usando o mecanismo da DeepCode e revisando o conjunto de regras existente. A equipe — reforçada pelos principais pesquisadores de segurança e desenvolvedores da plataforma Snyk — adicionou elementos como conteúdo selecionado e abrangente e visualização do fluxo de dados, além de preparar o produto para funcionar na Snyk. Antes mesmo do lançamento beta, o Snyk Code já tinha clientes pagantes. Isso comprovou que o produto atendia a necessidades importantes do mercado e demonstrou a profunda confiança que a comunidade deposita na Snyk, algo pelo qual somos muito gratos. Os clientes existentes tiveram acesso ao Snyk Code no início de 2021 e, em abril, ele passou a fazer parte do programa freemium. No início, foi um pouco difícil escolher uma data para o aniversário do Snyk Code. Havia várias boas opções — quando Snyk e DeepCode uniram forças, quando os clientes existentes tiveram acesso ao produto etc. —, mas decidimos comemorar o dia em que o Snyk Code ficou disponível para todos: 6 de maio.
Snyk Code hoje!

Avançando para os dias de hoje: como está o Snyk Code após um ano de jornada? Confira algumas estatísticas:
Só no último mês, o Snyk Code identificou mais de 2,5 milhões de problemas em mais de 250 mil projetos. Hoje, mais de mil organizações no mundo todo confiam no Snyk Code para analisar seus projetos.
Começamos com três linguagens e agora oferecemos suporte a JavaScript, TypeScript, Java, PHP, C#, Ruby, Python, Swift, Kotlin e Go.
Foram adicionadas integrações com IDEs para Visual Studio Code, IntelliJ, WebStorm, PyCharm, GoLand e Visual Studio.
A inovação contínua tornou possível fazer análises semânticas profundas e sensíveis ao contexto em velocidades de ponta. Nosso mecanismo versátil oferece suporte à segurança de GraphQL e pode detectar e impedir ataques Trojan Source em qualquer linguagem compatível. A lógica do Snyk Code também permite que os desenvolvedores ignorem sugestões que não se aplicam.
A equipe por trás do Snyk Code cresceu enormemente, com vários grupos de engenharia trabalhando no conjunto de regras, no mecanismo, na web e nas integrações com IDEs. Zurique ainda tem um papel importante, mas hoje pessoas de toda a América do Norte, Ásia, Austrália e Europa fazem parte da equipe do Snyk Code.
O desenvolvimento do Snyk Code está dividido em quatro grandes equipes: desenvolvimento do mecanismo, criação e manutenção do conjunto de regras da base de conhecimento, experiência do usuário no front-end e plugins para IDEs. Cada equipe se divide em subequipes, fazendo do Snyk Code um produto importante da plataforma.
No primeiro ano, o Snyk Code foi integrado à plataforma Snyk, estabeleceu uma base sólida de linguagens de programação e IDEs compatíveis, adicionou novos recursos de análise e se consolidou como um dos principais produtos da Snyk. Mas estamos só começando…
O que vem por aí
O Snyk Code é um produto de um ano bastante ativo, e o próximo ano trará mais um grande salto. Confira alguns destaques que vêm por aí:
Relatórios: A TopCoat se juntou recentemente à Snyk e elevará os recursos de relatórios da plataforma Snyk a um novo patamar.
Linguagens: No primeiro ano, o Snyk Code ampliou seu suporte a linguagens de forma impressionante, e vamos adicionar outras, como Swift e Apex. Também adicionamos recursos para acelerar ainda mais o desenvolvimento de regras nas linguagens compatíveis.
Recursos do mecanismo: Estamos nos estágios finais da inclusão de novos recursos que vão ampliar o que você espera dos testes de segurança de aplicações estáticos (SAST).
Integrações com IDEs: Para nós, é prioridade estar onde os desenvolvedores trabalham e apresentar resultados diretamente em seu ambiente de desenvolvimento. No próximo ano, queremos ampliar e fortalecer nossa presença nas IDEs.
Crescimento da comunidade: O Snyk Code é gratuito e pode ser testado em todos os projetos de código aberto, mas a análise SAST ainda está longe de ser comum. Continuaremos trabalhando para oferecer à comunidade o conhecimento e os produtos de que ela precisa.
Recursos do produto: O SAST conecta desenvolvedores, profissionais de segurança e gestores — e cada grupo tem necessidades específicas. Nossa relação próxima com os usuários nos ajudou a identificar desafios concretos e a criar um roteiro para resolvê-los com novos recursos para o produto.
A visão da Snyk: Na palestra de abertura da SnykCon 2021, Guy Podjarny (um dos fundadores da Snyk) apresentou sua visão para o futuro da Snyk. O Snyk Code e seu poderoso mecanismo lógico terão um papel importante na concretização dessas ideias.
O Snyk Code teve um primeiro ano intenso e só vai crescer mais rápido no segundo. Com tantos planos interessantes pela frente, não há momento melhor para experimentar o produto e fazer parte de uma comunidade que coloca os desenvolvedores em primeiro lugar.
Proteja seu código com inteligência de ponta
Conheça toda a gama de recursos de análise estática (SAST) do Snyk Code em apenas 30 minutos.


