Open hasta que te comen la merienda

ODSC13

Este verano he tenido la suerte de ser invitado a tres charlas: una en Dublín (dónde me declararon Urban Knight), y dos en Barcelona: para la primera edición de la conferencia Scratch fuera de los EEUU (compartí keynote con Clive de R-Pi donde hablé sobre educación), y en el FadFest.

He conocido a dos de mis grandes ídolos: M. Resnick, del MIT, cuya tesis doctoral es el punto de inspiración de prácticamente todo lo que hago dentro del campo de la educación; y a E. Manzini, el gurú del diseño orientado a servicios.

Cada vez que doy una charla, intento hacerla de forma diferente a la anterior. Quienes me conocen saben que no me gusta repetirme y que no suelo hacer uso de muchos adjetivos. Eso no quiere decir que no sepa apreciar las cosas, ni que en mi cabeza todo sea binario. Lo que sucede es que hay cuestiones que deberá reflexionar cada uno y llegar a conclusiones sobre que posición tomar de manera independiente.

Este verano, me he centrado en recordar la idea de que en Arduino, lo que hacemos es abierto. En paralelo, uno de los temas candentes de este verano, dentro del mundo del hardware abierto, ha sido el lanzamiento de una campaña en Indiegogo que promociona la fabricación, por medio de crowdsourcing, de una placa compatible con Arduino Leonardo por 9USD envío incluido. El link aquí:

http://www.indiegogo.com/projects/9-arduino-compatible-starter-kit-anyone-can-learn-electronics

 

Desde Arduino hemos evitado hacer ningún tipo de declaración, si bien hemos seguido muy de cerca el desarrollo de la campaña, así como otras campañas anteriores llevadas a cabo por smARtMAKER (el patrocinador de Borderless electronics, como se hace llamar Harold Timmis, el representate del proyecto en Indiegogo). Lo que sigue es mi opinión personal al respecto, por si le interesa a alguien. He esperado hasta que la campaña estuviera por terminar, más que nada para evitar lanzar ningún tipo de prensa sobre el asunto. Ahora mismo quedan 11 horas para que termine la campaña, como prueba, ahí va una foto:

20130810_BorderlessLeonardo

