lunes, 29 de diciembre de 2008

Un automovil de 4 nanómetros

James Tour, un profesor de química de la Universidad de Rice, inventó un automóvil de apenas 4 nanómetros, o sea, menor que una cadena de DNA humano.

Combinando elementos a nivel atómico, este profesor consiguió crear un motor, un mecanismo de transmisión, ruedas y hasta un sistema de suspensión, formados por conjuntos simples de átomos, al igual que lo hace la naturaleza con las enzimas y otros compuestos orgánicos. Por ejemplo, las ruedas están compuestas por 60 átomos de carbono, en una formación estructural esférica.

La tecnología implicada permitirá crear otros sistemas más complejos, capaces de servir a otros propósitos, como transportar elementos a través del cuerpo, atacar enfermedades (bacterias, virus, etc.), reparar daños internos, etc.

Por ahora, no puede considerarse un invento con inmediata utilidad práctica, pero es la base para crear tecnologías que podrían resultar en un cambio radical en la forma en que vemos algunas enfermedades y sus posibles soluciones.

No dá para salir a dar una vuelta, pero es interesante igual :-)

EOF

viernes, 26 de diciembre de 2008

M$ Windows se utilizará en submarinos ingleses(!?)

El 21 de Setiembre de 1997, el U.S.S. Yorktown, un crucero clase "Ticonderoga" de la marina de los Estados Unidos de América, quedó navegando a la deriva, luego de que uno de los operadores de sus sistemas informáticos ingresó un valor cero en un campo de una base de datos, lo cual generó un error "divide-by-zero" en el software de base de datos, el cual terminó haciendo caer los servidores Windows NT (había 27 servidores Pentium Pro de 200 MHz. ejecutando Windows NT y Oracle, diseñados especialmente para mantener el control del crucero), mostrando una de las clásicas y nunca bien ponderadas B.S.O.D. (Blue Screen Of Death)...

El proyecto se denominaba "SmartShip", y fué básicamente uno de los tests del proyecto Aegis, su nueva generación de sistemas integrados de armamento, comunicaciones y control para naves marítimas. Básicamente, instalaron los equipos, instalaron el software, configuraron todo y se bajaron del barco... y cuando saltó el "divide-by-zero", tuvieron que subirse de nuevo a reiniciar los NT.

Pasaron casi tres horas hasta que pudieron abordar el barco y enterarse de lo que había pasado. Claro, esto no fué tan público como aquella bochornosa presentación de Windows 98, en el que la carga de un driver generó un B.S.O.D. mientras Bill Gates y su asistente presentaban en sociedad al nuevo sistema operativo, pero el efecto que tuvo en la credibilidad del proyecto fué catastrófica. Por lo menos quedó claro que las decisiones políticas no eran siempre tan acertadas cuando se trata de tecnología y armamento, y que éstas deberían ser tomadas por personas capacitadas y no por "lobbyists".

Pasaron más de 10 años, y parece que ahora los británicos van a intentar exactamente lo mismo que los yankees, pero con submarinos. La Royal Navy, va a poner Windows en los sistemas de control de varios de sus submarinos.

Dá para pensar que al igual que les sucedió a los yankees, la razón es más política que técnica, aunque la realidad es que no se entiende bien cómo puede ser siquiera considerado el uso de Microsoft Windows para algo tan importante y de misión crítica como un submarino nuclear... sobre todo después del resultado obtenido por la marina norteamericana.

Supongo que pensaron que la mejor forma de sumergir un submarino rápidamente, es simplemente ponerle Windows y dejar que la legendaria estabilidad del sistema operativo haga el resto...

Desde ya, extiendo mis condolencias a las viudas de tan nobles, osados y temerarios submarinistas.

EOF

miércoles, 17 de diciembre de 2008

Spam que hace referencia a la Constitución(!?)

Claro, hace tiempo que se usaba lo del "...Este mensaje no puede ser considerado spam según las leyes internacionales..." o "...Bajo el decreto S.1618 TÍTULO III aprobado por el 105º Congreso, este mensaje no puede ser considerado spam...", o cosas por el estilo, pero creo que ya todo el mundo sabe que estas frases son mentiras, ya que no existe legislación "internacional" sobre el spam, sino que en realidad solo hay legislación sobre este tema en algunos países.

Lamentablemente, en algunos países la legislación que regula el SPAM fué mal implementada, así que esto creo algunas situaciones que pueden complicar aún más la situación para las empresas de la rama de los servicios de Internet, ya que básicamente puede haber casos en los cuales una persona puede emprender acciones legales contra una de dichas empresas y hasta obtener un beneficio monetario sin tener que ofrecer todas las pruebas necesarias al respecto. Tal es el caso de Perú, por ejemplo.

Hace unos días, recibí algunos mensajes de Spam que clamaban lo siguiente:

...Este es un correo electronico promocional. Esta contemplado en lo establecido por la Constitución de la República Oriental del Uruguay en su Sección II Capitulo I, Artículos 10 y 28...

Se imaginarán mi sorpresa...

Como los mensajes no dejaban de ser SPAM, y quien se tomó la molestia de agregar estos datos al final de mensaje parece querer aprovecharse de alguna manera de lo que dice la Constitución, la busqué y me puse a revisar la información.

El artículo 10 de la sección II, capítulo 1º dice así:

"Las acciones privadas de las personas que de ningún modo atacan el orden público ni perjudican a un tercero, están exentas de la autoridad de los magistrados."

Y el artículo 28 de la misma sección, dice:

"Los papeles de los particulares y su correspondencia epistolar, telegráfica o de cualquier otra especie, son inviolables, y nunca podrá hacerse su registro, examen o interceptación sino conforme a las leyes que se establecieron por razones de interés general."

Esto no es más que un intento por escapar a potenciales acciones legales emprendidas por algún damnificado a causa de estos mensajes.

Resulta destacable que se cite el artículo 28, el cual está destinado a proteger la privacidad de las comunicaciones epistolares, y aquí se pretende utilizar como medida preventiva en contra de acciones que pudieran tomar los administradores de sistemas, quienes tienen acceso a los e-mails de sus clientes y pueden presentar quejas de SPAM y/o tomar medidas en forma unilateral contra el SPAM, sin consultar a los destinatarios (quienes normalmente no reciben el SPAM, ya que queda cautivo en los repositorios de basura de los servidores, a causa de los filtros aplicados por los mismos).

Ahora, si nos concentramos en el artículo 10, veremos que en realidad no puede aplicarse al caso de estos spammers (por lo menos para evitar acciones legales, que es lo que pretenden en realidad), simplemente porque de hecho, sus acciones sí perjudican a terceros (al administrador de sistemas que tiene que lidiar con el SPAM, a pesar de no ser el destinatario del mismo, por ejemplo), así que en definitiva, al igual que con las otras famosas frases que suelen llevar los SPAM al final como burdos intentos de evitar que los destinatarios tomen acciones en contra de los spammers, estas solo tienen como cometido el intentar generar miedo en los sysadmins y en los destinatarios que decidan intentar hacer algo al respecto del SPAM, aunque sin ningún asidero real que respalde acción o protección alguna.

Estos spammers son los mismos que se llenan la boca con analogías como "el email marketing es igual que un folleto por debajo de la puerta", "es igual a cuando mirás televisión y te pasan una tanda" y otras ridiculeces por el estilo, que ya sabemos que NO son ciertas.

La verdad, sigue siendo lamentable que en este país no haya ninguna legislación sobre el tema, lo cual se me ocurre que sucede gracias a la ignorancia inconmensurable que se extiende cual si fuera ceguera hereditaria sobre nuestra clase política.

Esto no quita que el intento es destacable, tanto por lo ridículo como por lo "original" (a falta de una mejor palabra para definir esta malversación de la leguleyezca nacional en defensa de la "profesión" del "email marketing").

"Agua y ajo", dice el conocido dicho popular...

:wq

sábado, 13 de diciembre de 2008

Sudacas, y a mucha honra....

En el mundo civilizado, el término "sudaca" se usa despectívamente para designar a las personas que viven en, o cuya nacionalidad es de alguna parte del cono sur.

Esta denominación se utiliza en el primer mundo como elemento discriminatorio, incluso en los aeropuertos importantes. Hay una fila para europeos y norteamericanos, y otra para sudamericanos. Y esta bien que lo hagan, ya que los sudamericanos tenemos tendencias violentas, destructivas, despectivas e irrespetuosas con respecto al resto del mundo. Rompemos, ensuciamos y molestamos. Así somos los sudacas.

Los Uruguayos somos iguales o peores. Ya es malo que nos confundan en el resto del mundo con los argentinos (así nos reconocen por el acento en centroamérica), lo cual de alguna manera nos excusa por ser como somos y despista a los incautos haciéndolos creer que en realidad no somos uruguayos. Algo así como decir que no votaste a los gobernantes de turno, porque así no te echan la culpa, pero al revés.

Y en definitiva, las pruebas están bien a la vista. Solo observando la pulcritud de nuestra principal avenida, 18 de Julio, cualquier turista puede fácilmente darse cuenta de cómo somos en otros aspectos.

Seriamente hablando, dá lástima ver como 18 de Julio se ha convertido en un basurero, a pesar de haber recipientes de residuos casi que en cada esquina. Una imágen de verdadero orgullo sudaca.

En Beijing, antes de que comenzaran las Olimpíadas, desplegaron un operativo impresionante en las calles, formado por instructoras que le explicaron a todo transeunte cual era la forma correcta de comportarse (esto es, no tirar basura al suelo, no escupir en la calle, etc.). Parece que funcionó, aunque tuvo que darse un evento de gran magnitud a nivel mundial para que se dieran cuenta del problema y se pusieran a solucionarlo.

Como creo que Uruguay no está a la altura de un evento como las Olimpíadas, o un Campeonato Mundial de Football, talvéz sea un buen momento para importar de China algo más que juguetes de plástico e imitaciones de mala calidad...

Es eso, o seguir sepultados en la basura que producimos, calentándonos porque nos tratan en el resto del mundo como "sudacas".

Y a no discriminar señores. He escuchado gente llenarse la boca criticando a los "planchas", los "bolita" y los peruanos, mientras vacían sus bolsillos llenos de boletos de ómnibus, envolturas de chicles y paquetes de cigarrillos en el suelo, a pocos pasos de un recipientes de residuos medio vacío.

Si, así somos los sudacas, ¡y a mucha honra!

:wq

domingo, 30 de noviembre de 2008

Receta del mes: Pamplonas caseras a las brasas

