Creación de proyectos web con Drupal

32
Creación de proyectos web con Drupal IIG. Iván G. Campaña N.

description

¿Qué es lo que se necesita para crear un proyecto web? Cómo puede ayudar Drupal para resolver algunos de los problemas comunes del proceso de desarrollo.

Transcript of Creación de proyectos web con Drupal

Page 1: Creación de proyectos web con Drupal

Creación de

proyectos web

con Drupal

IIG. Iván G. Campaña N.

Page 2: Creación de proyectos web con Drupal

Web Engineering: ¿Arte, Ciencia o Ingeniería pura?

Page 3: Creación de proyectos web con Drupal

¿Qué se necesita?

- Para crear un proyecto web se necesita un equipo

multifuncional, se utiliza un esquema de matriz.

- Se une visión de negocios, marketing e ingeniería,

sin perder de vista siempre el objetivo de la

empresa (o el startup).

- Son proyectos que nacen siendo evolutivos

(Release Early, Release Often).

- Planificación, pero sin retrasos (Metodologías

ágiles).

Page 4: Creación de proyectos web con Drupal

¿Qué nos piden?

● Reducir costo (siempre).

● Trabajar sobre requerimientos poco a nada definidos.

● Cambios constantes en base a los requerimientos del

negocio.

● Un proyecto web está en constante cambio, nunca

“termina” realmente.

● Que sea seguro, que no lo puedan hackear.

● Que se termine rápido.

Page 5: Creación de proyectos web con Drupal

No hay que olvidar

que al final sigue

siendo ingeniería

Hay normas que seguir… y un cliente

que satisfacer.

Page 6: Creación de proyectos web con Drupal

¿Cómo comenzar?

- Desarrollando desde cero

- Comprando una solución final

- Utilizando Software libre / Open Source

Page 7: Creación de proyectos web con Drupal

¿Arrancar desde cero o acelerar?

- Evitar el síndrome del

NIH (Not Invented

Here).

- La innovación nace

del aprendizaje y de

compartir/colaborar.

- No matar moscas

con balas de cañón

Page 8: Creación de proyectos web con Drupal

Trabajo basado en la colaboración

- ¿Se puede colaborar entre empresas y ser

competidores al mismo tiempo?- Trabajo colaborativo

- Crecimiento de la comunidad

- Relación ganar/ganar

- Parte de un cambio de paradigma

Page 9: Creación de proyectos web con Drupal

¿Desarrollo

colaborativo?

Open Source y Software Libre

Page 10: Creación de proyectos web con Drupal

Open Source vs Software Libre

Page 11: Creación de proyectos web con Drupal

Open Source

● Compartir para mejorar calidad.

● Postura de Linus Torvalds (creador del núcleo Linux) y

Tim O'Reilly

● Lo importante es poder aprovechar la investigación de

la comunidad para beneficio de todos.

● Permite la convivencia de software propietario con el de

código abierto.

Page 12: Creación de proyectos web con Drupal

Software Libre

● Compartir por considerar ético el no esconder el

conocimiento.

● Ideas defendidas por Richard Stallman (MIT)

● Defiende no sólo una práctica, sino una ideología.

● Promueve las cuatro libertades a través de la GPL:

o Libre uso

o Libre copia

o Libre re-distribución

o Libre modificación

Page 13: Creación de proyectos web con Drupal

¿Qué es Drupal?

Drupal es un programa libre, con licencia GNU/GPL, escrito en PHP, desarrollado y mantenido por una activa comunidad de

usuarios.

Es un sistema de gestión de contenidos modular multipropósito altamente configurable que permite publicar artículos, imágenes,

u otros archivos y servicios añadidos como foros, encuestas, votaciones, blogs y administración de usuarios y permisos. Drupal

es un sistema dinámico.

El diseño de Drupal es idóneo para construir y gestionar comunidades en Internet. No obstante, su flexibilidad y adaptabilidad, así

como la gran cantidad de módulos adicionales disponibles, hace que sea adecuado para realizar muchos tipos diferentes de sitio

web.

Fuente: Wikipedia

Page 14: Creación de proyectos web con Drupal

¿Qué es Drupal?

Fue creado por Dries Buytaert (fundador de la compañía Acquia), tiene soporte comercial y utilizado

por grandes compañías alrededor del mundo. En el 2012 Acquia fue considerada como la empresa

de tecnología con mayor crecimiento de acuerdo a Inc 500.

● The White House / La Casa Blanca (whitehouse.gov)

● El Universo (eluniverso.com)

● Ecuavisa (ecuavisa.com)

● The Economist (economist.com)

● Amnistía Internacional (amnesty.org)

● Fox News (nation.foxnews.com)

● P!nK (pinkspage.com)

● WWE (wwe.com)

● Blog de Aljazeera (blogs.aljazeera.com)

● Major League Soccer - MLS (mlssoccer.com)

● Warner Bros Records (warnerbrosrecords.com)

● Eric Claptop (www.ericclapton.com)

Page 15: Creación de proyectos web con Drupal

¿Por qué lo escogimos?

● Escalabilidad

● Capacidad de crecimiento

● Flexibilidad

● Desarrollo rápido

● Menor tiempo para salir a

producción (time to

market)

● Reducción de riesgo

● Seguridad y actualización

● Comunidad activa

