1 puntos por GN⁺ 2023-12-01 | 1 comentarios | Compartir por WhatsApp

Descubrimiento y proceso de resolución de un bug extraño

  • Durante una guardia on-call del equipo de herramientas internas, los usuarios que usaban el software interno de Gusto experimentaron fallas del navegador Chrome.
  • Este problema provocó diversas interrupciones en la atención al cliente.
  • Para resolverlo, se pidió ayuda a colegas con experiencia, al equipo de infraestructura de producto y al equipo de TI.

Primera pista

  • Se intentó encontrar puntos en común entre los usuarios afectados.
  • No todos los empleados de Gusto se vieron afectados, y el software orientado al cliente no presentaba problemas.
  • Otras páginas web del software interno funcionaban con normalidad.
  • Las fallas ocurrían de forma inconsistente, y no se presentaban en Safari ni en Firefox.

Segunda pista

  • Se planteó la hipótesis de que la versión de Chrome podía ser el problema.
  • Parecía que el problema se resolvía para algunos usuarios al actualizar la versión de Chrome, pero no quedó completamente solucionado.
  • También se sospechó que una extensión de Chrome podía ser la causa, pero el problema se reprodujo incluso sin extensiones.

Dificultad para reproducir el bug

  • El equipo de infraestructura pidió a todos los ingenieros que intentaran reproducir el problema.
  • Salvo dos ingenieros en Turquía, nadie del equipo de ingeniería reportó fallas.
  • Como la función de reporte de fallas de Chrome estaba deshabilitada por motivos de seguridad, la resolución del problema se complicó.

Un golpe de suerte

  • Un ingeniero en Denver reportó que el problema apareció después de descargar la app de escritorio de Grammarly.
  • Descubrió que al eliminar la app de Grammarly y reiniciar la computadora, el problema se resolvía.

Progreso

  • Una vez que fue posible depurar, se hicieron varios intentos para encontrar la causa del problema.
  • La aplicación interna principal estaba construida sobre ActiveAdmin, pero las partes nuevas que usaban React no fallaban.
  • Mientras se investigaba el código compartido, se descubrió que el menú desplegable My History era la causa del problema.

Resolución del problema

  • Se confirmó que el archivo de imagen loader-spinner.gif estaba causando el problema.
  • Al reemplazar ese GIF por otra imagen, la página dejó de fallar.
  • No está claro si Grammarly o Chrome corrigieron el problema, pero ahora el GIF original ya no hace que Chrome falle.

Conclusión

  • Un GIF animado inesperado terminó siendo la clave para depurar el problema.
  • El problema se resolvió gracias a la curiosidad y la colaboración.
  • Gusto ofrece la oportunidad de trabajar con personas colaborativas y curiosas.

Opinión de GN⁺

Lo más importante de este texto es la descripción detallada del proceso para descubrir y resolver un bug causado por un origen inesperado. El artículo muestra la complejidad y lo impredecible de la ingeniería de software, y subraya lo importantes que son el trabajo en equipo y la persistencia para resolver problemas. También ofrece un caso interesante de cómo un equipo de ingeniería colabora para resolver un problema difícil, lo que lo convierte en una historia muy atractiva para quienes se interesan por la ingeniería.

1 comentarios

 
GN⁺ 2023-12-01
Comentarios en Hacker News
  • Sorpresa y escepticismo ante un bug causado por un archivo GIF específico

    Un usuario comentó que le cuesta creer que una serie de coincidencias en el código haya provocado un bug por un archivo GIF específico. También expresó dudas sobre la app de Grammarly y se mostró sorprendido de que tanta gente instale una app prácticamente similar a spyware para recibir sugerencias gramaticales, y de que las empresas lo permitan.

  • Problema al imprimir subrayados durante el trabajo en un artículo de investigación de un profesor universitario

    Un profesor universitario tuvo un problema en el que los subrayados del texto no se imprimían mientras trabajaba en un artículo de investigación, y se descubrió que la causa era una combinación específica entre el controlador de la tarjeta de video y el controlador de la impresora.

  • Experiencia compartida con un bug relacionado con Grammarly

    Un usuario compartió que en el pasado vivió un bug parecido dentro de un departamento donde estaba instalada la extensión de Grammarly; solo ocurría con URLs del entorno de staging y, debido a una expresión regular incorrecta, la página se quedaba congelada.

  • Expresión de decepción sobre la corrección del bug

    Un usuario dijo que disfrutó el proceso de corrección del bug como si fuera una novela de misterio, pero expresó su decepción porque al final no fue posible conocer la causa exacta del bug.

  • Problema de audio al usar arranque dual entre Windows y Linux

    Se descubrió un problema por el que, después de reiniciar desde Windows, no había sonido en Linux; la causa era que Windows no apagaba por completo el dispositivo de audio, sino que lo dejaba en modo de espera.

  • Interés por la aparición de bugs en el entorno web de 2023

    Alguien expresó interés por un bug surgido de una combinación compleja de tecnologías y se preguntó si el bug de Chromium ya había sido resuelto.

  • Experiencia compartida con un bug relacionado con las herramientas de accesibilidad de Chrome

    Un usuario compartió haber visto un bug similar causado por las herramientas de accesibilidad de Chrome y mencionó la posibilidad de que Grammarly dependa de ellas.

  • Confusión causada por la configuración de traducción de páginas

    Surgió un problema en el que un usuario afirmaba que el texto que ingresaba cambiaba al guardarse, pero luego se descubrió que ocurría porque estaba activada la opción "Traducir esta página" de Chrome.

  • Experiencia compartida sobre una caída del escritorio de Linux causada por el CSS de un sitio web

    Un usuario contó que el CSS de la página de búsqueda de Yahoo provocó una caída del escritorio en Red Hat Linux y sugirió reportar el bug al equipo de desarrollo de Chrome.

  • Opinión de que resolver el bug podría convertirse en una vulnerabilidad de seguridad importante

    Se planteó la opinión de que, si este bug pudiera resolverse, podría convertirse en una vulnerabilidad de seguridad muy valiosa.