Introducción
Carta descriptiva 📜
Sección titulada «Carta descriptiva 📜»Por favor consulta la carta descriptiva en el sistema de la Universidad. Te voy a mostrar aquí los puntos más importantes de ese documento.
Descripción del curso 📝
Sección titulada «Descripción del curso 📝»El objeto de este curso es aportar a las competencias que te permitan construir aplicaciones interactivas que intercambien información con varios dispositivos de cómputo externos que tengan la capacidad de leer y/o modificar el mundo físico. El curso se estructura alrededor de un proyecto en el cual construirás una aplicación que permita trabajar conceptos tales como comunicaciones inalámbricas, protocolos de comunicación híbridos, sockets, técnicas de programación multihilo, máquinas de estado, entre otros.
La aplicación deberá intercambiar información de manera inalámbrica con, al menos, tres dispositivos de cómputo, de los cuales uno podrá controlar remotamente la aplicación. La aplicación interactiva construida se publicará en un repositorio público y hará parte de tu portafolio.
Algunos ejemplos de este tipo de aplicaciones:
Sección titulada «Algunos ejemplos de este tipo de aplicaciones:»- TDAxis
- RisitasCorp y RisitasCorpApp
- Proyecto Cosmere
- Proyecto WEM_23
- Proyecto Los Repartidores
- Video prototipo #3 sistemas físicos 2 Rafael Castaño Méndez
- ¿Cómo se ven nuestras neuronas con cada acción que realizamos? + Explicación
- Tercer Prototipo - Sistemas Físicos - Jose Santiago Restrepo
- 3D Vehicle Interactive Customization - Wendy Martinez 2024-20
- Heart rate visualization demo - Emanuel Quintero 2024-20
- Feelum - Tobia Arrieta Machado 2024-20
- Auralis - Sebastián Torres 2025-10
- Manuela Buriticá 2025-10
- Moment factory Shows & Concerts
- Interactive de Moment Factory
- Lumia de Moment Factory
Propósito del curso 🎯
Sección titulada «Propósito del curso 🎯»Se espera que al finalizar el curso seas capaz de construir una aplicación interactiva que pueda intercambiar información con múltiples sistemas de cómputo externos que tengan la capacidad de leer y/o modificar el mundo físico. Para este fin te propondré un tema o una situación problemática que debes resolver seleccionando las técnicas de programación y protocolos más adecuados (nivel autónomo) según los requerimientos.
Resultado de aprendizaje general 🏆
Sección titulada «Resultado de aprendizaje general 🏆»Soluciono problemas de interacción mediante la integración de contenidos digitales y software de acuerdo con un diseño previo, para la implementación de sistemas intermediados por el entretenimiento digital.
Competencia
Sección titulada «Competencia»Materializa sistemas intermediados por el entretenimiento digital para resolver problemas de acuerdo con requerimientos condicionados por el contexto.
Los cursos del área de materialización buscan que puedas desarrollar las competencias necesarias para solucionar problemas de interacción integrando lo que has aprendido de ingeniería de software, construcción de contenidos digitales y diseño interactivo.
Resultados de aprendizaje específicos
Sección titulada «Resultados de aprendizaje específicos»Integro dispositivos de entrada-salida con sistemas de cómputo para la creación de sistemas intermediados por el entretenimiento digital según los requisitos definidos. El nivel de desarrollo esperado es autónomo.
¿Qué significa el nivel autónomo?
Significa que dado un problema tú debes seleccionar los conceptos y herramientas más apropiadas para conseguir una solución óptima al problema.
¿Eso quiere decir que hay más niveles?
Sí. Los niveles son receptivo, resolutivo y estratégico.
Contenidos a revisar 📚
Sección titulada «Contenidos a revisar 📚»Unidad 1: diseño y arte generativo.
Unidad 2: marco de diseño para proyectos de diseño generativo.
Unidad 3: referentes y herramientas 1.
Unidad 4: referentes y herramientas 2.
Unidad 5: concepto, diseño, experimentos.
Unidad 6: implementación iteración 1.
Unidad 7: implementación iteración 2.
Unidad 8: portafolio.
Metodología y estructura del curso 🏗️
Sección titulada «Metodología y estructura del curso 🏗️»Este curso gira alrededor de la construcción de un producto interactivo para tu portafolio. Te propondré un problema que deberás abordar mediante un proyecto de curso. Por tanto, la metodología del curso será aprendizaje basado en proyectos.
El curso está estructurado en dos partes. En un primero momento vas a explorar y experimentar. Esto servirá para que diseñes de manera informada la solución al problema. En el segundo momento diseñarás, implementarás y documentarás tu producto interactivo.
Cronograma 📅
Sección titulada «Cronograma 📅»Unidad 1: semanas 1 a 2.
Unidad 2: semanas 3 a 4.
Unidad 3: semanas 5 a 6.
Unidad 4: semanas 7 a 8.
Unidad 5: semanas 9 a 10.
Unidad 6: semanas 11 a 12.
Unidad 7: semanas 13 a 14.
Unidad 8: semanas 15 a 16.
Evaluación ✅
Sección titulada «Evaluación ✅»La evaluación en este curso será formativa, progresiva y compartida. Cada unidad se evaluará en tres momentos: primero revisaremos juntos tu trabajo de la fase set-seek y luego el de la fase apply. Luego, en la fase reflect realizarás una autoevaluación y una coevaluación del trabajo de un compañero. Estas evaluaciones se harán en clase, conversando contigo, y quedarán registradas directamente en tu repositorio mediante una rúbrica analítica con escalas descriptivas. Además, tú mismo completarás esa rúbrica desde tu experiencia (autoevaluación) y también evaluarás a un compañero (coevaluación), todo siguiendo los mismos criterios. Esto nos permitirá tener una visión completa de tu proceso, no solo del resultado final, y te ayudará a desarrollar un aprendizaje más profundo, autónomo y consciente.
Te voy a detallar un poco más cómo será la evaluación. Ten presente que será una evaluación DURANTE el proceso, no al final:
Primer momento: evaluación de set-seek
Al finalizar la primera semana de la unidad, se capturan automáticamente las evidencias de lo que hiciste durante las fases de exploración (set) e investigación (seek). En la primera sesión de la segunda semana, mientras trabajas en tu actividad de aplicación, yo me acercaré a tu puesto para revisar contigo lo que construiste, conversar sobre tu proceso y diligenciar la parte correspondiente de la rúbrica.
Segundo momento: evaluación de apply
Justo antes de la segunda sesión de la segunda semana de la unidad, se capturan las evidencias de lo que desarrollaste en la fase apply. Durante esa sesión, mientras haces tu reflexión final (reflect), realizaré contigo la evaluación de esta fase práctica, también en el aula y en diálogo contigo.
Tercer momento: evaluación de reflect (autoevaluación y coevaluación)
Al cierre de la unidad, completarás una autoevaluación y realizarás una coevaluación del trabajo de un compañero, usando la misma rúbrica. También dejarás una reflexión escrita sobre tu proceso y una retroalimentación sobre la experiencia vivida en la unidad.
Todo este proceso busca que la evaluación no sea solo un resultado, sino una oportunidad para pensar sobre cómo y qué estás aprendiendo.
Asistencia 🎓
Sección titulada «Asistencia 🎓»Dedicación ⏱️
Sección titulada «Dedicación ⏱️»Este curso es de 2 créditos distribuidos en dos sesiones semanales con acompañamiento del docente y una sesión de trabajo independiente. La dedicación total es de 6 horas.
Workflow del curso para el trabajo en equipo 🔄
Sección titulada «Workflow del curso para el trabajo en equipo 🔄»Esta guía documenta el flujo de trabajo utilizando GitHub como plataforma de desarrollo, seguimiento, entrega y evaluación de evidencias. Este curso lo realizermos como un equipo compuesto por cada estudiante, el profesor y un compañero coevalador en cada unidad. El flujo de trabajo está diseñado para facilitar la colaboración, la autoevaluación, la coevaluación y la evaluación del profesor, asegurando una trazabilidad completa de las entregas y un proceso de aprendizaje reflexivo y colaborativo.
1. Propósito del flujo:
- Asegurar trazabilidad completa de las entregas.
- Facilitar la autoevaluación, coevaluación y evaluación del profesor.
- Centralizar las evidencias por fases: Set/Seek, Apply, Reflect.
- Automatizar la captura de entregas y la consolidación de resultados.
2. Estructura de ramas y Pull requests (PR):
- main: rama protegida. Solo el profesor puede hacer merge. Contiene las evidencias definitivas.
- unidadX/set-seek: rama de trabajo del estudiante para la fase de investigación.
- unidadX/apply: rama de trabajo para el desarrollo de soluciones.
- unidadX/reflect: rama para la metacognición, auto y coevaluación.
Cada PR de entrega se genera desde la rama correspondiente hacia main.
3. Cronograma por unidad
-
Semana 1:
- El profesor activa unidadX/set-seek como rama por defecto.
- El estudiante trabaja y hace commit/push en esa rama.
-
Semana 2, Sesión 1:
- El profesor automatiza la creación de un PR unidadX/set-seek → main.
- El PR queda abierto, y se hace merge luego de la evaluación.
- El profesor activa unidadX/apply como nueva rama por defecto.
- El profesor escribe directamente en rubrica.md durante esta semana (mientras la rama activa es unidadX/apply).
-
Semana 2, Sesión 2:
- El profesor genera el PR unidadX/apply → main.
- La evaluación del profesor sobre la fase apply también se hacen directamente en rubrica.md mientras unidadX/reflect está activa.
- El PR permanece abierto y se hace merge posterior a la evaluación, que puede ocurrir en cualquier momento durante la sesión.
- El profesor activa unidadX/reflect como rama por defecto para las actividades finales.
- Durante esta sesión, otro estudiante realiza una coevaluación de la unidad completa (set-seek y apply) de un compañero, con fines formativos. Esta evaluación no se escribe en el repositorio del evaluado, ni se deja como comentario en el PR (ya que puede ser cerrado en cualquier momento), sino que queda únicamente documentada en el archivo reflect.md dentro del repositorio del estudiante que realiza la coevaluación.
-
Fin de la unidad:
- En la sesión 2 de la semana 2, se completa la evaluación de la unidad y se sube la nota al sistema institucional.
- La rama unidadX/reflect se mantiene como activa hasta que comience la siguiente unidad. Durante este tiempo, el estudiante podrá realizar ajustes formativos a sus bitácoras, sin que esto afecte la nota sumativa, y podrá usarlos como base para solicitar retroalimentación o asesorías al profesor.
Proyecto de curso 🚀
Sección titulada «Proyecto de curso 🚀»Vamos a diseñar y a implementar un prototipo de una experiencia inmersiva colectiva en tiempo real para un concierto utilizando principios de diseño generativo. Este proyecto te permitirá aplicar los conceptos y técnicas aprendidas en el curso, integrando dispositivos externos y creando una experiencia que responda a la interacción del público y a los cambios en el entorno físico.
Contexto
Sección titulada «Contexto»En un mundo cada vez más conectado, las experiencias inmersivas en tiempo real se han convertido en una parte esencial del entretenimiento digital. Estas experiencias no solo cautivan al público, sino que también ofrecen una forma única de interacción y participación. El diseño generativo, con su capacidad para crear contenido dinámico y adaptativo, se presenta como una herramienta poderosa para desarrollar experiencias que respondan a la interacción del público y a los cambios en el entorno.
Objetivo general
Sección titulada «Objetivo general»Diseñar y desarrollar una experiencias inmersiva colectiva en tiempo real que utilice principios de diseño generativo y comunicación con dispositivos de cómputo externos para crear una experiencia que responda a la interacción del público y/o a cambios en el entorno físico.
Escenario
Sección titulada «Escenario»La experiencias inmersiva colectiva y generativa será exhibida en un evento en vivo, un concierto. El público podrá interactuar, generando cambios en el contenido visual y/o sonoro en tiempo real. La aplicación que controlará la experiencia recibirá información de al menos dos dispositivos externos que capturarán datos del público y/o del entorno físico, influenciando la experiencia generativa. Un tercer dispositivo permitirá a un operador controlar remotamente los parámetros de la aplicación, ajustando la experiencia en tiempo real según las necesidades del evento.
Requisitos Funcionales
Sección titulada «Requisitos Funcionales»-
Generación de contenido dinámico: la aplicación deberá generar contenido visual y/o sonoro que se modifique en tiempo real basándose en las interacciones del público y los datos recibidos de los dispositivos externos.
-
Interacción en tiempo real: la aplicación debe responder de forma instantánea a las entradas del público y/o al entorno físico.
-
Comunicación con dispositivos externos: la aplicación debe ser capaz de comunicarse con al menos dos dispositivos de cómputo externos que puedan leer datos del público y/o entorno físico (sensores, cámaras, etc.). Debe también comunicarse con un tercer dispositivo para control remoto.
Requisitos técnicos
Sección titulada «Requisitos técnicos»-
Tecnologías web: vamos a utilizar en principio tecnologías web y la biblioteca p5.js. ¿Quieres explorar otras tecnologías? (hablemos).
-
Protocolos de comunicación: implementar protocolos de comunicación adecuados (ASCII, binario, WebSockets) para el intercambio de datos entre la aplicación, los dispositivos externos y el dispositivo de control remoto.
-
Algoritmos generativos: implementar algoritmos generativos que produzcan contenido visual o sonoro dinámico.
-
Producto final: un prototipo funcional de la aplicación web interactiva generativa, junto con la documentación técnica necesaria para su comprensión y replicación. Este prototipo formará parte de tu portafolio.
Bitácoras de aprendizaje 📔
Sección titulada «Bitácoras de aprendizaje 📔»En este enlace encontrarás las bitácoras de aprendizaje que debes llevar durante el curso.