Este documento describe las herramientas y mejores prácticas para el desarrollo profesional de proyectos en Drupal, incluyendo el uso de Drush, Features, Profiles, Drush Make, Git, y automatización del paso entre entornos. El autor argumenta que estas herramientas permiten un desarrollo colaborativo, versionado del código, y despliegue automatizado de proyectos Drupal.
Este documento resume las principales novedades del universo JavaScript en Drupal 8. Introduce las nuevas APIs como Drupal.behaviors y Drupal.theme, y explica cómo añadir JavaScript a módulos y temas mediante librerías declaradas en ficheros YAML. También ofrece consejos sobre buenas prácticas de desarrollo como usar el modo estricto y crear plugins y bibliotecas propias.
Presentación expuesta en el marco del Drupal Day Barcelona 2011 e impartida por Ramon Vilar sobre las novedades en materia JavaScript que trae Drupal 7 y cómo podemos aprovecharlas.
El documento describe las 10 fases principales del ciclo de vida de ingeniería de software, incluyendo la planificación del proyecto, identificación de necesidades, especificación de requisitos, diseño, implementación, instalación, mantenimiento, verificación y validación, gestión de configuración y desarrollo de documentación. Explica brevemente las actividades clave involucradas en cada fase del ciclo de desarrollo de software.
Este documento proporciona una introducción general a Drupal, incluyendo su historia, características principales y áreas de uso. Drupal es un sistema de gestión de contenidos de código abierto que permite construir todo tipo de sitios web de forma flexible. Se explican conceptos como módulos, temas, usuarios y roles. También se destacan ejemplos de sitios populares desarrollados con Drupal.
Drupal es un sistema de gestión de contenidos (CMS) de código abierto que permite crear y administrar sitios web. Está compuesto de módulos que agregan funcionalidades como blogs, foros y comercio electrónico. Los usuarios interactúan con contenido organizado en nodos y taxonomías, mientras que los permisos de acceso son administrados a través de roles de usuario.
Este documento presenta una introducción a Drupal para la construcción de sitios web. Explica los requisitos básicos de Drupal, el proceso de instalación y configuración, y cómo gestionar contenido, usuarios y ampliar la funcionalidad a través de módulos. También cubre temas como presentar datos y contenido, arquitectura de información, y sugerencias para seguir avanzando con temas como layouts, multisitios y comercio. El objetivo es proporcionar una visión general de las capacidades principales de Drupal para la cre
Herramientas de programación para desarrolladoresBBVA API Market
En este ebook se recopilan todas las herramientas con las que debes contar para desarrollar en cualquier lenguaje de programación: desde HTML hasta Java, PHP o Python entre otros. ¡Ya te lo puedes descargar! Más información en http://bbva.info/2t1NEv7
El documento describe varios módulos contribuidos de Drupal que extienden su funcionalidad. Explica cómo encontrar y elegir módulos desde drupal.org y cómo instalarlos y habilitarlos. También resume los usos y ventajas de módulos populares como CCK, Views, ImageCache, Pathauto y Token, Panels, Rules y módulos para SEO.
Este documento resume las principales novedades del universo JavaScript en Drupal 8. Introduce las nuevas APIs como Drupal.behaviors y Drupal.theme, y explica cómo añadir JavaScript a módulos y temas mediante librerías declaradas en ficheros YAML. También ofrece consejos sobre buenas prácticas de desarrollo como usar el modo estricto y crear plugins y bibliotecas propias.
Presentación expuesta en el marco del Drupal Day Barcelona 2011 e impartida por Ramon Vilar sobre las novedades en materia JavaScript que trae Drupal 7 y cómo podemos aprovecharlas.
El documento describe las 10 fases principales del ciclo de vida de ingeniería de software, incluyendo la planificación del proyecto, identificación de necesidades, especificación de requisitos, diseño, implementación, instalación, mantenimiento, verificación y validación, gestión de configuración y desarrollo de documentación. Explica brevemente las actividades clave involucradas en cada fase del ciclo de desarrollo de software.
Este documento proporciona una introducción general a Drupal, incluyendo su historia, características principales y áreas de uso. Drupal es un sistema de gestión de contenidos de código abierto que permite construir todo tipo de sitios web de forma flexible. Se explican conceptos como módulos, temas, usuarios y roles. También se destacan ejemplos de sitios populares desarrollados con Drupal.
Drupal es un sistema de gestión de contenidos (CMS) de código abierto que permite crear y administrar sitios web. Está compuesto de módulos que agregan funcionalidades como blogs, foros y comercio electrónico. Los usuarios interactúan con contenido organizado en nodos y taxonomías, mientras que los permisos de acceso son administrados a través de roles de usuario.
Este documento presenta una introducción a Drupal para la construcción de sitios web. Explica los requisitos básicos de Drupal, el proceso de instalación y configuración, y cómo gestionar contenido, usuarios y ampliar la funcionalidad a través de módulos. También cubre temas como presentar datos y contenido, arquitectura de información, y sugerencias para seguir avanzando con temas como layouts, multisitios y comercio. El objetivo es proporcionar una visión general de las capacidades principales de Drupal para la cre
Herramientas de programación para desarrolladoresBBVA API Market
En este ebook se recopilan todas las herramientas con las que debes contar para desarrollar en cualquier lenguaje de programación: desde HTML hasta Java, PHP o Python entre otros. ¡Ya te lo puedes descargar! Más información en http://bbva.info/2t1NEv7
El documento describe varios módulos contribuidos de Drupal que extienden su funcionalidad. Explica cómo encontrar y elegir módulos desde drupal.org y cómo instalarlos y habilitarlos. También resume los usos y ventajas de módulos populares como CCK, Views, ImageCache, Pathauto y Token, Panels, Rules y módulos para SEO.
Este documento presenta Google Web Toolkit (GWT), un framework de desarrollo en Java de código abierto que permite crear aplicaciones web AJAX. GWT compila el código Java en JavaScript y HTML para que las aplicaciones sean compatibles con cualquier navegador. El documento describe las características de GWT como componentes de interfaz de usuario, RPC, manejo del historial del navegador, depuración, compatibilidad con navegadores e integración con JUnit. También explica la arquitectura de GWT y los procesos de depuración, prue
Este documento presenta varias herramientas para la visualización de datos. En primer lugar, describe cinco herramientas populares: Google Fusion Tables, CartoDB, Tableau Public, iCharts y Smart Data Report. Luego, proporciona más detalles sobre cada una de estas herramientas, incluidas sus características y usos comunes. El objetivo general es ayudar a los lectores a sacar el máximo provecho de sus datos mediante la visualización eficaz de la información.
Frameworks y herramientas para la web del futuroBBVA API Market
El futuro de la web está más vivo que nunca. Si quieres conocer las librerías y herramientas esenciales para crear la web del futuro, descárgate este ebook. Más información en http://bbva.info/2t1NEv7
¿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.
Este documento describe los patrones de diseño y su historia. Explica que un patrón de diseño es una solución probada a un problema común de diseño de software que puede aplicarse en diferentes contextos. Resume los tipos principales de patrones de diseño, como los patrones creacionales, estructurales y de comportamiento, así como ejemplos de patrones individuales como el patrón de fábrica y el patrón compuesto. También describe brevemente el enfoque de la arquitectura orientada a patrones.
Combinación ganadora: Plone como CMS, tu framework preferido como frontendmenttes
Plone es un excelente sistema de gestión de contenidos. Recientemente ha sido elegido como el mejor CMS no-PHP en un popular concurso anual. A pesar de esto, muchos desarrolladores web de Python encuentran complejo a Zope, el framework con el que esta desarrollado el CMS.
Ahora, ¿qué tal si pudieras usar Plone solo como un gestor de contenidos y tu framework favorito, cualquiera sea, para implementar un front-end de forma transparente, obteniendo una configuración basada sobre una aplicación probada y de bajo mantenimiento, como backend siendo libre para escribir tu propia aplicación, usando el poder y flexibilidad de tu framework web?
En esta charla, se mostrarán ejemplos realizados con un par de productos de terceros de Plone y front-ends en varios frameworks.
Este documento resume una presentación sobre el desarrollo web con Google Web Toolkit (GWT). GWT permite a los desarrolladores crear aplicaciones Ajax complejas utilizando Java en lugar de JavaScript. GWT compila el código Java en JavaScript optimizado que funciona en cualquier navegador moderno. La presentación cubre los beneficios de usar un compilador en lugar de escribir JavaScript a mano, así como las características y componentes del kit de herramientas GWT.
Metodologia de Trabajo en Proyectos con DrupalRuben Teijeiro
Esta sesión está pensada para exponer una propuesta de metodología de trabajo en proyectos basados en la plataforma Drupal.
Una sesión sencilla que avanzará desde lo abstracto a lo concreto, desde lo básico a lo avanzado.
La exposición será eminentemente práctica: se usará el caso real de un proyecto web para introducir los conceptos básicos de la estructura de elementos en Drupal, las características principales de Drush como herramienta de configuración y la elaboración de un profile reutilizable con las principales características y módulos más usuales en un proyecto web.
Por último, se expondrán aspectos relacionados con la distribución del paquete final dentro de la comunidad Drupal.
Drupal es un sistema de gestión de contenidos modular y de código abierto que permite construir todo tipo de páginas web adaptándose a las necesidades particulares de cada caso. Originalmente fue creado para controlar una red local de usuarios y ha evolucionado para ofrecer funcionalidades avanzadas de control de contenido, gestión de usuarios, presentación flexible de contenido y extensibilidad a través de módulos. Aunque tiene una curva de aprendizaje pronunciada, Drupal se sustenta en una gran comunidad de usuarios y desarrolladores.
Este documento presenta Google Web Toolkit (GWT) y SmartGWT, dos tecnologías para el desarrollo de interfaces web. Introduce AJAX y las aplicaciones web ricas, y explica los desafíos del desarrollo front-end con JavaScript debido a las diferencias entre navegadores. Luego se enfoca en GWT, una herramienta de Google que compila Java a JavaScript para crear aplicaciones web front-end sin preocuparse por las inconsistencias entre navegadores.
El documento resume las funcionalidades y uso de Drupal Console, una herramienta de línea de comandos para administrar sitios Drupal. Explica cómo instalarla y usar sus comandos para generar módulos, entidades de contenido, importar sitios y más. También cubre temas como configuración, documentación, contribución y traducción.
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
1) El documento introduce Google Web Toolkit (GWT), una tecnología para acelerar el desarrollo de aplicaciones web ricas mediante el uso de Java. 2) GWT compila el código Java en código JavaScript optimizado para su ejecución en los principales navegadores. 3) El documento explica conceptos como la arquitectura de GWT, la construcción de interfaces gráficas, la comunicación con servidores y otras características.
Los mejores trucos y prácticas para configurar drupalSiteGround España
Este documento ofrece consejos para configurar Drupal de forma óptima. En resumen: (1) Se recomienda usar Composer para crear proyectos Drupal y organizar módulos y temas. (2) La base de datos debe estar optimizada y tener copias de seguridad periódicas. (3) Se deben usar cachés como Varnish o Memcache para mejorar el rendimiento. (3) Las tareas de cron son importantes para mantener la web y deben ejecutarse regularmente.
Django es un framework web de código abierto escrito en Python que permite construir aplicaciones web más rápido y con menos código. Se centra en automatizar tareas y seguir el principio DRY. Está basado en el patrón MVT, con las capas de Modelo, Template y Vista. Incluye características como administración de contenido, autenticación, y más.
Este documento describe la estructura y flujo de trabajo típico de un proyecto GWT. Explica cómo crear un nuevo proyecto GWT, configurar el módulo, desarrollar código de cliente y servidor en Java, probar el código, depurar en modo desarrollo, compilar a JavaScript y desplegar la aplicación. También cubre temas como usar Eclipse, plugins de navegador y construir proyectos GWT con Ant o Maven.
Este documento describe los conceptos fundamentales de las API REST y su desarrollo con MongoDB. Explica que una API REST permite aprovechar desarrollos existentes para nuevas aplicaciones mediante recursos accesibles a través de URIs y acciones HTTP. También describe cómo Spring Initializr facilita la generación de proyectos con sus dependencias, y los pasos básicos para crear clases, servicios y formularios en Angular para el desarrollo de una API REST con MongoDB.
Este documento presenta un proyecto de fin de carrera sobre la programación de una tienda virtual en Grails. Introduce brevemente Groovy como lenguaje de programación y Grails como framework web, y explica los objetivos generales y específicos del proyecto como el estudio de estas tecnologías y la creación de una aplicación de e-commerce para compararla con otro ejemplo. Además, detalla la organización de la memoria en diferentes capítulos sobre introducción, antecedentes, análisis, diseño, implementación, conclusiones y anexos.
Este documento presenta una introducción a Drupal, incluyendo sus puntos fuertes como su flexibilidad y velocidad de desarrollo, así como conceptos básicos como módulos, temas y bloques. También cubre herramientas como Views y Context que mejoran la presentación de contenido, y módulos populares como Features que permiten empaquetar funcionalidad. El documento concluye resaltando la importancia de la comunidad de Drupal.
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 presenta Google Web Toolkit (GWT), un framework de desarrollo en Java de código abierto que permite crear aplicaciones web AJAX. GWT compila el código Java en JavaScript y HTML para que las aplicaciones sean compatibles con cualquier navegador. El documento describe las características de GWT como componentes de interfaz de usuario, RPC, manejo del historial del navegador, depuración, compatibilidad con navegadores e integración con JUnit. También explica la arquitectura de GWT y los procesos de depuración, prue
Este documento presenta varias herramientas para la visualización de datos. En primer lugar, describe cinco herramientas populares: Google Fusion Tables, CartoDB, Tableau Public, iCharts y Smart Data Report. Luego, proporciona más detalles sobre cada una de estas herramientas, incluidas sus características y usos comunes. El objetivo general es ayudar a los lectores a sacar el máximo provecho de sus datos mediante la visualización eficaz de la información.
Frameworks y herramientas para la web del futuroBBVA API Market
El futuro de la web está más vivo que nunca. Si quieres conocer las librerías y herramientas esenciales para crear la web del futuro, descárgate este ebook. Más información en http://bbva.info/2t1NEv7
¿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.
Este documento describe los patrones de diseño y su historia. Explica que un patrón de diseño es una solución probada a un problema común de diseño de software que puede aplicarse en diferentes contextos. Resume los tipos principales de patrones de diseño, como los patrones creacionales, estructurales y de comportamiento, así como ejemplos de patrones individuales como el patrón de fábrica y el patrón compuesto. También describe brevemente el enfoque de la arquitectura orientada a patrones.
Combinación ganadora: Plone como CMS, tu framework preferido como frontendmenttes
Plone es un excelente sistema de gestión de contenidos. Recientemente ha sido elegido como el mejor CMS no-PHP en un popular concurso anual. A pesar de esto, muchos desarrolladores web de Python encuentran complejo a Zope, el framework con el que esta desarrollado el CMS.
Ahora, ¿qué tal si pudieras usar Plone solo como un gestor de contenidos y tu framework favorito, cualquiera sea, para implementar un front-end de forma transparente, obteniendo una configuración basada sobre una aplicación probada y de bajo mantenimiento, como backend siendo libre para escribir tu propia aplicación, usando el poder y flexibilidad de tu framework web?
En esta charla, se mostrarán ejemplos realizados con un par de productos de terceros de Plone y front-ends en varios frameworks.
Este documento resume una presentación sobre el desarrollo web con Google Web Toolkit (GWT). GWT permite a los desarrolladores crear aplicaciones Ajax complejas utilizando Java en lugar de JavaScript. GWT compila el código Java en JavaScript optimizado que funciona en cualquier navegador moderno. La presentación cubre los beneficios de usar un compilador en lugar de escribir JavaScript a mano, así como las características y componentes del kit de herramientas GWT.
Metodologia de Trabajo en Proyectos con DrupalRuben Teijeiro
Esta sesión está pensada para exponer una propuesta de metodología de trabajo en proyectos basados en la plataforma Drupal.
Una sesión sencilla que avanzará desde lo abstracto a lo concreto, desde lo básico a lo avanzado.
La exposición será eminentemente práctica: se usará el caso real de un proyecto web para introducir los conceptos básicos de la estructura de elementos en Drupal, las características principales de Drush como herramienta de configuración y la elaboración de un profile reutilizable con las principales características y módulos más usuales en un proyecto web.
Por último, se expondrán aspectos relacionados con la distribución del paquete final dentro de la comunidad Drupal.
Drupal es un sistema de gestión de contenidos modular y de código abierto que permite construir todo tipo de páginas web adaptándose a las necesidades particulares de cada caso. Originalmente fue creado para controlar una red local de usuarios y ha evolucionado para ofrecer funcionalidades avanzadas de control de contenido, gestión de usuarios, presentación flexible de contenido y extensibilidad a través de módulos. Aunque tiene una curva de aprendizaje pronunciada, Drupal se sustenta en una gran comunidad de usuarios y desarrolladores.
Este documento presenta Google Web Toolkit (GWT) y SmartGWT, dos tecnologías para el desarrollo de interfaces web. Introduce AJAX y las aplicaciones web ricas, y explica los desafíos del desarrollo front-end con JavaScript debido a las diferencias entre navegadores. Luego se enfoca en GWT, una herramienta de Google que compila Java a JavaScript para crear aplicaciones web front-end sin preocuparse por las inconsistencias entre navegadores.
El documento resume las funcionalidades y uso de Drupal Console, una herramienta de línea de comandos para administrar sitios Drupal. Explica cómo instalarla y usar sus comandos para generar módulos, entidades de contenido, importar sitios y más. También cubre temas como configuración, documentación, contribución y traducción.
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
1) El documento introduce Google Web Toolkit (GWT), una tecnología para acelerar el desarrollo de aplicaciones web ricas mediante el uso de Java. 2) GWT compila el código Java en código JavaScript optimizado para su ejecución en los principales navegadores. 3) El documento explica conceptos como la arquitectura de GWT, la construcción de interfaces gráficas, la comunicación con servidores y otras características.
Los mejores trucos y prácticas para configurar drupalSiteGround España
Este documento ofrece consejos para configurar Drupal de forma óptima. En resumen: (1) Se recomienda usar Composer para crear proyectos Drupal y organizar módulos y temas. (2) La base de datos debe estar optimizada y tener copias de seguridad periódicas. (3) Se deben usar cachés como Varnish o Memcache para mejorar el rendimiento. (3) Las tareas de cron son importantes para mantener la web y deben ejecutarse regularmente.
Django es un framework web de código abierto escrito en Python que permite construir aplicaciones web más rápido y con menos código. Se centra en automatizar tareas y seguir el principio DRY. Está basado en el patrón MVT, con las capas de Modelo, Template y Vista. Incluye características como administración de contenido, autenticación, y más.
Este documento describe la estructura y flujo de trabajo típico de un proyecto GWT. Explica cómo crear un nuevo proyecto GWT, configurar el módulo, desarrollar código de cliente y servidor en Java, probar el código, depurar en modo desarrollo, compilar a JavaScript y desplegar la aplicación. También cubre temas como usar Eclipse, plugins de navegador y construir proyectos GWT con Ant o Maven.
Este documento describe los conceptos fundamentales de las API REST y su desarrollo con MongoDB. Explica que una API REST permite aprovechar desarrollos existentes para nuevas aplicaciones mediante recursos accesibles a través de URIs y acciones HTTP. También describe cómo Spring Initializr facilita la generación de proyectos con sus dependencias, y los pasos básicos para crear clases, servicios y formularios en Angular para el desarrollo de una API REST con MongoDB.
Este documento presenta un proyecto de fin de carrera sobre la programación de una tienda virtual en Grails. Introduce brevemente Groovy como lenguaje de programación y Grails como framework web, y explica los objetivos generales y específicos del proyecto como el estudio de estas tecnologías y la creación de una aplicación de e-commerce para compararla con otro ejemplo. Además, detalla la organización de la memoria en diferentes capítulos sobre introducción, antecedentes, análisis, diseño, implementación, conclusiones y anexos.
Este documento presenta una introducción a Drupal, incluyendo sus puntos fuertes como su flexibilidad y velocidad de desarrollo, así como conceptos básicos como módulos, temas y bloques. También cubre herramientas como Views y Context que mejoran la presentación de contenido, y módulos populares como Features que permiten empaquetar funcionalidad. El documento concluye resaltando la importancia de la comunidad de Drupal.
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.
[DrupalCampSpain2023] Introducción al desarrollo de módulos en Drupal 10Keopx
Este documento presenta una introducción al desarrollo de módulos en Drupal 10. Explica estándares de codificación, herramientas útiles, la estructura recomendada de directorios para módulos, y cómo organizar el código dentro de un módulo. También proporciona recursos adicionales sobre el API de Drupal, formularios, contribuciones y depuración que los desarrolladores deberían consultar.
Este documento presenta una introducción a Drupal 8, incluyendo sus nuevas funcionalidades como campos mejorados, configuración almacenada en la base de datos, motor de plantillas Twig, y soporte para desarrollo basado en objetos. También discute mejoras para desarrolladores como el uso de componentes Symfony y PHPUnit, así como errores comunes al migrar desde Drupal 7.
Este documento presenta una introducción a Drupal, incluyendo una descripción general de sus características principales como un CMS de código abierto, su licencia, arquitectura, instalación, funcionalidades centrales como contenido, taxonomías, temas, usuarios y módulos. Explica conceptos clave como el core simple de Drupal y cómo los módulos extienden sus capacidades, así como recursos para obtener más información sobre el uso y desarrollo con Drupal.
Este documento presenta una introducción a la programación de módulos en Drupal 7. Explica que Drupal es un sistema de gestión de contenidos modular que permite extender su funcionalidad a través de módulos. Detalla conceptos como entidades, bloques, menús y temas. Recomienda buscar primero soluciones mediante módulos populares antes de programar código propio y compartirlo con la comunidad. Finalmente, cubre aspectos como el desarrollo y arquitectura de módulos y temas en Drupal.
This slides are about what is drupal? and why you should use drupal. The target for this slides are students of last courses of web apps development.
This slides was created by:
@keilovecraft
@Nesta_
This slides are based on http://www.slideshare.net/zekivazquez/taller-drupal-jornadas-software-libre-uca (by @RabbitLair)
En nuestro día a día siempre nos encontramos con módulos contribuidos que tienen algún bug. En esta presentación explicamos cómo arreglarlos a la vez que contribuimos a la comunidad de Drupal con ello.
Revisaremos cómo completar tu perfil en drupal.org así como la issue queue, los estados de una issue y cómo añadir nuestros crear y añadir parches de la manera correcta.
Metodologia de Trabajo en Proyectos con DrupalRojomorgan
Esta sesión está pensada para exponer una propuesta de metodología de trabajo en proyectos basados en la plataforma Drupal.
Una sesión sencilla que avanzará desde lo abstracto a lo concreto, desde lo básico a lo avanzado.
La exposición será eminentemente práctica: se usará el caso real de un proyecto web para introducir los conceptos básicos de la estructura de elementos en Drupal, las características principales de Drush como herramienta de configuración y la elaboración de un profile reutilizable con las principales características y módulos más usuales en un proyecto web.
Por último, se expondrán aspectos relacionados con la distribución del paquete final dentro de la comunidad Drupal.
Drupalcamp 2014 reconstruir un medio digital idealista newsMartín .
http://2014.drupalcamp.es/reconstruir-y-migrar-un-medio-digital-idealistanews
Durante 3 meses y medio hemos reconstruido desde 0 un nuevo portal de noticias en Drupal 7, idealista/news, que es una tríada de países (ES, IT, PT), migrando y adaptando más de 14 años de contenido y comentarios de un Drupal 6.
Queremos compartir toda la experiencia adquirida y problemas que nos hemos encontramos. La charla no será un autobombo, aunque se mostrarán muchos ejemplos, y los temas son:
Cómo adaptar todo tu viejo contenido a un diseño responsive
Migrate, problemas más allá de los ejemplos con "article", su escalabilidad y rendimiento
El problema de cambiar la jerarquía de la información
Mantener el posicionamiento en buscadores aún cambiandolo todo
Legacy code ¿qué hacer con él?
Features para 3 webs y entornos distintos
Pase a producción sin downtime
Reconstruir un medio digital: idealista/news - Drupalcamp Spain 2014Rodrigo Alfaro
Slides de la charla: http://2014.drupalcamp.es/reconstruir-y-migrar-un-medio-digital-idealistanews
Durante 3 meses y medio hemos reconstruido desde 0 un nuevo portal de noticias en Drupal 7, idealista/news, que es una tríada de países (ES, IT, PT), migrando y adaptando más de 14 años de contenido y comentarios de un Drupal 6.
Queremos compartir toda la experiencia adquirida y problemas que nos hemos encontramos. La charla no será un autobombo, aunque se mostrarán muchos ejemplos, y los temas son:
Cómo adaptar todo tu viejo contenido a un diseño responsive
Migrate, problemas más allá de los ejemplos con "article", su escalabilidad y rendimiento
El problema de cambiar la jerarquía de la información
Mantener el posicionamiento en buscadores aún cambiandolo todo
Legacy code ¿qué hacer con él?
Features para 3 webs y entornos distintos
Pase a producción sin downtime
Curso impartido en la Universidad de Deusto. Introducción a Drupal 6. Instalación y configuración base. Manipulación de contenidos y adaptación del portal. Modulos más usados, CCK, Views... Creación de un Sub-tema y creación de un modulo básico.
Construyendo una red social con DrupalDaniel Primo
Este documento presenta Drupal como una plataforma para construir redes sociales. Explica qué es una red social, da ejemplos construidos con Drupal como Vi.vu y Spaniards.es, y analiza consideraciones previas como el número de usuarios y funcionalidad deseada. Luego, describe módulos populares para redes sociales en Drupal como Organic Groups, Content Profile y Private Messages, que permiten agrupar usuarios, crear perfiles y enviar mensajes privados. Finalmente, recomienda otros módulos útiles como Activity, Rules y Facebook Style Status.
[DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9Keopx
[DrupalCampSpain2022] Introducción al desarrollo de módulos en Drupal 9
Taller realizado en la DrupalCamp Spain de 2022 centrado en el desarrollo para Drupal 9.
En el taller se mostrara la creación de un modulo básico, veremos ejemplos existentes y como poder aprovecharlos para hacer nuestros desarrollos a medida.
Sera necesario tener instalado el entorno de desarrollo, un entorno con Drupal en Docker (Lando, Ddev, Docker4Drupal), LAMP, MAMP, WAMP o similar para poder trabajar.
Se proporciona una OVA (VirtualBox 6.1) para facilitar el desarrollo.
Recomendación:
- Drupal 9. Instalado y funcionando.
- IDE de desarrollo. En la maquina virtual estará disponible Code.
- Se recomienda usar la maquina virtual para facilitar la sesión.
Algunos módulos que veremos, por ello es aconsejable instalarlos.
- Modulo Devel
- Modulo Coder
- Módulo Examples
Están disponibles maquinas virtuales o instaladores para facilitar:
- Docker (+ Lando) / Maquina virtual (VitualBox 6.1)
- http://drupalcamp2022.keopx.net/ (recomendado)
Presentación
- http://drupalcamp2022.keopx.net/
Figma es una herramienta basada en la web para diseño y prototipado de interfaces de usuario, con características adicionales habilitadas por aplicaciones de escritorio. Se enfoca en el diseño colaborativo en tiempo real. Ofrece ventajas como trabajo en la nube y offline, librerías de componentes compartidos, y compatibilidad multiplataforma. Su interfaz simple e intuitiva facilita la creación y edición de diseños de manera colaborativa.
Actualizar a nuevos frameworks, paradigmas, explorar en proyectos "greenfield" está genial, pero ¿y si el software que estás manteniendo lleva años funcionando y no lo puedes modificar así como así? ¿Puedes modernizarlo de alguna manera: procesos, automatización, testing...?
En esta charla compartiremos las experiencias de cómo una aplicación "legacy" ha ido evolucionando con el paso de los años sin tocar el core de la aplicación (Java + Struts + MySQL), simplemente optimizando los procesos mediante la automatización de tareas, virtualización de entornos y gestión de la configuración.
Migrate, una herramienta de trabajo y desarrolloYmbra
Desde que Migrate apareció en la estela de Drupal, las migraciones han pasado de ser uno de los mayores tormentos para un desarrollador, a ser una tarea interesante y hasta divertida (y sin estrés). En esta sesión nos meteremos de cabeza en la API de Migrate para ver cómo funciona, qué debemos tener en cuenta, cómo debemos preparar las fuentes de datos, y sobretodo, cómo gestionarlo dentro del ciclo de desarrollo del proyecto.
Pero... es Migrate un módulo sólo para migrar contenido? NO. Expondremos el cómo Migrate es un MUST en cualquier desarrollo, cómo nos puede ayudar a tener un conjunto de pruebas para nuestro site, cómo esto se integra en un proceso de desarrollo colaborativo y junto a un sistema de integración contínua.
Desarrollar tipos de campos (field types) en Drupal es sencillo una vez se conoce las bases. Crear tu propio field en ocasiones puede ser una mejora de usabilidad y/o rendimiento para tu proyecto. Si quieres aprender a crear tu propio field, conocer mejor Field Types API y ver un poco de código, esta es tu sesión.
Este documento proporciona información sobre distribuciones en Drupal. Explica que una distribución Drupal consiste en un conjunto de módulos preconfigurados y empaquetados para resolver una necesidad específica. Proporciona ejemplos de distribuciones populares como Open Atrium para gestión del conocimiento, Commerce Kickstart para comercio electrónico, y Open Publish para publicaciones en línea. El documento concluye que las distribuciones son útiles como punto de partida, para demostraciones, probar nuevas funcionalidades, y aprender cómo otros resuelven
Este documento presenta las novedades del módulo Views en Drupal 7. Explica que Views permite crear vistas personalizadas de contenido de forma fácil sin necesidad de código. Luego describe las mejoras en la interfaz de usuario, soporte para filtros OR y contextuales, y mejor rendimiento. Finalmente, ofrece varios ejemplos prácticos de uso como listados, galerías, calendarios y slideshows.
ELISAVA Beta. Cas d'èxit desenvolupat per YmbraYmbra
Cas d'èxit presentat a la sessió de drupal.cat on expliquem quina és la nostra metodologia de desenvolupament (a grosso modo) tot usant el cas d'èxit de la Beta del web de l'ELISAVA.
Una petita explicació de què és l'HTML5, què incorpora i quina alternativa representa davant de tecnologies com Flash, Flex o Silverlight.
Al final es presenta una sèrie d'idees per la seva integració dins del món del Drupal, tant pel que fa a les plantilles com a mòduls.
Todo sobre la tarjeta de video (Bienvenidos a mi blog personal)AbrahamCastillo42
Power point, diseñado por estudiantes de ciclo 1 arquitectura de plataformas, esta con la finalidad de dar a conocer el componente hardware llamado tarjeta de video..
La inteligencia artificial sigue evolucionando rápidamente, prometiendo transformar múltiples aspectos de la sociedad mientras plantea importantes cuestiones que requieren una cuidadosa consideración y regulación.
Infografia TCP/IP (Transmission Control Protocol/Internet Protocol)codesiret
Los protocolos son conjuntos de
normas para formatos de mensaje y
procedimientos que permiten a las
máquinas y los programas de aplicación
intercambiar información.
El uso de las TIC en la vida cotidiana.pptxjgvanessa23
En esta presentación, he compartido información sobre las Tecnologías de la Información y la Comunicación (TIC) y su aplicación en diversos ámbitos de la vida cotidiana, como el hogar, la educación y el trabajo.
He explicado qué son las TIC, las diferentes categorías y sus respectivos ejemplos, así como los beneficios y aplicaciones en cada uno de estos ámbitos.
Espero que esta información sea útil para quienes la lean y les ayude a comprender mejor las TIC y su impacto en nuestra vida cotidiana.
2. QUIÉN SOY
●
Socio fundador de Ymbra
●
Desarrollador Drupal
●
Miembro activo de la
comunidad drupalera:
●
Ramon Vilar Gavaldà
●
http://ymbra.com/blogs/ramon
http://twitter.com/rvilar
●
Presidente de Drupal.cat
Administrador de la
traducción catalana
Eventos, parches...
http://drupal.org/user/293298
2
5. DESARROLLO TRADICIONAL EN
DRUPAL (I)
●
Aunque estemos enamorados de él, debemos
aceptarlo: Drupal, a día de hoy, tiene un
problema!
Código
Ficheros
Configuración
Contenido
Base de datos
5
6. DESARROLLO TRADICIONAL EN
DRUPAL (II)
●
●
●
●
Cómo nos lo hacemos para hacer un proyecto
en grupo?
Cómo podemos mantener el proyecto
versionado en un sistema de control de
versiones?
Cómo hacemos los pasos entre entornos? Y el
paso a producción?
Cómo la gente, y los proyectos, podían
sobrevivir hasta ahora?
6
7. DESARROLLO TRADICIONAL EN
DRUPAL (III)
●
Posibles soluciones:
●
El tradicional papel y lápiz... grrrr!!
●
Algo un poco menos caótico: desarrollo de módulo
–
–
–
–
–
Hacer un módulo que cree su tipo de contenido, con sus
campos, sus características, sus funciones de
actualización,...
Ah, y exportemos sus vistas...
Ah, y cree sus taxonomías y sus menús...
Y si tiene más chicha, pues también se la ponemos...
Ufff!
7
8. DESARROLLO TRADICIONAL EN
DRUPAL (y IV)
●
●
●
Seamos claros: el lápiz y el papel no se puede
considerar herramienta tecnológica.
Miremos qué herramientas nos ofrece la
comunidad y cuáles se están convirtiendo en
un estándar de facto.
Si no era así, a partir de ahora, el horizonte de
Drupal se os va a colocar un poco más lejos.
8
12. DRUSH
●
●
Esto va a ser rápido... Drush es OBLIGADO! Y
punto!
Para más información:
●
http://drupal.org/project/drush
●
Drush User's Guide http://ves.cat/boPl
12
14. FEATURES: TODO A CÓDIGO (I)
●
●
Lo que tenemos claro es que tenemos que
pasar toda la configuración y sus definiciones a
código.
Y qué ganamos?
●
●
Podemos resolver los conflictos (trabajo en grupo)
●
Separamos contenido de configuración
●
●
Podemos versionar el código
Facilitamos el paso entre entornos
Módulos obligatorios: Strongarm y Diff
14
15. FEATURES: TODO A CÓDIGO (II)
●
●
Crear un feature no tiene secreto: dispone de
una UI muy intuitiva
Y también de integración con drush
15
16. FEATURES: TODO A CÓDIGO (III)
●
Antes de empezar, hagamos un pequeño paso
para el programador, pero un gran paso para el
mantenedor: organicemos los directorios!
●
/contrib
●
/custom
●
/features
16
17. FEATURES: TODO A CÓDIGO (IV)
●
Al empezar un proyecto, tenemos que tener
claro qué funcionalidades tendrá
Funcionalidad
Feature
N tipos de contenido
● M campos
● O vistas
● P variables
● Contextos
● ...
●
17
18. FEATURES: TODO A CÓDIGO (V)
●
●
●
Un feature lo podemos hacer tan genérico cómo
queramos y luego crear otros que lo
complementen.
Por ejemplo, podemos crear un feature que sea
una noticia básica y luego crear otro feature que
tenga cómo dependencia este y sólo le añada,
por ejemplo, la capacidad de tener comentarios.
No tengamos miedo en hacer features pequeños
y jugar con las dependencias... pero no nos
pasemos!
18
19. FEATURES: TODO A CÓDIGO (VI)
●
●
●
●
Es normal tener algún feature que no tenga
ningún tipo de funcionalidad, sino que sólo nos
sirva para exportar configuración y/o
parametrización del sistema
Es el llamado feature_sitewide o
sitewide_config
Este nos puede servir, por ejemplo, para exportar
nuestros formatos de entrada, menús,...
Otro concepto es el Controller Feature: “One
feature to rule them all” (Nuvole)
19
20. FEATURES: TODO A CÓDIGO (VII)
●
●
●
●
●
●
Funcionalidad = Feature = ... = Módulo? Por qué no?
Normalmente cuando queremos encapsular una funcionalidad,
no sólo queremos encapsular su configuración, sino también
algún comportamiento JS asociado, estilos, plantillas, etc.
Cuando creamos un feature nos crea un archivo llamado
feature-name.module
Ese fichero es de libre modificación (sólo debemos respetar el
include)
Podemos crear unidades de desarrollo reutilizables en otros
proyectos a partir de nuestros features
Somos libres de implementar nuestros hooks
20
21. FEATURES: TODO A CÓDIGO (y VIII)
●
●
●
●
●
Y hasta podemos añadir su propia plantilla
node-slideshow.tpl.php en el módulo
Sólo tenemos que añadir nuestro módulo al
theme registry de Drupal: http://ves.cat/bazN
Y con todo esto conseguimos tener módulos
reutilizables para otros proyectos.
Mola, no?
Para más información, presentación de
DrupalDay 2012 http://ves.cat/boTD
21
23. PROFILES: UNA HERRAMIENTA DE
DESARROLLO (I)
●
●
●
En Drupal 7 los profiles pasan a ser “módulos”
con esteroides.
Si son módulos, podemos añadirles funciones y
hooks, sin problemas, aprovechando la
potencia que esto nos permite
Por qué no aprovechar esto y utilizar los
profiles para guiar nuestros desarrollos?
23
24. PROFILES: UNA HERRAMIENTA DE
DESARROLLO (y II)
●
●
●
●
Un proyecto = un profile
En el fichero .info definimos los módulos (y
features) que se deben activar para nuestro proyecto
Usar profiles facilita el despliegue en entornos y la
posibilidad de integrar con un sistema de integración
continua
Podemos usar funciones hook_upate() para, por
ejemplo, automatizar tareas en actualizaciones del
proyecto: habilitar/deshabilitar módulos, etc.
24
26. DRUSH MAKE: EL ÍNDICE (I)
●
●
●
●
●
Un desarrollo Drupal no consiste sólo en descargar
módulos, activarlos y usarlos.
Es común usar versiones en “desarrollo” (vía commit
de git por favor!), además de aplicar parches en
estos...
Y además usar también temas contribuidos cómo
base...
Y además, usar librerías que complementan algunos
módulos.
Cómo saber de qué está formado tu proyecto al cabo
de un tiempo?
26
28. DRUSH MAKE: EL ÍNDICE (III)
●
Si seguimos este enfoque, un proyecto está
formado por:
●
●
●
●
●
1 perfil de instalación
1-N ficheros make con la definición de los módulos,
librerías, etc del proyecto
Una carpeta /modules/features con las
funcionalidades y la configuración del proyecto
Una carpeta /modules/custom con los módulos a
medida
Una carpeta /themes/custom con los temas a medida
28
29. DRUSH MAKE: EL ÍNDICE (y IV)
●
●
Si queremos instalar un nuevo módulo, lo
añadimos al fichero make y ya está...¿?
Debemos volver a ejecutar el makefile! No hay
problema...
#!/bin/bash
rm -rf modules/contrib
rm -rf themes/contrib
drush make --working-copy --no-core
--contrib-destination=. profile.make .
drush updatedb -y && drush cc all
●
Todo esto se puede automatizar vía CI
29
31. GIT: CONTROL, CONTROL Y MÁS
CONTROL (I)
●
●
●
Utilizar un CVS se ha convertido en un
imprescindible hasta para proyectos de una
sola persona
Git, cómo ya sabéis, es el CVS que se usa
para mantener/gestionar el código de Drupal y
sus módulos
Si no conocéis Git, os animo/obligo a que
vayáis a la sesión de juampy: Git y Drupal
http://ves.cat/boTF
31
32. GIT: CONTROL, CONTROL Y MÁS
CONTROL (II)
●
●
Con lo aquí propuesto, en Git sólo tenemos la
carpeta del perfil del proyecto.
Está está formada por:
●
Archivos própios del perfil
●
Un archivo <profile>.make
●
Los features del proyecto
●
Los módulos personalizados
●
El tema
32
33. GIT: CONTROL, CONTROL Y MÁS
CONTROL (III)
●
El .gitignore del perfil es:
modules/*
!modules/custom
!modules/features
themes/*
!themes/custom
libraries/*
●
Qué sentido tendría tener los módulos o temas
contribuidos o las librerías en Git si ya está la
información en d.o?
33
34. GIT: CONTROL, CONTROL Y MÁS
CONTROL (y IV)
●
Recomendaciones de un programador que ha
sufrido...
●
●
●
●
Haz commits de cada unidad significativa. Si debes
volver a atrás te será más fácil y menos
impactante.
Usa/abusa de las ramas. Si están es por algo!
Tagea los estados en Git. Tarde o temprano vas a
querer saber cuál era el estado del código el día
que subiste a producción algo
Y mucho más!
34
36. PASO ENTRE ENTORNOS (I)
●
Quién de aquí ha hecho alguna vez un paso
entre entornos con lápiz y papel?
●
Venga no engañéis...
●
Venga...
●
…
●
Lo acepto, yo también lo he hecho!
●
Pero hoy en día ya “no” hay excusa...
36
37. PASO ENTRE ENTORNOS (y II)
●
●
●
Si tenemos toda nuestra configuración en
código, un paso entre entornos se puede volver
en una cosa “trivial”
“Simplemente” haciendo un git pull (de la
rama que queramos) + drush updb +
drush cc all podemos desplegar en otro
entorno
Usarlo, veréis cómo hay un antes y un después
y dormiréis más a gusto!
37
38. INTEGRACIÓN CONTINUA
●
●
●
●
Si tenemos todo a código, y además en Git, ya
no tenemos escusas para no usar un sistema
de integración continua
Hacer un sistema de despliegue automático es
mucho más fácil con esta arquitectura
Se nos terminan las escusas para no empezar
a usar Jenkins, por ejemplo
Hay una sesión por ahí que trata estas
palabrotas http://ves.cat/boTG
38