¿A quién no le gustan unas ricas pamplonas de cerdo (o de pollo) preparadas a la parrilla, entre tragos de whisky o de cerveza bien fría? En donde vivo, es dificil conseguir, a menos que vayas a un supermercado medianamente grande o alguna carnicería decente, y los precios son poco menos que inaccesibles. Con esta receta se pueden preparar unas siete u ocho pamplonas de tamaño razonable, a mitad de lo que cuestan en cualquier comercio, y como uno le pone lo que le gusta, ni que hablar que quedan mucho más deliciosas.

Ingredientes:


  • 1 K. de pulpa de cerdo (puede ser también de pollo o carne vacuna tierna, como el cuadril)

  • 150 g. de tocino

  • 1 Ají morrón rojo (o morrón dulce)

  • 150 g. de queso curado (cualquier variante es aceptada, colonia, gruyere, etc. cuando más sabroso, mejor. NO usar mozzarella)

  • 100 g de Aceitunas sin carozo

  • Varias Hojas de albahaca

  • Adobo a gusto (se prepara con ají, coriandro, orégano y tomillo, aunque puede variar, así que normalmente se compra preparado. Hay una variante que no es picante, ya que le ponen menos ají.)

  • Sal a gusto

  • Azucar

  • Un limón

  • Un tubo de hilo grueso


Preparación:
Bueno, esto no tiene mucha ciencia...

Hay que cortar fetas de carne de aproximadamente unos 8 milímetros de espesor (desconozco el nombre técnico del corte...), como quien va a hacer milanesas. Idealmente, estas fetas deberían de tener un tamaño que permita hacer un arrollado de carne que represente aproximadamente una porción. Se salan y se adoban todas las fetas y se dejan guardadas en la heladera por lo menos durante dos o tres días (para que se saborice) en una bolsa sellada o recipiente hermético. Cuanto más tiempo esté la carne en contacto con el adobo, mejor.

Es muy bueno dejarle la grasa a la carne (cuando se trata del cerdo... NO es buena idea en caso del pollo o de la carne vacuna), pero también se puede separar y dejar aparte para recubrir la pamplona cuando se vaya armando. En caso de usar pollo, es conveniente apartar el cuero del pollo para recubrirlo. En el caso de la carne vacuna, es mejor no dejar grasa o dejarle muy poca.

El ají morrón se corta en tiras de unos 5 o 6 milímetros de ancho (¿se llama "en juliana" el corte?...) y se cocina apenas en una sarten con aceite, vinagre, sal y azucar, de forma de que quede agridulce. El sabor del ají preparado así no tiene comparación con ningún otro condimento. Se deja enfriar en un platillo, junto con un poco del líquido. También se pueden usar conservas de ají morrón agridulce o en vinagre azucarado.

El queso se corta en tiras de sección cuadrada, de 8 o 10 milímetros de lado, al igual que el tocino.

Para armar la pamplona, se estira la feta de carne en una tabla, y se cubre con algunas hojas de albahaca, luego se ponen algunas tiras de ají morrón, un par de aceitunas abiertas y estiradas (opcionales), una tira de queso y otra tira de tocino. Luego, la carne se va arrollando sobre si misma de manera de cubrir todos los ingredientes en el interior, sin permitir que quede nada asomando hacia afuera. Después, dependiendo de si se usó carne de pollo, cerdo o vaca, se puede ir apretando la pamplona armada y cosiéndola con el hilo hasta que quede como un arrollado. Si las fetas son pequeñas, se pueden usar varias por pamplona.

Si se hicieron de pollo, antes de coserlas se debe usar el cuero del pollo para armar la pamplona, si se usó carne de cerdo, se pueden usar tiras de grasa apretadas contra la carne mientras se cose con el hilo, para que dicha grasa al asarse desprenda líquidos que eviten que la pamplona se seque demasiado y evitando que haya que estar remojándolas con algún mojo preparado con aceite, agua y sal (hay que prevenir...).

Para asarlas, se ponen simplemente a las brasas durante aproximadamente una hora, cocinándolas lentamente, y aprovechando para darlas vuelta contínuamente, para asegurar un asado uniforme. Hay que tener cuidado con el queso, que suele escaparse por las separaciones de la carne (y por eso no es una buena idea usar quesos cremosos como la mozzarella...).

Emplatado:
Se sirve una pamplona por comensal, acompañada de alguna ensalada (típicamente de tomate, cebolla y lechuga) y una rodaja de limón. Seguramente no quede ni el olor...

Para quienes no gustan de la cebolla al natural, hay una forma rápida de prepararla para que quede sabrosa y sin el típico picante ácido que la caracteriza: se corta la cebolla en rodajas, y se pone al fuego en una mezcla de tres tazas de agua hirviendo, una de vinagre y una cucharada grande de sal. Se deja hasta que rompa hervor y se deja enfriar. Se saca, se lava y se pone en una fuente e enfriar en la heladera. Luego se puede mezclar con un mojo de aceite, vinagre, sal y perejil picado en un... pero pará... ¡ésta es otra receta! ¿hacemo dos por uno?...¡Editoooooor!...

Bon apéttit!

jueves, 27 de noviembre de 2008

Casmu: Un dinosaurio en lenta extinción

Dicen que en el Casmu 1 se instaló el primer marcapasos del mundo, en el año 1960. Esto no es cierto, ya que en realidad el primer marcapasos interno implantado en un paciente se instaló en Suecia, a Arne Larsson en el año 1958. Claro, duró apenas tres horas, pero se le siguieron implantando nuevos modelos hasta que llegó a utilizar un total de 26 marcapasos en su vida. Arne falleció en el 2001, a los 86 años de edad.

De todas maneras, cierto es que en el Casmu se instaló el primer marcapasos interno en las "Américas", un logro que visto hoy, es algo así como un "maracanazo médico". Y tal cual el maracanazo, en Uruguay seguimos viviendo de las glorias pasadas. El Casmu está plagado de problemas, falta de medicamentos, problemas con los empleados por falta de pago, una burocracia excesiva, inefectiva e ineficiente, y varios etc.

Ser socio del Casmu, últimamente pone a prueba el calificativo de "paciente". No es raro que las personas que atienden en los mostradores no conozcan siquiera los trámites que una persona debe realizar para obtener tal o cual tratamiento o medicamento. Hay historias de personas que han paseado por todo montevideo (o por lo menos, por los tres grandes edificios del Casmu) para obtener respuestas, muchas veces para enterarse de que en realidad lo que necesitan no está disponible o que les hace falta algún otro trámite del que la persona que lo atendió anteriormente nada sabía.

El hecho de que Casmu no tenga una estructura centralizada a nivel administrativo es también una pesadilla para los socios. Muchas veces hay que llamar a los médicos a sus casas para ver si están disponibles, dado que no hay un único lugar de consulta y asignación de recursos centralizados. Lo ideal sería que cuando una persona necesita un médico (de cualquier tipo), llame a un único número (fácil de acordar) y desde ese número le coordinen la fecha, hora y lugar de consulta, sin necesidad de que la persona tenga que rastrear el médico en cuestión, aunque supongo que si no se hizo aún, es porque la resulta demasiado caro mantener una estructura organizada de esa forma, o que la desorganización ya está tan institucionalizada que lo impide.

En contraste con esto, cuando mi hija estuvo enferma hace más de un año (le diagnosticaron Síndrome de Kawasaki), la atendieron perfectamente bien y la visitaron varios médicos (más de 10, aunque probablemente fué porque la enfermedad es rara y había curiosidad académica), así que no tengo nada que decir de la pericia técnica de los médicos que la atendieron, que por suerte la diagnosticaron correctamente y a tiempo (a pesar de que es una enfermedad dificil de diagnosticar con seguridad y fácil de confundir con otras menos peligrosas).

La realidad es que el Casmu es víctima de su estructura y tamaño, al igual que lo fué el imperio romano. Es imposible controlar y mantener funcionando una infraestructura como la de dicha institución. Eso y los conflictos gremiales terminarán de rematar a la más grande (en tamaño únicamente) de las mutualistas. Con más de un cuarto de millón de socios, probablemente con ella colapse todo el sistema de asistencia privado. Dudo que La Sociedad Española o la Médica Uruguaya puedan incorporar a todos los socios que se queden sin atención. También puede pasar que aparezca algún inversor (más bien un grupo de inversores) que decida quedarse con el problema y resolverlo de la forma más razonable: cerrando y volviendo a abrir con otro nombre y nuevos acuerdos con empleados y proveedores.

El tiempo lo dirá.

:wq

martes, 18 de noviembre de 2008

Oh, Oh... Obama(!?)

Si, a veces pasan estas cosas... En un país donde todos los presidentes han sido grandes políticos de la "old school" (esto es, personajes de buen vivir, prósperos dirigentes de una elitista clase política con intereses bien definidos y para nada en común con los de la gente que los votó), de repente aparece este personaje casi mítico y de un solo golpe se convierte en presidente... ¿Fué por su carisma? ¿Fué porque pertenecía al partido opositor? ¿Fué porque McCain no pudo convencer al mundo de que él no tenía nada que ver con el legado de su compañero de partido (Georgie)? ¿O fué culpa de la solidez gelatinosa de su compañera de fórmula, la carismática y combativa gobernadora de la helada Alaska, Sarah Palin, que quedó en evidencia en su magro desempeño en el debate con Joe Biden (alguien que hasta parece mejor candidato que el propio Obama)?...

Yo creo que gran parte del porqué viene de la debacle general que el niño Bush (and friends) le generó a sus compatriotas. La peor presidencia de la historia del país, una guerra rebuscada para obtener el control del petroleo en Medio Oriente y justificar la financiación de las empresas de los amigotes de George papi, una seguidilla de idioteces sin par, una diplomacia dañada seriamente gracias a comentarios soeces y fuera de lugar, incluso hacia presidentes de otros países, una masa burocrática excesiva e inerte, decisiones erráticas tomadas siempre como lenta respuesta a eventos que siempre pudieron ser evitados, y un historial de insensateces anticonstitucionales que deberían quedar en los anales de la historia y obligarlos a reescribir la famosa frase del himno del país, eliminando la parte que dice "land of the free". Talvéz haya que tomar en cuenta que todo pudo haberse derivado de un "arbusto embebido en petroleo" (no confundir con el arbusto en llamas a través del cual se supone que Dios le habló a Moises avisándole que iba a liberar a los esclavos de Ejipto, hace algunos miles de años atrás), aunque a cualquier angloparlante verá la clara metáfora en el nombre de la empresa y de su dueño mayoritario (en español, "bush" significa "arbusto", así que si jugamos con los nombres, se verá la obvia idea detrás de todo el asunto).

La verdad, es sorprendente que los Estados Unidos sigan existiendo después de todo esto...

Talvéz Bush se tomó demasiadas vacaciones en su primer período, y demasiado pocas en el segundo. De hecho, creo que muchos nos preguntamos cómo pudo llegar a tener un segundo período, y está clarísimo que se trató de un fraude como pocos (bueno, por lo menos "ese" fraude es mayor que el primer fraude, en el cual se convirtió en presidente la primera vez...), pero bueno... tomemos en cuenta que raras veces se ha dado que un presidente norteamericano moderno no haya salido reelecto, y en este caso, se contaba con ello para despistar a los incautos. La mayoría de los ejemplos de presidentes "mono-período" en realidad no pudieron tener (o terminar) un segundo período porque se mandaron alguna (me viene el recuerdo de aquel muchacho y sus amigos "plomeros", un tal Nixon) o porque terminaron muertos (asesinados, mejor dicho), y como en este caso la CIA y los Bush son amigos del alma, esto último del "asesinato" no se iba a dar... a menos que fuera por accidente o por algún atentado extranjero.

Pero volviendo al tema, de repente apareció este muchacho "café con leche" y se les quedó con el premio... ¡Dá para sospechar tanto!. Es como si de repente pasara que en el país de la joda se terminara todo y empezaran de nuevo, pero bien...

La White House debería ser renombrada oficialmente como "Black House" durante unos años. ¿Y cómo pasó esto?...

Bueno, la cosa es que Obama obtuvo el apoyo de la gente porque en imagen y en ideas es la personificación del cambio. No solo eso, sino que su background de luchador, de persona que vino "de abajo" cautivó a las masas cansadas de los políticos tradicionales y la demagogia, y se volcaron a votar al unísono a un candidato que nada parecía tener que ver con esos cuellos duros de política acostumbrada. Influyó también la cantidad increíble de dinero que Obama recaudó para su campaña, lo cual le permitió hacer publicidad en televisión durante los horarios más vistos. El marketing fué tan impresionante, que iba a ser dificil que McCain pudiera hacer algo para revertir el efecto hipnótico de la propaganda de Obama (este video puede dar testimonio de la maquinaria marketinezca al alcance de Obama):



También ayudaron algunos problemas de McCain con la forma en que manejó su campaña (¿la manejó?) y de ciertos personajes que aparecieron con un propósito y terminaron generando el efecto contrario, como fué el caso del famoso "Joe, the plumber", quien enfrentó a Obama por los impuestos "socialistas" que planteaba en su campaña (supuestamente vió a Obama aparecer mientras estaba jugando al fútbol y se tomó la molestia de dejar el partido para ir a increparlo por lo de los impuestos) y finalmente resultó beneficiado en forma colateral gracias a la popularidad que obtuvo entre los seguidores de McCain, quien lo usó como sinónimo de "clase media" y hasta lo llevó de gira en sus presentaciones. La gente (los yankees son MUUUY sabios ) rápidamente se dió cuenta de que este "Joe the plumber" era una estrategia más (el tipo ni siquiera se llama "Joe", y además vendió los derechos para que se escriba un libro sobre su historia, aunque no sé con qué lo van a llenar...), y eso terminó favoreciendo a Obama... Imagino que McCain se estará tirando de los pelos (los pocos que le quedan) a esas alturas... pero también creo que se sentirá como Stirling cuando perdió contra Vázquez, a pesar de que no le fué tan patéticamente mal como a este primero.

McCain, en su desesperada lucha utilizó todas las armas que tenía, y al final de su campaña, bajo la presión de la inminente pérdida (y en un manotón de ahogado), se dedicó a criticar a Obama y a hacerle publicidad negativa, en lugar de hacer publicidad positiva para si mismo, una estrategia que Obama no tuvo necesidad de usar). Obama solo tenía que nombrar a Bush y a McCain en la misma frase para que todo el mundo sintiera un pinchazo en el estómago y ganas de vomitar instantáneamente. La distancia que quiso poner McCain no fué suficiente como para que la "bushit" no lo salpicara (no, no le faltan las "l"...).

Y el resultado está a la vista. Se termina el reinado del terror para empezar el "cambio", aunque no sé si cambie en realidad, y tampoco sé si durará mucho la cosa... Me imagino que si no hay acuerdos oscuros con la gran máquina militar/empresarial para continuar la "War on terror" enterrados en el jardín de Obama, esto puede terminar mal para él. Me viene el recuerdo de los últimos momentos de Martin Luther King a la mente, no sé porqué... Esperemos que no, el pobre Obama parece un tipo decente, pero como siempre, en la política uno nunca sabe. Ya me preocupa un poco que Chavez le tenga simpatía... es como una de esas señales que te dicen que estés alerta, pero no sabés a donde mirar ni qué hacer.

Ya veremos qué acontece. De mientras, Bush y sus amigotes se habrán sentado en un bar en Washington y estarán comentando entre copas las ganancias de ocho años de negocios rampantes... Cheney con las mordidas de Halliburton, Colin Powell promocionando farmacéuticos, Rumsfeld poniendo una casa de masajes en una antigua penitenciaría, y la morocha Condoleezza Rice convirtiéndose en una dominatrix y eliminando a sus competidores interceptando llamadas a los mismos y usando la información para obtener clientes. Nada mal para un perdedor innato y el hato de buitres que lo mima.

Por lo menos, estas últimas elecciones yankees demuestran que realmente cualquiera puede ser presidente de los estados unidos, desde un pobre inutil hasta un negro (no lo digo de forma despectiva para con la gente de color, que quede bien claro).

¿Sera por eso que se habla tanto del "american dream"?...

EOF

martes, 11 de noviembre de 2008

Ya casi...

Estoy terminando algunas cosas importantes y volveré al fin a la "rutina" del blog.

Tengo mucho para comentar (la opinología es una de las artes atesoradas en mi país), así que voy a tratar de dar una breve reseña de lo que vendrá, si las estrellas se alinean y puedo tomarme unos minutos de sueño para dedicarle a este rincón perdido del ciberDespacio...

Mi salud ha mejorado (recito mi mantra todos los días y cuento hasta diez antes de levantar el tubo del teléfono... así que si me llaman y no contesto, insistan...), además de que estoy tomandome tiempo para pensar mejor las cosas y reflexionar sobre los verdaderos motivos y la finalidad de las cosas que hago. Me dí cuenta de que estoy errando en algo, y casi, casi ya sé qué es, pero talvés no tuve el coraje necesario para aceptarlo, así que seguiré en mi búsqueda de la iluminación (con lamparitas de bajo consumo, of course) hasta quedar satisfecho con el resultado.

Quisiera hablar sobre los nuevos adelantos en genética, sobre la inminente caída del dinosaurio "Casmu", sobre la "crisis" financiera internacional, sobre algunos tutoriales que estoy escribiendo, sobre el verano que se viene, sobre Obama Sin Laden.... ¡perdón!, sobre Barack Obama y sobre algunos disparates sobre los que normalmente nadie habla, pero que están ahí pendientes y tentando mis comentarios.

Quiero decir tantas cosas que no sé por donde empezar ni como voy a hacer, pero bueno... voy a ordenar mis ideas y a tratar de encolarlas para que cuando vaya a escribirlas, no suenen a lo que suenan la mayoría de las locuras que hay en este blog, y para que quienes visitan este lugar encuentren algo interesante y que amerite perder el tiempo leyendo.

¡Nos leemos pronto (espero)!

EOF

miércoles, 1 de octubre de 2008

¡Necesito vacaciones URGENTES!

Estimados lectores:

No es por falta de cosas que contar, ni por falta de ganas de escribir, ni por no dormir de noche... No estoy escribiendo nada nuevo porque REALMENTE NO TENGO TIEMPO. Quienes son asiduos lectores de este blog saben que suelo publicar por lo menos uno o dos artículos por semana, promedio, pero lamentablemente, quienes tuvieron ganas de leer algo mío en los últimos días de Agosto y casi todo Septiembre se habrán llevado la decepción de no haber visto nada.

Como "noticias" (si les cabe el calificativo) les dejo estas:

1) Estoy sufriendo de una desacostumbrada hipertensión arterial gracias a la "sana" vida que algunas situaciones relacionadas con este trabajo me han proporcionado ultimamente, asi que estoy tratando de tomarme las cosas con más calma, a pesar de tener un atraso atroz en mis tareas (la foto creo que es elocuente).


2) No estoy pudiendo dormir demasiado gracias al sueño inconstante de mi hermosa segunda hija (no es sarcasmo, que no se malentienda. Es realmente hermosa y no tiene la culpa de ser un bebé), así que se podría decir que el tiempo que normalmente uso para escribir en el blog, ultimamente lo trato de aprovechar durmiendo (siempre que sea posible).

3) Estoy pensando seriamente en tomarme mis primeras vacaciones reales desde hace unos 8 años (lo cual es mucho decir, dado que no suelo "desaparecer" por más de tres o cuatro días, chequeando correo super seguido para no perderme detalle y no dejar nada sin resolver).

Así que esta es la situación actual. Les prometo que volveré al "ring" apenas pueda poner en orden mis tareas nuevamente y tenga de nuevo tiempo de publicar más tonterias (y si mi salud me lo permite).

Au revoir, mon amies! À bientôt! :-)

miércoles, 17 de septiembre de 2008

¡Que mala suerte tiene Antel con las fibras!

Hoy de tarde, a eso de las 18:30 cayeron varios enlaces de AntelData, y mi ADSL doméstico se contaba entre ellos.

Cayeron por lo menos otros cuatro ADSL domésticos de clientes, junto con dos enlaces Internet Class (por lo menos esos fueron los que me avisaron en forma inmediata que no tenían internet).

Hace un rato salió en el informativo el consabido aviso de que se rompió una fibra en Aguada (si me inventaban que había sido otra topadora lejos de la central de Aguada, hubiera sospechado algo peor, porque según tengo entendido, los enlaces ADSL e Internet Class no tienen otro punto de convergencia que dicha central...). Por suerte, el problema se resolvió rápidamente, lo cual es muestra más que evidente de la celeridad de la respuesta de los técnicos instaladores de fibras... o de la rapidez con que levantan los equipos que se desenchufan o apagan accidentalmente.

Menos mal que no son cables de cobre, porque sino ya me imagino que los robos de "los plancha" no los dejarían en paz... o quien sabe, capaz que como las fibras opticas son de "vidrio", alguien las pisó y se rompieron... o alguien necesitaba arreglar una heladera que no mantenía el frío y se le ocurrió usar la fibra de AntelData como aislante...

O habrá sido la topadora de la otra vez. No sé, che... parece que AntelData compra las fibras en el mismo lugar en el que consigue a las telefonistas.

Mis teorias y sospechas siguen siendo las mismas: alguien apagó algo que no debía, o pateó algún cable de corriente, o algo así de simple. Si no es eso, es que AntelData no tiene suerte con las fibras ópticas... y la verdad es que en ese caso, creo que prefiero que vuelvan a usar cables de cobre dentro de la central de Aguada.

Como dicen las viejas: ¡Queselevacer mijo!

EOF

sábado, 30 de agosto de 2008

¡Feliz cumpleaños, Blog!

Hoy hace un año que me vinieron ganas de escribir algunos divagues (y hacerlos públicos en Internet), y acá ven el resultado...

Espero que estén disfrutando leer este blog, al igual que yo disfruto escribiendo en él.

¡Feliz Cumpleaños, Blog! :-)

martes, 19 de agosto de 2008

Receta del mes: Pasteles hojaldrados de dulce de membrillo

Ya se está yendo el invierno, pero como todos sabemos (y recordamos trístemente desde aquel 23 de Agosto de 2005) todavía aparece alguna "tormentita" digna de ser aprovechada haciendo las tradicionales tortas fritas, o si lo prefieren (como es mi caso), amasando pasteles hojaldrados rellenos de dulce de membrillo.

Ingredientes:


  • 1/2 kilo de Harina (dos o tres ceros)

  • 120 g. de Maizena

  • 1 taza de agua caliente

  • 1 kilo de grasa vacuna para freir

  • 250 g. de dulce de membrillo (hay quenes usan dulce de leche o incluso queso...)

  • 50 g. de manteca

  • 1 cda. sopera de sal fina

  • Azucar (a gusto)

  • 1 medida de grappamiel


Preparación:

En un tazón grande, se vierte el agua caliente y se derrite un pedazo de grasa vacuna, de aproximadamente unos 80 gramos. En esa misma agua se mezcla la sal y una cucharadita de azucar común.

Se hace un "volcán" con la harina, y se vierte dentro del mismo el contenido del tazón con la grasa derretida. Se va mezclando y amasando hasta que se logra una masa de consistencia homogenea y suave al tacto, gracias a la grasa incorporada. Si queda demasiado blanda o líquida, podemos incorporar más harina hasta que quede "amasable".

Ahora, comenzamos a amasar con un palote hasta tener una superficie aproximadamente rectangular y de un espesor de unos cinco o seis milímetros. En este punto, comenzaremos el hojaldrado. Para lograr el efecto de hojaldre, debemos untar manteca sobre una sola mitad de la masa alisada y espolvorear maizena sobre la misma hasta que quede totalmente cubierta. Luego, doblamos la mitad limpia sobre la que tiene la maizena y volvemos a amasar hasta haber unificado las dos mitades en una misma lámina de masa fina. Este procedimiento lo debemos hacer un mínimo de cinco veces, de forma de obtener un laminado de por lo menos treinta y dos (25) capas de masa, la cual estiraremos hasta que quede de escasos dos o tres milímetros de espesor. Cuanto más veces doblemos la masa, más hojaldrados quedarán los pasteles, y cuanto más estiremos la masa, más finas serán las capas y mejor el efecto.

Este proceso se puede hacer en partes, amasando pequeños volúmenes de masa, de forma de poder trabajar con comodidad. Si no se tiene manteca, se puede hacer con margarina, pero la maizena es irremplazable. A medida que vaya amasando, es posible que las láminas de masa se separan un poco. No se preocupe, eso es bueno para el efecto final de hojaldrado, y solo complicará un poco el armado.

Una vez terminado el estiramiento de la masa, procederemos a recortar cuadrados o rectángulos de aproximadamente ocho centímetros de lado. Luego, con sumo cuidado, haremos un círculo dibujado con agua sobre cada cuadrado, y recortaremos una pequeña porción de forma cúbica o rectangular de dulce de membrillo, la cual colocaremos en el centro de la masa y doblaremos la misma sobre éste cubriéndolo por completo, cual si fuera un pañuelo. Una vez hecho esto, presionamos la masa del lado interior del pastelito (contra el dulce de membrilo, y NUNCA sobre el borde, a menos que quiera comer empanadas...), el agua ablandará la masa y ayudara a sellar las dos partes sobre el dulce.

De esta forma, quedarán preparados los primeros pasteles. Cuando tenga unos diez pasteles armados, ponga el resto de la grasa vacuna a calentar en una sartén y siga armando pasteles. Cuando la grasa esté caliente, proceda a sumergir los pasteles dentro de la misma y déje que se doren. Es bueno darlos vuelta para obtener un color uniforme de los dos lados. Observará que si realizó correctamente el amasado, las láminas que forman el hojaldrado se separan levemente por los bordes al cocinarse, y se forman pequeñas burbujas entre las láminas. Esto es una buena señal... pero si no se separan, la próxima vez que prepare esta masa ¡NO SEA TACAÑO y póngale más manteca y maizena!

A medida que los vaya sacando, póngalos en un bol grande cubierto con papel de astraza (no utilice servilletas comunes o toallas de cocina, porque suelen deshacerse y pegarse a los pasteles) y antes que la grasa que les queda encima se enfríe, espolvorée azucar sobre los mismos, dándolos vuelta de ser necesario para que el azucar se les quede adherida uniformemente.

Para la versión "interplanetaria", se puede usar grasa vegetal o margarina en lugar de la grasa animal, tanto para el amasado como para el fritado. Vegan friendly! :-D

Emplatado
¿Empla...qué?... ponelos en una fuente semi-plana y que se sirvan... Tratá de guardarte alguno ántes de llevarlos a la mesa, porque si las fieras te aventajan, ni los probás...

Deglutir con moderación, de preferencia acompañado por una buena taza de chocolate caliente o con el mate que a todo el mundo le gusta tanto.



Ah... ¿qué?... ¿la grappamiel?... No sé a ustedes, ¡pero a mi me gusta tomármela mientras preparo los pasteles! :-)

Bon apéttit!

miércoles, 6 de agosto de 2008

Tutorial: Expandir una imagen de disco de Windows (para usar en XEN)

Como estoy terminando algunos programas que estuve haciendo en Visual Basic 6 (no se rían, era la forma más rápida de hacer esos programas para que funcionaran en cualquier cosa que fuera superior a Windows 98 sin sudar demasiado y sin tener que acudir a las "nuevas tecnologías" de M$) y para poder probarlos, tuve que dedicarle espacio a algunas imagenes de disco con Windos dentro de mi XEN.

La cosa venía bien... asigné 10 GB. a Windows 2000/98, 10 a XP y otros 10 a Vista... pero por lo que pude ver, hice algún cálculo mal, porque resulta ser que al tercer día de tener Vista apenas funcionando, se engulló los 10GB y empezó a escupir popups exigiendo espacio, como comilón en espeto corrido...

Y así fué que, como siempre, tuve que acurrir al pingüino para salvar al engendro de Redmond.

Tutorial: Expandir una imagen de disco de Windows (para usar en XEN)

Primero, hacemos una copia de la imagen, para trabajar sin miedo de destruir nuestra instalación. Cualquier desastre posterior se resuelve volviendo a copiar el respaldo de la imagen original y levantando la máquina virtual nuevamente.

ishtar:/storage/xen/images # cp vista.img vista.img.backup
ishtar:/storage/xen/images # ls -la
total 33999252
drwxr-xr-x 3 root root 4096 Aug 5 09:40 .
drwxr-xr-x 3 root root 4096 Jul 20 19:43 ..
-rw------- 1 root root 10737418240 Aug 4 20:37 vista.img.backup
-rw------- 1 root root 10737418240 Aug 5 10:19 vista.img
-rw------- 3 root root 10737418240 Jul 20 19:45 win2k.img
-rw------- 1 root root 10737418240 Aug 4 00:18 xpx64.img
-rw------- 1 root root 10737418240 Aug 3 03:19 xp.img
ishtar:/storage/xen/images #

Luego, usamos el multifacético y carismático "dd" para expandir el tamaño de la imagen a 20GB (supongo que le alcanzará...):

ishtar:/storage/xen/images # dd if=/dev/zero of=vista.img seek=20000 obs=1M
count=0
0+0 records in
0+0 records out
0 bytes (0 B) copied, 3.9378e-05 s, 0.0 kB/s
ishtar:/storage/xen/images # ls -la vista.img
-rw------- 1 root root 20971520000 Aug 7 10:39 vista.img
ishtar:/storage/xen/images #

