hidden bullet

Aplicaciones Web: orden en el caos

Martín Álvarez Espinar, <martin@w3.org>

Letras W3C en tres teclas de un teclado

Aplicaciones Web: orden en el caos

CPR Oviedo
Oviedo, 15 Mar 2010

World Wide Web Consortium

Mapa del mundo

Realmente WorldWide

El mundo, con puntos que indican las sedes centrales y las oficinas

¿Qué hace el W3C?

Especificaciones, directrices y herramientas:

Voice WebCGM PICS HTMLTidy Databinding WebOntology HTML CompoundDocumentFormats SPARQL WAI Web APIs Libwww PatentPolicy OWL TimedText XMLEncryption Multimodal XML RichWebClients XMLProcessing DeviceIndependence URI/URL DOM HTTP Accessibility RDF WebApplicationFormats XMLBase Jigsaw XLink I18N P3P QualityAssurance XMLKeyManagement UbiquitousWeb InkML Incubator XPath WebServices XForms CSS SOAP Mobile SMIL Rules SVG Amaya SemanticWeb MathML

Recomendaciones tecnológicas abiertas del W3C, probablemente con la política de patentes más transparente en Internet

Historia de la Web

Frosty Morning Web, foxypar4

Prehistoria de la Web: Vannevar Bush

Vannevar Bush en su escritorio
Foto: http://es.wikipedia.org/wiki/Vannevar_Bush

Prehistoria de la Web: Douglas Engelbart

Douglas Engelbart
Foto: University of Maryland
Primer ratón informático
Foto: http://en.wikipedia.org/wiki/Douglas_Engelbart

Prehistoria de la Web: Ted Nelson

Ted Nelson

Nacimiento de la Web: CERN

LHC en el CERN

Nacimiento de la Web: el padre

Tim Berners-Lee

El equipo NeXT utilizado para ejecutar WorldWideWeb
Foto: http://en.wikipedia.org/wiki/File:First_Web_Server.jpg

La propuesta inicial (1989)

