miércoles, 3 de diciembre de 2008

Trabaja como Ninja Javascript

Imagino que a estas alturas todos conocen el mensajero instantáneo meeb.oO, un mensajero versión Web, que es compatible con la mayoría de los sistemas de mensajería instantánea.

Desde que salió se mostró muy novedoso, porque fue de los primero servicios que explotaban AJAX en todo su esplendor ... haciendo prácticamente su propio manejador de ventanas dentro de una ventana del navegador.

Inmediatamente quise ver cómo estaba hecho Meebo, y al revisar su código, había un comentario dentro de la programación donde te invitaban a enviar tu curriculum vitae a la dirección secretjobs de meebo.com.

Más recientemente encontré que tiene una sección de ofertas de empleo y donde anuncian que solicitan un "javascript engineer (javascript ninja)" y ahí mismo te dejan un breve cuestionario para medirte un poco y ver si tienes madera para el puesto. Son tan sólo 5 preguntitas y yo sólo pude medio contestar una, la 4:

4. Write a one-line piece of JavaScript code that concatenates all strings passed into a function:


function concatenate(/*any number of strings*/) {
var string = /*your one line here*/
return string;
}

Y esta es mi solución, que quizá no sea lo que esperaban, pero lo hace :D

function concatenate() {
for (var string='',i=0; i < arguments.length; string+=arguments[i++]);
return string;
}


Si pueden contestar las otras cuatro preguntas quizá les interese mudarse a Mountain View a tirar algunas patadas.

martes, 7 de octubre de 2008

¡no marches!

A un año de estar trabajando sobre la Avenida Juárez casi esquina con Reforma, me han tocado ver todo tipo de marchas, no recuerdo semana en la que no haya habido una marca, aunque quizá si las haya habido, sin embargo se compensa con semanas en las que hay 2, 3 o más ...

Ya me aprendí el :"de norte a sur ... de este a oeste ... ganaremos esta lucha, cueste lo que cueste" o "presos políticos: ¡libertad!" y otros gritos "combativos" ... que si el gobierno federal, que si el local, que si la SEP, que SEGOB, que la SSP, y hasta una que llegó a la Contraloría denunciando abusos/extorsiones en el INVI ... en fin ... ya estoy harto .... porque dudo mucho que haya habido una marcha que haya solucionado algo... ¡Ah! y casi lo olvido, la mega "marcha en contra de las marchas" motivada por panistas y y llena de acarreados de las secretarías federales, con sus pancartas hechas en computadora y que caminaban ordenadamente por las banquetas, claro, no eran más que unas decenas de personas ...

Hoy, muy a mi pesar tuve que aguantar cerca de 3 horas de gritos, mentadas, desfile y más de una hora extra de plantón ... para todos aquellos que tienen duda de quienes era, eran "antorchistas" de varias partes del país y que su principal grito era contra la SEGOB buscando la libertad de presos políticos en el estado de Querétaro.

Sin embargo la fuerte exposición a las marchas te vuelve inmune y deja completamente de lado los "reclamos" para dar pie a otros aspectos que se llevan la atención, como hoy, que fueron las bandas musicales marchantes que acompañaban al contingente ... no tocaban muy mal pero, obvio, tampoco bien, sin embargo se agradece por un momento que en lugar de gritos se oiga algo un poco más armónico, ojalá la mayoría fueran así ...

Pero entonces que me acordé de bandas como la de los Delfines Marching Band y la de las Aguilas Doradas Marching Band, una de Xalapa y la otra de Puebla respectibamente, que han representando a México en distintos festivales internacionales o en el desfile de las rosas en EUA.

Les dejo dos fotos de marchas, una la marcha de micros (espero nutrir la anticultura del buen Maicol), y una de la banda marchante con tabla gimnástica:

lunes, 6 de octubre de 2008

yoo en el 2001 en google

Como (auto)homenaje a su décimo aniversario, Google nos regresa al pasado, inaugurando una sección que nos remite a su visión de la red en enero de 2001.

La sección es Google Search 2001: http://www.google.com/search2001.html.

Y como todo buen egocentrísta le pregunté qué hacía yo en ese entonces :D ..

miércoles, 17 de septiembre de 2008

