Pautas de web móvil: MWBP 1.0 (W3C) versus GAP (Passani)

En Mobile Web Best Practices 1.0 vs Global Authoring Practices for the Mobile Web, podéis encontrar una serie de tablas comparando las pautas de desarrollo web para dispositivos propuestas por la MWI del W3C (Mobile Web Best Practices 1.0), y las que propone Luca Passani (Global Authoring Practices for the Mobile Web).

Las primeras, un documento publicado con la metodología habitual del Consorcio, y que ya es recomendación. Las segundas,… una alternativa que publicó Luca Passani tras ser publicados los primeros borradores del Consorcio.

A veces coinciden, otras no. Tienen algunos puntos en común y divergencias conceptuales importantes que tienen mucha trascendencia en la práctica. En ocasiones, las pautas son complementarias.

La comparación entre ambas recomendaciones, no deja de ser un resumen. Para tener una visión más completa, es recomendable leer por orden los siguientes documentos:

  1. Mobile Web Best Practices 1.0, de la MWI del W3C.
  2. Practitioners Alternative to MWI BP (Best Practices) from W3C, donde Luca Passani explica la justificación para crear unas pautas alternativas a las del W3C más realistas.
  3. Global Authoring Practices for the Mobile Web, las pautas propuestas por Luca Passani.

¿Y quién es ese Luca Passani del que tanto hablo? Pues uno de los mayores expertos de Web Móvil.

¿Mi opinión? Cuando se publicó el primer borrador del Consorcio, sus pautas me parecían algo “irreales“, y partían de una base muy “optimista“: los teléfonos móviles tenían unas capacidades para navegar por internet bastante elevadas. Desde el punto de vista del desarrollo, también eran exigentes: no bastaba con tener un código “bueno”, también requería configurar adecuadamente el servidor (por ejemplo, el mime-type con el que se sirven las páginas, el HTTP Content-Type y la caché). Un documento como el de Luca, tenía muchísimo sentido.

A día de hoy, los nuevos terminales son bastante mejores que hace 3 años (fecha cuando más o menos se publicó el primer borrador del Consorcio). Peeeero, existe un buen número de terminales que todavía no cumplen los “requisitos mínimos” (aunque probablemente no navegen demasiado por intertnet) y sigue siendo necesario configurar adecuadamente el servidor para poder pasar con éxito el validador W3C mobileOK Checker (y si no me crees, haz la prueba). Hoy por hoy, el documento de Luca sigue teniendo vigencia (es y será y documento de referencia para la web móvil), aunque quizás algo menos (si tenemos en cuenta la mejora de los terminales actuales).
Aclaración: Mobile Ok tiene dos niveles de conformidad: uno es el Mobile Ok Basic, que comprueba de forma automática 30 pautas. Por otro lado está el nivel Mobile Ok, que consiste en una comprobación manual de 28 pautas. En el párrafo anterior, hago referencia al Mobile Ok Basic.
Pero bueno, que os voy a contar que no sepáis: el desarrollo web para dispositivos móviles es muchísimo más complejo que el desarrollo para “Firefox, Opera, Safari, Galeon, Explorer,…”, por muchas versiones de navegadores que haya, bugs, hacks, sistemas operativos, soporte de script, flash, y bla, bla, bla…

Mmm… ya tengo una idea para escribir algo más adelante 🙂

XHTML Basic 1.1 y Mobile Web Best Practices 1.0, recomendaciones del W3C

Por fin. Después de más de 2 años del primer borrador de trabajo de XHTML 1.1 basic (2006-06-07), y algo menos de tres años del primer borrador de Mobile Web Best Practices 1.0 (2005-10-17), ya han alcanzado el estatus de recomendaciones del W3C los documentos:

En XHTML basic, los cambios más importantes son (con respecto a la versión 1.0 del año 2000):

  • los documentos tienen que tener y servirse con el mime-type “application/xhtml+xml”.
  • Nuevos elementos de formularios: button, fieldset, legend, optgroup.
  • Nuevo módulo de presentación, con los elementos: b, big, hr, i, small, sub, sup, tt.
  • Nuevo módulo de scripting (elementos script y noscript). Atención con el uso de javascript…
  • Nuevo módulo de eventos intrínsecos.
  • Nuevo módulo de hoja de estilos (ahora está desaconsejado el atributo style).
  • El atributo target (¿?). El soporte de este atributo, no está garantizado (yo directamente prohibiría su uso, a estas alturas y todavía con frames y ventanas emergentes en dispositivos móviles… una locura).
  • El atributo inputmode, herencia de XForms. Utilizado para los elementos input y textarea. ¿Para qué sirve? Indicar qué tipo de contenido hay que incluir en dichos elementos. Hay dos tipos de inputmode, uno sobre “tipos de idioma” (por ejemplo arabic, cyrillic, latin, tibetan,…) y otro para tipo de caracteres (lowerCase, digits, predictOn,…). Por ejemplo, si tenemos una caja de texto en el que hay que incluir un código postal, podríamos aprovechar las ventajas del atributo inputmode así: inputmode="latin digits". Mola.

Una plantilla muy básica, y modificable al gusto de los desarrolladores (hay un par de líneas de código que particularmente me gustan, pero no son muy útiles), podría ser la siguiente:



<?xml version="1.0"?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.1//EN"

"http://www.w3.org/TR/xhtml-basic/xhtml-basic10.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es">

<head>

<title></title>

<meta name="HandheldFriendly" content="true" />

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<link rel="stylesheet" media="handheld" type="text/css" href="handheld.css" />

<link rel="alternate" media="screen" href="http://example.org/" />

</head>

<body>

</body>

</html>

Con respecto a las Mobile Web Best Practices 1.0, poco que comentar. Las lógicas correcciones y evoluciones de una nueva recomendación (muy relacionadas con las WCAG, como se explica en Relationship between Mobile Web Best Practices and Web Content Accessibility Guidelines).