Las matemáticas de este proyecto son muy sencillas:

  • el I+D del proyecto lo hizo Arduino
  • hubo que hacer varias tiradas de placas hasta acertar con el diseño apropiado
  • para quienes lo quieran saber, hubo que desarrollar unos drivers USB que llevaron un tiempo, además de tener que conseguir la firma digital de Windows, la multiplicidad de perfiles, etc. (todo esto nos llevo un tiempo, como bien saben los miembros de la comunidad de Arduino)
  • este proyecto no cubre la licencia de producto USB (la última vez que lo miré la cosa era bien compleja y bien cara: http://www.usb.org/developers/vendor/) usan el de Arduino Leonardo … algo que a Arduino le pone en un dilema, puesto que viola el contrato de la licencia USB que compramos en Arduino y el no defender nuestra licencia podría ser considerado como una violación del contrato (anteriormente Atmel y Microchip han tenido problemas con esto)
  • este proyecto no cubre que todos los que se llevan esa placa, tienen un IDE desarrollado y mantenido por terceros (Arduino en este caso) que tiene dos personas dedicadas en exclusiva al desarrollo del software del IDE
  • al margen del IDE, en Arduino hay toda una serie de actividades diarias que hay que mantener: un servidor que alimenta más de 60 millones de visitas mensuales (ahora mismo se aloja en Amazon, para asegurarnos que no se produzcan caídas de servicio gracias a un sistema de infraestructura elástica), una cuenta de GitHub con una lista bien larga de proyectos, un servidor de desarrollo en paralelo en el que se prueba la futura web de Arduino (porqué siempre hay una futura web de Arduino, no dejamos de desarrollarla ni un solo día), un sistema de gestión de proyectos para poder coordinar a los más de 30 desarrolladores y diseñadores con los que colaboramos diariamente … podría seguir, pero quien lea esto, se hace a la idea
  • el sueldo de Harold, lo paga alguien

Es cierto que en la red de Arduino hay una serie de distribuidores que se quedan una parte, lo que encarece las placas, pero también es cierto que esos señores/as se encargan de que haya inventario cerca de los usuarios, de dar soporte local con talleres y charlas, de importar las placas a lugares que jamás pisaré tras haber flirteado con la burocracia de países imposibles.

Hacer cosas abiertas (open) implica un riesgo, mayormente el de que no se reconozca en que se invierte el esfuerzo para conseguir que las cosas salgan bien. Pero no me voy a extender, que es bien tarde y es sábado noche.

Para aquellos a quien les interese, lo más barato y con lo que más se aprende, como me dijo un día un profesor de la universidad de Berkeley, es montar una placa a mano y aprender a programar en assembler. Mientras tanto, Harold vende libros sobre proyectos con Arduino y este ejercicio le ayuda a promocionar sus libros. Al de Berkeley como a Harold solo puedo decirles lo mismo que decimos en Zaragoza: ¡Ahí tus huevos!

Feliz verano.

REACCIONES 20130811: Como era de esperar, este artículo ha despertado algunas reacciones, Oscar nos da una colección de reflexiones, todas válidas, sobre como ve el la cuestión, aquí sus notas:

20130811_Oscar_Rodriguez

Voy a tomar los temas uno por uno. En resumen hay tres cuestiones que Oscar aborda:

  1. Oscar hace una comparación con el kernel de Linux y menciona como Linus Torvalds nunca se quejó de que hubiera forks del kernel. La verdad, no creo que Oscar quiera hacer una crítica de Arduino con esto, suena a un comentario sobre la forma como funciona Linux. Hasta ahí estamos de acuerdo, y en Arduino no tenemos ningún problema en que la gente se lucre con nuestro diseño. En lo que se refiere al caso del proyecto de Indiegogo, Harold no se lucra directamente con las placas, en todo caso con los libros. Como autor (también escribo libros), no se gana nada a no ser que se vendan decenas de miles de libros al año, cosa que dudo sea el caso. Así pues, no creo que Harold haya lanzado esta iniciativa por el dinero.
  2. Oscar menciona que podríamos mantener el servidor del mismo modo que wikipedia, mediante donaciones de la comunidad. Arduino es un recurso educativo que necesita estar online 24/7/365, sencillamente no podemos arriesgarnos a no conseguir el dinero. Cuando empezamos, en el 2005 nadie (y exclamo NADIE) daba un chavo por el proyecto y no hubo forma de financiar ni las primeras 1.000 placas. Massimo, Gianluca y yo mismo tuvimos que poner dinero de nuestro bolsillo porque ni nuestras universidades creían en el proyecto. Cuando se trata del servidor, trabajamos con un modelo predictivo por el que estimamos cuanto va a crecer nuestro tráfico para poder hacer frente a los picos y gastar lo menos posible. Ahora mismo no se decir cuanto gastamos, solo se que mientras yo llevé los servidores, llegamos a gastar 2.000 USD al mes solo en VPS. Ahora es mucho más. Otros proyectos como Processing se financian por donaciones, pero nosotros no queremos que nuestra web ni nuestra documentación dependan de eso. Estamos en Europa y no es tan sencillo convencer a la gente para que done, ni conseguir donaciones de estamentos públicos. Nuestro modelo se basa en un porcentaje mínimo por placa para mantener todo el sistema … y aún así damos todo en abierto: código, hardware y documentación.
  3. en cuanto al IDE, es GPL, no hay ningún problema en clonarlo y que lo mantenga la comunidad. Es más, lo mantiene la comunidad, solo te invito a que hagas tu fork en GitHub y mandes “pull-requests” o rellenes “issues”. También hay una dirección de correo: developers at arduino.cc en la que puedes participar del debate en otro formato, si es que lo prefieres.
  4. en cuanto al tema del USB con Microchip, Oscar leete el punto 3 del contrato que comentas: en cuanto superas las 10.000 unidades tienes que comprar tu propio VID. Además, tienen el derecho a revocar tu contrato cuando quieran. La sublicencia del USB solo se puede aplicar a prototipos y similares. Si esa es la situación en la que quieres poner a tu proyecto y a tu grupo de usuarios, allá tu. La decisión inteligente, si quieres hacer algo USB de ese tamaño es comprar tu licencia. Por otra parte, en Arduino tenemos un programa que se llama Arduino@heart al que Harold se podría haber subscrito, pero no lo hizo. Otros proyectos si lo han hecho, por ejemplo Smart Citizen, un proyecto español, por cierto.
  5. siguiendo con el tema del USB, resulta que lo que no puedes hacer es revender tu licencia a otras marcas, justamente lo que propones. Para nosotros no hay ningún problema en que venga un particular, institución o empresa y que se haga 100 placas. Para eso no tienes que firmar ningún contrato.

 


opinión