Limpia tus Tupper's

Confieso que para que valga la pena lavar los trastes y dado que no utilizo muchos dejo que se acumulen. Sin embargo esto en ocasiones hace que los recipientes de Tupperware se concentren olores y/o sabores ... que simplemente la siguiente lavada no elimina, aún usando detergente, clorox o similares ... así que recurrí a la red para saber que hacer en estos casos...

Tupperware recomienda que:

Para eliminar olores en los recipientes:

Deje el envase sellado con un trozo de carbón o papel periódico durante un mínimo de 12 horas; lávelo y séquelo.


Para limpiar las manchas en un envase:

Prepare una pasta de bicarbonato de sodio con agua y limpie la macha. También funciona para quitar el exceso de grasa en el recipiente.


Ojalá no lo olvide, por eso lo pongo aquí :) pero lo mejor será lavar los trastes más a menudo :$.

lunes, 18 de agosto de 2008

S.H.E.

Creí que ya había oído todo lo de IAMX que me estremeciera, pero afortunadamente no. Y aunque ya había visto esta canción, me resistía a escucharla, quizá para evitar que una canción más abriera la posibilidad de desilusionarme de tan excelente banda.

¡Caray!, siempre puedes llegar más abajo :D ...

IAMX - Zhest (S.H.E)



You have been left alone
The creature of innocence
You lie for what you're worth
And struggle with your confidence

And when your devil complains
And tears you up, to start again
And when you're lying on your stage
And nothing works, just living hurts

Forget, forget
With the secret harmonic emotion
Forget, forget
With the secret harmonic emotion

And so we meet again
To players in a puppet show
Don't cry for audience
There's no one that can take you home

And when your devil complains
And tears you up, to start again
And when you're lying on your stage
And nothing works, just living hurts

Forget, forget
With the secret harmonic emotion
Forget, forget
With the secret harmonic emotion
Forget, forget
With the secret harmonic emotion

Forget, forget
With the secret harmonic emotion
Forget, forget
With the secret harmonic emotion

viernes, 25 de julio de 2008

¡Súbele! en LiteStep

Desde hace un par de años soy un feliz usuario de LiteStep más aún utilizando el tema Non|Step II.

LiteStep es un shell alternativo para Microsoft Windows.

Bueno, resulta que en el trabajo no tengo un teclado multimedia, pero yo quería controlar el volumen desde el teclado con una combinación de teclas ... así que me puse a configurar un poco mi LiteStep.

Intenté usando la instrucciones del módulo geekamp, pero eso sólo controla el volumen de WinAmp, así que seguí buscando y encontré que el módulo lsslider tenía unas instrucciones para desplazar las barras de volumen.

Así sólo tuve que agregar las siguientes líneas al archivo themevars.rc ¡y listo!
*Hotkey WIN         UP   !SliderVolumeUp   0
*Hotkey WIN DOWN !SliderVolumeDown 0
*Hotkey WIN+SHIFT UP !SliderVolumeUp 1
*Hotkey WIN+SHIFT DOWN !SliderVolumeDown 1

El número del final denota el canal de audio, 0 es para controlar el "volumen", 1 para controlar el "wave". Las abreviaturas de las teclas las encuentras en el archivo vk104.txt y también puedes agregar la definición de tus propias teclas (si tienes un teclado multimedia).

miércoles, 16 de julio de 2008

Es preferible no viajar con un hombre muerto

Sin duda uno de mis grupos favoritos de los últimos tiempos y que ya había dicho son IAMX ... sus canciones rondan mucho en lo melancólico, en lo depresivo quizá para algunos, en lo bonito para otros, sepa que será ... a mi me gustan ... su música me envuelve y me hace sentir -pienso yo- como se siente una ostra cuando le caen gotas de limón (sentimentalmente hablando)...

No sé si sea suerte, pero no es la única que me pone así :S

La canción se llama: This Will Make You Love Again

jueves, 24 de abril de 2008

por qué no soy un "amigo normal"

