LearningML como proyecto Open Source

LearningML es una plataforma para la enseñanza y aprendizaje de los fundamentos de Machine Learning a través de actividades prácticas. Pero además es un proyecto de investigación y un proyecto open source.

¿Qué significa que LearningML sea un proyecto open source?

El software de fuentes abiertas (open source) sigue unos principios que facilitan la colaboración de muchas partes para su desarrollo. Esto se consigue aplicando una licencia que permite a cualquier persona descargar el código, estudiarlo, modificarlo e incluso instalarlo en su propio servidor. De esta manera, si alguien, por la razón que sea, desarrolla una nueva funcionalidad para LearningML, el proyecto puede beneficiarse de ella incorporándola.

¿Por qué puede interesar a alguien desarrollar una nueva funcionalidad para LearningML?

Las razones son tantas como personas hay en el mundo, pero algunos probables motivos pueden ser:

  • Estudiantes de grado/máster que buscan un proyecto para su trabajo fin de grado/máster.
  • Profesores que buscan alguna actividad/proyecto para sus alumnos.
  • Instituciones o empresas que quieren usar LearningML y les vendría bien añadir cosas nuevas a LearningML.
  • Personas que quieren participar en un proyecto Open Source y aprender como se programan los algoritmos de Machine Learning.

¿Puede alguien instalar LearningML en un servidor distinto a https://learningml.org?

Sí. Pero siempre en los términos de la licencia. Es decir, debe proporcionar con claridad un acceso al código fuente que ha modificado. Y si no lo ha modificado, debe mostrar un acceso al repositorio original. También debe realizar las atribuiciones correspondientes. La licencia que hemos aplicado tanto al editor de LearningML como al API server es Affero GPL. Por otro lado, la modificación de Scratch para incorporar los bloques de programación de Machine Learning, lleva la misma licencia que el código original de Scratch desarrollado por el MIT: BSD-3.

¿Cómo se puede contribuir al proyecto?

Se puede contribuir de varias maneras:

  • como desarrollador,
  • como profesor,
  • como investigador
Contribuyendo como desarrollador

Todo el código necesario para construir la plataforma LearningML está disponible en gitlab. El siguiente enlace muestra un listado con todos los proyectos que conforman LearningML:

En los ficheros README.md y CONTRIBUTING.md de cada proyecto encontrarás información sobre como crear un entorno de desarrollo y sobre como contribuir al proyecto. Posibles formas de contribuir como desarrollador son:

  • Reportando errores,
  • Discutiendo el estado actual del código,
  • Enviando merge requests que arreglen problemas o añadan nuevas funcionalidades,
  • Proponiendo nuevas funcionalidades,
  • Convirtiéndote en mantainer del código,
  • Haciendo pruebas (manuales o añadiendo pruebas automáticas)
  • Escribiendo documentación
Contribuyendo como profesor

Si eres profesor o profesora, la manera más inmediata de contribuir al proyecto es usándolo en tus clases y ayudando a su difusión a través de redes sociales y presentándolo a otros profesores y profesoras.

Por supuesto, si has realizado alguna actividad que usa LearningML de alguna manera y la quieres contar en esta web, puedes ponerte en contacto conmigo a través del formulario de contacto. Sin lugar a duda, estas actividades son los recursos más valiosos que podéis aportar al proyecto como profesor y son más que bienvenidas.

También puedes usar el formulario de contacto para realizar sugerencias o si se te ocurre alguna idea en la que podamos trabajar conjuntamente.

Contribuyendo como investigador

Si eres investigador y estás trabajando en el mundo del pensamiento computacional y la enseñanza de la inteligencia artificial en la escuela, y estás utilizando LearningML para llevar a cabo alguna investigación, me encantaría conocerla y difundirla desde esta web.

Si estás buscando alguna herramienta para la enseñanza de la inteligencia artificial y la programación informática, y quiere saber más acerca de lo que puede ofrecerte LearningML, o simplemente tienes alguna idea para tu investigación y necesitas ayuda, puede usar el formulario de contacto para contarme.


Y, por supuesto, seas desarrollador, profesor, investigador o lo que sea; si tienes alguna idea para contribuir al proyecto, dímelo 😉 (formulario de contacto o por twitter @juandalibaba).