Contenido

Ya llegó el premio bitácoras a casa

30 nov

+ 26

Esta mañana he recibido, por fín, el premio bitácoras que el pasado día 14 de Noviembre me otorgaron los chic@s de Bitácoras.

premios-bitacoras-2009
(Ver Imagen)

El conjunto del premio es genial, un portatil (Toshiba NB200) que no pesa nada, ideal para convencer a la novia de poner la estatuilla donde a mi me de la gana :D

De nuevo, muchas gracias a todos por vuestro apoyo!! GRACIAS!!

Y tenemos Google Wave…vale, ¿y que?

9 oct

+ 51

Hace unos días que recibí la invitación para usar Google Wave, y desde entonces he estado intentado encontrarle una utilidad a el sistema propuesto por Google.

google_wave_portada
(Ver Imagen)

¿Que dice Google que és?

Google nos explica en una infinidad de videos que Google Wave nace para reemplazar al, ya entradito en años, email. Que aunque parezca mentira tiene ya más de 30 años.

Para entenderlo, imaginemos un mail que enviamos a nuestro amigo X en el que indicamos un tema, le añadimos imágenes, videos,… una vez enviado, recordamos que Y también te pidió información al respecto, así que cambias la dirección de destino y vuelves a enviar el correo.

Sin darnos cuenta, estamos duplicando la cantidad de información que está navegando por Internet. Y Google pretende innovar en este sentido.

La idea es alojar ese contenido en un Wave y en lugar de duplicarlo, simplemente haremos que más gente lo pueda ver, añadiendo los que queramos puedan ver dicho contenido.

Ya que estamos, añadimos más opciones

Aprovechando dicho cambio, y ahí es donde está la espectacularidad de Google Wave, se añade una capa de javascript que se encarga de ofrecer un interface muy rico y cargado de funcionalidades.

Waves enriquecidos

Además de las opciones WYSIWYG que ya teníamos en gMail, nos encontramos con la capacidad de incrustar imágenes/videos entre el texto para generar “minipáginas web”.

google_wave_wave3
(Ver Imagen)

Anidamiento

Para olvidarnos de responder emails, Google Wave nos permite anidar comentarios dentro de un Wave, como vemos en la imagen.

google_wave_anidado
(Ver Imagen)

Modificar el contenido ya escrito en un Wave

Otra funcionalidad que podemos encontrarnos al editar un wave es la posibilidad de editar contenido (tuyo o de otro usuario) al más puro estilo Wiki.

Para siempre tener un control de los cambios realizados tenemos la opción Playback que nos permite visualizar la correlación de cambios realizados en ese Wave.

google_wave_playback
(Ver Imagen)

Escritura en tiempo real

También es muy curioso ver como los usuarios que están online y editando el Wave, van escribiendo en él.

google_wave_online_write
(Ver Imagen)

Gadgets

Los gadgets, nos sirven para insertar elementos dinámicos que aportan una funcionalidad extra dentro de nuestro Wave, hasta ahora solo he probado los de encuesta, sudoku y mapas, aunque hay mucha información para crear tus propios Gadgets.

google_wave_wave
(Ver Imagen)

Mi opinión

Aún es muy pronto y es una versión alpha, lo que indica que le faltan muchas opciones y que aún no podemos ver todas las funcionalidades que podremos llegar a usar en un futuro. Pero así y todo, no convence.

MarcosBL, en un Wave lo describía como:

‘El resultado de una orgía entre un Foro, el MSN y un Wiki’

Y creo que no se podría haber expresado mejor, ya que una vez entras en Google Wave, eso es lo que te encuentras… y ya está. La primera impresión es de decepción total, el que te hayan estado metiendo Google Wave por todos ojos todos los días y a todas horas, quizás ha hecho que las espectativas fueran más altas de lo que deberían ser.

Hay que alabar la labor de Google en la creación del interface, que es impresionante y muy completo, aunque lento como el solo.

Por el momento, está la cosa muy verde y aún queda mucho camino por recorrer, pero las primeras impresiones han sido, por lo menos en mi caso, decepcionantes.

Aclaración

Cuando accedí la primera vez, Google Wave me obsequió con 8 invitaciones las cuales volaron en el primer minuto en el que me pude sentar delante del PC. Lo siento, pero no me quedan ninguna más.

