Inside ConveyThis Tech: Creación de nuestro rastreador de sitios web

Haga que su sitio web sea multilingüe en 5 minutos
Transmitir esta demostración
Transmitir esta demostración
My Khanh Pham

My Khanh Pham

Mejora de la experiencia del usuario: ConveyThis presenta la gestión de URL

Numerosos usuarios de ConveyThis prefieren tener todas las URL de sus sitios web traducidas correctamente, lo que puede ser una tarea exigente, especialmente para sitios extensos traducidos a varios idiomas.

Los comentarios de los usuarios han demostrado que algunos clientes encontraron el comienzo de sus proyectos iniciales de traducción de sitios web algo desconcertantes. A menudo se preguntaban por qué solo podían ver la URL de la página de inicio en la lista de traducción y cómo crear traducciones de su contenido.

Esto indicaba un área potencial de mejora. Vimos una oportunidad para facilitar un proceso de incorporación más fluido y una gestión de proyectos más eficiente. Sin embargo, nos faltaba una solución concreta en ese momento.

El resultado, como habrás supuesto, fue la introducción de la función de gestión de URL. Permite a los usuarios escanear las URL de su sitio web y generar su contenido traducido a través de ConveyThis Dashboard, de manera rápida y efectiva.

Recientemente, esta función se trasladó de la Lista de traducciones a una nueva página de gestión de traducciones basada en URL, más adaptable y potente. Ahora, creemos que es hora de revelar la historia detrás del inicio de esta característica.

921

Adoptando Golang: el viaje de ConveyThis hacia servicios de traducción mejorados

922

El inicio del bloqueo de 2020 debido a la pandemia me ofreció la oportunidad de aprender finalmente el lenguaje de programación Golang que había sido dejado de lado debido a limitaciones de tiempo.

Desarrollado por Google, Golang o Go ha ido ganando popularidad en los últimos años. Un lenguaje de programación compilado estáticamente, Golang fue diseñado para permitir a los desarrolladores crear código eficiente, confiable y concurrente. Su simplicidad admite la escritura y el mantenimiento de programas extensos y complicados sin sacrificar la velocidad.

Al considerar un posible proyecto paralelo para familiarizarme con Golang, me vino a la mente un rastreador web. Cumplía con los criterios mencionados y ofrecía potencialmente una solución para los usuarios de ConveyThis. Un rastreador web o 'bot' es un programa que visita un sitio web para extraer datos.

Para ConveyThis, nuestro objetivo era desarrollar una herramienta para que los usuarios escanearan su sitio y recuperaran todas las URL. Además, queríamos agilizar el proceso de generación de traducciones. Actualmente, los usuarios deben visitar su sitio web en un idioma traducido para generarlos, una tarea que se vuelve desalentadora para sitios grandes en varios idiomas.

Aunque el prototipo inicial era sencillo, un programa que toma una URL como entrada y comienza a rastrear el sitio, fue rápido y efectivo. Alex, CTO de ConveyThis, vio el potencial de esta solución y dio luz verde a la investigación y el desarrollo para refinar el concepto y contemplar cómo albergar el futuro servicio de producción.

Navegando la tendencia sin servidor con Go y ConveyThis

En el proceso de finalizar el bot rastreador web, nos encontramos lidiando con los matices de diferentes CMS e integraciones. Entonces surgió la pregunta: ¿cómo podemos presentar mejor el bot a nuestros usuarios?

Inicialmente, consideramos el enfoque probado de usar AWS con una interfaz de servidor web. Sin embargo, surgieron varios problemas potenciales. Teníamos incertidumbre sobre la carga del servidor, el uso simultáneo por parte de múltiples usuarios y nuestra falta de experiencia con el alojamiento del programa Go.

Esto nos llevó a considerar un escenario de alojamiento sin servidor. Esto ofrecía ventajas como la gestión de la infraestructura por parte del proveedor y la escalabilidad inherente, lo que la convertía en una solución ideal para ConveyThis. Significaba que no teníamos que preocuparnos por la capacidad del servidor, ya que cada solicitud operaría en su propio contenedor aislado.

Sin embargo, en 2020, la informática sin servidor venía con un límite de 5 minutos. Esto resultó ser un problema para nuestro bot, que podría ser necesario para rastrear grandes sitios de comercio electrónico con numerosas páginas. Afortunadamente, a principios de 2020, AWS amplió el límite a 15 minutos, aunque habilitar esta función resultó ser una tarea desafiante. Finalmente, encontramos la solución activando el código sin servidor con SQS, el servicio de cola de mensajes de AWS.

923

El camino hacia las comunicaciones interactivas de bots en tiempo real con ConveyThis

924

Cuando resolvimos el dilema del hospedaje, teníamos otro obstáculo que superar. Ahora teníamos un bot funcional, alojado de manera eficiente y escalable. La tarea restante era transmitir los datos generados por el bot a nuestros usuarios.

Con el objetivo de lograr la máxima interactividad, me decidí por la comunicación en tiempo real entre el bot y el tablero de ConveyThis. Si bien el tiempo real no es un requisito para dicha función, quería que nuestros usuarios obtuvieran comentarios inmediatos tan pronto como el bot comenzara a funcionar.

Para lograr esto, desarrollamos un servidor websocket Node.js simple, alojado en una instancia AWS EC2. Esto requirió algunos ajustes en el bot para comunicarse con el servidor websocket y automatizar la implementación. Después de pruebas exhaustivas, estábamos listos para la transición a la producción.

Lo que comenzó como un proyecto paralelo finalmente encontró su lugar en el tablero. A través de los desafíos, adquirí conocimientos en Go y perfeccioné mis habilidades en el entorno de AWS. Encontré Go particularmente beneficioso para tareas de red, programación cooperativa y computación sin servidor, dada su baja huella de memoria.

Tenemos planes futuros ya que el bot trae nuevas oportunidades. Nuestro objetivo es reescribir nuestra herramienta de conteo de palabras para una mayor eficiencia y potencialmente usarla para el calentamiento de caché. Espero que hayas disfrutado este adelanto del mundo tecnológico de ConveyThis tanto como yo disfruté compartirlo.

¿Preparado para comenzar?

La traducción, mucho más que saber idiomas, es un proceso complejo.

Al seguir nuestros consejos y usar ConveyThis , sus páginas traducidas resonarán en su audiencia, sintiéndose nativas del idioma de destino.

Si bien exige esfuerzo, el resultado es gratificante. Si está traduciendo un sitio web, ConveyThis puede ahorrarle horas con la traducción automática automática.

¡Prueba ConveyThis gratis durante 7 días!

gradiente 2