El #NPMgate o por qué no usar siempre lo último en desarrollo

11 lineas de código. Eso es lo único que hacer falta para “romper internet” y provocar grandes problemas a algunos de los sitios web más importantes.

A modo de breve resumen, npm es un gestor de paquetes para nodejs, una de esas tecnologías que casi acaban de aparecer y de inmediato son utilizadas por todo el mundo como si de la panacea se tratara. Cada desarrollador de node puede crear sus propios programas, y ponerlos a disposición de toda la comunidad, usando para ello algo parecido a “Minombredeusuario-minombredeprograma”.

Uno de los desarrolladores, que usa el nombre de usuario kik, recibió un aviso de una compañía también llamada Kik, que querían que les cediera el uso de su nombre. Al negarse este usuario a cederlo, pasaron de inmediato a las amenazas legales, y el usuario decidió borrar su usuario y todos los programas que contenía de npm. Este hecho no habría tenía mayor relevancia, de no ser porque entre sus programas estaba uno del que dependen la mayor parte de los programas que actualmente usan npm, y que, al ser borrado, provocó que muchos de los sitios más importantes de Internet experimentaran problemas de todo tipo. Finalmente los gestores de npm lo solucionaron “a las bravas”, volviendo a publicar el código a la fuerza, e Internet volvió a respirar tranquilo.

Podéis leer más información aquí, aquí, aquí y aquí.

Aunque en si el problema no pasó de un fin de semana movido para unos cuantos desarrolladores, yo extraigo varias conclusiones de todo este lío:

  1. Tenemos un enorme problema a nivel legal cuando las empresas pueden usar un registro de marca para exigir algo como un usuario o espacio de nombres, sobre todo en el mundo del software libre.
  2. Volver a publicar el código de la forma en que se hizo, sienta un peligroso precedente, por mucho que su dueño le quite importancia al asunto en Twitter.
  3. Una empresa siempre hará lo que favorezca a sus clientes (y por tanto a su dinero), y si tiene que pasar por encima de una o varias personas, pues se pasa y luego se pide perdón.
  4. Pretender basar el grueso de nuestro negocio/proyecto en una tecnología que tiene un recorrido bastante breve, nos expone a problemas de este tipo.
  5. El Software libre implica mucho más que “publicar código”. Implica una serie de responsabilidades sociales que pueden chocar con los intereses de una empresa. Usar la tecnología de esa empresa nos obliga a aceptar lo que nos caiga, mal que nos pese.
  6. Siempre hay que revisar las condiciones/licencias o términos de aquellas librerías que vayamos a usar.

En lo que a mi respecta, y por mucho que la razón no este de su parte, considero que la acción de kik (el usuario) fue la correcta en el contexto de una protesta ante un flagrante abuso por parte de Kik (la empresa). En mi opinión la gente de Node/npm debería haber zanjado el asunto protegiendo y defendiendo su decisión en lugar de volver a publicar el código, y muchos de los programadores que ahora usan npm deberían dejar de hacerlo de forma pública.

Y, sobre todo, hay que tener mucho cuidado con la tecnología que decidimos usar para nuestros proyectos, por mucho que sea la más “molona” del momento.

 

 

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *