6 lecciones que hemos aprendido al crear un motor de búsqueda para desarrolladores

6 lecciones que hemos aprendido construyendo un motor de búsqueda para desarrolladores

Descargo de responsabilidad: Esta entrada de blog se publicó antes de los últimos avances en IA de You.com y puede que no refleje nuestras capacidades actuales. You.com ha pasado de ser un motor de búsqueda a convertirse en un asistente de IA. Con una base en la búsqueda y la experiencia en IA del equipo, You.com estaba perfectamente posicionado para mejorar los LLM con acceso en directo a Internet para abordar cuestiones en torno a las alucinaciones y la transparencia. Como tal, You.com es capaz de realizar tareas que van desde la búsqueda en línea hasta la redacción de un ensayo, la depuración de código, la creación de arte digital, la resolución de problemas complejos y mucho más. Más información sobre cómo sacar el máximo partido a You.com.

You.com también ofrece su tecnología principal a través de un conjunto de API de autoservicio. Obtenga información completa sobre la YOU API.

La búsqueda rápida de código es una superpotencia. Pero las búsquedas de código son difíciles y llevan mucho tiempo, y a menudo requieren un 85% más de ediciones de las consultas que las búsquedas sin código [1]. Por eso hemos decidido construir un motor de búsqueda para desarrolladores. Como era de esperar, nos hemos enfrentado a numerosos problemas a la hora de construir un motor de búsqueda de nicho complejo; por el camino, hemos aprendido algunas lecciones.

Los mejores productos nacen de experiencias dolorosas

Los desarrolladores utilizan muchos métodos de búsqueda diferentes para encontrar lo que necesitan. Crean nuevas consultas y modifican las existentes, añaden sitios a los resultados de la búsqueda, utilizan filtros, hojean la documentación indexada e intercambian términos de búsqueda hasta que encuentran el tipo de archivo que necesitan. Si persisten en este ciclo de creación y modificación de consultas, acaban encontrando lo que necesitan. Cada clic y cada carga de un sitio es una ineficiencia que resta tiempo a la resolución de problemas de codificación y a la realización de tareas de codificación.

Nuestra comunidad de desarrolladores, que vivía en este penoso ciclo de búsqueda de código, preguntaba a menudo por qué no existía un motor de búsqueda fácil de usar que extrajera todos los mejores recursos de codificación.

Incluso Paul Graham se preguntó sobre esto allá por 2012 y sugirió que alguien debería "construir el motor de búsqueda que usan todos los hackers[2]."

He aquí un extracto del ensayo de Graham de 2012:

La forma de ganar aquí es construir el motor de búsqueda que utilicen todos los hackers. Un motor de búsqueda cuyos usuarios consistieran en los 10.000 hackers más importantes y nadie más estaría en una posición muy poderosa a pesar de su pequeño tamaño, como lo estaba Google cuando era ese motor de búsqueda. Y por primera vez en más de una década, la idea de cambiar me parece pensable.

Dado que cualquiera capaz de poner en marcha esta empresa es uno de esos 10.000 hackers, la ruta es al menos sencilla: crea el motor de búsqueda que tú mismo quieras. Siéntete libre de hacerlo excesivamente hacker. Que sea realmente bueno para la búsqueda de código, por ejemplo. ¿Le gustaría que las consultas de búsqueda fueran Turing completas? Cualquier cosa que le consiga esos 10.000 usuarios es ipso facto buena.

Como ya habíamos iniciado una ambiciosa búsqueda para cambiar Internet para siempre con You.com, decidimos construir un motor de búsqueda para desarrolladores por desarrolladores, desde cero.

Así nació YouCode, el mejor motor de búsqueda para programadores.

TL;DR - resumen con IA

Los principales motores de búsqueda no están optimizados para la búsqueda de código, ya que la tarea de construir uno es complicada y difícil. Los principales motores de búsqueda no indexan los sitios de código pequeños o no tienen suficiente tráfico para justificar su organización y mantenimiento. Los grandes repositorios de código que contienen fragmentos de código limpios pueden ser abrumadores y difíciles de navegar, lo que ralentiza a los desarrolladores que tienen prisa por encontrar lo que necesitan.

