6 lições que aprendemos ao criar um mecanismo de busca para desenvolvedores

6 lições que aprendemos ao criar um mecanismo de busca para desenvolvedores

Isenção de responsabilidade: esta postagem do blog foi publicada antes dos últimos avanços em IA da You.com e pode não refletir nossos recursos atuais. A You.com se transformou de um mecanismo de busca em um assistente de IA. Com uma base em pesquisa e a experiência em IA da equipe, a You.com estava perfeitamente posicionada para aprimorar os LLMs com acesso ao vivo à Internet para tratar de questões relacionadas a alucinações e transparência. Dessa forma, a You.com é capaz de realizar tarefas que vão desde a pesquisa on-line até a redação de uma redação, a depuração de códigos, a criação de arte digital, a solução de problemas complexos e muito mais. Saiba mais sobre como tirar o máximo proveito do You.com.

A You.com também oferece sua tecnologia principal por meio de um conjunto de APIs de autoatendimento. Obtenha detalhes completos sobre a API YOU.

A pesquisa rápida de códigos é uma superpotência. Mas as pesquisas de código são difíceis e demoradas, muitas vezes exigindo 85% mais edições nas consultas do que as pesquisas sem código [1]. É por isso que decidimos criar um mecanismo de busca para desenvolvedores. Como era de se esperar, tivemos que lidar com vários problemas ao criar um mecanismo de busca de nicho complexo; ao longo do caminho, aprendemos algumas lições.

Os melhores produtos nascem de experiências dolorosas

Os desenvolvedores usam muitos métodos de pesquisa diferentes para encontrar o que precisam. Eles criam novas consultas e modificam as existentes, anexam sites aos resultados da pesquisa, usam filtros, examinam a documentação indexada e trocam os termos de pesquisa até encontrarem o tipo de arquivo de que precisam. Se persistirem nesse ciclo de criação e modificação de consultas, acabarão encontrando o que precisam. Cada clique e cada carregamento de site é uma ineficiência que tira tempo da solução de problemas de codificação e da conclusão de tarefas de codificação.

Nossa comunidade de desenvolvedores que vivia nesse doloroso ciclo de pesquisa de código sempre perguntava por que não havia um mecanismo de pesquisa fácil de usar que extraísse todos os melhores recursos de codificação.

Até mesmo Paul Graham se perguntou sobre isso em 2012 e sugeriu que alguém deveria "criar o mecanismo de busca que todos os hackers usam[2]".

Aqui está um trecho do ensaio de Graham de 2012:

A maneira de vencer aqui é criar o mecanismo de busca que todos os hackers usam. Um mecanismo de busca cujos usuários fossem os 10.000 principais hackers e ninguém mais estaria em uma posição muito poderosa, apesar de seu pequeno tamanho, assim como o Google estava quando era esse mecanismo de busca. E, pela primeira vez em mais de uma década, a ideia de mudar parece-me pensável.

Como qualquer pessoa capaz de abrir essa empresa é um desses 10.000 hackers, o caminho é, no mínimo, simples: crie o mecanismo de busca que você deseja. Sinta-se à vontade para torná-lo excessivamente hacker. Torne-o realmente bom para pesquisa de código, por exemplo. Você gostaria que as consultas de pesquisa fossem completas como as de Turing? Qualquer coisa que lhe dê esses 10.000 usuários é ipso facto bom.

Como já iniciamos uma ambiciosa busca para mudar a Internet para sempre com o You.com, decidimos criar um mecanismo de busca para desenvolvedores por desenvolvedores - do zero.

Foi assim que nasceu o YouCode, o melhor mecanismo de pesquisa para programadores.

TL;DR - resumo com IA

Os principais mecanismos de pesquisa não são otimizados para a pesquisa de código, pois a tarefa de criar um é complicada e difícil. Pequenos sites de codificação não são indexados pelos principais mecanismos de pesquisa ou não têm tráfego suficiente para justificar a organização e a manutenção. Os grandes repositórios de códigos que contêm trechos de códigos limpos podem ser esmagadores e difíceis de navegar, atrasando os desenvolvedores que estão com pressa para encontrar o que precisam.