A estas alturas, el archivo de imagen posée el tamaño deseado, que son cerca de 20Gb. Los parámetros seek=20000 y obs=1M definen desde donde vamos a empezar a escribir en el archivo que estamos modificando (algo así como 20000 MB. adelante), lo cual evita que sobreescribamos el contenido de la imagen. El hecho de haber utilizado count=0 solo asegura que en realidad no escribamos nada en el archivo, sino que solamente hagamos que "dd" cambie el límite final del mismo para que quede del tamaño deseado (y por eso sale el mensaje final que dice 0 bytes (0 B) copied.

Ahora solo resta terminar la manipulación iniciando la máquina virtual y utilizando las herramientas del sistema para extender el volúmen al nuevo tamaño total disponible. Podríamos intentarlo con otras herramientas, pero la experiencia dicta que es mejor hacer que el mismo Windos se encargue del trabajo sucio, ya que él sabe mejor de qué se trata.

Mi máquina virtual con Windows Vista Business Edition, se llama "bosta" (in Uruguay, it means "cow shit", a synonym of your "bull shit"... sorry Bill, I couldn't resist...).

ishtar:/storage/xen/images # xm create bosta
Using config file "/etc/xen/vm/bosta".
Started domain bosta
ishtar:/storage/xen/images #

Una vez que la máquina virtual se inicia, vamos al Panel de control (Control Panel), luego a las Herramientas administrativas (Administrative tools), después al Administrador de equipos (Computer Management), y dentro del mismo, vamos a Almacenamiento (Storage). Allí veremos el disco del sistema, con una capacidad total de cerca de 20 GB., y si entramos a sus propiedades, tenemos dentro la partición de 10 GB. actual.


Aquí seleccionamos la partición actual, le hacemos click con el botón derecho y seleccionamos en el menú contextual la opción Expandir volúmen (Extend Volume):


Aparecerá un amistoso asistonto que nos guiará por el proceso de expansión. En un momento dado, el asistente pregunta cuanto del espacio disponible del disco deseamos utilizar. En mi caso, le dije que utilizara todo el espacio disponible para expandir la partición principal del sistema.


Una vez terminado el proceso (que dura algunos segundos), el asistente termina y nos deja con la partición extendida al tamaño que hallamos definido. Es una buena idea revisar que el resto de las propiedades que dicha partición tenía, siguen ahí. Si no es el caso, posiblemente tengamos que arrancar de nuevo con la copia que dejamos como respaldo. De cualquier otro detalle nos daremos cuenta al intentar reiniciar la máquina virtual, y en ese caso, talvés tengamos que recurrir al "intuitivo" comando bcdedit para lograr que nuestro Vista vuelva a bootear.


Por último, es una muy buena idea programar un chequeo de disco durante el siguiente reinicio, solo como una forma de asegurarnos que todo sigue como esperamos una vez que reiniciemos el sistema. Como administrador unix/linux, sé que esto es realmente una mera formalidad probablemente fútil, dado que si algo falla en un filesystem NTFS, probablemente sea una buena idea organizar el sepelio del mismo, y de toda la información que aguardaba feliz a ser vista nuevamente una vez que todo este asunto terminara.


Si todo salió bien, apenas arranque la máquina virtual nuevamente, se chequeará el disco y se revisará que todo está donde debe estar. ¡Otra vez Victoria!.

Otro día les escribo un tutorial de cómo montar y manejar particiones contenidas en imágenes de disco como las que estoy usando. Pero como dice Robert S. Howard, "That's another story" :-)

Happy hacking!

miércoles, 30 de julio de 2008

El "cable" de la costa

En la Ciudad de la Costa, hay una sola empresa de TV por Cable. Supuestamente, habría "otra", pero si bien todos la ven al pasar, nunca se presentó en ningún lado, y por lo que se dice, es el "mismo perro con otro collar".

Además de tener una de las tarifas más caras del Uruguay (si no la más cara), tienen la deplorable costumbre de cortar las tandas publicitarias originales de algunos canales (FOX, A&E, etc.) para insertar su propia tanda publicitaria (invariablemente, siempre presentan una propaganda de su servicio "digital", más alguna pauta de algunos comercios de la zona), la cual además de estar en un volúmen de audio bastante más alto que el del canal original, a veces termina DESPUÉS que la tanda del canal, con la consiguiente pérdida de partes del programa que estén dando en ese momento.

No me malentiendan, dá lo mismo una tanda que otra (sobre todo cuando la tanda original está pensada para público de Chile, Argentina o Colombia), lo que sí me molesta es que la tanda termine en cualquier momento, haciendo que pierda alguna escena de la película o serie que estén pasando. No niego tampoco que no me agrada que modifiquen las tandas publicitarias originales, pero ya es una cuestión de ética, y no necesariamente me preocupa demasiado, ya que no tengo interés en defender a dichos canales de algo de lo que en realidad ellos mismos no se defienden, ya sea porque no saben que sucede o porque no les interesa.

Imagino que son tiempos duros para las empresas que trafican con medios de comunicación que manejan señales de alquiler, así que hay que obtener la mayor cantidad de beneficios posibles, incluso si eso significa exprimir doblemente a los clientes.

Menos mal que tengo una buena colección de películas para ver (y volver a ver si me pierdo algo...), así no siento que me están tomando el pelo de manera tan contundente.

:wq

lunes, 28 de julio de 2008

openSuSE 10.3 en la Toshiba R505...

Después de probar Ubuntu 7.10 durante algunos días en mi nueva notebook, y fallar en hacer algunas cosas simples que uno espera que funcionen en un sistema operativo para usuarios, decidí instalar openSuSE 10.3...

No es culpa de Ubuntu en realidad, sino de las rarezas del hardware y de las compañías que no publican las especificaciones del mismo para hacerlas accesibles a los hackers que se dedican a hacerlas funcionar en los sistemas abiertos.

Y bueno, como estoy acostumbrado a SuSE, decidí intentarlo antes de declarar al Toshiba "machina non grata" para linux.

Luego de instalar el openSuSE 10.3, decidí ver qué secuelas quedarían de la instalación... De todo el hardware del notebook, las cosas que no quedaron andando de una fueron la lectora de tarjetas SD (normalmente, uno inserta la tarjeta y el sistema simplemente la detecta y la monta, dejando un acceso directo en el escritorio. En este caso en particular, la tarjeta no era detectada...) y las teclas de funciones especiales (las cuales dan acceso a la activación del bluetooth, el brillo de la pantalla, el control de volúmen de audio y otras funciones no menos importantes...). Sabiendo que es un problema típico de la implementación del ACPI del kernel de SuSE en las Toshiba, no hubo más remedio que meter mano al engendro para dejarlo usable. También decidí darle uso al lector de huellas digitales, solo para probar que se podía hacer funcionar, y para jugar un poco con él.

De las varias guías que había por ahí sobre Linux funcionando en notebooks Toshiba, ninguna me dió todas las respuestas, así que rescaté lo mejorcito que pude encontrar y entre consejos y hacks, pude hacer andar todo lo que quería.

Para que funcione el ACPI del Toshiba y las teclas de funciones, solo tuve que cargar un módulo manualmente, el cual es toshiba_acpi, aunque la tecla de activación del bluetooth no funciona de todas maneras. Por ahí leí que la razón de que no estuviera funcionando era que había un patch de Jonathan McDowell que agregaba soporte de activación del bluetooth al código del toshiba_acpi, pero no había sido aceptado para inclusión en el núcleo, así que decidí darle una probada por mi cuenta. Bajé el patch, lo apliqué y (luego de algunas pruebas y la consabida y necesaria compilación del kernel), lo instalé definitivamente.

Para resolver lo del lector de tarjetas, la solución fué modificar una sola línea del código del driver de MMC del kernel (drivers/mmc/core/core.c), en la función mmc_power_up, línea 416 (mi kernel es el 2.6.22.18-0.2-xen de openSuSE 10.3), donde dice:

  mmc_set_ios(host);

mmc_delay(2);
}

hay que cambiarlo por:
  mmc_set_ios(host);

mmc_delay(10);
}

y recompilar el módulo. Básicamente esto aumenta la espera del driver para que el lector (Texas Instruments PCIxx12 SDA Standard Compliant SD Host Controller) levante y pueda detectar la tarjeta correctamente. La solución no fué elegante (yo diría que apesta...), pero funciona. Hay que agradecerle a Pascal Terjan (de Mandriva) por el hack.

Y con respecto al lector de huellas dactilares, la solución fué más que simple. El lector, (un AuthenTec AES1610) es detectado como un simple dispositivo USB local por el sistema (mi hermano Daniel tenía razón cuando se lo pregunté...), así que solo me hacía falta algún software que lo utilizara. Para eso, bajé el fprint_demo y la libfprint del openSUSE Build Service. Después de jugar un poco con el fprint_demo (escaneando mis huellas), instalé el módulo de autenticación PAM y quedó funcionando en todo sistema que pida autenticación. Ahora, solo tengo que pasar mi dedo por el scanner y ya estoy adentro :-)

Por supuesto que eso aumenta la probabilidad de que me asalten y se lleve mi notebook y... mi dedo, así que mejor vuelvo a como estaba antes... no sea cosa de que a algún gracioso se le dé por hacer de "malo de película de Tarantino" y me corte un dedo por andar probando pavadas...

Como no me acostumbré al maldito TouchPad todavía (ni pienso acostumbrarme...), decidí comprar un ratón decente haciendo juego con el equipo (seguí el consejo de mi señora), así que ahora tengo un Logitech Laser V400 (inalámbrico, funcionando a 2.4 GHz.), el cual si bien no responde todo lo bien que se esperaría (tiene algunos delays cuando uno lo deja dormido durante un momento), por lo menos se comporta bien y lee en casi cualquier superficie (lo cual era uno de los temas álgidos en cuanto a mi historial de uso de ratones...).

Y bueno, ahora sí creo que no voy a hacer más cambios y voy a dedicarme a USAR el notebook... ya que hace días que está en mis manos como ratón de laboratorio y no me ha sido demasiado útil todavía.

Auf wiedersehen!

viernes, 25 de julio de 2008

¡Feliz día del sysadmin!

A todos aquellos que trabajan en sistemas, vaya mi más sincero saludo por su día.

Los "lusers" nos nos aprecian demasiado y nos tratan como si tuvieramos la culpa de todo lo malo que pasa en el mundo, pero igual sabemos que sin nosotros, el mundo entero no estaría funcionando como funciona en este momento. El trabajo de muchas personas depende de lo que hacemos cada día.

Así que cada vez que un usuario presiona el botón "Enviar y recibir", o ingresa una URL en su navegador, o usa su celular para enviar o recibir un SMS, o chatea con algún pariente en el exterior, o hace cualquier cosa que involucre una computadora (en algún lugar recóndito y no siempre visible), debería acordarse de que eso funciona porque nosotros hacemos lo que hacemos.

¡Feliz día del sysadmin!

EOF

miércoles, 16 de julio de 2008

¡Nació Tatiana!

A las 3:33 de la madrugada de hoy, 15 de Julio de 2008 (el mismo día del cumpleaños de mi abuelo Pepe), nació mi segunda hija, Tatiana.


Pesó 4.070 gramos y midió 51 centímetros. ¡Casi nada de paquetito UDP! :-)

Todos los miedos y dudas se disiparon al fin, ya que era un embarazo que tenía algunas complicaciones potenciales y un historial de cuidados.

Fué tán rápido todo, que me lo perdí... Fuí a ponerme el "traje de papá" al vestuario, y cuando trataba inutilmente de abrir el grifo del lavamanos, vino alguien y me llamó "vení, entrá...." y cuando entré a la sala de parto, Tati ya estaba arriba de la madre pidiendo de comer, preguntándose que había sido eso del "tunel y la luz"...

Por suerte todo está bien, ella es sanita y está alimentándose normalmente, gracias a ese extraño sentido del que nos hacemos acreedores cuando venimos a este mundo. La naturaleza es sabia, dicen por ahí, ¡y qué razón tienen!

Igual Tati no se va a sentir tan sola, además de a sus papis, también tiene una hermanita que la quiere y que la va a cuidar siempre. Valeria, a pesar de sus miedos y las expectativas que se crearon alrededor de la "hemanita", la recibió con los brazos abiertos y hasta la colmó de besos y de mimos. Esperemos que prospere y perdure esta demostración de amor y cariño, incluso cuando aparezcan las disputas territoriales y de bienes adquiridos (léase "cuarto" y "juguetes", respectivamente) a los que se enfrentan esos pequeños salvajes que son los hijos.


Estoy feliz de que todo haya salido bien y que ahora hayamos completado nuestra familia. Todavía quedan muchas cosas por pasar, pero siento que de alguna manera se cerró otra etapa y se abrió una nueva, tán interesante y desafiante como las anteriores.

Prometo hacer lo posible por ser un buen papá.

¡Bienvenida a la familia, Tati!

sábado, 12 de julio de 2008

Mi nuevo notebook...