Hemos utilizado la inteligencia artificial y el procesamiento del lenguaje natural para convertir grandes repositorios de información en resúmenes concisos con paneles laterales que se expanden para revelar la información más importante, junto con fragmentos de código que los usuarios pueden copiar y pegar. Hemos perfeccionado el diseño y la presentación junto con nuestra comunidad y hemos introducido un desplazamiento horizontal para cada aplicación fuente que resume la información por tema, popularidad y asunto para una lectura más rápida. En YouCode, los desarrolladores pueden realizar búsquedas tanto verticales como horizontales para abarcar más información con mayor rapidez.

Confiamos en los datos

Tradicionalmente, los desarrolladores han confiado en Google para la recuperación de código. Sin embargo, la primera página de Google es un espacio de pago, donde los resultados son a menudo contenido SEO engañoso, anuncios o herramientas que no tienen el nivel de profundidad adecuado. Esto es ineficaz para las consultas de cola larga en las que la intención no es tan obvia.

Para solucionar el problema de la relevancia, hemos desarrollado nuestro propio sistema de clasificación. Es más sofisticado y se basa en nuestro propio procesamiento e ingeniería de datos para rastrear, recopilar y analizar los datos de una manera más precisa y cuidadosa para proporcionar la información más relevante en cada búsqueda.

La intención frente a la acción prevista

Las consultas de búsqueda de los desarrolladores suelen ser más singulares y problemáticas que las de los consumidores en general. A menudo es difícil saber exactamente cuál será la consulta correcta para encontrar el documento adecuado. Es bastante habitual que ni siquiera exista la respuesta completa. Por eso, a menudo, los desarrolladores tienen que recurrir a la prueba y error reformulando búsquedas relacionadas para que aparezcan buenos ejemplos. Es una pérdida de tiempo, ya que te enredas en comprender diferentes sitios y ejemplos en lugar de centrarte en completar el proyecto.

YouCode agrega más de 20 de las mejores fuentes para desarrolladores, como StackOverflow, GitHub, TowardsDataScience, Web3 Schools y HuggingFace, presentadas como aplicaciones que los desarrolladores pueden priorizar (u omitir) dentro de sus resultados de búsqueda. Esto permite a los desarrolladores adaptar sus resultados de búsqueda exactamente a lo que necesitan en un momento dado, y las opciones de personalización aumentarán en los próximos meses.

En YouCode no hay anuncios y no rastreamos ningún contenido SEO torpe, para ayudar a los desarrolladores a mantenerse centrados.

Un motor de búsqueda que codifica para usted

Los programadores también nos dijeron que a veces se bloquean cuando se enfrentan a nuevos marcos de trabajo, lenguajes de programación o errores que no pueden solucionar. Para ayudar a combatir esto, desarrollamos Code Complete, una herramienta de completado de código de IA que escribe código dentro de los resultados de búsqueda, ahorrando tiempo y ayudando a los desarrolladores a codificar más rápido.

Code Complete es una potente herramienta de sugerencia de código que ha sido entrenada en miles de millones de líneas de código de miles de proyectos. Puede sugerir código a partir de indicaciones en lenguaje natural basadas en el contexto y en convenciones de estilo, así como autocompletar funciones en docenas de lenguajes de programación.

Los desarrolladores también nos han comentado que otro de los principales problemas es la detección de errores de codificación. Hemos añadido un validador de sintaxis JSON que ayuda a detectar errores de estilo y formato del código. Esto permite a los desarrolladores identificar y corregir errores más rápidamente, liberando tiempo para resolver problemas más complejos.

La comodidad es la clave

Entendemos que los hábitos son difíciles de romper y que incluso las mejores herramientas sólo se utilizarán si son fácilmente accesibles. Por eso hemos desarrollado una extensión de Visual Studio Code que permite buscar código resaltando el término. También hemos creado una extensión para Chrome de búsqueda múltiple que le permite buscar en cuatro motores de búsqueda diferentes con un solo clic.

YouCode fue creado por apasionados desarrolladores y emprendedores de You. com para ayudar a cada desarrollador a ser lo mejor que pueda ser. A lo largo de este proceso, hemos aprendido mucho.

Crear un producto que nos encanta ha sido gratificante. Pero crear el futuro de las búsquedas con las personas que más se beneficiarán de él, los usuarios, es aún más satisfactorio.

Yay, has leído todo el artículo. Si te ha gustado esta historia, ¡recomiéndala 👏 y compártela para que otros la encuentren!