Lejos de mantener un proyecto de código abierto durante un mes

30 segundos de código: colección consolidada de fragmentos de JavaScript útiles que puede comprender en 30 segundos o menos

Hace un mes, lancé mi último proyecto de código abierto, 30 segundos de código . Comenzó como una idea simple: una pequeña colección privada de métodos de Javascript que me resultó útil cuando estaba creando prototipos. Después de reunir alrededor de 30 de ellos, decidí publicar el repositorio y compartirlo en reddit, ver si alguien tenía algunos fragmentos geniales que querían agregar a la colección. Y luego se hizo muy popular, la comunidad se hizo más grande cada día y se agregaron nuevas funciones y fragmentos todo el tiempo.

Ha sido un largo mes de codificación, discutiendo cosas, refactorizando códigos, escribiendo pautas y lidiando con una comunidad que se construyó casi de la noche a la mañana. Aquí está mi consejo, basado en lo que he aprendido desde el lanzamiento del proyecto:

Tus ideas son buenas

30 segundos de código no es una idea original, hay toneladas de colecciones seleccionadas, artículos y bibliotecas que se dirigen al mismo grupo demográfico. Pero la gente siempre querrá más recursos a su disposición, incluso si son más de lo mismo. De lo contrario, solo tendríamos lodash y nada más. Pero ese no es el caso. Las ideas simples pueden tener éxito y convertirse en algo hermoso. De hecho, iría tan lejos como para argumentar que las soluciones simples a los problemas cotidianos tienen más potencial para tener éxito, ya que tienen más espacio para crecer y pivotar en algo nuevo. Entonces, no importa qué tan simple sea tu idea, pruébalo , puede que te sorprenda.

Amo a tu comunidad

La comunidad de desarrolladores puede ser algo maravilloso cuando se trata de desarrollar colaborativamente un proyecto de código abierto. Compartir su proyecto con otros es importante ya que permite que las personas contribuyan y lo ayuden a darle forma. Eso puede ser a través de comentarios al respecto o ayudando activamente en el desarrollo. Siempre escuche atentamente lo que otros tienen que decir, no se ponga a la defensiva cuando se critica su trabajo y agradezca a las personas por preocuparse lo suficiente como para ser parte de la comunidad que se está construyendo alrededor de su trabajo. Cada proyecto de código abierto es una gran oportunidad de aprendizaje y debes tratarlo como tal.

Tu no sabes todo

Diferentes personas tienen diferentes necesidades y conjuntos de habilidades y saben cosas diferentes. Al permitir que las personas participen activamente en el desarrollo del proyecto, aprendí mucho sobre tantos temas diferentes: integración continua, procesos de compilación automatizados, desarrollo basado en pruebas, revisiones de códigos, arquitectura web general, licencias, guías de estilo. Cada decisión que tomes puede moldear el futuro de tu proyecto de código abierto, así que deja que las personas que tienen más experiencia que tú en algo tomen la iniciativa y escuchen atentamente lo que tienen que decir. Permita que otros implementen las características que no puede. Luego eche un vistazo a su código y aprenda de él. Es un gran alivio saber que alguien más tiene tu espalda cuando no tienes ni idea de qué hacer o cuál es la mejor decisión.

Refactorizar temprano, refactorizar constantemente

En el último mes, 30 segundos de código han pasado por varias reestructuraciones, ya que hemos cambiado las pautas y la estructura varias veces: cambio de nombre de fragmento y reestructuración, categorización, deshielo automático, etiquetado múltiple, actualizaciones del proceso de compilación. Si no hubiésemos hecho cada uno de estos cambios, el proyecto habría sufrido y las personas se quejarían de las características faltantes y otros problemas. Algunos de estos cambios rompieron el proyecto o nos causaron dolores de cabeza, pero una vez que todo está dicho y hecho, las personas se sienten más cómodas con su estructura y tienen menos preocupaciones sobre el tema. Todo lo que realmente quiere al final es que el usuario final esté satisfecho .

Sepa a donde va

Esto podría parecer que contradice los consejos anteriores, pero ese no es el caso. Tener una visión central del proyecto y algunos límites sobre lo que no debe hacer es importante. Recibimos muchas solicitudes para crear un paquete npm, porque la gente quería tomar algún código y empezar a usarlo en un proyecto. Pero ninguno de los fragmentos está listo para producción y nunca lo será. entonces, ¿qué hicimos? Publicamos un paquete que estará siempre en un estado previo a la publicación, nunca listo para la producción. Ahora, las personas pueden usarlo y podemos monitorear los proyectos que dependen de él, para que no usen nuestro paquete en producción. Puedes mantenerte fiel a tu visión, incluso si te comprometes .

No alejes a la gente

Muchos de los fragmentos que originalmente escribí fueron bastante horribles. Muchos de los fragmentos añadidos por los contribuyentes también fueron problemáticos y requirieron algunos cambios antes de fusionarse en la base de código. Pero seguimos revisándolos cuidadosamente, explicando los problemas que tenían y agradeciendo a las personas por tomarse el tiempo para ayudar. Esto, combinado con una baja barrera de entrada, permite a las personas unirse al desarrollo y ayudar donde sea que puedan. Finalmente, después de darnos cuenta de que teníamos muchos fragmentos de nicho, tuvimos que hacer algo para despejar el sitio web, por lo que creamos un archivo para que las personas no sintieran que su tiempo se desperdiciaba. Mantener viva la comunidad en torno a una fuente abierta es crucial , ya que garantiza que el proyecto esté vivo y siga avanzando.

Nunca dejar de intentar

Los proyectos de código abierto son lo que impulsa a una gran parte de la industria hoy en día y usted tiene la oportunidad de ser parte de cualquiera de ellos o comenzar uno propio. Las fallas siempre vienen antes que los éxitos, lo sé porque ninguno de mis otros proyectos ha sido tan exitoso, a pesar de que trabajé mucho más duro en algunos de ellos. Nunca abandone, nunca tenga miedo de probar algo nuevo, sin importar lo simple que pueda parecerle. El éxito llega cuando menos lo esperas, ¡así que sigue desarrollando e intentando alcanzar tus metas hasta que llegues a donde quieres estar!