Hace unos meses, publiqué un post donde comentaba lo que me parecía que era la notebook perfecta. El único detalle que le encontré, era el peso. Con 8.4 libras (3.8 kilogramos), la portabilidad es un asunto limitante. Ya tengo experiencia cargando con ese peso, ya que mi vieja Toshiba Tecra CDT-730 pesaba mas o menos lo mismo.

Como me decidí por tener algo más portatil que otra cosa, pedí una máquina funcional, pero lo más portatil que fuera posible. Y bueno... me recomendaron la Toshiba Portégé R505-SP9018, así que seguí la recomendación y acá la tengo.

No me puedo quejar, con 790 gramos de peso, la portabilidad es máxima. Ya tengo linux funcionando y voy a aprovechar las capacidades de virtualización para poder correr otros sistemas operativos menos agraciados (como windos, y esas cosas...) dentro de XEN.

Lo único que tengo que decir en contra de este bichito es que no me acostumbro al maldito touchpad, así que voy a conseguirme un ratón standard USB (aunque mi señora me dijo que comprara uno inalámbrico, porque uno con cable no combina con el equipo...), pero no me gustan demasiado las cosas inalámbricas... Algo se me vá a ocurrir.

Por lo pronto, tengo algo portable y usable, y la verdad, no envidio a los snobs que siguen adorando a la Macbook Air ;-)

EOF

lunes, 30 de junio de 2008

Buenas y malas

El mundo está loco, eso ya lo sabíamos. Lo que no sabíamos era que las cosas buenas no son realmente buenas y las malas tampoco son realmente malas. Una serie de noticias que he recibido ultimamente me dieron algo sobre lo qué reflexionar:

1) La suba de los combustibles a nivel mundial es catastrófica. Las bolsas financieras en Wall Street están decayendo (Nasdaq y Dow Jones están en caída libre) y la gente ha perdido la confianza en los negocios y el mercado. Esa es la parte mala, pero lo bueno es que la gente empezó a dejar de utilizar sus vehículos personales y se ha volcado al transporte colectivo, además de que viajan menos (CNN). No produciéndose un colapso en los servicios de transporte, esto representa una mejora en el medio ambiente, dado que hay menos emanaciones de gases tóxicos a la atmósfera. Es divertido escuchar a los yankees preocupados por el medio ambiente ahora, aunque en realidad es una mera excusa de moda para justificar el hecho de que no viajan en sus propios autos porque el precio del combustible los está matando. Como para tantas otras cosas, hizo falta que les tocaran el bolsillo para que se hicieran ecologistas.

2) Durante milenios el hombre ha tratado a la muerte como un proceso natural e inevitable, pero ahora resulta que Aubrey de Grey ha logrado en base a la perseverancia, que se considere seriamente al envejecimiento como una enfermedad con posibilidad de ser curada, y hasta consiguió fondos para fundar una organización que estudie el proceso y lo combata (Wired). Esta es la parte buena, la mala es que ya hay por ahí gente preocupada por las implicaciones morales, religiosas y existenciales derivadas de la posible inmortalidad del ser humano. Hasta hay quienes se empiezan a preguntar si los políticos van a pronunciarse a favor o en contra de semejante desarrollo, como si realmente tuvieran el derecho a hablar por todos los seres humanos y como si no se tuviera el derecho público a reclamar de ellos un pronunciamiento acorde al sentir y a la decisión de la mayoría. Bueno, sabemos que en las decisiones importantes los "juan", los "pedro" y los "pepito" no tenemos voz ni voto, pero ¿quien puede decir que no vale la pena la vida lo suficiente como para dejar que un monton de políticos decida sobre el futuro de la misma? (no me hagan caso, ya saben lo que opino de los políticos)

3) Se ha desarrollado un nuevo par base de DNA sintético (3FB, 3FluoroBenceno), lo cual es algo así como inventar el replicador de alimentos de Star Trek. Ya se habían desarrollado pares base artificiales antes, pero la diferencia de este es que puede ser replicado por intermedio de la polimerasa común (la misma que replica los pares base existentes, citosina, guanina, tiamina y adenina) con una exactitud muy buena (el margen de error es de uno cada diez millones de pares base copiados, lo cual no tiene precedentes). Este avance permitió expandir el DNA de forma artificial, posibilitando desde el marcado de materiales orgánicos (para reconocimiento), pasando por nanoestructuras complejas (maquinaria orgánica nanoscópica), hasta desarrollos de organismos sintéticos auto evolucionantes. Las implicaciones son increíbles... pero también cuenta esta investigación con una parte mala: este desarrollo también permite crear nuevas armas biológicas indetectables y enfermedades programables (con fecha de inicio y de expiración), así que ya se pueden imaginar lo que viene después...

No sé si ponerme triste o contento con todas estas noticias... Toda cosa positiva tiene su contraparte negativa, pero después de escuchar como la gente misma hace bandos para contrarrestar el efecto inicial de un problema o solución, uno tiende a creer que la locura humana es solo una cuestión de números: ¿Quienes son los locos? ¿Los pocos que piensan de forma distinta a la mayoría o la mayoría que piensa de forma contraria a los pocos que se comportan de manera inteligente?...

Si alguien encuentra la respuesta, que no se lo diga a nadie... de todas maneras nadie escucha.

EOF

jueves, 26 de junio de 2008

Tutorial: Pasar el SWAP a Raid

Este mes tuve unos cuantos eventos de caída de disco en varios servidores. Normalmente, no me preocuparía, dado que es relativamente normal dada la pésima calidad del hardware que se puede adquirir en Uruguay (parece que nos llega la peor basura grado "C" que se fabrica en el mundo), pero me ha pasado que uno de los equipos ha dejado de funcionar correctamente dado que el SWAP no estaba protegido por la configuración Raid, y una vez que el disco que contiene la partición explota, el SWAP de la misma deja de funcionar y el kernel empieza a comportarse como si hubiera salido un sábado a la noche con unos amigos a tomarse todo el stock de vodka y tequila de la Ciudad Vieja, así que se me ocurrió escribir este texto para entretenerme mientras reviso y arreglo los servidores que todavía pueden tener configuraciones como estas (y de paso evitarme horas de "diversión gratuíta"...).

Como espero que mis lectores sepan, el RAID (Redundant Array of Independent Disks, o Redundant Array of Inexpensive Disk, dependiendo de donde se lea) es un mecanismo que permite utilizar varios discos duros independientes en forma agrupada como si fueran uno solo, normalmente con la finalidad de obtener redundancia y tolerancia a fallos, aunque no siempre se lo utiliza con ese fin. A veces se utiliza como una forma de obtener un medio de almacenamiento de un tamaño total igual a la suma del tamaño de los discos que componen el Raid (se le denomina Raid de nivel 0), aunque este método no provée redundancia, y de hecho, no lo recomiendo.

Normalmente utilizo Raid de niveles 1, 5 y derivados de 5 (5E, 5EE, etc.) por hardware o por software, dependiendo de la plataforma de hardware que tenga a mano. Si tengo una controladora de Raid, la utilizo, y si no tengo, simplemente hago las gestiones para instalar Raid por software.

Este tutorial es una "receta" para pasar el SWAP que dejamos sin protección al raid, sin reiniciar el servidor que actualmente se encuentra en producción, bajo Linux.

Recomiendo lectura previa del Software Raid HOWTO y del Manual del mdadm, así como también de toda documentación que ilumine la ruta del iniciado y le evite males peores. No leer los manuales es garantía de desastre y de una vida sexual plagada de insatisfacciones. ¡No digan que no se los avisé!

Let the fun begins! :-)

TUTORIAL: Pasar el SWAP a Raid

Primero, chequeamos las particiones de nuestra "víctima":

root@server:~ # fdisk -l

Disco /dev/sda: 120.0 GB, 120034123776 bytes
255 cabezas, 63 sectores/pista, 14593 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes

Disposit. Inicio Comienzo Fin Bloques Id Sistema
/dev/sda1 * 1 7 56196 83 Linux
/dev/sda2 8 138 1052257+ 82 Linux swap / Solaris
/dev/sda3 139 14592 116101755 fd Linux raid autodetect

Disco /dev/sdb: 120.0 GB, 120034123776 bytes
255 cabezas, 63 sectores/pista, 14593 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes

Disposit. Inicio Comienzo Fin Bloques Id Sistema
/dev/sdb1 1 7 56196 83 Linux
/dev/sdb2 8 138 1052257+ 82 Linux swap / Solaris
/dev/sdb3 139 14592 116101755 fd Linux raid autodetect

Disco /dev/md0: 118.8 GB, 118888071168 bytes
2 cabezas, 4 sectores/pista, 29025408 cilindros
Unidades = cilindros de 8 * 512 = 4096 bytes

El disco /dev/md0 no contiene una tabla de particiones válida
root@server:~ #

Como puede verse, tenemos dos discos idénticos de 120GB, con una partición de 54MB al principio, una partición de 1GB al medio (el SWAP) y una partición de Raid de 118GB al final. Las últimas dos particiones forman parte de una unidad de Raid L1, denominada /dev/md0.

La idea es convertir estas dos particiones de SWAP separadas en una única unidad de Raid L1, la cual pasará a ser luego el SWAP. La única desventaja de esta modificación es que actualmente el servidor cuenta con dos particiones de SWAP independientes, cada una de 1GB, lo cual resulta en un total de 2GB de SWAP efectivo, y cuando hagamos el cambio, asumiendo que vamos a usar Raid L1, el espacio de SWAP disponible quedará reducido a la mitad. Normalmente, esto no resulta ser un problema, y de hecho, es preferible a que el sistema falle porque el disco donde estaba el SWAP aterrizó... así que vamos a ejecutar el procedimiento de todas maneras.

root@server:~ # df -h
S.ficheros Tamaño Usado Disp Uso% Montado en
/dev/md0 109G 90G 14G 87% /
tmpfs 474M 0 474M 0% /dev/shm
/dev/sda1 54M 8,6M 42M 18% /boot
root@server:~ # free
total used free shared buffers cached
Mem: 513740 506508 7232 0 65480 142272
-/+ buffers/cache: 298756 214984
Swap: 2104514 297205 1807309
root@server:~ #

Por lo visto, el uso es intenso, así que tenemos que ser precavidos en lo que vamos a hacer a continuación, ya que es importante evitar consumir todo el espacio disponible con la maniobra de manipulación del SWAP necesaria para poder convertir las particiones a su nuevo formato.

Para lograr esto, debemos crear un archivo vacío que utilizaremos como SWAP temporal, evitando así que el servidor quede sin memoria virtual mientras trabajamos en la conversión de las particiones.
root@server:~ # dd if=/dev/zero of=/swap.tmp bs=1G count=1
1+0 registros leídos
1+0 registros escritos
1073741824 bytes (1,1 GB) copied, 20,356 seconds, 52,7 MB/s
root@server:~ #