Propuesta de Gestión de la Información de Tim Berners-Lee
Information Management: A Proposal, Tim Berners-Lee, CERN, March 1989, May 1990, [http://www.w3.org/History/1989/proposal.html]

Un Espacio de Información Global

Suppose all the information stored on computers everywhere were linked, I thought. Suppose I could program my computer to create a space in which anything could be linked to anything. All the bits of information in every computer at CERN, and on the planet, would be available to me and to anyone else. There would be a single, global information space.

Tim Berners-Lee, Weaving the Web

WorldWideWeb (1990)

Pantalla del primer navegador-editor de páginas web: Worldwideweb

http://info.cern.ch/hypertext/WWW/TheProject.html

Hypertext'91 (sólo un póster)

Póster sobre la WWW en la conferencia presentado por TBL
Hypertext '91 Conference, San Antonio, Texas (EEUU)

Versión simple del HTML

<a href="http://example.com/libro/capitulo1/"
     rel="includes">Capítulo 1</a>

Evolución de los Navegadores (1993+)

La Web de por entonces... (Web 1.0)

Pantallazo del Navegador Mosaic (1993) navegando por una página de Yahoo!

Web 1.0

Pantallazo del Navegador Mosaic (1993) navegando por una página de Yahoo!
NCSA Mosaic pasó a ser Netscape

Una Web para navegar

Nacimiento del W3C (1994)

Árbitro para conseguir consenso

Recomendaciones

Base del comercio electrónico (1995)

Pantallazo de Amazon.com en 1995

Comienza el fenómeno “blog” (1999)

Pantallazo de la primera versión de Blogger, de Pyra Labs

Servicios Web (2002)

Esquema de interacción de una agencia de viajes

Web 2.0 (2004 ... hoy)

Nube de etiquetas con la palabra web2.0 en el centro y otros términos relacionados

Web 2.0

Una web para navegar interactuar

Experiencia de usuario “interactiva”
(blogs, wikis, tweets, vídeos, fotos...)

Web 2.0

La Web de los Creadores y Consumidores

Web 2.0

Surgen retos: una Web de confianza

Logos Web 2.0

Promover

Entorno colaborativo

  • Privacidad (P3P)
  • Seguridad XML

Desde cualquier lugar, cualquier dispositivo

Usuario de la Web Móvil consultando su dispositivo dentro de un tren

...desde cualquier lugar

Persona comunicándose con un teléfono móvil en el desierto

...desde cualquier dispositivo

Frigorífico con un navegador web Navegador en un salpicadero de un automóvil Urinarios tecnológicos

La estandarización es importante

Muchos dispositivos móviles de diversos tipos

Importancia del mercado Móvil

Porcentajes globales de las líneas telefónicas y conexiones a Internet por años

Fuente: ITU World Telecommunication/ICT Indicators Database. Datos de 2009 estimados

Mercado Móvil: las Economías Emergentes

Distribución de abonados de telefonía móvil por regiones en el mundo
(ITU World Telecommunication/ICT Indicators Database) * Estimación

Limitaciones de los dispositivos móviles

SVG en un teléfono móvil
(SVG Population Pyramid on iPhone)

La Iniciativa de Web Móvil

El acceso a la Web desde un dispositivo móvil tan simple, fácil y adecuado como el acceso desde un dispositivo de escritorio

Comparación de la vista de un navegador móvil y un navegador de escritorio con la misma página
(http://www.efront.com.au/web-design-melbourne/uploaded_images/iphone-776924.jpg)

Nuevas Aplicaciones Web (Ubícuas)

Aplicación de Videocast desde el móvil

Aplicación de fotografías subidas desde el móvil y posicionadas en un mapa

Web 3.0 - La Web de los Datos y Servicios

Web 3.0, término acuñado por J. Markoff, NYT Nov 2006

Mapa de líneas de metro, donde se representan conceptos y la unión entre distintos servicios que comparten datos

La Web Tradicional, para humanos

Deseamos organizar un viaje a Milán...

Pantalla de elección de vuelos de Iberia

...seleccionamos la aerolínea italiana

Pantalla de elección de vuelos de Alitalia

...la de bajo coste

Pantalla de elección de vuelos de Easyjet

...o con ayuda de un buscador

Pantalla de elección de vuelos de Kayak

Buscamos alojamiento... barato

Pantalla de elección de hoteles en Cheaper Than Hotels

... o a través de una agencia (italiana)

Pantalla de elección de hoteles en InItalia.it

... o algo de confianza

Pantalla de elección de hoteles en TripAdvisor

¿Y si nuestro viaje no se acaba ahí?

Pantalla de elección de trenes en TrenItalia

Integración de la información

Ciencias de la Salud

Capturas de tres sitios web superpuestos, con información médica sobre proteinas

Redes Sociales

logos de aplicaciones sociales

Integración de Bases de Datos

Objetivo: La Web de los Datos

Usar los datos en la Web de la misma forma que los documentos:

¡Interoperabilidad!

¿Esto no es lo que ya hacen los "mashups"?...

Ejemplo de "mashup"

Pantalla de viaje presentado por Tripit

Ejemplo de "mashup"

Pantallazo de sugerencias de selección de asientos

... en parte, sí (Interoperabilidad ad-hoc)

La "Web de Datos" se debería comportar como la "Web de los Documentos" ...de una forma estándar

Pero... las máquinas son ignorantes

Evolución de la Web Tradicional...

Representación de la Web tradicional como un conjunto de enlaces a documentos

... a la Web Semántica

Relaciones entre recursos que tienen incluida semántica

¿Cómo funciona esto?

  1. Se aplica el potencial de las URIs a conceptos
  2. Modelado de las cosas reales (conceptos y sus relaciones)
    • no documentos ni tablas de las bases de datos
  3. Se enlazan los datos entre sí
  4. Se exponen

Web Semántica: Todo tiene un URI

http://dbpedia.org/resource/New_York_City

Modelado estándar de los datos

Tripleta obtenida con los datos de los servidores, gráficos y de los documentos XHTML

Las Bases de Datos clásicas

Una fila, columna y celda de una base de datos, que se corresponden con un sujeto, propiedad y un valor.

El elemento de la Web Semántica

El origen de la flecha es el sujeto, el cuerpo es la propiedad y el destino es el valor

Ejemplo de tripleta RDF

Ejemplo de tripleta página creada por un autor

La Web Semántica incluye tablas,...

Las flechas pueden construir una tabla, una flecha desde cada fila hacia cada valor

...árboles

Las flechas pueden componer un árbol. De los nodos salen flechas hacia los otros, haciendo un árbol

... cualquier cosa

Las flechas pueden componer grafos, tablas, árboles, todo compuesto

Materializando la Web Semántica

Pila de tecnologías de la Web Semántica de Tim (2006)

Evitar el aislamiento

Nube en el cielo

Proyecto LinkingOpenData

Nube de Linked Open Data (marzo 2008)

Nube de datasets enlazados, Marzo 2008

Nube de Linked Open Data (septiembre 2008)

Nube de datasets enlazados, Septiembre 2008

Nube de Linked Open Data (julio 2009)

Nube de datasets enlazados, Julio 2009

Pero... ¿todo esto funciona?

¡Sí!

Buscadores semánticos

Pantallazo del buscador semántico de la DBPedia con la consulta del objeto Oviedo

Búsqueda inteligente para servicios online

Pantallazo del buscador de servicios al ciudadano del Ayto. de Zaragoza

Mejora de las búsquedas (BOPA)

Pantallazo del buscador del BOPA

Recomendaciones de Turismo en Zaragoza

Pantallazo de CRUZAR

Integración de conocimiento de Medicina China

Pantallazo de la aplicación de integración del conocimiento de la Medicina China

Hacia la Web x.0

Mejorando la interacción en la Web

Modelando la interfaz de usuario

Historia del HTML5

HTML5: ¿HTML o XML?

Datos en los Documentos HTML5

Representación e integración de datos en la Web

<div itemscope>
  <p>Nombre: <span itemprop="name">Amanda</span></p>
  <p>Banda: 
    <span itemprop="band" itemscope>
        <span itemprop="name">Los Grandes del Jazz</span> 
        (<span itemprop="size">12</span> integrantes)
    </span>
  </p>
</div>
<p typeof="foaf:Person" xmlns:foaf="http://xmlns.com/foaf/0.1/">
  Mi nombre es <em property="foaf:name">Alice</em> y...
</p>	

HTML5+RDFa, no sólo presentación

2 Documentos donde se incluye información de presentación en uno y en el otro información semántica (capítulo, autor, etc.)
Lo que ven los navegadores (izquierda) y lo que ven los humanos (derecha)

HTML5+RDFa. Ahora el navegador sí lo entiende

Dos páginas enlazadas mediante la propiedad license

HTML5 <video>

<video src='myMovie' id='vid' />
	
var vid = document.getElementById("vid");
vid.play();
vid.pause();
vid.currentTime = 0;
	

Párrafo en HTML sobre el vídeo

La opacidad de CSS permite al vídeo ser transparente parcialmente.

Pasa el ratón por encima de vid.play() para controlar (arrancar/pausar/detener) el vídeo [http://www.polycrystal.org/lego/movies.html].

HTML5 <video>

Ejemplo de utilización del elemento video en HTML5

http://chikuyonok.ru/ambilight

HTML5 + CSS3 + SVG + MathML

Ejemplos (Philippe Le Hégaret):

HTML5 <canvas>

// canvas es una referencia a un elemento de tipo <canvas>
var context = canvas.getContext('2d');
context.fillRect(0,0,50,50);
canvas.setAttribute('width', '300'); // limpia el canvas
context.fillRect(100,0,50,50);       // sólo permanece éste ... 
                                     // ... rectángulo	

Diagrama de Gantt

Ejemplos: Canvas Painter, Canvas and Audio

Widgets

Widgets de Yahoo! en un dispositivo móvil

Widgets

Widgets en el escritorio de un sistema operativo

Geolocation API

Logo Geo del W3C
http://www.w3.org/TR/geolocation-API

function showMap(position) {
  // Muestra un mapa centrado en:
  // - position.coords.latitude
  // - position.coords.longitude
}

// Petición de posicionamiento
navigator.geolocation.getCurrentPosition(showMap);
	

APIs y Política de Dispositivos

http://www.w3.org/2009/dap

No está restringido a dispositivos móviles

Muchas más piezas

Línea de tiempo de los estándares del W3C

Evolución de todos los estándares del W3C con el tiempo, vete a http://www.w3.org/TR para más detalles

Cómo se construye un estándar

Proceso de creación de las Recomendaciones del W3C

http://www.w3.org/Consortium/Process/

Los “ladrillos” de la Web

Pila de las tecnologías de W3C, vete a http://www.w3.org/Consortium/techstack-desc.html para más detalles

http://www.w3.org/Consortium/techstack-desc.html

¡Muchas gracias!

Esta presentación
http://www.w3c.es/Presentaciones/2010/0315-aplicacionesCPR-MA
Escríbeme
martin@w3.org
Recursos
How It All Started (Tim Berners-Lee)
The Next Open Web Platform (Philippe Le Hégaret)
Introduction to the Semantic Web (Ivan Herman)
Fotos: World Paper Map, Frosty Morning Web, Dutch Clouds, Widgets, Yahoo! Widget Gallery home screen