|

Flogby: tu blog en flash

Si el otro día hablábamos sobre la inconveniencia sobre crear sitios totalmente en Flash, ahora vamos a hablar sobre cómo tener nuestro blog totalmente en Flash, porque para gustos…
flogby.png
Se trata de Flogby un sistema de blog creado totalmente con Flash y XML. No es necesario usar una base de datos MySQL para configurar tu blog. Las entradas puede incluir HTML como negrita o subrayado, entre otras.
¿Algún valiente?
Flogby
Vía / dzone

5 características que se echan de menos en las webs

Leo en SigT 5 características que se echan de menos cuando se visitan algunas páginas web. Podría haberla puesto dentro de los Quicklinks, pero como no puedo estar más de acuerdo con lo que dice, prefiero crear una entrada y ya de paso, con el permiso del autor, dar un par de comentarios personales:

  • Formulario para darse de baja: como no suele haber, lo mejor es tener una cuenta de correo especial para darse de alta, porque suele ser necesaria una cuenta de correo y de paso te mandan un email con un código de activación.
  • Elegir entre formularios paso a paso o avanzados
  • Una funcionalidad mínima en los vídeos hechos con Flash: ¿Qué diferencia hay entre el pause y el stop?, normalmente le doy al pause para que se vaya descargando el video y luego verlo de seguido y no sufrir parones por la conexión. Sin embargo, cuando le doy al stop porque el video no me interesa, se sigue bajando, con lo cual el ancho de banda sufre, y el problema es que si estoy en un blog, no me apetece cerrar la ventana para que pare de bajarse y volver a abrir la página para seguir leyendo el resto de las entradas.
  • Una menor complejidad en las páginas oficiales: sobre todo en los ministerios, yo creo que lo hacen a proposito para que prefieras ir a preguntar a la ventanilla y verles “trabajar”. Hay un recurso de imágenes y sonidos en el Ministerio de Educación y Ciencia que jamas soy capaz de encontrar si entro directamente en la web del ministerio.
  • Que el webmaster tenga un poco de sentido común: yo incluso lo usaría para los clientes que nos obligan a hacer cada cosa…

5 características que se echan de menos en las webs

| | |

Detectar cambio de tamaño de letra en Javascript

La verdad es que lo sencillo es lo mejor, y para cuando estés en la necesidad de detectar si se produce un cambio en el tamaño de la letra, nada mejor que el script que nos ofrece la gente de A List Apart.
Te puedes preguntar por qué vas a querer detectar el cambio de tipo de letra. Si te interesa tener un sitio accesible a gente con discapacidades, pues es buena idea que pienses en ello, ya que suele ser algo que pueden hacer con frecuencia.
Además de detectar ese cambio, puede ser necesario realizar alguna acción. Por ejemplo, si usamos una imagen para un botón, si cambiamos el tamaño de la letra, la imagen no cambia, por lo que el botón quedará demasiado pequeño para el resto del texto, ¿solución?, si hay cambio de tamaño de letra, sustituimos la imagen por un elemento input botón.
Al principio decía que la solución es sencilla, lo cual la hace aún mejor. Se trata de crear una capa que contenga un espacio dentro y que esté oculta. Se guarda el tamaño de la capa y cada cierto tiempo se detecta si ha habido un cambio en este tamaño, si es así, se ha producido un cambio en el tamaño de la letra.
Text-Resize Detection
Demo
Código y ejemplos

links for 2006-09-12

| | |

Laboratorio: acceder a contenido dinámico de forma estática (caché)

La verdad es que el título puede ser un tanto difícil de entender. Pero explicando que es lo que quiero decir, supongo que será fácil de entender. En este caso se trata totalmente de “laboratorio”, ya que es una idea que se me ha ocurrido y que su implementación puede que no se pueda necesitar, ya que se trataría de un ejemplo muy a la medida. Aunque bien pensado, se trata de una caché.