Luego, convertimos este archivo en SWAP y lo activamos. Esto agregará más SWAP a la cantidad que tenemos declarada actualmente.
root@server:~ # mkswap /swap.tmp
Configurando espacio de intercambio versión 1, tamaño = 1073737 kB
root@server:~ # swapon /swap.tmp
root@server:~ # free
total used free shared buffers cached
Mem: 513740 506508 7232 0 65480 142272
-/+ buffers/cache: 298756 214984
Swap: 3153082 297205 2855877
root@server:~ #

Ahora, procedemos a desactivar el SWAP que brindan las particiones standard, de manera de poder manipularlas sin destruir el servidor... (créanme, si se manipulan las particiones de SWAP estando activas, el servidor explota). Tengan paciencia, la desactivación del SWAP puede llevar algunos segundos, dado que se transvasa toda la información activa en el SWAP a memoria central y se swapea hacia el nuevo espacio disponible cuando se hace necesario.
root@server:~ # grep "swap" /etc/fstab
/dev/sda2 swap swap pri=42 0 0
/dev/sdb2 swap swap pri=42 0 0
root@server:~ # swapoff /dev/sda2
root@server:~ # swapoff /dev/sdb2
root@server:~ # free
total used free shared buffers cached
Mem: 513740 506508 7232 0 65480 142272
-/+ buffers/cache: 298756 214984
Swap: 1048568 0 1048568
root@server:~ #

Ahora que tenemos las particiones de SWAP desactivadas, podemos proceder a la manipulación de las mismas para convertirlas en una unidad de Raid L1. Tenemos que cambiar el tipo de partición con fdisk, lo cual se hace en un momento.
root@server:~ # fdisk /dev/sda

El número de cilindros para este disco está establecido en 14593.
No hay nada malo en ello, pero es mayor que 1024, y en algunos casos
podría causar problemas con:
1) software que funciona en el inicio (p.ej. versiones antiguas de LILO)
2) software de arranque o particionamiento de otros sistemas operativos
(p.ej. FDISK de DOS, FDISK de OS/2)

Orden (m para obtener ayuda): p

Disco /dev/sda: 120.0 GB, 120034123776 bytes
255 cabezas, 63 sectores/pista, 14593 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes

Disposit. Inicio Comienzo Fin Bloques Id Sistema
/dev/sda1 * 1 7 56196 83 Linux
/dev/sda2 8 138 1052257+ 82 Linux swap / Solaris
/dev/sda3 139 14592 116101755 fd Linux raid autodetect

Orden (m para obtener ayuda): t
Número de partición (1-4): 2
Código hexadecimal (escriba L para ver los códigos): fd
Se ha cambiado el tipo de sistema de la partición 2 por fd (Linux raid autodetect)

Orden (m para obtener ayuda): w
¡Se ha modificado la tabla de particiones!

Llamando a ioctl() para volver a leer la tabla de particiones.

ATENCIÓN: La relectura de la tabla de particiones falló con el
error 16: Dispositivo o recurso ocupado.
El núcleo todavía usa la tabla antigua.
La nueva tabla se usará en el próximo reinicio.
Se están sincronizando los discos.
root@server:~ #

Como puede verse, la manipulación terminó con un error 16, lo cual es normal para un sistema que está en funcionamiento, pero esto no es un problema real, dado que sin importar el tipo de partición que se utilice, el formato interno de la partición es lo que realmente define el tipo de la misma, así que el hecho de que el BIOS crea que sigue teniendo una partición de tipo SWAP es totalmente irrelevante.

Procedemos entonces a ejecutar la misma acción sobre el otro disco, hasta que las dos particiones están preparadas para formar parte del raid.
root@server:~ # fdisk /dev/sdb
[...]
root@server:~ # fdisk -l 2>/dev/null | grep "/dev/sd.2"
/dev/sda2 8 138 1052257+ fd Linux raid autodetect
/dev/sdb2 8 138 1052257+ fd Linux raid autodetect
root@server:~ #

Ahora, consultamos la tabla de estado del raid por software del kernel para verificar la configuración y para obtener el nombre de la próxima unidad (seguramente va a ser /dev/md1, pero es imperativo serciorarnos antes).
root@server:~ # cat /proc/mdstat
Personalities : [raid1]
md0 : active raid1 sdb3[1] sda3[0]
116101632 blocks [2/2] [UU]

unused devices:
root@server:~ #

Y finalmente procedemos a crear la unidad de raid correspondiente, para lo cual utilizaremos el comando mdadm (del cual recomiendo leer el manual antes de hacer nada de esto...).
root@server:~ # mdadm --create /dev/md1 --raid-devices=2 --level=1 /dev/sda2 /dev/sdb2
mdadm: array /dev/md1 started.
root@server:~ #

Para confirmar el funcionamiento, volvemos a consultar la tabla de raid del kernel, mediante la cual comprobamos que la nueva unidad está siendo sincronizada. A pesar de no tener nada adentro (o tener más bien restos de basura), la sincronización se realiza siempre que se cree o regenere una unidad de raid.
root@server:~ # cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 sdb2[1] sda2[0]
1052160 blocks [2/2] [UU]
[=>...................] resync = 9.9% (104448/1052160) finish=0.6min speed=26112K/sec
md0 : active raid1 sdb3[1] sda3[0]
116101632 blocks [2/2] [UU]

unused devices:
root@server:~ #

De hecho, sin importar el formato interno de la unidad una vez generada, si corrompemos el filesystem de la misma, la unidad de raid no se quejará ni dará ningún aviso, ni al usuario ni al sistema, dado que su trabajo es conservar en sincronía las particiones que forman parte de la misma, y no le interesa la consistencia de los datos almacenados internamente en el filesystem que la ocupa.

Esto parece algo malo, pero la realidad es que es el filesystem el que se debe ocupar de la consistencia de la información, NO la unidad de raid. Hay que tener eso en cuenta cuando se manipulen datos contenidos en unidades de este tipo.

Y bien, una vez que se termina la sincronización de las particiones, la unidad queda utilizable, con lo cual el próximo paso es formatear la nueva unidad para que pueda utilizarse como SWAP.
root@server:~ # cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 sdb2[1] sda2[0]
1052160 blocks [2/2] [UU]

md0 : active raid1 sdb3[1] sda3[0]
116101632 blocks [2/2] [UU]

unused devices:
root@server:~ # mkswap /dev/md1
Configurando espacio de intercambio versión 1, tamaño = 1077407 kB
root@server:~ #

Luego, procedemos a activar el nuevo espacio de SWAP y a desactivar el SWAP temporal que dejamos en su lugar. Esto puede demandar algunos segundos también si hay algo swapeado (en este caso, no hay uso del SWAP, así que será inmediato).
root@server:~ # swapon /dev/md1
root@server:~ # free
total used free shared buffers cached
Mem: 513740 506508 7232 0 65480 142272
-/+ buffers/cache: 298756 214984
Swap: 2104417 0 2104417
root@server:~ # swapoff /swap.tmp
root@server:~ # free
total used free shared buffers cached
Mem: 513740 506508 7232 0 65480 142272
-/+ buffers/cache: 298756 214984
Swap: 1052160 0 1052160
root@server:~ # rm /swap.tmp
root@server:~ #

Ahora, modificamos el /etc/fstab para reflejar los cambios en la estructura de SWAP del sistema, reemplazando las entradas que están en amarillo:
/dev/md0             /                    ext3       acl,user_xattr        1 1
/dev/sda2 swap swap pri=42 0 0
/dev/sdb2 swap swap pri=42 0 0

/dev/sda1 /boot ext2 acl,user_xattr 1 2
devpts /dev/pts devpts mode=0620,gid=5 0 0
proc /proc proc defaults 0 0
usbfs /proc/bus/usb usbfs noauto 0 0
sysfs /sys sysfs noauto 0 0

por la que está en verde abajo:
/dev/md0             /                    ext3       acl,user_xattr        1 1
/dev/md1 swap swap pri=42 0 0
/dev/sda1 /boot ext2 acl,user_xattr 1 2
devpts /dev/pts devpts mode=0620,gid=5 0 0
proc /proc proc defaults 0 0
usbfs /proc/bus/usb usbfs noauto 0 0
sysfs /sys sysfs noauto 0 0

Para finalizar, y por el bien de la humanidad, del sysadmin olvidadizo y del feliz reboot del servidor, es bueno generar un nuevo /etc/mdadm.conf que refleje los cambios que se han hecho:
root@server:~ # echo "DEVICES /dev/sda2 /dev/sdb2 /dev/sda3 /dev/sdb3" > /etc/mdadm.conf
root@server:~ # mdadm --detail --scan >> /etc/mdadm.conf
root@server:~ # cat /etc/mdadm.conf
DEVICES /dev/sda2 /dev/sdb2 /dev/sda3 /dev/sdb3
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=7c42bfff:4e68b0d2:578afc87:e3831721
devices=/dev/sda2,/dev/sdb2
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=685b0678:9856ccff:50e357fc:db560963
devices=/dev/sda3,/dev/sdb3
root@server:~ #

Con lo cual cerramos este tutorial finalmente, con la tranquilidad y la satisfacción de haber hecho un buen trabajo y de no haber dejado pendiente un problema de esos que te suelen producir el ya consabido síndrome del sysadmin.

Enjoy! :-)

:wq

martes, 17 de junio de 2008

Ser "amo de casa" no es fácil...

Hace unos días que mi señora está en cama, haciendo reposo absoluto. El tema del embarazo viene bien (viene en camino mi segunda hija, Tatiana), pero resulta que como tuvimos una falsa alarma hace unos días, el médico recomendó quietud.

Y bueno, desde hace unos días vengo intentando llevar adelante mi trabajo de todos los días y además, hacer los deberes domésticos...

Cocinar es algo que se me dá bastante bien (bueno, no es por exagerar, pero nadie se queja de lo que come en mi casa, salvo del picante, algo que me encanta darle a la comida, y además es raro que no se oigan vitoreos y aplausos al cocinero... :-) ), así que no tengo demasiados problemas con eso.

Pero muchas otras cosas son un problema, talvéz salvando los utensillos de cocina. Lo peor que puede pasar con ellos es que se ensucien, así que con lavarlos alcanza. Hay un buen detergente y una esponja, y para eso no hay que ser científico de la Nasa o gurú de la domótica... Lo único preocupante es la frecuencia con la que quedan nuevamente en estado de "lavame o no me toques". Con las comidas "standard" del día, más vale que tengas tiempo de lavar o que tengas un gran juego de cubiertos disponible. Pero fuera de eso, es un asunto relativamente fácil de resolver.