Usamos inteligência artificial e processamento de linguagem natural para analisar grandes repositórios de informações em resumos concisos com painéis laterais que se expandem para revelar as informações mais importantes, juntamente com trechos de código que os usuários podem copiar/colar. Nós iteramos o design e o layout junto com a nossa comunidade e introduzimos uma rolagem horizontal para cada aplicativo de origem que resume as informações por tópico, popularidade e assunto para uma leitura mais rápida. No YouCode, os desenvolvedores podem fazer buscas verticais e horizontais para cobrir mais áreas com mais rapidez.

Confiamos nos dados

Tradicionalmente, os desenvolvedores confiam no Google para a recuperação de códigos. No entanto, a primeira página do Google é um espaço pago, em que os resultados geralmente são conteúdos de SEO enganosos, anúncios ou ferramentas que não têm o nível certo de profundidade. Isso é ineficiente para consultas de cauda longa em que a intenção não é tão óbvia.

Para resolver a questão da relevância, desenvolvemos nosso próprio sistema de classificação. Ele é mais sofisticado e se baseia em nosso próprio processamento e engenharia de dados para rastrear, coletar e analisar dados de forma mais precisa e cuidadosa para fornecer as informações mais relevantes em cada pesquisa.

Intenção vs. ação pretendida

As consultas de pesquisa de desenvolvedores costumam ser mais exclusivas e mais problemáticas do que as consultas de consumidores em geral. Muitas vezes é difícil saber exatamente qual é a consulta certa para encontrar o documento certo. É bastante comum que a resposta completa nem sequer exista. Esse é um dos motivos pelos quais os desenvolvedores geralmente precisam recorrer à tentativa e erro de reformular pesquisas relacionadas para obter bons exemplos. É um desperdício de tempo - ficar preso na compreensão de diferentes sites e amostras em vez de manter o foco na conclusão do projeto.

O YouCode agrega mais de 20 das melhores fontes para desenvolvedores, incluindo StackOverflow, GitHub, TowardsDataScience, Web3 Schools e HuggingFace, apresentadas como aplicativos que os desenvolvedores podem priorizar (ou omitir) em seus resultados de pesquisa. Isso permite que os desenvolvedores adaptem seus resultados de pesquisa exatamente ao que precisam em um determinado momento, e as opções de personalização aumentarão nos próximos meses.

Não há anúncios no YouCode, e não rastreamos nenhum conteúdo com SEO ruim, para ajudar os desenvolvedores a manter o foco.

Um mecanismo de busca que codifica para você

Os programadores também nos disseram que, às vezes, sofrem de bloqueio de escrita quando se deparam com novas estruturas, linguagens de codificação ou bugs que não conseguem corrigir. Para ajudar a combater isso, desenvolvemos o Code Complete, uma ferramenta de autocompletar código com IA que escreve código nos resultados de pesquisa, economizando tempo e ajudando os desenvolvedores a codificar mais rapidamente.

O Code Complete é uma ferramenta avançada de sugestão de código que foi treinada em bilhões de linhas de código de milhares de projetos. Ele pode sugerir código para avisos de linguagem natural a partir de convenções de contexto e estilo e pode preencher automaticamente funções em dezenas de linguagens de programação.

Os desenvolvedores também nos disseram que outro grande problema é a detecção de erros de codificação. Adicionamos um validador de sintaxe JSON que ajuda a detectar quaisquer erros no estilo e na formatação do código. Isso permite que os desenvolvedores identifiquem e corrijam os erros mais rapidamente, liberando seu tempo para resolver problemas mais complexos.

A conveniência é a chave

Entendemos que é difícil abandonar hábitos e que mesmo as melhores ferramentas só serão usadas se forem facilmente acessíveis. É por isso que desenvolvemos uma extensão do Visual Studio Code que permite que você pesquise códigos destacando o termo. Também criamos uma extensão para o Chrome com várias pesquisas que permite pesquisar em quatro mecanismos de pesquisa diferentes com um clique.

O YouCode foi criado por desenvolvedores e empreendedores apaixonados pelo You.com para ajudar cada desenvolvedor a ser o melhor possível. Durante esse processo, aprendemos muito.

Criar um produto que amamos foi gratificante. Mas criar o futuro da pesquisa com as pessoas que mais se beneficiarão dele - os usuários - é ainda mais satisfatório.

Yay, você leu o artigo inteiro. Se você gostou desta história, por favor recomende 👏 e compartilhe para ajudar os outros a encontrá-la!