El makerspace es la próxima frontera del código abierto

| |

COMPARTE EL ARTÍCULO!!!

Bienvenidos de nuevo, amigos, a la tercera entrega de mi columna de Seis Grados. Gracias por el maravilloso apoyo durante las dos últimas entregas. Como siempre, mantén tu retroalimentación fluyendo en los comentarios y no dudes en enviarme un correo electrónico si tienes temas en los que te gustaría que profundizara.

Para la columna de este mes, quiero profundizar en lo que considero un tema importante: cómo el código abierto puede proporcionar las barandillas para una nueva generación de innovadores.

¿Palabras de moda, mucho? Tal vez. Pero quédense conmigo, gente…

Cuando era joven, estúpido y tenía el cerebro de un cacahuete, me metí en el mundo de las computadoras. Me sentí muy afortunado de que mis padres me consiguieran un Commodore 64, y con él jugué y aprendí a programar en BASIC. A medida que mi interés por la informática fue creciendo, conseguí un antiguo PC y empecé a aprender C, más tarde entré en Linux y en el código abierto.

Desde muy temprana edad me fascinaron los aparatos y las computadoras, pero cuando era adolescente y no tenía dinero, nunca podía permitirme comprar hardware nuevo. El software era una bestia diferente: era gratis, y cuando cambiaba, yo también podía obtener las cosas nuevas gratis. Como tal, básicamente me convertí en un tonto del software, no sólo porque me encantaba el software, sino porque era lo único a lo que tenía acceso.

Ahora, avance rápido hacia 2019. El pelo se ha ido y tengo un hijo de dos años llamado Jack. Como la mayoría de los padres, pienso en las oportunidades que tendrá para explorar su creatividad e intereses, y en comparación con mis años de formación, va a ser un asunto totalmente diferente.

Cuando Jack tenga la misma edad que yo, tendrá una gran cantidad de tecnología al alcance de la mano. Podrá utilizar y crear código abierto como hoy en día, pero también tendrá acceso a una gran cantidad de APIs para servicios web siempre activos. Podrá controlar una cantidad ilimitada de potencia de computación con la nube (haciendo que cosas como la inteligencia artificial, los grandes datos y el aprendizaje de la máquina sean más accesibles). Tendrá acceso a un potente sistema de cálculo de costes perdidos y a cientos de sensores diferentes. Podrá descargar, crear e imprimir artículos en 3D en una variedad de materiales diferentes. Tendrá acceso a la robótica, la realidad virtual, la realidad aumentada y la visión por ordenador.

Para aprender y explorar esta gama de tecnologías, tendrá una biblioteca de cientos de millones de videos, libros, artículos, tutoriales y más, todos disponibles en línea. Estará expuesto a una ubicuidad de educación, apoyo y datos, y podrá financiar sus ideas con fondos públicos y equidad.

En pocas palabras, si bien me sentí facultado por la disponibilidad de Internet y el código abierto, Jack se verá facultado por un abundante suministro de herramientas, no sólo de software, sino de todo lo necesario para crear productos, empresas y redes enteras. Podrá poner sus creaciones en manos de otros más fácilmente.

Esto no sólo allana el camino para una innovación increíble, sino que permite que la cultura de la fabricación comience cada vez más temprano. Ya podemos ver señales de esto hoy en día en personas como Jack Andraka, quien a la edad de 15 años creó una prueba que detectó etapas tempranas de cáncer de pulmón, ovario y páncreas. En primer lugar, descubrió cómo hacer esto con herramientas rudimentarias y una extensa investigación utilizando Google. Incluso el niño de 6 años de nuestro vecino está participando, construyendo robots con Lego Mindstorms.

Un nuevo mundo

