Introducción a la programación para joomlaRoberto Segura
Introducción a la programación para Joomla usando un módulo de ejemplo.
Usado para el hangout: http://www.joomgouts.com/programas/3x12-introduccion-a-la-programacion-para-joomla-primeros-pasos
Introduccción a la programación en Joomla!Roberto Segura
¿Quieres saber lo fácil que es empezar a programar extensiones para Joomla? ¿Qué necesitas? ¿Qué beneficios tiene Joomla frente a otras plataformas? Esta sesión pretende resolver todas tus dudas y enseñarte el camino para ponerte a programar.
En el desarrollo de grandes aplicaciones empresariales, la dependencia entre módulos es uno de los más grandes problemas. Módulos fuertemente acoplados aceleran la entropía de un sistema, provocando rigidez, fragilidad, inmovilidad y dificultando el mantenimiento y escalamiento del código fuente. La inyección de dependencia es un patrón de diseño que sirve para reducir el acoplamiento entre dos o más módulos y facilitar la administración de dependencias. En esta charla se verán los conceptos fundamentales de Contenedores, Inversión de Control e Inyección de Dependencia, mostrando diferentes implementaciones, entre ellas Spring y Java EE, concluyendo en una comparación entre ambas tecnologías de punta.
Este documento resume varios principios de diseño de software como SOLID, DRY, SRP, OCP, LSP, ISP, DIP y el Principio de Hollywood. Explica brevemente cada principio y sus implicaciones para el diseño de software flexible, mantenible y extensible. También incluye una sección sobre síntomas de un mal diseño y causas que aceleran la entropía de un sistema, así como referencias bibliográficas al final.
Este documento presenta varios principios de diseño de software como SOLID, GRASP, inmutabilidad y funciones sin efectos secundarios. Explica conceptos como acoplamiento, cohesión, inversión de control, y cómo aplicar estos principios ayuda a crear diseños más flexibles y mantenibles. También discute paradigmas funcionales y cómo podrían usarse para crear aplicaciones sin estados.
Este documento resume una presentación sobre el desarrollo de la aplicación Sportmaniacs Android. Comenzó como una aplicación simple pero creció hasta requerir refactorización para mejorar la estructura, testabilidad y mantenibilidad. El equipo migró a un patrón MVP para organizar mejor el código, separar las responsabilidades y facilitar la colaboración. Ahora buscan terminar el refactor, mejorar las pruebas, integrar Dagger y RxJava, y establecer un proceso de entrega continua.
Este documento presenta una introducción de 45 minutos sobre cómo desarrollar plugins para Joomla. Está dirigido a aquellos que quieren ser desarrolladores, desarrollan para otras plataformas o siempre han querido aprender a programar. El objetivo es mostrar el entorno de programación de Joomla y demostrar lo fácil que es desarrollar una extensión mediante un ejemplo del sistema de eventos de Joomla.
Introducción a la programación para joomlaRoberto Segura
Introducción a la programación para Joomla usando un módulo de ejemplo.
Usado para el hangout: http://www.joomgouts.com/programas/3x12-introduccion-a-la-programacion-para-joomla-primeros-pasos
Introduccción a la programación en Joomla!Roberto Segura
¿Quieres saber lo fácil que es empezar a programar extensiones para Joomla? ¿Qué necesitas? ¿Qué beneficios tiene Joomla frente a otras plataformas? Esta sesión pretende resolver todas tus dudas y enseñarte el camino para ponerte a programar.
En el desarrollo de grandes aplicaciones empresariales, la dependencia entre módulos es uno de los más grandes problemas. Módulos fuertemente acoplados aceleran la entropía de un sistema, provocando rigidez, fragilidad, inmovilidad y dificultando el mantenimiento y escalamiento del código fuente. La inyección de dependencia es un patrón de diseño que sirve para reducir el acoplamiento entre dos o más módulos y facilitar la administración de dependencias. En esta charla se verán los conceptos fundamentales de Contenedores, Inversión de Control e Inyección de Dependencia, mostrando diferentes implementaciones, entre ellas Spring y Java EE, concluyendo en una comparación entre ambas tecnologías de punta.
Este documento resume varios principios de diseño de software como SOLID, DRY, SRP, OCP, LSP, ISP, DIP y el Principio de Hollywood. Explica brevemente cada principio y sus implicaciones para el diseño de software flexible, mantenible y extensible. También incluye una sección sobre síntomas de un mal diseño y causas que aceleran la entropía de un sistema, así como referencias bibliográficas al final.
Este documento presenta varios principios de diseño de software como SOLID, GRASP, inmutabilidad y funciones sin efectos secundarios. Explica conceptos como acoplamiento, cohesión, inversión de control, y cómo aplicar estos principios ayuda a crear diseños más flexibles y mantenibles. También discute paradigmas funcionales y cómo podrían usarse para crear aplicaciones sin estados.
Este documento resume una presentación sobre el desarrollo de la aplicación Sportmaniacs Android. Comenzó como una aplicación simple pero creció hasta requerir refactorización para mejorar la estructura, testabilidad y mantenibilidad. El equipo migró a un patrón MVP para organizar mejor el código, separar las responsabilidades y facilitar la colaboración. Ahora buscan terminar el refactor, mejorar las pruebas, integrar Dagger y RxJava, y establecer un proceso de entrega continua.
Este documento presenta una introducción de 45 minutos sobre cómo desarrollar plugins para Joomla. Está dirigido a aquellos que quieren ser desarrolladores, desarrollan para otras plataformas o siempre han querido aprender a programar. El objetivo es mostrar el entorno de programación de Joomla y demostrar lo fácil que es desarrollar una extensión mediante un ejemplo del sistema de eventos de Joomla.
Desarrollo tecnologias software_libre_open_sourceMario IC
El documento presenta una introducción al desarrollo de software con tecnologías libres y de código abierto. Explica conceptos clave como lenguajes de programación populares (Python, Ruby, Java, PHP), entornos de desarrollo integrados, control de versiones, repositorios en la nube, gestión de dependencias, pruebas unitarias, integración continua y marcos de trabajo. También menciona bases de datos, modelado de datos, casos de éxito y recomendaciones para el desarrollo con software libre.
Dev Tools para Kubernetes - Codemotion 2019Micael Gallego
Charla impartida entre Pablo Chico y Micael Gallego en la que se muestran algunas herramientas para mejorar la experiencia de desarrollo de aplicaciones cloud native para Kubernetes. Concretamente, se presenta cómo okteto puede reducir el tiempo empleado en el ciclo de change, build, push, deploy de pods Java en Kubernetes usando la sincronización de ficheros.
Ejemplos de código en https://github.com/micaelgallego/k8s-dev-tools-codemo19
Evenge es una aplicación de gestión de eventos desarrollada por cuatro desarrolladores. Usa Google App Engine y frameworks como Jinja, Webapp2 y Bootstrap. El equipo usa Slack para comunicarse y GitHub para almacenar el código. La app usa el patrón MVC y clases para usuarios, organizaciones, eventos y asistentes. Incluye herramientas de integración continua, pruebas y despliegue automatizado.
Este documento presenta las orientaciones metodológicas para la sesión 1 de un curso sobre el manejo básico de Windows. La sesión introduce el entorno de Windows y las herramientas básicas de MS Word a través de un video sobre la historia de las computadoras, actividades prácticas y una guía para trabajar con textos. Como actividades de cierre, los estudiantes completarán una hoja de trabajo en Word y responderán un cuestionario para evaluar lo aprendido.
Este documento describe el desarrollo guiado por pruebas (TDD) en entornos .NET. Explica que TDD produce código automatizable, rápido, repetible e independiente mediante pruebas unitarias. Detalla las etapas de una prueba unitaria (arrange, act, assert) y cómo TDD mapea historias de usuario a especificaciones y pruebas unitarias para guiar el desarrollo del código. Finalmente, destaca los beneficios de coste y tiempo de TDD.
El documento presenta un curso sobre Angular. Incluye información sobre el temario que cubre conceptos básicos de Angular como componentes, servicios, rutas y librerías de componentes. También proporciona recursos como presentaciones y ejemplos de código para aprender Angular. El documento promociona los servicios de formación y consultoría sobre desarrollo de software de Micael Gallego.
Este documento presenta una introducción a GitFlow, una metodología de control de versiones basada en Git. Explica las ventajas de GitFlow como evitar conflictos, mejorar la trazabilidad y facilitar la cooperación entre equipos. También cubre cómo DevOps y GitOps se adaptan a GitFlow a través de la automatización, pruebas continuas y despliegues de infraestructura versionados. Finalmente, se muestra una demo de Jenkins X, una herramienta de CI/CD para Kubernetes basada en GitFlow.
El proceso de desarrollo de software involucra una gran cantidad de recursos, la elección de dichos recursos sin duda puede ayudarnos a marcar la diferencia en el resultado final.
Estos recursos pueden ser de muchos tipos, en este webminar nos enfocaremos a herramientas de software que nos permitirán mejorar nuestro proceso de desarrollo, aprovechando los beneficios del modelo openSource.
Veremos algunos criterios para elegir la herramientas de construcción, IDE de desarrollo, frameworks de testing, así como herramientas para integrar continuamente el código, así como herramientas para generar métricas.
Este documento presenta dos herramientas para depurar aplicaciones Java: CRaSH, un shell interactivo para la JVM que permite conectarse a una JVM y ejecutar comandos; y YouDebug, un depurador no interactivo que permite definir breakpoints y evaluar variables de forma remota sin necesidad de acceso al código fuente. El documento explica las características y modos de operación de ambas herramientas.
¿Cómo poner software de calidad en manos del usuario de forma rápida?Micael Gallego
Ciclo de vida del software, repositorios de código, análisis estático de código, pruebas software, integración continua, entrega continua, despliegue continuo, DevOps.
Evenge is an event management application, which allows us to create, notify and create reports based on the audience.
All this of course on a Cloud environment, ie an application entirely in the cloud, with all the advantages that entails.
Broadcast Social Networks, E-mail and Blogs.
Está implementado en Google App Engine y usa los framework Jinja, Webapp2 y Bootstrap
Este documento presenta una unidad sobre sistemas de control de versiones. Explica conceptos básicos de control de versiones y luego se enfoca en Subversion (SVN), describiendo sus características, modelo de trabajo, comandos principales y buenas prácticas para su uso. También menciona la posibilidad de usar Google Code para alojar proyectos con SVN.
Este documento presenta una introducción a MUnit, el framework de testing para aplicaciones Mule. Se describen los componentes principales de MUnit como aserciones, mocking y spying. También se explican los operadores como Set Event, Fail y Verify. Por último, se detallan los plugins de Maven para integrar MUnit en el ciclo de vida de desarrollo, incluyendo build, test, package y deploy.
Este documento presenta una introducción a Drupal, incluyendo una descripción de su arquitectura, el proceso de instalación, la estructura de directorios, y las principales funciones de administración como la gestión de contenido, usuarios, menús, bloques, módulos y configuración. También describe varios módulos contribuidos populares y la estructura y funcionalidad básica de los módulos personalizados en Drupal.
Este documento proporciona información sobre la instalación, configuración y administración de Moodle. Explica cómo instalar Moodle en un servidor web, configurar los permisos de usuario y roles, y tomar medidas para mejorar el rendimiento y la seguridad como actualizar regularmente y realizar copias de seguridad. También cubre conceptos clave como roles, permisos y contextos para administrar el acceso de usuario en Moodle.
Este documento resume una presentación sobre buenas prácticas para el desarrollo web en PHP. La presentación cubre temas como el uso de IDEs, estándares de codificación, documentación interna de código, control de versiones, seguimiento de incidencias, uso de wikis, metodologías ágiles, frameworks de PHP, bibliotecas, seguridad, depuración, pruebas unitarias, pruebas automatizadas, integración continua, métricas, rendimiento, despliegues, entornos, búsqueda y equipo.
Ecuador jug 2017 -incrementando la productividad de proyectos java ee con c...César Hernández
La presentación trata sobre cómo incrementar la productividad de proyectos JavaEE mediante la integración y entrega continua. Explica que la integración continua permite detectar errores de forma rápida integrando código en el repositorio varias veces al día, mientras que la entrega continua garantiza que cada cambio en el sistema sea deployable en producción para producir software robusto en ciclos cortos. Finalmente, recomienda herramientas como Jenkins, Docker y Kubernetes para implementar estas prácticas en proyectos JavaEE.
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015 César Hernández
Este documento describe cómo la integración continua y la entrega continua pueden incrementar la productividad y agilidad en proyectos Java Enterprise. La integración continua involucra integrar código en un repositorio varias veces al día y verificar automáticamente cada cambio. La entrega continua extiende esto para garantizar que cada cambio pueda implementarse en producción con solo presionar un botón. Juntos, estos enfoques pueden ayudar a detectar errores más rápido, reducir tiempos muertos y mejorar la eficiencia de los recurs
Este documento presenta una introducción a las herramientas y marcos de pruebas unitarias en PHP. Se discuten varios marcos xUnit como PHPUnit, Simple Test y Atoum. También se describen herramientas para la integración continua y la calidad de código como PHP QA Tools, Scrutinizer CI y Travis CI. Finalmente, se explican conceptos como test dobles y funcionales con PHPUnit y Selenium.
Desarrollo tecnologias software_libre_open_sourceMario IC
El documento presenta una introducción al desarrollo de software con tecnologías libres y de código abierto. Explica conceptos clave como lenguajes de programación populares (Python, Ruby, Java, PHP), entornos de desarrollo integrados, control de versiones, repositorios en la nube, gestión de dependencias, pruebas unitarias, integración continua y marcos de trabajo. También menciona bases de datos, modelado de datos, casos de éxito y recomendaciones para el desarrollo con software libre.
Dev Tools para Kubernetes - Codemotion 2019Micael Gallego
Charla impartida entre Pablo Chico y Micael Gallego en la que se muestran algunas herramientas para mejorar la experiencia de desarrollo de aplicaciones cloud native para Kubernetes. Concretamente, se presenta cómo okteto puede reducir el tiempo empleado en el ciclo de change, build, push, deploy de pods Java en Kubernetes usando la sincronización de ficheros.
Ejemplos de código en https://github.com/micaelgallego/k8s-dev-tools-codemo19
Evenge es una aplicación de gestión de eventos desarrollada por cuatro desarrolladores. Usa Google App Engine y frameworks como Jinja, Webapp2 y Bootstrap. El equipo usa Slack para comunicarse y GitHub para almacenar el código. La app usa el patrón MVC y clases para usuarios, organizaciones, eventos y asistentes. Incluye herramientas de integración continua, pruebas y despliegue automatizado.
Este documento presenta las orientaciones metodológicas para la sesión 1 de un curso sobre el manejo básico de Windows. La sesión introduce el entorno de Windows y las herramientas básicas de MS Word a través de un video sobre la historia de las computadoras, actividades prácticas y una guía para trabajar con textos. Como actividades de cierre, los estudiantes completarán una hoja de trabajo en Word y responderán un cuestionario para evaluar lo aprendido.
Este documento describe el desarrollo guiado por pruebas (TDD) en entornos .NET. Explica que TDD produce código automatizable, rápido, repetible e independiente mediante pruebas unitarias. Detalla las etapas de una prueba unitaria (arrange, act, assert) y cómo TDD mapea historias de usuario a especificaciones y pruebas unitarias para guiar el desarrollo del código. Finalmente, destaca los beneficios de coste y tiempo de TDD.
El documento presenta un curso sobre Angular. Incluye información sobre el temario que cubre conceptos básicos de Angular como componentes, servicios, rutas y librerías de componentes. También proporciona recursos como presentaciones y ejemplos de código para aprender Angular. El documento promociona los servicios de formación y consultoría sobre desarrollo de software de Micael Gallego.
Este documento presenta una introducción a GitFlow, una metodología de control de versiones basada en Git. Explica las ventajas de GitFlow como evitar conflictos, mejorar la trazabilidad y facilitar la cooperación entre equipos. También cubre cómo DevOps y GitOps se adaptan a GitFlow a través de la automatización, pruebas continuas y despliegues de infraestructura versionados. Finalmente, se muestra una demo de Jenkins X, una herramienta de CI/CD para Kubernetes basada en GitFlow.
El proceso de desarrollo de software involucra una gran cantidad de recursos, la elección de dichos recursos sin duda puede ayudarnos a marcar la diferencia en el resultado final.
Estos recursos pueden ser de muchos tipos, en este webminar nos enfocaremos a herramientas de software que nos permitirán mejorar nuestro proceso de desarrollo, aprovechando los beneficios del modelo openSource.
Veremos algunos criterios para elegir la herramientas de construcción, IDE de desarrollo, frameworks de testing, así como herramientas para integrar continuamente el código, así como herramientas para generar métricas.
Este documento presenta dos herramientas para depurar aplicaciones Java: CRaSH, un shell interactivo para la JVM que permite conectarse a una JVM y ejecutar comandos; y YouDebug, un depurador no interactivo que permite definir breakpoints y evaluar variables de forma remota sin necesidad de acceso al código fuente. El documento explica las características y modos de operación de ambas herramientas.
¿Cómo poner software de calidad en manos del usuario de forma rápida?Micael Gallego
Ciclo de vida del software, repositorios de código, análisis estático de código, pruebas software, integración continua, entrega continua, despliegue continuo, DevOps.
Evenge is an event management application, which allows us to create, notify and create reports based on the audience.
All this of course on a Cloud environment, ie an application entirely in the cloud, with all the advantages that entails.
Broadcast Social Networks, E-mail and Blogs.
Está implementado en Google App Engine y usa los framework Jinja, Webapp2 y Bootstrap
Este documento presenta una unidad sobre sistemas de control de versiones. Explica conceptos básicos de control de versiones y luego se enfoca en Subversion (SVN), describiendo sus características, modelo de trabajo, comandos principales y buenas prácticas para su uso. También menciona la posibilidad de usar Google Code para alojar proyectos con SVN.
Este documento presenta una introducción a MUnit, el framework de testing para aplicaciones Mule. Se describen los componentes principales de MUnit como aserciones, mocking y spying. También se explican los operadores como Set Event, Fail y Verify. Por último, se detallan los plugins de Maven para integrar MUnit en el ciclo de vida de desarrollo, incluyendo build, test, package y deploy.
Este documento presenta una introducción a Drupal, incluyendo una descripción de su arquitectura, el proceso de instalación, la estructura de directorios, y las principales funciones de administración como la gestión de contenido, usuarios, menús, bloques, módulos y configuración. También describe varios módulos contribuidos populares y la estructura y funcionalidad básica de los módulos personalizados en Drupal.
Este documento proporciona información sobre la instalación, configuración y administración de Moodle. Explica cómo instalar Moodle en un servidor web, configurar los permisos de usuario y roles, y tomar medidas para mejorar el rendimiento y la seguridad como actualizar regularmente y realizar copias de seguridad. También cubre conceptos clave como roles, permisos y contextos para administrar el acceso de usuario en Moodle.
Este documento resume una presentación sobre buenas prácticas para el desarrollo web en PHP. La presentación cubre temas como el uso de IDEs, estándares de codificación, documentación interna de código, control de versiones, seguimiento de incidencias, uso de wikis, metodologías ágiles, frameworks de PHP, bibliotecas, seguridad, depuración, pruebas unitarias, pruebas automatizadas, integración continua, métricas, rendimiento, despliegues, entornos, búsqueda y equipo.
Ecuador jug 2017 -incrementando la productividad de proyectos java ee con c...César Hernández
La presentación trata sobre cómo incrementar la productividad de proyectos JavaEE mediante la integración y entrega continua. Explica que la integración continua permite detectar errores de forma rápida integrando código en el repositorio varias veces al día, mientras que la entrega continua garantiza que cada cambio en el sistema sea deployable en producción para producir software robusto en ciclos cortos. Finalmente, recomienda herramientas como Jenkins, Docker y Kubernetes para implementar estas prácticas en proyectos JavaEE.
Mejorando la productividad en proyectos java EE con CI y CD - OTN 2015 César Hernández
Este documento describe cómo la integración continua y la entrega continua pueden incrementar la productividad y agilidad en proyectos Java Enterprise. La integración continua involucra integrar código en un repositorio varias veces al día y verificar automáticamente cada cambio. La entrega continua extiende esto para garantizar que cada cambio pueda implementarse en producción con solo presionar un botón. Juntos, estos enfoques pueden ayudar a detectar errores más rápido, reducir tiempos muertos y mejorar la eficiencia de los recurs
Este documento presenta una introducción a las herramientas y marcos de pruebas unitarias en PHP. Se discuten varios marcos xUnit como PHPUnit, Simple Test y Atoum. También se describen herramientas para la integración continua y la calidad de código como PHP QA Tools, Scrutinizer CI y Travis CI. Finalmente, se explican conceptos como test dobles y funcionales con PHPUnit y Selenium.
Jenkins - don't break my builds! is an introductory talk in spanish I gave at the PHP Conference 2013 in Argentina. I spoke about how I met Contintinuous Integration at Google in 2005, and how my experience has been since. I also gave tips on how to start using it in projects that have no "integration" to speak of (such as most PHP projects).
El documento describe diferentes modelos de ciclo de vida de desarrollo de software, incluyendo modelos de proceso, cascada, prototipado rápido, programación extrema y procesos ágiles. También discute los procesos livianos versus pesados y factores a considerar al seleccionar un proceso.
Este documento presenta la consola de Drupal 8, una herramienta de línea de comandos que automatiza la creación de módulos, controladores, formularios y otros elementos de Drupal 8. Explica cómo instalar la consola, los comandos disponibles como generar:módulo y generar:controlador, y destaca que usa componentes Symfony y Twig para generar archivos de forma más eficiente. Finalmente, agradece a los asistentes y desarrolladores del proyecto de consola de Drupal.
El documento presenta ASP.NET 5 y Entity Framework 7. Introduce las nuevas características de ASP.NET 5 como el uso de middleware, inyección de dependencias integrada y configuración flexible. También cubre las herramientas DNVM, DNX y DNU. Explica las mejoras en vistas, localización, archivos estáticos y el ecosistema JavaScript. Finalmente, resume las opciones de servidores y consideraciones para producción con EF7.
Este documento presenta Team Foundation Server (TFS), una plataforma de colaboración de Microsoft para la administración del ciclo de vida de aplicaciones. Describe las funcionalidades de TFS como la administración de proyectos, seguimiento de elementos de trabajo, control de versiones y más. También explica los beneficios de TFS como el uso de herramientas conocidas, la previsibilidad del manejo de proyectos y la simplificación del flujo de datos. Por último, resume los requisitos técnicos para la implementación de TFS.
Este documento presenta una introducción al control de versiones y la herramienta Git. Explica qué es el control de versiones, los diferentes tipos, y proporciona una guía de los comandos básicos de Git. También cubre temas como el versionamiento semántico, Git Flow, automatización de tareas, Gitlab y Gitlab CI.
Este documento presenta una introducción a Git y control de versiones. Explica qué es Git, sus ventajas para el trabajo individual y colaborativo, términos comunes como clonar, confirmar y fusionar, y buenas prácticas como evitar conflictos al fusionar mediante el uso de ramas y marcadores de posición. El objetivo es enseñar los conceptos básicos de Git para mejorar la colaboración en proyectos de código.
Similar a El equipo de integracion de Moodle HQ es tu muy mejor amigo (20)
Moodle learning analytics desde diferentes perspectivas (#mootgt19)David Monllaó
Moodle es una plataforma de aprendizaje en línea utilizada por 162 millones de usuarios en todo el mundo. Este documento describe cómo Moodle HQ está desarrollando herramientas de análisis de aprendizaje para mejorar la experiencia de los estudiantes, profesores, administradores e investigadores en la plataforma. Actualmente, Moodle puede identificar estudiantes en riesgo de no completar un curso con éxito y proporciona notificaciones sugeridas. En el futuro, Moodle agregará un asistente virtual, informes mejorados
Moodle learning analytics from different perspectives (#moothr19)David Monllaó
Description of the analytics features in Moodle from different perspectives: From developers and site administrators to teachers and students. The presentation will include a description of the new features in 3.7, an overview of what we are working on for Moodle 3.8 and an outline of the long term objectives for analytics in Moodle.
The document discusses installing and configuring Solr and global search for Moodle. It provides instructions on downloading and starting the Solr server, creating an index to store Moodle site contents, and installing the necessary PHP extension. The document also mentions that global search in Moodle is available from version 3.1 onward and allows storing and searching a site's contents via a search engine plugin and API.
Add your plugin contents to global searchDavid Monllaó
This document discusses Moodle's global search plugin capabilities introduced in Moodle 3.1. It describes how plugins can add their content to the search engine by defining search areas and documents. It covers indexing data, access control, and leveraging existing classes to easily add activity information to searches. The document provides links to Moodle documentation and code samples for further customizing the search experience.
How to improve your moodle site performanceDavid Monllaó
The document provides tips for improving Moodle site performance based on user roles. It suggests that teachers enable only necessary filters, resize images before uploading, and reduce sections/recent activity blocks. Moodle administrators should use performance reports, disable log legacy data, and reduce frontpage courses. System administrators can implement memcached, Opcache, compare session storage, and optimize hardware. Developers should reduce database queries in loops, join on indexes, and add caching. Moodle HQ ensures no regressions and looks for performance issues and more caches.
This document provides an overview of how Moodle HQ tests Moodle functionality automatically. It describes using a human-friendly language to write testing scenarios, Selenium to simulate real user interactions, and Jenkins to run the tests automatically on multiple browser and OS combinations. The goal is to ensure new code changes don't break functionality and to expand coverage of Moodle's features.
ESPERAMOS QUE ESTA INFOGRAFÍA SEA UNA HERRAMIENTA ÚTIL Y EDUCATIVA QUE INSPIRE A MÁS PERSONAS A ADENTRARSE EN EL APASIONANTE CAMPO DE LA INGENIERÍA CIVIŁ. ¡ACOMPAÑANOS EN ESTE VIAJE DE APRENDIZAJE Y DESCUBRIMIENTO
Equipo 4. Mezclado de Polímeros quimica de polimeros.pptxangiepalacios6170
Presentacion de mezclado de polimeros, de la materia de Quimica de Polímeros ultima unidad. Se describe la definición y los tipos de mezclado asi como los aditivos usados para mejorar las propiedades de las mezclas de polimeros
El equipo de integracion de Moodle HQ es tu muy mejor amigo
1. El equipo de integración de
Moodle HQ es tu muy mejor
amigo
David Monllaó Olivé
Senior Developer and Integrator at HQ
#mootes18
@DavidMonllao
2. Índice
● Qué es el iTeam
● Proceso de integración y releases
● Herramientas
● Otras cositas
“Cómo puedo participar?” o “De qué me sirve esto a mi?”.
3. Qué es el iTeam?
● Responsabilidades ligadas al desarrollo y
mantenimiento del core de Moodle
● Parte de nuevo Open Source team
● Grupo de desarrolladores senior de Moodle HQ
○ Miembros estables, entorno amigable y apoyo
mutuo
6. Proceso
https://docs.moodle.org/dev/Process
1. Discusión / especificaciones
2. Desarrollo
3. Revisión de código (peer)
4. Revisión de integración (iTeam)
5. Testeo
6. Hecho (Follow-ups & Bugs)
Proceso abierto a todo tipo de
contribuciones.
9. ● Integration Functional Testing
○ Issues integradas semanalmente (UTPI & HQ)
● QA Testing
○ Todas las funcionalidades de Moodle
○ Antes de cada major release
○ 570 QA tests en Moodle 3.5.0
Puedes participar en el proceso de QA.
Testing manual ✋
10. Testing automatizado (CI)
https://ci.moodle.org/ & https://integration.moodle.org
● Tests unitarios (PHPUnit)
○ Corren diariamente
○ Todas las bases de datos
● Tests de aceptación (Behat & Selenium)
○ Corren diariamente
○ Todas las bases de datos
○ Todos los navegadores soportados
● Tests de rendimiento (JMeter)
○ https://github.com/moodlehq/moodle-perfor
mance-comparison
https://wiki.jenkins.io/display/JENKINS/Logo
12. Moodle-docker
https://github.com/moodlehq/moodle-docker
● Based on docker-compose
● All supported databases
● All supported PHP versions
● External services like LDAP and Solr
● PHPUnit & Behat + Selenium
● Developed by Dan Poltawski, now maintained by
iTeam
Puedes usarlo para desarrollo o contribuir.
https://www.docker.com/brand-guidelines