El problema de acceder a contenido dinámico (sobre todo pasa en Java) es sobrecargar el acceso a un mismo script (o JSP), a parte de que el acceso a contenido estático es mucho más rápido que el acceso a un contenido dinámico. El problema es cuando queremos acceder a contenido dinámico de forma estática.

Imaginemos un mapa tipo Google Maps, tenemos la Tierra totalmente vectorizada y dividimos el mapa en cuadrículas (x e y). Para acceder a una imagen queremos que sea de forma estática para agilizar la carga de la página y no sobrecargar el servidor, pero la imágen no se puede cargar porque no existe, se tiene que crear dinámicamente.

¿Cual es la solución?, controlar la página de error 404, para que cuando no exista la imagen que deseamos la cree y así la próxima vez ya podamos acceder a ella de forma estática.

Para ello tendremos que modificar el fichero .htaccess para que cuando no encuentre la imagen la cree y la devuelva.

ErrorDocument 404 /sentidoweb/imagenes-estaticas/createimage.php

Y tendremos que crear un script PHP para que cree la imagen y la devuelva. En este caso hemos añadido unas condiciones, y es que la imagen tiene que ser png y que tiene que tener el nombre con el siguiente formato (en expresión regular): /\d{1,2}_\d{1,2}\.png/ .

<?php
$url = $_SERVER["REQUEST_URI"];
// Si es una imagen PNG
if (preg_match("/\.png$/", $url)) {
$nombreImagen = substr($url, strrpos($url, "/")+1);
// Si el nombre de la imagen tiene el formato que deseo
if (preg_match("/^\d{1,2}_\d{1,2}\.png$/", $nombreImagen)) {
// Obtengo que imagen tengo que crear
$aux = substr($nombreImagen, 0, strlen($nombreImagen)-4);
$coords = split("_", $aux);
// Creo la imagen
header("Content-type: image/png");
$img = imagecreate(50, 50);
$cFondo = imagecolorallocate($img, 0, 133, 133);
$cTexto = imagecolorallocate($img, 255, 255, 255);
imagestring($img, 1, 5, 5,  '['.$coords[0].', '.$coords[1].']', $cTexto);
imagepng($img, $nombreImagen);
imagepng($img);
}
}
?>

Está claro que esto no funcionaría para nada si el contenido dinámico se actualiza con frecuencia.

|

Métodos mágicos en PHP 5

Ya he comentado alguna vez el peligro de no estar a la última de las novedades que salen en un lenguaje de programación. En este caso voy a hablar de PHP5. La nueva versión nos ofrece una serie de métodos que el autor define como “mágicos”, supongo que por el hecho de que nos pueden dar una funcionalidad un tanto especial.

  • __construct: se utiliza para la construcción de objetos, logicamente este si es conocido si te has informado sobre las novedades de PHP5 referente a objetos.
  • __toString: controla lo que devuelve el objeto cuando se transforma en una cadena de texto, por ejemplo cuando hacemos un echo. Puede sernos muy util sobre todo para las trazas.
  • __clone: muy usado en Java, nos permite controlar la clonación de un objeto. Aunque no lo parezca, puede ser muy útil.
  • __set_state: devuelve la llamada a la función var_export(), así cuando queremos exportar un objeto, devolvemos el código PHP válido que deseamos. En esta es en la función que más se detiene el autor del artículo y merece la pena echarle un vistazo a fondo.

The Magic __set_state Method

Vía / Good PHP Tutorials

links for 2006-09-10

links for 2006-09-09

Precarga múltiple en Flash

Uno de los problemas que comentábamos el otro día con los que nos encontrábamos a la hora de realizar sitios completamente en Flash, era la precarga completo del sitio. Algo más molesto es tener que estar esperando que se carguen y carguen las distintas partes del sitio, esperando más de lo habitual para una página web.
Una solución es precargar el sitio de forma completa al inicio, por lo que una vez cargado del todo, el visitante se olvida de tener que estar esperando para cada parte.
multipreload.png
Flash Multi-Preloader
Vía / Pixel Groovy