Mi primer problema de importancia fué con la lavarropa. Me habían dicho que era "programable", pero resulta que no tiene accesible ninguna interfaz de comandos donde ingresar el "programa". Tampoco hay un puerto USB, ni conector ethernet, ni un slot para tarjetas SD, ni un puerto de consola, ni una mísera disquetera... Busqué el manual a ver si traía una interfaz inalámbrica, pero resulta que tampoco decía nada de eso ahí (talvéz debí ejecutar un grep "wireless" en lugar de un grep "802.11" sobre el archivo del manual... ). Como no tiene acceso de red, no me molesté en buscar nada sobre SNMP, Telnet o RPC, así que mi consulta resultó desconcertántemente fallida. Por ahí recuerdo haber leído que Java se había inventado con la idea de programar electrodomésticos, pero resulta que al día de hoy, Java se usa para cualquier cosa, menos para los electrodomésticos...

En lugar de algo "manejable", resulta que la lavarropas tiene una interfaz gráfica (GUI, para los conocedores) que tiene una miríada de luces indicadoras y unos botones que permiten especificar una serie finita de combinaciones llamadas "modos de lavado" (A.K.A. "programas", por lo menos según lo entienden las "amas de casa"), así que habiendo encontrado entonces una explicación a lo de la programabilidad de dicho dispositivo, decidí hacer uso de mis conocimientos de álgebra booleana, y al fín pude lavar la ropa.

Por supuesto que tuve que desarrollar otras habilidades, como por ejemplo la "clasificación de la ropa", una tarea basada en técnicas de lógica difusa y que requiere especial concentración y un entendimiento profundo de los tejidos con los cuales se fabrican las prendas de vestir. La dosificación del jabón de lavar y la decisión sobre qué nivel del agua es necesario para cierto lavado también son tareas complejas.

Si bien sé de memoria el alfabeto fonético de la Otan para comunicaciones por radio y puedo descifrar sin problemas un listado de reglas de firewalling con iptables, se me hizo bastante complicado recordar y entender los símbolos que suelen venir en las etiquetas que indican el tipo de lavado apropiado para una prenda en particular, sobre todo por lo contradictorio de algunas de las instrucciones. Por ejemplo, hay uno que especifica "no lavar con agua" (¿se lava con alcohol?), y otro que significa "acepta solo blanqueador sin cloro" (¿lo lavo en pintura para cielorrasos?), e incluso uno que indica "igual al anterior" (¿a qué "anterior" se referirá?... solo tengo "uno"). Evidentemente, se trata de símbolos pensados para un género sexual particular de la especie humana cuyo comportamiento resulta también a veces contradictorio, así que asumo que no se tratan de instrucciones para mi persona. Olímpicamente obvié toda instrucción que no fuera evidente, simple y directa, como todo buen macho debe hacer.

Pero no todo termina ahí. Luego del lavado viene otra serie de tareas relacionadas, como el "colgar la ropa". Aprendí que ciertas prendas se doblan desde afuera hacia adentro para que la parte interior quede a la intemperie, evitando así que los rayos solares desluzcan el color en el exterior de las mismas. También se hace antes de meter algunas prendas a lavar, para evitar que se llenen de pelusas de otras prendas o para evitar no sé qué otros males que suelen sufrir las prendas durante el lavado. No todo es tán simple.

Y bueno, mientras colgaba la ropa, me encontré con que la "cuerda" (un sencillo e ingenioso dispositivo creado para mantener las prendas de vestir en suspensión a escasos centímetros del suelo, evitando que entren en contacto entre sí y con el entorno que las rodea) empezó a declarar un error 28 (No space left on device), así que tuve que utilizar técnicas de compresión para reacomodar lo faltante. Pero apenas saboreaba la victoria gracias al nuevo espacio disponible, volvió a darme error 2 (No such file or directory), asi que ejecutando un rápido diagnóstico, me dí cuenta de que era por falta de iNodos (se me acabaron los palillos...). ¡Maldición! Lamentablemente, tuve que ir a comprar más de esos anacrónicos artículos al almacén más cercano...

También está la tarea del "doblado de la ropa", un ritual arcano seguramente derivado del origami japonés, y que tiene como cometido la reconfiguración de las prendas de vestir para ser almacenadas en ficheros, de forma similar a la que se usa para almacenar archivos en un filesystem. Encuentro particularmente difíciles de acomodar las sábanas con elástico, ya que sus bordes no mantienen la coherencia y la forma de las sábanas convencionales, dificultando terríblemente la tarea del plegado.

También me preocupó un poco no tener donde anotar la posición, tamaño y privilegios de acceso de cada prenda, pero recordé que en realidad es casi innecesario cuando cada usuario tiene asignado un único repositorio en el fichero (lo cual puede representar una pesadilla subrepticia para los expertos en seguridad, dado que no hay una separación de privilegios de facto, sino virtual y opcional) y las búsquedas se realizan en forma secuencial y no usando árboles binarios o algún otro método de hashing. Confieso que tuve algunos problemas para acomodar algunas prendas y que al verme parado con una tijera frente a uno de los cajones, mi señora elevó un grito al cielo y llenó el ambiente con toda variedad de improperios desacatados, lo cual me llevó a la conclusión de que ella es definitivamente más hábil que yo en la asignación de espacio (seguro ella utiliza EXT3, y yo siento algo de vergüenza al decir que quise aplicar fragmentación FAT para reacomodar las prendas, lo cual talvéz haya iniciado el frenético estado de mi señora).

Definitivamente no es fácil esto de ser "amo de casa", y por lo visto, saber de informática no ayuda para nada...

:x

jueves, 12 de junio de 2008

BMW GINA Light Visionary Concept

Si creíste que lo habías visto todo en lo que respecta a automóviles, esto te va a hacer cambiar de idea...

BMW desarrolló un vehículo conceptual cuyo diseño es tan innovador, que parece sacado de una realidad alternativa. Su nombre es GINA (según los ingenieros, el nombre viene de "Geometry and functions In 'N' Adaptations") y es nada más y nada menos que un vehículo cuyo exterior es de un compuesto flexible (que BMW denomina simplemente "skin"), el cual puede hacer cambiar su forma mediante la reconfiguración de los tensores internos situados debajo de dicha piel.

Incluso los asientos y hasta el panel de control cambian de forma, ocultando o mostrando controles dependiendo del caso. Los faros delanteros se abren y se cierran cual ojos, y sus puertas se doblan para permitir el acceso al receptáculo interno. Las luces indicadoras pueden verse a través de la piel del auto, produciendo un efecto realmente muy llamativo.

La piel parece metal, pero se trata de una tela lycrada, la cual en si misma no es demasiado resistente, si no fuera por su endoesqueleto de metal y fibra de carbono, el cual cambia de posición mediante unos motores eléctricos internos haciendo que la aerodinámica del coche cambie a demanda.

Y nada que ver con aquella porquería de la serie Viper, que cambiaba de forma de manera totalmente imposible...

Les dejo un videíto (del sitio de BMW-web.tv) que creo que ilustra suficientemente bien el concepto.



La idea es brillante en varios aspectos, pero lástima que no pueda aplicarse en la realidad... imaginate que cualquier idiota puede acercarse a tu auto y con una simple trincheta puede convertirlo en jirones... Podría resolverse rápidamente siempre que tengas un "traje" nuevo de repuesto en la valija (el Jefe del proyecto dice que se puede poner una piel nueva en dos horas)... pero si la valija es de tela, se te pueden llevar el repuesto... bueno... esto se complica... También hay que pensar en la aislación acústica, la resistencia aerodinámica de las ondas provocadas por el flujo de aire sobre las partes de la tela que no están perfectamente tensadas a altas velocidades (un efecto que incluso la piel humana sufre), la resistencia del receptáculo y de las partes "blandas" de la cubierta en caso de colisión, y un largo etcétera, pero lo importante es que es un diseño innovador y que puede abrir nuevas puertas a varios conceptos igualmente interesantes.

Ya me imagino llevando el auto a la tintorería para lavarlo, o al sastre para hacerle chapa y pintura, o incluso quedarnos a acompañar al mecánico para que no apoye una mano llena de grasa arriba del capó...

Dejá, prefiero un auto "normal"...

EOF

martes, 10 de junio de 2008

Notificación de "té listo" por correo...(?)

Mi casa tiene dos plantas. Abajo hay un living comedor y una cocina, y subiendo una escalera con forma de caracol, están los tres dormitorios y el baño.

Mi señora trabaja en la planta baja, conectándose con su computadora a un servidor donde se aloja la aplicación con la que trabaja (un sistema de gestión accesible vía escritorio remoto). Yo trabajo arriba, en uno de los dormitorios, el cual tomé y convertí en data-center (esto es, lo llené de computadoras, cables, CDs, switches, herramientas, etc.), y normalmente mientras trabajo mantengo cerrada la puerta para evitar interrupciones y ruido ambiente.

Hace unos días, recibí un correo electrónico a través de mi cuenta de GMail que tenía el siguiente contenido:

Asunto: el te esta pronto

ya tiene azucar

Ya antes habíamos usado el Google Talk para avisarnos de ciertas cosas, para no estar subiendo y bajando la escalera, pero recibir este mensaje de correo francamente me resultó el colmo de la exageración informática.

Supongo que fué porque sé que este mail viajó desde el equipo que usa mi señora (el cual está a escasos diez metros del mío), a través de nuestro enlace de Internet hasta los servidores de Google (situados físicamente a más de 8000 kilómetros de distancia de mi casa) y volviendo de nuevo a mi equipo, utilizando una infraestructura que vale millones de dólares y que abarca sistemas distribuídos en un área geográfica de varios kilómetros cuadrados.

Todo para avisarme que tengo el té pronto esperandome en la cocina, a pasos de mi silla.

Después de tomar conciencia de semejante derroche de recursos y tecnología, le pedí a mi señora que hiciera acopio de fuerzas y utilizara señales acústicas generadas por medio de sus cuerdas vocales, a alta frecuencia y mediana potencia, como medio de propagación de toda notificación del calibre de la expresada por correo electrónico.

Me explicó que como me escuchó hablando por teléfono y no me vió conectado al GTalk, decidió mandarme la notificación por correo y no gritando, ya que el correo lo leo todo el tiempo y un grito talvéz espante a mi interlocutor telefónico. Y al final tiene razón...

Llegamos a la conclusión de que es mejor hacer uso de la tecnología. Supongo que en una casa donde hay más computadoras que gente, no está mal aprovecharse de esa infraestructura de vez en cuando.

¿No se inventó todo esto para hacernos la vida más fácil?

:wq

 
Gustavo Castro

Crea tu insignia