
Introducción: Moodle en 2025, la personalización como clave para el e-learning argentino
Che, ¿sabés qué? El mundo del e-learning está en constante ebullición, y Moodle, nuestro viejo y querido caballo de batalla, no se queda atrás. Para 2025, la demanda de experiencias de aprendizaje hiper-personalizadas y adaptadas a contextos específicos será más fuerte que nunca. Ya no alcanza con lo que viene “de fábrica”; docentes, formadores corporativos y diseñadores instruccionales en Argentina necesitamos soluciones a medida para enfrentar los desafíos de una educación digital que evoluciona a la velocidad de la luz.
Las nuevas versiones de Moodle (como la 4.x y las que vendrán) ofrecen una base robusta, pero las particularidades de nuestras instituciones, desde las universidades públicas como la UBA o la UNLP hasta las grandes empresas que capacitan a su personal, exigen un nivel de adaptación que solo los plugins locales y filtros personalizados pueden brindar. Esto es crucial en un país con tanta diversidad educativa y profesional como el nuestro. Vas a poder desarrollar funcionalidades que se integren con sistemas de gestión académica locales, reportes específicos para el Ministerio de Educación o experiencias de usuario que resuenen directamente con nuestra idiosincrasia. Si te metés en este mundo, no solo vas a optimizar Moodle, sino que vas a transformar la forma en que tus estudiantes aprenden, haciendo que la plataforma sea un traje a medida y no una talla única. Es hora de dejar de usar Moodle, y empezar a *hacer* Moodle a tu manera.
¿Por Qué Moodle Necesita Tus Plugins Locales y Filtros Personalizados?
Mirá, Moodle es un sistema increíblemente potente y flexible, ¿no? Es la plataforma e-learning más usada a nivel global, y acá en Argentina un montón de universidades, escuelas y empresas la adoptaron por su robustez y su comunidad. Pero, a pesar de su versatilidad, hay momentos en que las funcionalidades estándar se quedan cortas. Pensalo así: tenés un auto 0km de última generación, pero necesitás una adaptación especial para circular en los caminos de tierra de tu campo o para cargar herramientas muy específicas para tu laburo. Ahí es donde entran tus plugins locales y filtros.
No se trata de “re-inventar la rueda”, sino de *extender* Moodle para que se adapte perfectamente a tus necesidades únicas. Por ejemplo, una universidad argentina podría necesitar un sistema de carga de notas que se integre directamente con su propio sistema de gestión académica (Guaraní, por ejemplo), o un instituto de formación profesional podría querer un sistema de seguimiento de prácticas laborales que refleje las regulaciones locales del Ministerio de Trabajo. Estas son funcionalidades que difícilmente vas a encontrar en el repositorio oficial de plugins, porque son demasiado específicas.
Según datos de la UNESCO, la personalización del aprendizaje es clave para mejorar la retención y el engagement de los estudiantes. Si bien no hay estadísticas específicas para Argentina sobre el impacto directo de los plugins locales, podemos extrapolar que una plataforma que se ajusta a las metodologías pedagógicas y necesidades administrativas de cada institución, como la Universidad Tecnológica Nacional (UTN) o la red de centros de formación profesional del CONET (hoy INET), va a generar una experiencia mucho más rica y efectiva. Al crear plugins locales Moodle, no solo resolvés un problema técnico, sino que potencias la pedagogía y la gestión, marcando una diferencia real en la calidad educativa.
¿Cómo funciona la arquitectura de Moodle para desarrolladores argentinos?
Para que te quede claro, Moodle no es una caja cerrada. Su diseño modular es lo que le permite ser tan adaptable. Cada parte de Moodle es, en esencia, un “componente” o “sub-sistema”, y muchos de ellos son, en sí mismos, un tipo de plugin. Para empezar a desarrollar tus propias extensiones, tenés que entender esta lógica.
La estructura de directorios de Moodle es tu mapa. Vas a encontrar carpetas como `mod` (módulos de actividad), `blocks` (bloques laterales), `report` (informes), `theme` (temas visuales) y, lo que nos interesa hoy, `local`. El directorio `local` es tu espacio seguro, tu patio de juegos para todas esas funcionalidades que son exclusivas de tu instalación de Moodle y que no tienen una categoría predefinida en la estructura principal.
Tipos de Plugins Moodle Clave:
* Módulos de Actividad (`mod`): Añaden nuevos tipos de actividades a los cursos (ej: Foros, Cuestionarios, Tareas).
* Bloques (`blocks`): Pequeños widgets que se pueden añadir a las columnas laterales o al dashboard (ej: Calendario, Últimas Noticias).
* Informes (`report`): Permiten generar reportes personalizados sobre la actividad de los usuarios o el rendimiento del curso.
* Autenticación (`auth`): Gestionan cómo los usuarios inician sesión (ej: LDAP, SSO).
* Local (`local`): Son plugins de propósito general que no encajan en ninguna otra categoría y son específicos de tu sitio. Pueden contener cualquier tipo de lógica personalizada, desde integraciones con sistemas externos hasta herramientas administrativas únicas.
La clave es que todos estos plugins, incluidos los locales, interactúan con el core de Moodle a través de APIs (Interfaces de Programación de Aplicaciones). Esto significa que no tocás el código fuente principal (¡y ni se te ocurra hacerlo, che!), sino que extendés la funcionalidad de una manera limpia y mantenible.
| Característica | Plugin Estándar (Ej: Bloque) | Plugin Local |
|---|---|---|
| Ubicación | Directorio específico de su tipo (ej: /block/) |
Directorio /local/ |
| Propósito Principal | Funcionalidad predefinida para una categoría específica (ej: mostrar información, interacción). | Funcionalidad de propósito general, integraciones personalizadas, scripts administrativos únicos. |
| Distribución | Diseñado para ser compartido y utilizado por la comunidad Moodle global. | Diseñado para ser específico de una instancia de Moodle; raramente se comparte. |
| Impacto en el Core | Interactúa con el core a través de APIs bien definidas para su tipo. | Puede interactuar con cualquier parte del core, ofreciendo mayor flexibilidad para casos de uso únicos. |
| Ejemplo de Uso | Bloque de “Actividad Reciente”, Módulo de “Tarea”. | Integración con sistema de RRHH, herramienta de migración de datos, personalización de informes. |
| Mantenimiento | Se beneficia de la comunidad para actualizaciones y correcciones. | Depende enteramente del desarrollador local para su mantenimiento y compatibilidad. |
¿Cómo preparar el entorno de desarrollo para Moodle en Argentina?
Antes de ponerte a codear como un campeón, necesitás un buen “taller” de desarrollo. ¡Nada de andar experimentando en el Moodle productivo de tu institución, che! Eso es una receta para el desastre.
Acá te detallo los componentes esenciales de tu entorno:
1. Servidor Local: Necesitás un servidor web (Apache o Nginx), una base de datos (MariaDB o PostgreSQL son las más comunes con Moodle) y PHP.
* Para Windows: Podés usar WAMP (Windows, Apache, MySQL, PHP) o XAMPP (Apache, MySQL/MariaDB, PHP, Perl). Son paquetes que instalan todo junto y te facilitan la vida.
* Para macOS: MAMP (Mac, Apache, MySQL, PHP) es la opción más popular.
* Para Linux: Generalmente se instala cada componente por separado (LAMP stack) o se usa Docker, que es una opción muy pro y escalable.
2. Instalación de Moodle: Descargá la última versión estable de Moodle desde su sitio oficial (moodle.org) e instalala en tu servidor local. Seguí las instrucciones oficiales para asegurar una instalación limpia. Asegurate de que la versión de Moodle que instalás es la misma o muy cercana a la que tenés en producción, para evitar sorpresas.
3. Editor de Código: Elegí tu arma. Visual Studio Code, Sublime Text, PHPStorm o Atom son excelentes opciones, con resaltado de sintaxis, autocompletado y un montón de extensiones útiles para PHP y Moodle.
4. Control de Versiones (Git): Indispensable. Usá Git desde el día uno para manejar el versionado de tu código. Esto te va a salvar la vida cuando necesites revertir cambios, trabajar en equipo o migrar tu desarrollo. Aprendé lo básico: `git init`, `git add`, `git commit`, `git push`. Podés usar plataformas como GitHub o GitLab para tus repositorios.
5. Depurador (Xdebug): Configurar Xdebug en tu PHP es un game changer. Te permite “pausar” la ejecución de tu código y ver qué valores tienen las variables en cada momento, haciendo que encontrar y solucionar errores sea mucho más fácil y rápido. ¡Es como tener superpoderes para el debugging!
6. Base de Datos: Familiarizate con la herramienta de gestión de tu base de datos (phpMyAdmin si usás MySQL/MariaDB, o pgAdmin si usás PostgreSQL). Vas a necesitar consultar tablas, ver cómo Moodle almacena sus datos y, eventualmente, crear tus propias tablas para tu plugin.
Una vez que tenés todo esto funcionando, ¡felicitaciones! Estás listo para empezar a diseñar y personalizar Moodle de verdad.
¿Cómo crear tu primer plugin local en Moodle?: guía paso a paso
Bueno, llegó el momento de la verdad, ¡vamos a ensuciarnos las manos con código! Acá te detallo los pasos para crear un plugin local básico, un esqueleto que después vas a poder llenar con la lógica que vos quieras. Imaginate que queremos un plugin local que muestre un mensaje de bienvenida personalizado según la provincia del usuario, algo muy argentino, ¿no?
1. Crear la Estructura de Directorios:
* Andá a la raíz de tu instalación de Moodle.
* Entrá en la carpeta `local`.
* Creá una nueva carpeta con el nombre de tu plugin. Siguiendo nuestro ejemplo, llamémosla `saludoprovincial`. Así, la ruta completa sería `moodle/local/saludoprovincial`.
2. El Archivo `version.php`:
* Dentro de `moodle/local/saludoprovincial`, creá un archivo llamado `version.php`. Este archivo le dice a Moodle quién sos, qué versión tenés y de qué versión de Moodle dependés.
* Contenido básico:
“`php
component = ‘local_saludoprovincial’; // Nombre único de tu componente
$plugin->version = 2023112100; // Versión de tu plugin (YYYYMMDDHH)
$plugin->requires = 2022041900; // Versión mínima de Moodle requerida (ej: Moodle 4.0)
$plugin->maturity = MATURITY_ALPHA; // ALPHA, BETA, RC, STABLE
$plugin->release = ‘1.0.0 Alpha’; // Texto de la versión
“`
3. El Archivo `lib.php` (Lógica Principal):
* Este archivo va a contener las funciones principales de tu plugin. Moodle lo carga automáticamente.
* Creá `moodle/local/saludoprovincial/lib.php`.
* Acá podés definir, por ejemplo, una función que obtenga la provincia del usuario (si la tuviéramos almacenada en un perfil extendido) y devuelva un saludo.
“`php
El Archivo `settings.php` (Configuración del Plugin):
* Si tu plugin necesita opciones configurables (ej: activar/desactivar, texto predeterminado), las definís acá.
* Creá `moodle/local/saludoprovincial/settings.php`.
* “`php
fulltree) {
// Sección de configuración para nuestro plugin local
$settings->add(new admin_setting_heading(
‘local_saludoprovincial_settings_heading’,
get_string(‘settings_heading’, ‘local_saludoprovincial’),
get_string(‘settings_heading_desc’, ‘local_saludoprovincial’)
));
$settings->add(new admin_setting_configcheckbox(
‘local_saludoprovincial/enabled’,
get_string(‘enabled’, ‘local_saludoprovincial’),
get_string(‘enabled_desc’, ‘local_saludoprovincial’),
0 // Valor por defecto: desactivado
));
$settings->add(new admin_setting_configtext(
‘local_saludoprovincial/defaultsaludo’,
get_string(‘default_saludo’, ‘local_saludoprovincial’),
get_string(‘default_saludo_desc’, ‘local_saludoprovincial’),
‘¡Un saludo desde Argentina!’,
PARAM_TEXT
));
}
“`
* Para que las cadenas de texto (`get_string`) funcionen, tenés que crear la carpeta `lang/es` dentro de tu plugin y dentro un archivo `local_saludoprovincial.php` con el siguiente contenido:
“`php
Instalar el Plugin:
* Andá a la administración de Moodle: `Administración del sitio > Notificaciones`.
* Moodle detectará tu nuevo plugin y te pedirá que lo instales. Dale a “Actualizar base de datos Moodle ahora” y seguí los pasos.
* Una vez instalado, lo vas a encontrar en `Administración del sitio > Plugins > Plugins locales`.
6. Usar el Plugin:
* Ahora podés llamar a la función `local_saludoprovincial_get_saludo()` desde cualquier parte de tu Moodle (por ejemplo, desde un tema personalizado, otro plugin o un bloque). Para mostrarlo en algún lugar, podrías crear un bloque simple que use esta función, o hookearte a un evento de Moodle.
¡Listo! Ya tenés tu primer plugin local. Este ejemplo es simple, pero te da la base para crear cosas mucho más complejas. Recordá que la documentación oficial de Moodle es tu mejor amiga para explorar todas las posibilidades.
¿Cómo crear filtros personalizados en Moodle para potenciar el contenido?
Los filtros en Moodle son como los “traductores” o “transformadores” del contenido de texto. Su función principal es procesar el texto antes de que se muestre al usuario final. Esto te permite, por ejemplo, convertir automáticamente URLs de YouTube en videos embebidos, o aplicar una auto-corrección ortográfica. Pero lo realmente potente es que podés crear tus propios filtros para necesidades muy específicas.
Imaginate que en tu institución, como el Ministerio de Educación de la Provincia de Buenos Aires, quieren que cada vez que un docente escriba “Ley Nacional de Educación 26.206”, el texto se convierta automáticamente en un enlace a la fuente oficial en el sitio de Infoleg. ¡Eso lo hacés con un filtro! O, por ejemplo, querés que al escribir `[VIDEO_EDUC.AR id=123]` se embeba el video correspondiente de la plataforma Cont.ar o Educ.ar, que es contenido educativo relevante para Argentina.
Pasos para Crear un Filtro Moodle:
1. Estructura del Filtro:
* Creá una nueva carpeta en `moodle/filter/`. Llamémosla `infoleg`.
* Dentro de `infoleg`, necesitás los archivos `version.php` (similar al plugin local), `filter.php` (la lógica principal), y `lang/es/filter_infoleg.php` (las cadenas de texto).
2. Archivo `version.php`:
“`php
component = ‘filter_infoleg’;
$plugin->version = 2023112101;
$plugin->requires = 2022041900;
$plugin->maturity = MATURITY_ALPHA;
$plugin->release = ‘1.0.0 Alpha’;
“`
3. Archivo `filter.php`:
* Este es el corazón de tu filtro. Aquí es donde definís la clase principal del filtro que extiende `moodle_text_filter`.
* El método clave es `filter($text, $format = null, array $options = [])`. Recibe el texto y debe devolverlo transformado.
“`php
Ley Nacional de Educación 26.206‘; // URL real de Infoleg o Argentina.gob.ar
// Reemplazar todas las ocurrencias en el texto
$text = preg_replace($pattern, $replacement, $text);
return $text;
}
}
“`
4. Archivo `lang/es/filter_infoleg.php`:
“`php
Instalación y Activación:
* Andá a `Administración del sitio > Notificaciones` para instalar el filtro.
* Luego, andá a `Administración del sitio > Plugins > Filtros > Gestionar filtros` y activá tu filtro `Enlace Automático a Ley 26.206`. Podés arrastrarlo para cambiar su orden de ejecución si tenés varios filtros.
Ahora, cada vez que alguien escriba “Ley Nacional de Educación 26.206” en cualquier área de texto de Moodle (foros, descripciones de cursos, páginas), ¡se convertirá automáticamente en un enlace! Esto no solo ahorra tiempo, sino que también garantiza la consistencia y la disponibilidad de recursos importantes, algo vital para la calidad educativa que buscan organismos como el Consejo Federal de Educación.
¿Cuáles son las mejores prácticas de seguridad al desarrollar plugins para Moodle?
Perspectiva de gestión: El desarrollo de plugins debe alinearse con la estrategia de gestión e-learning corporativo — cada customización debe responder a un requisito de negocio medible.
Desarrollar plugins para Moodle no es solo tirar código, es un arte y una responsabilidad, ¡especialmente en el contexto de una plataforma educativa! Tenés que asegurarte de que tu laburo sea robusto, seguro y eficiente. Acá te dejo algunas reglas de oro:
1. Seguí las Guías de Codificación de Moodle (Moodle Coding Style): Moodle tiene sus propias convenciones de código. Respetarlas es fundamental para que tu código sea legible, mantenible y compatible con el ecosistema de Moodle. No solo ayuda a otros desarrolladores, sino que te ayuda a vos mismo en el futuro.
2. Seguridad Primero (¡Siempre!):
* Sanitizá las entradas del usuario: Nunca confíes en los datos que vienen del usuario. Usá funciones como `optional_param()` o `required_param()` para limpiar y validar los datos antes de procesarlos o guardarlos en la base de datos. ¡Esto previene ataques de inyección SQL y XSS!
* Escapá las salidas: Antes de mostrar datos en la pantalla, asegurate de escaparlos correctamente (`s()` para texto, `format_text()` para HTML).
* Contextos de Capacidad (Capabilities): Moodle tiene un sistema de roles y permisos muy granular. Definí capacidades para tu plugin y usá `has_capability()` para controlar quién puede hacer qué. Por ejemplo, solo el “Manager” o “Administrador” debería poder ver ciertas configuraciones o datos sensibles.
3. Optimización del Rendimiento:
* Consultas a la Base de Datos: Hacé consultas eficientes. Evitá bucles dentro de bucles que hagan consultas a la BD. Usá `get_records()` o `get_records_sql()` de forma inteligente.
* Caché de Moodle: Familiarizate con la API de caché de Moodle. Almacenar datos que no cambian con frecuencia en caché reduce la carga del servidor y acelera tu plugin.
* Evitá la Carga Innecesaria: Cargá solo los archivos y recursos que tu plugin necesita.
4. Internacionalización (i18n): Aunque estés desarrollando para Argentina, es una buena práctica usar la API de cadenas de Moodle (`get_string()`). Esto facilita la traducción de tu plugin si alguna vez se quisiera usar en otro idioma o por alguna institución bilingüe.
5. Actualizaciones y Compatibilidad:
* Hooks de Actualización (`db/upgrade.php`): Si tu plugin usa la base de datos, vas a necesitar un archivo `db/upgrade.php` para manejar los cambios en la estructura de tu tabla a medida que evolves tu plugin. Esto es crucial para que tu plugin no rompa Moodle en futuras actualizaciones.
* Compatibilidad con el Core: Mantenete al tanto de los cambios en el core de Moodle. Una buena práctica es testear tu plugin con las versiones más recientes de Moodle.
* Los plugins imprescindibles para Moodle suelen ser los que siguen estas buenas prácticas, asegurando su longevidad y estabilidad.
6. Comentarios y Documentación: Documentá tu código de forma clara y concisa. Usá phpDoc para las funciones y clases. Esto no solo te ayuda a vos, sino a cualquier otro desarrollador que pueda tomar tu código en el futuro.
Al seguir estas prácticas, no solo vas a crear plugins más robustos y seguros, sino que vas a contribuir a un ecosistema de Moodle más estable y confiable para todos, desde los administradores hasta los docentes y estudiantes.
¿Cuál es el futuro de los plugins en Moodle?: tendencias y escalabilidad
El e-learning, y Moodle con él, está en una evolución constante. Si te dedicás a desarrollar plugins locales en Moodle, es clave que estés al tanto de las tendencias para que tu trabajo no solo sea relevante hoy, sino que también lo sea en el futuro.
Una de las tendencias más fuertes es la integración con Inteligencia Artificial (IA). Imaginate plugins que usen IA para:
* Analizar el progreso de los estudiantes y ofrecer rutas de aprendizaje adaptativas.
* Automatizar la calificación de tareas (especialmente en formatos estructurados).
* Generar contenido de curso inicial o resúmenes de discusiones en foros.
* Detectar patrones de riesgo de abandono escolar, algo crucial para reducir la deserción en la educación superior en Argentina, donde universidades como la UNICEN ya exploran estas tecnologías.
Otra tendencia importante es la personalización a gran escala. Más allá de un saludo por provincia, pensá en plugins que ajusten la interfaz, los recursos y las actividades según el estilo de aprendizaje de cada estudiante, sus conocimientos previos o incluso su estado de ánimo. La OIT, por ejemplo, enfatiza la importancia de la capacitación laboral personalizada para la reconversión profesional, un área donde Moodle con plugins a medida tiene un potencial enorme.
La arquitectura de microservicios también está ganando terreno. Si bien el core de Moodle sigue siendo monolítico, cada vez más se ve la necesidad de que los plugins interactúen con servicios externos y APIs. Esto permite que tu plugin no esté atado a una única instalación de Moodle, sino que pueda comunicarse con otros sistemas de tu institución o incluso con plataformas de terceros.
Finalmente, la escalabilidad y el rendimiento seguirán siendo desafíos. Con el aumento de usuarios y de contenido multimedia, los plugins que diseñes deben ser eficientes y no sobrecargar el sistema. Esto implica un uso inteligente de la caché de Moodle, optimización de consultas a la base de datos y, quizás, la externalización de procesos pesados a servicios específicos. La comunidad de Moodle es enorme y activa, y participar en foros o en eventos de MoodleMoot (que se hacen también en Argentina) es fundamental para estar al día y encontrar inspiración y soluciones a problemas comunes. El futuro de Moodle no es solo lo que viene de fábrica, sino lo que nosotros, los desarrolladores, le aportamos.
Preguntas frecuentes
¿Cuál es la diferencia entre un plugin local y un bloque en Moodle?
Un plugin local es una categoría general de extensión de Moodle que reside en el directorio `/local/` y puede contener cualquier tipo de funcionalidad personalizada que no encaje en otra categoría predefinida. Puede ser una integración con un sistema externo, una herramienta administrativa o una lógica de negocio específica. Un bloque, en cambio, es un tipo *específico* de plugin (reside en `/block/`) cuyo propósito es mostrar información o interactuar en las columnas laterales de las páginas de Moodle o en el dashboard. Mientras que un bloque tiene una ubicación visual definida, un plugin local no tiene una representación visual obligatoria y su funcionalidad puede ser “invisible” para el usuario, operando en segundo plano.
¿Necesito conocimientos de PHP avanzado para empezar a desarrollar plugins locales en Moodle?
Para empezar a desarrollar plugins locales en Moodle, no necesitás ser un gurú de PHP, pero sí es fundamental tener una base sólida. Tenés que entender la sintaxis básica, el paradigma de programación orientada a objetos (POO), y cómo interactuar con bases de datos. Lo más importante es tener ganas de aprender la arquitectura de Moodle, cómo funcionan sus APIs y sus convenciones. Moodle tiene una curva de aprendizaje, pero con la documentación oficial y la comunidad activa, cualquier desarrollador con experiencia intermedia en PHP puede embarcarse en este camino y construir soluciones potentes.
¿Cómo puedo asegurar la compatibilidad de mi plugin con futuras actualizaciones de Moodle?
Asegurar la compatibilidad de tu plugin con futuras actualizaciones de Moodle es un desafío constante, pero hay estrategias clave. Primero, siempre seguí las guías de codificación y las APIs recomendadas por Moodle, evitando usar funciones o métodos marcados como obsoletos. Utilizá el archivo `version.php` para indicar las versiones de Moodle con las que tu plugin es compatible. Implementá un robusto sistema de `db/upgrade.php` para manejar cambios en la base de datos de tu plugin. Finalmente, la mejor práctica es probar tu plugin regularmente con las versiones de desarrollo de Moodle y participar activamente en la comunidad para estar al tanto de los cambios importantes que puedan afectar tu código.
Referencias
- Moodle Docs. (n.d.). Developer documentation. Recuperado de https://docs.moodle.org/dev/
- UNESCO. (2020). Education in a post-COVID world: Nine ideas for public action. Recuperado de https://unesdoc.unesco.org/ark:/48223/pf0000373717
- Moodle Docs. (n.d.). Plugin types. Recuperado de https://docs.moodle.org/dev/Plugin_types
- OIT. (2021). El trabajo decente y la economía digital: desafíos y oportunidades para la formación profesional. Recuperado de https://www.ilo.org/wcmsp5/groups/public/@ed_dialogue/@act_emp/documents/publication/wcms_798726.pdf
- Ministerio de Educación de la Nación Argentina. (n.d.). Sitio web oficial. Recuperado de https://www.argentina.gob.ar/educacion
- McKinsey & Company. (2020). Education and COVID-19: The great disruption and its effects on students, teachers, and systems. Recuperado de https://www.mckinsey.com/industries/education/our-insights/education-and-covid-19-the-great-disruption-and-its-effects-on-students-teachers-and-systems
¿Querés convertirte en experto en tecnologías e-learning?
En el Diplomado en E-Learning encontrás el programa completo para desarrollar estas habilidades.
Ver el Diplomado