En este nuevo y valiente mundo de proyectos heterogéneos que combinan hardware, software, impresos, cloud y otras piezas, vamos a ver una cacofonía de diferentes herramientas para construir estas diferentes partes de una idea y un proyecto. Tenemos GitHub para colaborar en torno al código, Thingiverse para modelos 3D, Trello para la gestión y coordinación de proyectos, Moqups y Balsamiq para el diseño de interfaces de usuario, kits de herramientas específicas para la construcción de drivers y la integración con sensores, y mucho más.

Aunque cada una de estas herramientas tiene sus propias comunidades, las cosas pueden resultar interesantes en la forma en que colaboran en torno a estos proyectos heterogéneos que incluyen diferentes tipos de contenido, ya sea software, diseños de hardware, cargas de trabajo en nube o algo más.

Por ejemplo, imagina que quiero construir un dron. Yo crearía y usaría hardware abierto, imprimiría el marco en 3D, usaría electrónica lista para usar, la alimentaría con código abierto, y tendría algunas otras piezas allí también.

Idealmente me gustaría construir una comunidad en la que codificadores, hackers de hardware, científicos de aviación, y otros pudieran venir y ayudar.
refinar y mejorar el dron.

Esto plantea la pregunta, ¿podría construir una comunidad para crear un producto de la misma manera que puedo crear una comunidad de código abierto para construir software?

Productos abiertos

Si podemos averiguar cómo hacerlo, las oportunidades podrían ser enormes.

Como muchos de nosotros hemos aprendido del código abierto, la codificación es divertida, pero la codificación social es mucho más divertida y gratificante. Hoy en día hay muchas personas que hacen cosas por sí mismas en sus garajes, pero piensen en lo empoderante que podría ser colaborar con otros en todo el mundo para construir aviones no tripulados, coches, aparatos, relojes o cualquier otra cosa. De hecho, tomaría el espíritu del código abierto y lo haría explotar más allá del software.

Imagine la noción de productos abiertos; proyectos que puede descargar en forma de un único conjunto de planos que puede enviar a su impresora 3D, a su hardware, a su compilador y planos físicos que puede utilizar para ensamblar el producto. En estos planos todo estaría completamente abierto: si puedes verlo, puedes hackearlo.

Imagine que cada uno de estos productos abiertos tiene una comunidad a la que puede unirse como una comunidad de código abierto en la que puede crear estos planos, experimentar y luego contribuir con sus mejoras y correcciones.

De la misma manera que el software libre ha generado millones de carreras y miles de empresas, imagínese la oportunidad con la apertura aplicada a los productos. Potencialmente podría impulsar una revolución en la forma en que conceptualizamos, construimos y compartimos las cosas y en la forma en que experimentamos e innovamos para ampliar los límites de la ciencia y la tecnología.

Inspiración en código abierto

Ahora, colaborar en un proyecto heterogéneo no va a ser sencillo, hay muchos desafíos. ¿Cómo se agrupan el software, los diseños de hardware y otros materiales de manera que sea fácil colaborar y distribuir? ¿Qué estándares abiertos necesitamos para garantizar el acceso ubicuo? ¿Cómo aplicamos los mismos principios de desarrollo de software distribuido al hardware y a otras áreas? ¿Cómo podemos tender un puente entre las diferentes culturas de la piratería de software y hardware?

Hace tiempo que creo que el código abierto es el lugar donde la sociedad innova. Cuando podemos construir tecnología juntos, podemos explorar, experimentar y hacer grandes cosas. Esta es la razón por la que el código abierto hace funcionar la infraestructura del mundo y muchos de los dispositivos en nuestros hogares y bolsillos.

Parte de la razón por la que el código abierto funciona es que hemos descubierto cómo trabajar juntos de manera efectiva para mejorar y refinar la tecnología. A menudo hablamos de la comunidad en el mundo del código abierto, pero creo que a menudo olvidamos, o no nos damos cuenta, de lo raras que son nuestras comunidades.