Creando un querySelector() para IE tan rápido como el nativo

29 ago

+ 2

Via Ajaxian descubro una solución para disponer de una versión rápida (casi como la nativa )  de querySelector() en Internet Explorer 4+. Muy similar a la propuesta por Dean Edwards en 2006.

/*@cc_on
 if (!document.querySelector)
 document.querySelector = function(selector) { 

 // Añadimos un nuevo tag <style />
 var head = document.documentElement.firstChild;
 var styleTag = document.createElement("STYLE");
 head.appendChild(styleTag); 

 // Creamos un array global
 document.__qsResult = []; 

 // Añadimos los elementos seleccionados mediante un SECE
 document.__qsResult.styleTag.styleSheet.cssText = selector + "{qs: expression(this.__qs?0:(function(t){document.__qsResult.push(t);t.__qs=0;})(this));}";

 // Recargamos la página. Sin esto el SECE no se ejecutará.
 window.scrollBy(0, 0); 

 // Limpiamos el nuevo elemento y devolvemos los resultados.
 head.removeChild(styleTag);
 return document.__qsResult;
 }
@*/

La mágia del script, que nos permite implementar una versión del Selectors API,  reside en los SECE (Single Execution CSS Expressions), pero ¿que son?

Single Execution CSS Expressions (SECEs)

En Internet Explorer (4.0+) tenemos una implementación que únicamente podremos usar en este navegador que nos permite ejecutar expression() en nuestros CSS.

 .post-body img { // Ejemplo Max-width para IE
   max-width:400px;
   width: expression(this.width > 400 ? 400: true);
 }

Ya lo llevamos usando mucho tiempo y lo hemos visto en varios ejemplos a lo largo de los últimos años.

background-color: expression( (new Date()).getHours()%2 ? "#B8D4FF" : "#F08A00" );

Incluso nos permite cambiar (solo en IE) el color del fondo de un elemento cada hora par (8,10,…)

Pero unas mentes inquietas llegaron a sacarle más partido a esta curiosa implementación, haciendo que la capa de estética interactue directamente con la capa de funcionalidad.

<script>
function setOnetimeBgcolor(elem) {
  elem.style.backgroundColor = <some calculation>;
}
</script>
<style>
P {
  background-color: expression(setOnetimeBgcolor(this));
}
</style>

Esto me hace pensar en algo asi :D

<style>
/* Enviamos a la versión IE */
html {
 background-color: expression(location.href = 'index_ie_version.html';);
}
</style>

Aunque hará que nuestro CSS no valide según los estándares de la W3C.

Problemas

El propio John Resig contesta al artículo de Ajaxian y expone los problemas que podríamos encontrarnos con este sistema.

  • Las expresiones CSS de IE son conocidas por su excesiva sobrecarga
  • No hay una forma clara de abordar la gestión de errores. ¿Que sucede si se usa un selector no soportado?

WP JS, Javascript comprimido con WordPress

12 jun

+ 2

Vía Twitter, @jeroguidi me muestr WP JS, un plugin para WordPress que nos promete comprimir nuestros ficheros JS automáticamente para hacer que estos carguen más rápido y en menos tiempo.

wp-js---graph
(Ver Imagen)

La idea es muy sencilla, únicamente debemos definir que ficheros han de comprimirse y él se encarga de comprimir el resultado. Despues en nuestro theme deberemos usar la función wp_js() para llamar a los ficheros JS donde queramos que estos sean cargados.

<script src="<?php wp_js('/javascript/sifr-addons.js,/javascript/sifr.js') ?>" type="text/javascript" charset="utf-8"></script>

¿Sencillo no? Y además en mucho casos, expectacularmente práctico.

conditional_theme(), un theme cada situación

23 mar

+ 4

¿Te gustaría que el theme de tu WordPress cambiara dependiendo de el usuario que lo visita? o ¿prefieres que se vea diferente a unas horas determinada? Quizas, prefieras que el theme dependa de la IP del visitante. Si es así, este artículo te puede interesar.

Mediante la API de filtros de WordPress, podemos aplicarlos en varios pasos de la ejecución de nuestro WordPress.

Funcionamiento del filtro

Para ilustrar el funcionamiento de los filtros de WordPress, un ejemplo en código:

