Por qué cambiar un carácter


El 8 de marzo de 2020, Yuriko Koike, la gobernadora de Tokio, Japón, agradeció a Audrey Tang en Twitter por ayudarlos a cambiar un carácter en la traducción del sitio web de COVID-19 de Tokio. Como Audrey Tang ya se había vuelto famosa en Japón, este incidente atrajo atención y se extendió de vuelta a Taiwán:

Audrey Tang cambió el carácter tradicional '体' a '體'

Algunas personas podrían preguntarse, ¿qué tiene de especial cambiar solo un carácter? ¿Es tan difícil? Creo que si es difícil o no es debatible, pero la pregunta que me interesa es: “Es solo un carácter, ¿por qué molestarse en cambiarlo?”

Primero déjame explicar qué es GitHub (no estoy hablando de Pornhub, no te desilusiones demasiado). Originalmente era un lugar para que las personas almacenaran código e intercambiaran código, pero no se limita al código. Cualquier archivo almacenado usando el software de control de versiones git (podría ser un libro, o un documento colaborativo que organice recursos en línea para resolver un problema) puede almacenarse en GitHub.

Desde otro ángulo, GitHub es como Facebook o Twitter en el mundo de los desarrolladores. Todos pueden poner proyectos colaborativos en él. Si un proyecto que escribes es popular, obtendrá muchas estrellas. Si eres como yo y no puedes crear un proyecto muy popular por ti mismo, también puedes contribuir a esos proyectos muy populares. Esta contribución aparecerá en tu página.

He contribuido a un proyecto llamado Gatsby, que tiene 50,000 estrellas en GitHub. Usando Twitter como analogía, aunque podría no estar al nivel de los principales influencers como Obama, Justin Bieber o Katy Perry, probablemente esté cerca del nivel de LeBron James, Jennifer Lopez o Elon Musk.

Contribuir a un proyecto de este nivel es como si yo viera a Jennifer Lopez en la naturaleza en la calle. Incluso si solo es tomar una foto distante para las redes sociales para hacer que todos tengan envidia, si tengo alguna oportunidad, felizmente haría una contribución, incluso si solo es corregir un error tipográfico en su documentación.

Esto explica por qué los proyectos de código abierto como Gatsby tienen tan pocos errores, e incluso la calidad de su documentación es excelente. Su documentación no solo tiene métodos claros y código de ejemplo, sino que también es difícil encontrar errores ortográficos.

Esta contribución sucedió así: como mi blog personal está construido usando el proyecto Gatsby, hace un tiempo cuando estaba configurando la función de suscripción al boletín por correo electrónico, descubrí que los nuevos artículos no enviarían automáticamente boletines.

Interjección de una historia embarazosa: al revisar la configuración del servicio de correo electrónico de Mailchimp, apareció una encuesta. Marqué “no bueno” y completé comentarios como “no envía automáticamente”. Justo después de terminar de completarlo, descubrí que en realidad no era un problema de Mailchimp—era mi propia función de suscripción RSS del sitio web la que tenía un error 🤪.

Más tarde, investigué el error en la función de suscripción RSS de mi sitio web y descubrí que las URLs que no son solo en inglés necesitan codificarse primero usando las funciones integradas de JavaScript para cumplir con el formato de suscripción RSS requerido.

Después de que conseguí que la función del boletín funcionara, teóricamente esto debería haber terminado. Pero pensé, ¿no es esta una gran oportunidad para contribuir a Gatsby?

Como muchas personas quieren contribuir a proyectos populares como este, tienen algunas pautas sobre cómo contribuir. Entonces no podría simplemente hacer un desastre del proyecto directamente. Necesitaba primero navegar por la documentación Cómo Contribuir del proyecto.

Siguiendo la guía en esa documentación, primero abrí una discusión en su sección de GitHub Discussions, escribiendo específicamente:

Quiero modificar el archivo adding-an-rss-feed.md. La razón de la modificación es que encontré un problema con el código de ejemplo al manejar URLs que no son solo en inglés. Quiero agregar un código de ejemplo a la documentación y agregar un enlace para verificar si la función de suscripción RSS está funcionando correctamente. El beneficio de este cambio es que puede ahorrar tiempo de desarrollo para usuarios que no son solo en inglés.