● Se obtiene la experiencia

de otras personas

● Permite que el equipo

crezca con la herramienta.

Page 16: Creación de proyectos web con Drupal

Aplicaciones web

vs

Páginas web

know the difference...

Page 17: Creación de proyectos web con Drupal

Aplicaciones web vs páginas

Aplicaciones● Enfocadas en servicio

● Grupos de usuarios

específicos.

● Suplen una necesidad

planteada.

● Servicios para ser

consumidos.

Páginas / Portales● Enfocadas en contenido

● Miles a millones de

usuarios

● Enfocados en múltiples

necesidades.

● Distribuidores /

concentradores de

información.

Page 18: Creación de proyectos web con Drupal

¿Qué podemos hacer con Drupal?

● Portales corporativos.

● Galerías de fotos.

● Intranets.

● Galerías de vídeos.

● Blogs.

● E-commerce.

● Foros.

● E-learning.

● Comunidades.

● Aplicaciones.

● Wikis.

● Eventos.

● En general cualquier tipo de

aplicación web...

Page 19: Creación de proyectos web con Drupal

CMF

A diferencia de otras herramientas, no es sólo

un CMS (Content Management System), es un

CMF (Content Management Framework).

Permite construir cualquier tipo de aplicación,

integrar web services y generar servicios web.

Page 20: Creación de proyectos web con Drupal

Bachiller digital

- Aplicación para

gestionar solicitudes

- Control de flujo de

trabajo

- Integración con datos

legados (fuente de

datos externa).

Page 21: Creación de proyectos web con Drupal

Ecuavisa

- Medio digital

- Consumo de video

en diferentes

plataformas

- Integración con

app. móvil.

- Variación o

crecimiento diario

dependiendo de

las necesidades

del canal.

Page 22: Creación de proyectos web con Drupal

El Universo

- Medio digital

integrado con el

impreso

- Enfoque principal

en el backend,

reducir el tiempo

de los redactores.

- Actualmente tiene

también versión

móvil

manteniendo la

misma plataforma.

Page 23: Creación de proyectos web con Drupal

Almacenes TIA

- Tienda en línea

enfocada para

migrantes.

- Soporte para poder

cobrar con tarjetas de

crédito nacionales.

- Integración con el

sistema legado,

sincronización.

Page 24: Creación de proyectos web con Drupal

Almacenes De Prati

- Basado en

OsCommerce

- Mejorado con el

aprendizaje de

otros proyectos,

integrado

conocimiento de

Drupal.

- Enfocado en el

servicio.

Page 25: Creación de proyectos web con Drupal

Distribuciones

La forma de aprovechar la experiencia de otros:● Commerce Kickstart / e-Commerce ( https://commerceguys.com/product/commerce-kickstart )

● Open Scholar / Sitios entidades educativas ( http://theopenscholar.org/ )

● Drupal Commons / Comunidades / Intranets ( http://commons.acquia.com/ )

● Open Publish / Sitios de noticias ( http://openpublishapp.com/ )

● Open Public / Sitios gubernamentales ( http://openpublicapp.com/ )

● Open Atrium / Herramienta de colaboración ( http://openatrium.com/ )

● CiviCRM / Manejo de relación con los clientes ( https://civicrm.org/ )

● Open Academy (https://www.drupal.org/project/openacademy )

● Open Outreach (http://openoutreach.org/ )

● Pushtape Music (http://www.pushtape.com/)

Page 26: Creación de proyectos web con Drupal

Tecnologías web

aplicables

Page 27: Creación de proyectos web con Drupal

Big data

- Cálculo de matrices para mejora

de la experiencia de navegación

- Posibilidad de obtener datos

cruzados.

- No necesita de una infraestructura

“high-end”

- Permite trabajar sobre big data

que ya tenemos normalmente

dentro de un sitio web.

- https://www.drupal.org/project/rec

ommender

- https://www.drupal.org/project/hist

ory_rec

Page 28: Creación de proyectos web con Drupal

Radioactivity

Zonas de calor, permiten saber qué cosas han

llamado más la atención a los usuarios, los

contenidos ganan o pierden “calor”

https://www.drupal.org/project/radioactivity

Page 29: Creación de proyectos web con Drupal

Web services

Se desarrollan una vez en Drupal, se pueden

acceder a través de diferentes protocolos sin

cambiar código:

XML-RPC, JSON, REST, SOAP, JSON-RPC,

AMF

https://www.drupal.org/project/services

Page 30: Creación de proyectos web con Drupal

Drupal para no técnicos

Drupal Gardens es una plataforma para crear

sitios web sin necesidad de saber programar:○ Permite escoger plantillas preseleccionadas

○ Funcionalidades pre-agrupadas y listas para usar

○ Puedo generar el sitio ahí y luego descargarlo para

usarlo en cualquier otro servidor

○ Reduce el tiempo dedicado a construir una página

web

○ http://www.drupalgardens.com/

Page 31: Creación de proyectos web con Drupal

¿Qué está haciendo la comunidad?

Page 32: Creación de proyectos web con Drupal

La experiencia de innovar y mejorar

Busquen siempre ideas nuevas. Salgan de su

zona de confort, aprendan algo diferente, que

les permita tener una perspectiva diferente

sobre los problemas y posibles soluciones...

No tengan miedo a fallar.