Novedades en Movable Type

mt4.pngSix Apart ha anunciado la salida de la versión 4 de su gestor de blogs Movable Type, habiendo una gran novedad, que para después del verano saldrá a la luz una versión open source basada en la versión 4 de Movable Type.

El paso a una versión open source es debido a la necesidad de no perder mercado (frente a otros como WordPress) y a la petición de los usuarios de disponer de tal tipo de versión para poder incluir sus mejoras.

Las novedades que incluye la versión 4 son las siguientes:

  • Rediseño de la interfaz
  • Fácil de instalar y de empezar a trabajar.
  • Obtener un resumen de la actividad del blog, ya sea en contenido como en contribuciones.
  • Facilidad para insertar texto, fotos, ficheros y más con el editor WYSIWYG.
  • Gestor de fotos y ficheros.
  • Creación de páginas estáticas que hereden el diseño del blog.
  • Sistema de registro de usuarios para autenticación de lectura y comentarios.
  • Soporte para OpenID
  • Añadir posts de diferentes blogs en un único blog.
  • Opciones extendidas para archivar y mostrar contenido

Movable Type 4 y Movable Type Open Source (MTOS)

Vía / Loogic

links for 2007-06-06

|

Novedades en Javascript 1.8

Mientras se sigue con el desarrollo de la versión 3 de Firefox, podemos ir viendo que novedades traerá la versión 1.8 de Javascript. Las novedades son muy interesantes, pero creo que necesitarán de un cambio de modo de pensar en Javascript, ya que es algo a lo que no estamos acostumbrados.

Notación Lambda

La notación Lambda nos permite declarar funciones que devuelvan datos sin necesidad de llaves ({..}), ni de devolver directamente el resultado con return.

Por ejemplo, la siguiente función:

function(x) { return x * x; }

pasaría a ser:

function(x) x * x

Generador de expresiones

Existente ya en Phyton, nos permite generar expresiones como arrays o matrices de forma rápida y elegante. Para una explicación con un poco de profundidad, el autor del artículo usa un solucionador de Sudokus para explicarnos paso a paso cómo funcionan. Quizás un ejemplo más sencillo sea el siguiente:

// Crea un array de 100 posiciones rellenas con cero
[ 0 for ( i in 100 ) ]
// Crea una matriz identidad de 10x10
[[ i == j ? 1 : 0 for ( i in 10 ) ] for ( j in 10 )] 

También se pueden utilizar para comprimir arrays, por ejemplo quedarnos solo con los valores pares:

[i for (i in lista) if (i % 2 == 0)]

Reducción de arrays

Permite reducir iterativamente un array a un solo valor usando una función llamada de retorno.

La nomenclatura sería de la siguiente forma:

miArray.reduce( fn [, val_inicial] );
// La función sería de la siguiente manera
miArray.reduce(function(ultimo_valor, valor_actual){
return ultimo_valor + valor_actual;
});

Si combinamos los dos puntos anteriores, podemos obtener la suma de los cien primeros números de la siguiente manera:

[x for ( x in 100 )].reduce(function(a,b) a+b);

JavaScript 1.8 Progress

Vía / dzone

Cachea WordPress offline con Google Gears

Ya en muchos sitios se ha hablado de Google Gears, una extensión para el navegador que permite desarrollar aplicaciones que se puedan ejecutar offline. Entre todos los recursos que han aparecido, me gustaría destacar una serie de utilidades para Google Gears que nos pueden ayudar bastante.
En este caso lo que comentamos es un artículo en el que se nos explica cómo cachear nuestro blog en WordPress usando Google Gears, usando para ello el Resource Store (un contenedor de URLs cacheadas).
Hacerlo es muy sencillo mediante JSON, el cual usaremos para crear el manifiesto que contendrá las URLs que son crean el blog. Un código muy sencillo y bien explicado en el que primero buscará que páginas han sido publicadas y las páginas estáticas, para después modificar el código para que nos indique cuando se ha acabado la lectura offline de las páginas.
Google Gears Caching of WordPress in PHP
Vía / VT’s Tech Blog

links for 2007-06-05

| |

W3C: fallos de accesibilidad (III)

Seguimos con los fallos más frecuentes en accesibilidad que la W3C nos recuerda.

Cambio de contexto cuando se quita el foco a un elemento en un formulario

Este error ocurre cuando un elemento de un formulario pierde el foco y cambia el contexto de la página, por ejemplo debido a que se hace un submit del formulario.

Obtener el foco de un elemento con el teclado y no poder salir usando el teclado

Este fallo no es demasiado frecuente, pero se da cuando navegando mediante el teclado, entramos en el contenido de un elemento (por ejemplo un plugin que nos muestra un formato específico como SVG) y no podemos volver al contenido principal, o salir de este elemento usando el teclado.

Tener un time-out para la sesión sin ofrecer la posibilidad de guardar la información para recuperarla cuando re-auntentiquemos

Muchos servicios web necesitan autenticación y suelen disponer de un sistema de time-out para finalizar la sesión cuando ha habido un tiempo largo de espera sin actividad. Personas con discapacidad pueden necesitar más tiempo de lo normal para realizar una acción (por ejemplo rellenar un formulario), si la sesión le finaliza, sin la posibilidad de recuperar el estado en el que se estaba antes de finalizar la sesión, la persona deberá volver a empezar de nuevo, por lo que es posible que tampoco pueda finalizar la acción.

Texto alternativo no representa correctamente el texto original ya que este muestra información debido a diferencia de colores

Supongamos que tenemos una gráfica de barras en las que se muestra la población masculina y femenina según los paises de una región. Para distinguir qué datos pertenecen a uno u otro género, se muestra usando dos colores: azul hombres, rojo mujeres. El texto alternativo de esa imagen suele indicar las cantidades, pero no a qué genero pertenece.

Más información

patTemplate: sistema de plantillas para PHP

patTemplate es un sistema de plantillas para PHP que nos permite separar la lógica de negocio del contenido en nuestras aplicaciones web.
Desde el punto de vista del diseñador, patTemplate ofrece una serie de etiquetas XML para acceder a diferentes partes del diseño, las cuales se puede ocultar, intercambiar o repetir. Los diseñadores deberán aprender nuevas etiquetas, pero no es necesario conocer ningún lenguaje de programación, ni usar instrucciones condicionales o de repetición.
Para los desarrolladores, tan solo es necesario aprenderse el API, lo cual no es muy complicado para programadores con experiencia.
patTemplate

links for 2007-06-02