Luego un desarrollador principal respondió diciendo que suena genial y que estarían felices de revisar un PR.

PR (pull request) es la palabra clave más importante en todo el proceso de contribución. Audrey Tang originalmente envió un PR al proyecto del sitio web de COVID-19 de Tokio. PR significa que Audrey Tang modificó un carácter en el proyecto y solicitó que el sitio web de COVID-19 fusionara esta modificación en el proyecto. Después de que el personal del proyecto de Tokio accedió a fusionar, aparecería un registro en el GitHub de Audrey Tang mostrando que ella contribuyó a este proyecto del sitio web de COVID-19.

Después de recibir la respuesta de que podía enviar un PR, felizmente abrí un PR al proyecto Gatsby. El proceso fue agregar el contenido que quería agregar al artículo, luego guardar este registro de versión (esta acción se llama commit). Después de guardar, descubrí que el proyecto tenía muchas actualizaciones nuevamente, así que muy inteligentemente 😏 descargué estas actualizaciones y las fusioné con mis modificaciones, hice un segundo commit, y luego envié este PR.

Después de enviarlo, vi que el bot del proyecto bloqueó mi segundo commit, diciendo que no tenía permisos de fusión 😭. Originalmente lo ignoré, pensando que el personal principal del proyecto me ayudaría a solucionarlo, y revisé todos los días con anticipación para ver si mi PR había sido aprobado.

Después de unos días sin aprobación, pensé que todavía necesitaba encontrar una manera de pasar la verificación del bot. Finalmente, usé el comando git reset para revertir la versión de vuelta al primer commit para pasar la verificación del bot. Rápidamente, en unas pocas horas, vi al fundador de Gatsby, Kyle Mathews, fusionar mi solicitud 🎉 🎊.

PR fue fusionado

Entonces, volviendo a la pregunta al comienzo del artículo: ¿es difícil cambiar un carácter? Como se mencionó anteriormente, podría variar de persona a persona y de proyecto a proyecto. No todos los proyectos requieren tanto problema. Si no es un proyecto tan grande, podría no haber tantas regulaciones de PR, pero aún necesitas saber comandos básicos de git y operaciones de GitHub para contribuir.

Pero estoy más preocupado por la pregunta “¿Por qué cambiar este carácter?” Creo que es una gran mentalidad para los desarrolladores.

Además del contenido de entretenimiento, he observado que en las redes sociales como Facebook, Twitter o medios de noticias, generalmente hay dos tipos de contenido con las tasas de clics más altas. Uno es contenido demonizante: las importaciones de vacunas de Taiwán están retrasadas, el rediseño de Facebook es tan difícil de usar, qué problemas tiene el registro real de SMS… Después de leer demasiado, sientes que estás viviendo en el infierno. El otro es contenido deificar: la prevención de epidemias de Taiwán es No. 1, Clubhouse tiene tanto contenido valioso, el registro real de SMS es omnipotente, Dogecoin a la luna… Después de leer demasiado, piensas que los humanos han superado al dios creador.

En la plataforma GitHub, los proyectos más populares son los que resuelven los problemas más interesantes o importantes. Todos se preocupan por cómo este proyecto resuelve los problemas que a todos les importan. Si este proyecto es increíble, el enfoque no está en deificarlo, sino en cómo mejorarlo para que sea aún más increíble. Si este proyecto tiene problemas, el enfoque no está en quejarse, sino en cómo solucionar este problema, para que este proyecto tenga menos problemas.

Y lo que mencioné anteriormente ni siquiera es lo que más admiro de GitHub. Lo que más admiro es que esta mentalidad de “cómo hacer que este proyecto sea mejor, incluso si solo es corregir un error tipográfico” no es una mentalidad de “me estoy sacrificando y dedicando”, sino que “estoy haciendo una contribución” y “estoy resolviendo problemas” puede ser una cultura de presumir, divertida e interesante, incluso como un hábito de estilo de vida, grabado en los genes de los desarrolladores.

Mi primera contribución a Gatsby incluso vino con artículos promocionales—este es el sombrero que elegí