A veces con esas mismas palabras, otras veces con unas similares, el chiste es ese, parece que suelo ser muy diferente de la mayoría de la gente (al menos a los de mi tipo), pero según yo eso no tiene mucha relevancia, pues creo que todos somos diferentes, así pues, hay tantas variables independientes y no en las personas que si tratáramos de buscar lo "normal" quizá encontraríamos que en la práctica es un conjunto vacío.

"nunca andes por el camino trazado,
eso te conduce sólo a donde los otros fueron"

sábado, 12 de abril de 2008

lo importante

lo que importa no es lo escrito en la página,
lo que importa es lo escrito en el corazón,
así pues, quema las cartas
y deposita sus cenizas en la nieve ... en los bordes de los ríos.

Cuando llegue la primavera
y la nieve se funda y el río crezca,
regresa a la orilla del río
y relee las cartas con los ojos cerrados,
deja que las palabras y las imágenes bañen tu cuerpo como olas,
relee las cartas con la mano ahuecada en la oreja ...
escucha las canciones del edén ...
página tras página, tras página,
vuela por la trayectoria del ave,
vuela ...
vuela ...
vuela.

lunes, 7 de abril de 2008

Cenizas y Nieve

Ashes and Snow, es como se titula la exposición del artista canadiense Gregory Colbert en el Museo Nómada ubicado(temporalmente) en el zócalo de la Ciudad de México, una exposición foto-video-gráfica donde conviven en imágenes hombre y animal de una forma poco antes vista.

La exposición está montada bajo una estructura forrada de bambú que consta de 3 naves, una principal donde se exhibe una película de una hora de duración, y dos naves laterales, las cuales parecen un pasillo donde a lo largo del mismo hay dos series de fotos(una de cada lado) , y al final, la proyección de un cortometraje distinto en cada nave.

Siento que lo más atractivo fueron los videos pues las escenas eran hermosas, aunque a mi siempre me llaman más la atención los sonidos, y esa pista sonora que volvió "el complemento" ideal a las imágenes, esa música invade y estremece, te hace sentir cierta condición mística y feliz de estar ahí.





Algo que también sorprende mucho es que ninguna ilustración es resultado de algún proceso de montaje, es decir, son fotos completamente reales además de ser tomadas por separado de los videos.

Me compré una taza muy bonita con la foto que ven arriba, el sol se pone rudo, y la espera para entrar oscila los 50 minutos, y ya adentro puedes tardarte de 2 a 3 horas :D, claro si ves todo.

Pero lo mejor, lo mejor, lo mejor, es que con la luz y el tamaño de las fotos, podías crear una especie de mashup humano-cartel, donde con cierta perspectiva, mi acompañante pasaba a ser parte misma de la exposición o mejor dicho, de lo que quería ver :D

"pluma a fuego, fuego a sangre, sangre a hueso, hueso a tuétano, tuétano a ceniza, ceniza a nieve." ...

jueves, 20 de marzo de 2008

Me sirve y no me sirve

He de confesar que si las lecturas no son técnicas las prefiero cortas, bueno el chiste es que entre lo que más me gusta leer son los cuentos y poemas, y de estos últimos muchos de los de Mario Benedetti me encantan.

El siguiente en particular nunca lo leí en un libro, pero me gustó mucho conocerlo, pasaron cerca de 4 años para volverlo a encontrar y me he vuelto a sorprender y encantar.

Me sirve y no me sirve

La esperanza tan dulce
tan pulida tan triste
la promesa tan leve
no me sirve

no me sirve tan mansa
la esperanza

la rabia tan sumisa
tan débil tan humilde
el furor tan prudente
no me sirve

no me sirve tan sabia
tanta rabia

el grito tan exacto
si el tiempo lo permite
alarido tan pulcro
no me sirve

no me sirve tan bueno
tanto trueno

el coraje tan dócil
la bravura tan chirle
la intrepidez tan lenta
no me sirve

no me sirve tan fría
la osadía

sí me sirve la vida
que es vida hasta morirse
el corazón alerta
sí me sirve

me sirve cuando avanza
la confianza

me sirve tu mirada
que es generosa y firme
y tu silencio franco
sí me sirve

me sirve la medida
de tu vida

me sirve tu futuro
que es un presente libre
y tu lucha de siempre
sí me sirve

me sirve tu batalla
sin medalla