Todos estamos familiarizados con las piezas comunes en la mayoría de las comunidades de código abierto: sistemas de control de revisiones, rastreadores de errores, Wikis, listas de correo, planificación regular de versiones, reuniones, etc. La mayoría de las otras comunidades en el mundo, como los clubes de lectura locales, los sitios de fans, las convenciones, las comunidades de juego, y más, simplemente no colaboran de ninguna manera como nosotros.

Hemos creado una forma de trabajar juntos que es realmente única.

Como tal, creo que el código abierto aplicado al software puede ser un gran punto de partida para descubrir cómo construir comunidades para estos proyectos heterogéneos. Tendremos que enfrentarnos a algunos retos técnicos y sociales, pero tenemos esta oportunidad para que el software libre inspire a una generación completamente nueva y construya algunas cosas increíbles.

Próximos pasos

Entonces, ¿cómo lo hacemos?

Bueno, naturalmente no tengo todas las respuestas, pero creo que hay algunos puntos de partida claros.

En primer lugar, tendremos que crear la premisa de un paquete de proyectos. De la misma manera que puedo descargar una rama de Git o un tarball con algún código, completo con el sistema de construcción, vamos a querer ser capaces de descargar una sola rama o tarball con el software completo, diseños de hardware, y más para saber cómo crear un producto abierto.

En segundo lugar, tendremos que identificar dónde necesitamos normas abiertas. Por ejemplo, cuando descargo este plano, lo ideal es que el mayor número posible de personas pueda construirlo. ¿Cómo podemos imprimir en varias impresoras 3D diferentes? ¿Cómo podemos asegurarnos de que podemos probar y experimentar con diferentes componentes de hardware (por ejemplo, probando diferentes motores en el mismo tamaño de marco impreso en 3D)? A medida que automatizamos la fabricación más y más, ¿cómo aseguramos que nuestros planos funcionen en todos los nuevos procesos de fabricación?

En tercer lugar, tendremos que averiguar cómo colaborar y mejorar las diferentes partes de estos proyectos. Por ejemplo, si alguien refina una pieza impresa en 3D de un dron, ¿cómo puede bifurcar los planos, enviar sus cambios, hacer que se revisen y hacer que se fusionen con el proyecto? Otra pregunta podría relacionarse con las pruebas automatizadas: cuando construimos productos físicos no siempre podemos permitirnos el lujo de construir y probar hardware físico nuevo para que luego se bloquee y se queme, así que ¿cómo podemos hacer pruebas unitarias de hardware o pruebas en un entorno virtual? ¿Qué tipo de mediciones y métricas podemos obtener de estas pruebas para compartirlas con la comunidad en general e inspirar un mayor debate para refinar el proyecto?

Por último, queremos fomentar una cultura de desarrollo y educación abiertos. Esto es muy frecuente en el código abierto, pero en algunos mundos de hardware la apertura es menos común. Quisiéramos compartir y distribuir conocimientos sobre cómo la gente puede involucrarse en estas comunidades, así como animar a comunidades de productos más abiertas para que formen y hagan un trabajo interesante.

Creo que el código abierto nos da una base firme de los principios sociales fundamentales de la forma en que colaboramos: formatos compartidos, estándares abiertos, métodos para contribuir y revisar el material, y para discutir y planificar el trabajo. Si tomamos estos principios básicos y los desarrollamos con este nuevo y heterogéneo mundo, podríamos realmente liberar el potencial en todo el mundo.

Como con todas mis columnas, esto es sólo el comienzo de la conversación. Suficiente de mí, quiero oír tus pensamientos. ¿Cómo cree que podríamos crear un mundo en el que podamos crear productos e inventos tan abiertos y atractivos como los proyectos de software de código abierto? Espero ver tus pensamientos.

COMPARTE EL ARTÍCULO!!!

Previous

Cómo construir un sensor móvil de partículas con un Pi de raspberry

Pipelines y herramientas de DevSecOps: Lo que necesitas saber

Next

Deja un comentario

shares