DÍA 13

Un consejo: escribe código abierto

Usamos código abierto a diario: en nuestros teléfonos, editores, proyectos web… ¿Se han dado cuenta de lo que implica el desarrollo de esas piezas de software? Comprende en lo mínimo el tiempo y dedicación de una persona y en proyectos mayores, un batallón de desarrolladores que dedican esfuerzo de sus tiempos libres para que podamos utilizarlos sin costo final. Ni piden un gracias. Pero hay frutos, y te invito cordialmente a ser parte de esta comunidad.


El código abierto nos rodea y lo usamos a diario. Al instalar dependencias de NPM, todo eso es código abierto. Al usar una librería CSS, todas tienen licencia open-source. Pre-processors, IDE’s, softwares, CMS’s, sistemas operativos… Lo bueno del rubro del desarrollo web -y más específico del desarrollo front-end- es que todo lo que usamos tiene licencia de uso abierta, colaborativa, sin fines de lucro.

En este artículo quiero exponer algunos puntos que muestran los beneficios de escribir código fuente abierto, y no sólo de usarlo. Es una práctica que recomiendo abiertamente y que sólo traerá beneficios como desarrollador y profesional:

codigo abierto 01

Orden

Una cosa es escribir código para ti y tu proyecto. Otra cosa es escribir código dentro de un equipo, compartiendo el proyecto, bajo un code-guide o poniéndose de acuerdo entre ustedes en las mejores prácticas posibles. Y otra cosa es escribir código para una comunidad abierta de miles de desarrolladores, de diferentes lenguas, maneras de pensar y aplicar soluciones. Escribir código libre te obligará ser más ordenado, aplicar buenas prácticas, documentar, explicar, argumentar, convencer de que lo que has hecho es confiable y cumple un fin específico. Y que lo cumple bien.

Experiencia

Escribir tu proyecto open-source te permitirá salir de tu día-a-día, enfrentarás nuevos desafíos, podrás plasmar esas ideas que nunca pudiste utilizar en otros proyectos. Es tuyo, puedes hacer lo que mejor creas. Y prepárate para recibir críticas. Probablemente recibirás mejoras, cambios, cuestionamientos y soluciones. Es uno de los mejores puntos de mostrar tu código y contribuir.

Compromiso

Intenta utilizar tú mismo tu proyecto, si no quedará relegado a ser un repositorio botado y solitario. Si crees realmente en tu idea, lo escribiste funcionalmente y documentaste, intenta darle vida. Muchos crean marcas alrededor de sus proyectos, hasta una mascota o isotipo. Vuelve cada cuánto a revisar lo que escribiste, siempre se puede mejorar. Si tienes dependencias, actualízalas y revisa si algo se rompió. Usa semver para mantener las actualizaciones y describe los cambios en un changelog. Si puedes, escribe tests, utiliza un linter para mantener la integridad de tu código y usa un CI para automatizar este proceso. Todo esto hará ver que tienes un proyecto serio. Y aprenderás montón si nunca has hecho esto o utilizado alguna de estas herramientas antes.

codigo abierto 00

Visibilidad

Si tu proyecto se conoce, tendrás nuevas visitas a tu perfil de GitHub, LinkedIn y demases. Hay tantas cosas ya hechas que quizás un empujón de tu parte ayudaría un poco:

  • Tuitéalo e intenta un largo alcance con tu círculo de cercanos. He visto que Facebook no ayuda mucho en cuanto a proyectos open-source, pero en intentar no cuesta nada.
  • Dependiendo del tipo de proyecto que tengas, publícalo en algún portal relacionado, como Reddit, EchoJS y muchos otros.
  • Expone en algún meetup o encuentro de la comunidad de profesionales que puedas. Si no participas en ninguno, es hora de comenzar a salir de tu cueva y conocer a otros como tú y compartir con ellos.
codigo abierto 02

Satisfacción

¡Bravo! Has aportado un grano de arena de algo que puede ayudar a otros y quizás, a miles de desarrolladores que como tú se benefician de personas que piensan más allá de sí mismos y quieren aportar con su tiempo, esfuerzo y talento a toda una comunidad. No esperes mucho más, si tienes un retorno será a través del tiempo y de tu constante trabajo. Muy pocos dan en el clavo a la primera, pero no desistas: tener un portfolio en repositorios open-source en GitHub (u otros) es una muy buena manera de mostrar de lo que eres capaz.

Bien, me convenciste. ¿Cómo comienzo?

La motivación es el 98%. La idea el 1%. El tiempo y dedicación el otro 1%. A continuación te ayudaré con los 2 últimos:

Idea:

No intentes reinventar la rueda. Puedes hacer algo que ya exista, pero a tu manera, más simplificado, menos código, menos peso, más customizable. No temas la competencia, míralo como una manera de ampliar la oferta. Por ejemplo, si necesitas un carrusel de banners, puedes intentar hacer el tuyo. Pequeño, modular, que no pese 100kb lleno de configuraciones que no vas a utilizar. O comienza con un tooltip, que es sencillo. Un menú dropdown, un menú para dispositivos móviles. Son sólo pocos ejemplos, en interfaz hay montones de otras librerías que pueden construirse en poco tiempo. Cuando veas la oportunidad de poder hacer el tuyo, no dudes en tomarlo.

Tiempo:

Es común escuchar la frase “cuando tenga tiempo lo hago”. He aquí una buena frase que no sé a quién atribuirla (si no existía yo la inventé):

El tiempo nunca se tiene, se hace.

Si no te haces el tiempo para emprender un proyecto personal, nunca realmente tendrás el tiempo disponible porque siempre habrá algo más que te absorberá esa disponibilidad. Ordénate, enfócate y produce. Si tienes que sacrificar unas horas del fin de semana, no dudes en hacerlo.

codigo abierto 03

Les dejo hecha la invitación y espero haber contribuído con buenas razones por las cuales valen la pena invertir tiempo y esfuerzo, en construir herramientas que nos ayuden a hacer nuestro trabajo mejor, más fácil, en menos tiempo y con mejores resultados.

Guardar

Guardar

Guardar

Guardar