me sirve la modestia
de tu orgullo posible
y tu mano segura
sí me sirve

me sirve tu sendero
compañero.

lunes, 10 de marzo de 2008

XML hasta en la xopa

A principio de la década se empezó a escuchar mucho sobre un "nuevo" lenguaje, pero no de un lenguaje de programación, más bien era de lenguaje de marcado, sí, un lenguaje parecido al HTML con el que se hacen las páginas Web. Este lenguaje era XML y por ese entonces causó mucho revuelo, prometía muchas cosas y había muchos a favor pero también muchos otros un tanto escépticos. Entre sus principales característica era que se podría lograr el intercambio de información entre distintas máquinas, sistemas operativos y/o aplicaciones, dotando a estas últimas un nivel de integración que jamás se había visto. ¿cómo iba a ser esto posible?

A muchos no les toco la éra donde las Mac y las PCs no se hablaban, y tratar con las demás plataformas era casi un sueño, querer pasar tus archivos de un lado a otro era un problema, si eso mismo lo trasladamos a las aplicaciones empresariales, esas que manejan muchísima información y que sale muy caro reemplazar, es fácil darse cuenta que el problema no es trivial. Por otro lado se necesitaban hacer más sistemas, sistemas que a su vez se comunicaran de forma transparente con los que ya existían, de ahí surgió la necesidad de un lenguaje de intercambio independiente de la plataforma y/o aplicación que a su vez fuera sencillo de implementar, leer e interpretar.

Como la idea era poder leerlo en cualquier computadora se tenía que codificar de forma relativamente sencilla por eso se escogió codificar en archivos de tipo texto. Pero realmente no se inventó la rueda nuevamente pues se utilizó un subconjunto del estándar SGML, pero obviamente más general que HTML.

Para los puristas XML no es un lenguaje como tal, porque es un lenguaje útil para definir otros lenguajes más específicos (a lo que algunos lo llaman meta-lenguaje). Se basa en una estructura jerárquica(tipo árbol) que es fácil de entender por humanos y de procesar por las máquinas.
Para los que aún no lo conocen, imaginen que es casi igual al código de una página Web, pero con la capacidad de qué puedes definir más o tus propias etiquetas.


Todavía hace unos 5 años había gente que creía que sólo se trataba de una moda, pero el hecho es que ha ganado terreno en prácticamente todo tipo de aplicaciones, por ejemplo:

  • los archivos de OpenOffice (necesitas descomprimirlos primero),
  • guardar la definición de bases de datos en MySQL, con MySQL Workbench (.mwb),
  • la automatización de compilación en Java con ANT (build.xml),
  • los archivos para definir sitios en GoogleMaps (.kml), así como los que definen edificios
    en GoogleEarth (.kmz comprimidos), por ejemplo el Edificio T y Anexo del T de la UAM Iztapalapa.
  • bases de datos de Oracle,
  • configuración de servidores como Apache,
  • crear imágenes vectoriales en formato SVG,
  • ser la X en las aplicaciones AJAX,
  • en los Web Services (WSDL),
  • como base para la construcción de la Web del futuro: la Web Semántica.
  • entre otros muchos


Fuente: Tim Berners-Lee. Semantic Web Architecture

Esto me hace pensar que XML contrario a ser una moda como algunos llegaron a suponer, llegó para quedarse, tanto que podría decirse que hay XML está hasta en la xopa. Pero cuidado, XML tampoco es la panacea ni todo son ventajas, tanto que existen alternativas que pueden cumplir la misma función pero obteniendo ganancias importantes en otros aspectos, como lo son YAML o JSON.

¿aún no lo conoces? entonces ¿qué esperas?.

domingo, 17 de febrero de 2008

Imagen para un indicador por colores tipo semáforo

Resulta que necesitaba una imagen la cual su color indicara el estado de un "objeto", algo así como un semáforo, pero de más de un 3 valores, de hecho el catálogo de colores estaría en una base de datos.

El chiste es que pre-hacer una imagen por cada color que se definida en la base es inviable, pensé en hacer gala de mis conocimientos de la librería php GD
y tal vez crear imágenes "al vuelo" del color que necesitaba pero, esto traducido a el tiempo en que se generan y envían al cliente es demasiado, se me ocurrió la idea de hacer una imagen transparente y cuyo fondo fuera el que cambiara con estilos y javascript, y el color vendría en el response de una llamada ajax, resultado: algo mucho más interactivo.