// Función de ejemplo que encontraríamos en el código de WordPress
function function_de_ejemplo(){
	// Variable
	$variable = "Esto es una variable";

	// Devolvemos la variable filtrada
	return apply_filters( "mi-filtro", $variable);
}

// Definimos la función que modificará la salida del filtro.
function function_mi_filtro($variable){
	// Controlamos la variable
	if ($variable != '')
		return $variable;
	else
		return "Era vacio";
}

// Añadimos la función al filtro
add_filter("mi-filtro", "function_mi_filtro");

// Ejecutamos la función
function_de_ejemplo();

Selección de theme

Entre estos pasos nos encontramos con la selección del theme y mostrarlo al usuario.

add_filter('template', 'TU_FUNCION');
add_filter('stylesheet', 'TU_FUNCION');

En este proceso tenemos dos funciones que intervienen en la selección del theme, template y stylesheet. Así que el filtro podría quedar de esta manera:

function conditional_theme( $template = '' ) {
 	/*
		AQUI DEFINIMOS NUESTRA CONDICION
		Y DEVOLVEMOS EL TEMPLATE QUE DESEEMOS.
	*/
	return $template;
}

add_filter('template', 'conditional_theme');
add_filter('stylesheet', 'conditional_theme');

Ya estamos otra vez por aqui!!

5 mar

+ 14

Para los que no lo supieran he estado unos días ausente visitando Paris con Marina (mi novia). Han sido unos días muy especiales y hemos disfrutado muchísimo, la ciudad es preciosa y no hay rincón que no valga la pena visitar.

img_0946

Eso sí, Paris es muy, pero que muy grande y si quieres disfrutar de la arquitectura, del ambiente que se respira y salir un poco de lo turístico tienes que andar y andar mucho. Según Google Maps hemos andado estos días cerca de los 45 kilometros, entre paseos por la ciudad y visitas a museos. Lo dicho, muy, pero que muy grande :D

¡En Safari de Windows todos los frameworks vuelan!

15 ene

+ 28

Mirar que curioso lo que me ha ocurrido al probar el test de selectores con Safari para Windows.

test_selectors

Devuelve el número correcto de elementos y en pruebas posteriores he visto frameworks fallando, pero esta imagen es la tercera que saco consecutiva…  Interesante ¿verdad?

Convierte tu Windows XP en Windows 7

12 ene

+ 6

Si estás harto de tu Windows XP/Vista y te gustaría ver el aspecto de Windows 7 en tus manos. Puedes hacerlo con este pack (Se7en) que te permite cambiar el aspecto del sistema operativo y así capear la rutina.

veaxaq

El pack contiene:

  • Windows Se7en Visual Style
  • Windows Se7en Start Menu
  • Windows Se7en Styler TB
  • Windows Se7en Pie Dock
  • Windows Se7en Wallpapers

IMPORTANTE:

Mariano me avisa de que el pack contiene un trojano.

Feliz 2009

1 ene

+ 0

feliz-2009

aNieto2k 2008 recopilación de este último año

31 dic

+ 12

Bueno, ya va terminando el 2008 y me parece interesante hacer una recopilación de datos interesantes de lo que este año ha significado para aNieto2k. No voy a extenderme mucho ya que es un día para preparar la noche así que allá vamos:

  1. Posts Escritos: 730 (731 contando este) (2007 1.068).
  2. Comentarios: 6.132 (2007 6.762)
  3. Pingbacks/Trackbacks: 2.367 (2007 2.195)
  4. Diferencia de visitas (con 2007): +59,90%

Además de estas cifras, han ocurrido cosas muy interesantes:

  1. Presentamos el nuevo theme
  2. Probamos Google Chrome
  3. Creamos nuestro propio framework javascript
  4. Descubrimos el corazón de WordPress
  5. Tambien probamos Internet Explorer 8 Beta
  6. Intentamos cambiar la forma de leer los feeds (aún podemos hacerlo)
  7. Pasamos la barrera de los 3.000
  8. Vimos frente a frente la verdad
  9. Seguimos la llegada de WordPress 2.7( y explicamos como adaptarnos a él, una y otra vez, incluso una vez más)
  10. Ofrecimos un espacio para promocionar eventos relacionados
  11. Entrevistamos a algunos de los grandes bloggers

Haciendo recuento me encuentro satisfecho por el año que hemos vivido, algo que supondrá un reto para superar en este año que entra.