A continuación el efecto de la misma imagen con distintos colores de fondo, un tip adicional: usar grises con opacidad inferior al 50% para dar el efecto de sombra.



También vean como uso la propiedad style.backgroundColor='red' de la imagen, para cambiarle el fondo.


miércoles, 13 de febrero de 2008

cuando pase el temblor

La noche de ayer me quedé a trabajar, sí, casi toda la noche. Y fue poco antes de las 7 cuando empecé a sentir una especie de mareo, me senté bien en mi silla y continuó, entonces me dí cuenta que no era yo, era el edificio.

Crujía su estructura, no sé bien qué era lo que sonaba: si las ventanas, las columnas o los refuerzos de acero (nada estéticos) tipo esqueleto que le fueron agregados al edificio de la contraloría a raíz de los sismos de 1985. Ya me han tocado sismos fuertes, uno de los que más recuerdo fue cuando estaba arriba de una escalera pintando una ventana de un segundo piso y descendí de manera casi malabárica.

El sismo de ayer fue nuevo para mi, no es lo mismo un sismo en mi casa a las faldas de un volcán inactivo, a uno en el centro, de 6.7 grados, en el séptimo piso, todavía algo oscuro y en un edificio sentido por otros temblores, realmente es otra experiencia. Y aún con tanta "cultura" de los sismos que hay en el D.F. no supe que hacer, sólo me quedé en mi lugar. Lo chido: no se fue la electricidad, ni el internet y por lo tanto estuve monitoreando los diarios y el sistema sismológico nacional.

lunes, 11 de febrero de 2008

mucho CACHE para Firefox y Opera

Supon que quieres guardar el último video que viste en tu navegador, ¿no sabes dónde buscar? la respuesta esta en el cache del navegador pero, ¿y dónde está esa carpeta?, la respuesta fácil para evitarte la molestia de andar buscando a mano es que le preguntes a tu mismo navegador.

Para los usuarios tanto de Firefox como de Opera basta escribir en la barra de direcciones la siguiente línea: about:cache.

El único inconveniente es que los videos en su mayoría vienen en formato .flv, y son renombrados. Así que por el puro nombre no vas a saber cual video es el que te interesa, entonces tendras que irlos viendo, para esto te recomiendo usar el programa VideoLAN - VLC media player o quizá el sofisticado Miro.

Parece ser que desde la misma interfaz del cache puedes ir guardando lo que te interesa, no lo he intentado aún pero igual se puede.

¡Felices descargas!

miércoles, 9 de enero de 2008

Desbloquear puertos en Firefox

Sí, si intentas usar un puerto no muy común para navegar en una aplicación web, por defecto Firefox va a bloquear tu petición.

por ejemplo: http://unservidor.com:6000/aplicacion

¿cómo superarlo?
  1. Escribeabout:config en lugar de un URL, con ello obtendrás una lista de parametros del navegador.
  2. Con click derecho crea uno nuevo parametro llamado network.security.ports.banned.override
  3. A este nuevo parametro le asignarás como valor el número del puerto donde esté la aplicación, en el ejemplo: 6000. 
  4. Para probar que ya puedes acceder a esa aplicación escribe nuevamente el URL en tu barra de navegación.

NOTA: si deseas hacerlo a mano, busca el archivo all.js en C:\Archivos de programa\Mozilla Firefox\greprefs y busca la línea comentada que contenga "network.security".

viernes, 4 de enero de 2008

insoportable obstrucción

Es feo no poder dormir a gusto sumando este frío.

Pero es más feo despertar de repente con una sensación de sofocación, pensar que son las cobijas es ingenuo, pero las retiro. Ya sólo con la sábana encima esperaría tranquilidad pero, tiemblo y la sensación no cesa.

Muchas cosas en que pensar no ayudan, la sofocación se convierte en angustia, quiero levantarme, quiero salir, quiero abrir, gritar, y hasta escapar ... no sé, pero seguro debo tomar algo extra de vitamina C.