Mostrando entradas con la etiqueta geek. Mostrar todas las entradas
Mostrando entradas con la etiqueta geek. Mostrar todas las entradas

martes, 2 de junio de 2020

Simplified Monitoring of Patients in Situations of Mass Hospitalization (MoSimPa) - Fighting COVID-19

I have been quite absent from Debian stuff lately, but this increased since COVID-19 hits us. In this blog post I'll try to sketch what I have been doing to help fight COVID-19 this last few months.

In the beginning

When the pandemic reached Argentina the government started a quarantine. We engineers (like engineers around the world) started to think on how to put our abilities in order to help with the situation. Some worked toward providing more protection elements to medical staff, some towards increasing the number of ventilation machines at disposal. Another group of people started thinking on another ways of helping. In Bahía Blanca arised the idea of monitoring some variables remotely and in masse.

Simplified Monitoring of Patients in Situations of Mass Hospitalization (MoSimPa)


This is where the idea of remotely monitored devices came in, and MoSimPa (from the spanish of "monitoreo simplificado de pacientes en situación de internación masiva") started to get form. The idea is simple: oximetry (SpO2), heart rate and body temperature will be recorded and, instead of being shown in a display in the device itself, they will be transmitted and monitored in one or more places. In this way medical staff doesn't has to reach a patient constantly and monitoring could be done by medical staff for more patients at the same time. In place monitoring can also happen using a cellphone or tablet.

The devices do not have a screen of their own and almost no buttons, making them more cheap to build and thus more in line with the current economic reality of Argentina.


This is where the project Para Ayudar was created. The project aims to produce the aforementioned non-invasive device to be used in health institutions, hospitals, intra hospital transports and homes.

It is worth to note that the system is designed as a complementary measure for continuous monitoring of a pacient. Care should be taken to check that symptomps and overall patient status don't mean an inmediate life threat. In other words, it is NOT designed for ICUs.

All the above done with Free/Libre/Open Source software and hardware designs. Any manufacturing company can then use them for mass production.

The importance of early pneumonia detection


We were already working in MoSimPa when an NYTimes article caught or attention: "The Infection That’s Silently Killing Coronavirus Patients". From the article:

A vast majority of Covid pneumonia patients I met had remarkably low oxygen saturations at triage — seemingly incompatible with life — but they were using their cellphones as we put them on monitors. Although breathing fast, they had relatively minimal apparent distress, despite dangerously low oxygen levels and terrible pneumonia on chest X-rays.

This greatly reinforced the idea we were on the right track.

The project from a technical standpoint


As the project is primarily designed for and by Argentinians the current system design and software documentation is written in spanish, but the source code (or at least most of it) is written in english. Should anyone need it in english please do not hesitate in asking me.

General system description

System schema

The system is comprised of the devices, a main machine acting as a server (in our case for small setups a Raspberry Pi) and the possibility of accessing data trough cell phones, tablets or other PCs in the network.

The hardware


As of today this is the only part in which I still can't provide schematics, but I'll update this blog post and technical doc with them as soon as I get my hands into them.

Again the design is due to be built in Argentina where getting our hands on hardware is not easy. Moreover it needs to be as cheap as possible, specially now that the Argentinian currency, the peso, is every day more depreciated. So we decided on using an ESP32 as the main microprocessor and a set of Maxim sensors devices. Again, more info when I have them at hand.

The software


Here we have many more components to describe. Firstly the ESP32 code is done with the Arduino SDK. This part of the stack will receive many updates soon, as soon as the first hardware prototypes are out.

For the rest of the stack I decided to go ahead with whatever is available in Debian stable. Why? Well, Raspbian provides a Debian stable-based image and I'm a Debian Developer, so things should go just natural for me in that front. Of course each component has its own packaging. I'm one of Debian's Qt maintainers then using Qt will also be quite natural for me. Plots? Qwt, of course. And with that I have most of my necessities fulfilled. I choose PostgreSql as database server and Mosquitto as MQTT broker.

Between the database and MQTT is mosimpa-datakeeper. The piece of software from which medical staff monitor patients is unsurprisingly called mosimpa-monitor.

mosimpa-monitor
MoSimPa's monitor main screen

mosimpa-monitor plots
Plots of a patient's data


mosimpa-monitor-alarms-setup
Alarm thresholds setup


And for managing patients, devices, locations and internments (CRUD anyone?) there is currently a Qt-based application called mosimpa-abm.

mosimpa-abm
ABM main screen


mosimpa-abm-internments
ABM internments view

The idea is to replace it with a web service so it doesn't needs to be confined to the RPi or require installations in other machines. I considered using webassembly but I would have to also build PostgreSql in order to compile Qt's plugin.

Translations? Of course! As I have already mentioned the code is written in English. Qt allows to easily translate applications, so I keep a Spanish one as the code changes (and we are primarily targeting spanish-speaking people). But of course this also means it can be easily translated to whichever language is necessary.

Even if I am a packager I still have some stuff to fix from the packaging itself, like letting datakeeper run with its own user. I just haven't got to it yet.



Certifications


We are working towards getting the system certified by ANMAT, which is the Argentinian equivalent for EEUU's FDA.

Funding


While all the people involved are working ad-honorem funding is still required in order to buy materials, create the prototypes, etc. The project created payments links with Mercado Pago (in spanish and argentinian pesos) and other bank methods (PDF, also in spanish).

I repeat the links here with an aproximation to US$.


You can check the actual convertion rate in https://www.google.com/search?q=argentine+peso+to+us+dollars

The project was also presented at a funding call of argentinian Agencia de Promoción de la Investigación, el Desarrollo Tecnológico y la Innovación (Agencia I+D+i). 900+ projects where presented and 64 funded, MoSimPa between them.

miércoles, 7 de marzo de 2012

Entretenimiento en vuelo: volando con Emirates

Algún tiempo atrás ví un video sobre el uso de Qt en plataformas de inflight entertainment (entretenimiento en vuelo) de Panasonic:



Pensé que iba a pasar bastante hasta que viera un sistema así en vivo y en directo... arriba de un avión (lo digo porque lamentablemente no he estado pudiendo viajar mucho que digamos). La sorpresa me la dí al viajar en un vuelo de Emirates. ¡Y aún viajando en clase económica!

El sistema se llama ICE: Information, Communication and Entertainment. La verdad, desconozco si es el mismo sistema que produce Panasonic con Qt (puede que si), pero si me pareció muy bueno.

Algunas cosas que me llamaron la atención:

  • El sistema está disponible en clase económica.
  • Por el cursor, diría que corre bajo Linux (además, si fuese un sistema operativo propietario, es muy probable que le haya visto un logo en algún lado).
  • La pantalla es táctil, aunque parece resistiva por como reacciona. Creo que, en ese caso, los botones que se dibujan en pantalla deberían ser un poco mas grandes.
  • El "control remoto/joystick/horquilla de teléfono" es muy piola. Se nota que fué construído con la premisa de robustez antes que comfort al usarlo, pero es mas que entendible por la función que cumple.
  • Si bien es particular a Emirates, la selección de música me pareció excelente :-) No estuve viendo las películas en mi sistema, pero si en la de otros. Había estrenos y todo. ¡Y gratis! (bueno, uno paga el pasaje ;-) ).
  • Mi pantalla estaba pidiendo que la recalibren un poco, la parte superior era complicada para acceder con el sistema táctil.
  • El "mini joystick" para mover el cursor (similar al botoncito de las notebooks para el mismo fin) resultó muy práctico.
  • El sistema generaba mucho calor. Bastaba con girarlo un poco y poner la mano atrás para sentirlo.
  • Las vistas de las cámaras inferior y delantera del avión son geniales. Y si, están encendidas todo el tiempo, por lo que podemos ver como despegamos.
En fin, golazo para Emirates, me dejaron con una muy buena impresión mas allá del servicio, que realmente fué muy bueno también.

Por las dudas: no, no trabajo en Emirates ni Panasonic ni Qt, ni estoy relacionado con ninguno de ellos.


Y digo yo, si el sistema fuese Software Libre ¿que podría mejorar?

domingo, 25 de septiembre de 2011

Desarrollador de Debian

Ésta madrugada recibí el mail que confirma la creación de mi cuenta en los servidores de Debian. En otras palabras ¡soy DD! Tengo una alegría enorme :)

Por supuesto, no llegué hasta acá sin el invalorable esfuerzo de otras personas. Mi seguramente incompleta lista de agradecimientos va a (en orden cronológico) Marga Manterola y la muchachada entera del LugFI, Ana Guerrero,  el equipo Qt-KDE, Hauke Rahm que fué mi AM, Telma, mi novia, que me conoció y aceptó como debianita con todo lo que eso implica y a un montón de gente mas que me acompaña desde hace años.

A todos ustedes muchas gracias. Espero poder seguir siendo útil en la tarea de lograr el mejor Sistema Operativo Universal.

jueves, 4 de agosto de 2011

A veces a uno le falta teoría...

Antes que nada, no tengo formación teórica-pura de Programación Orientada a Objetos (POO). Lo que sé lo aprendí de libros varios que apuntan a enseñar programación orientada a objetos para un cierto lenguaje. Y tampoco tengo un conocimiento de compiladores+assembler lo suficiente bueno como para no estar preguntandome ésto. El lado bueno: al menos se me ocurre pensarlo :-)

Veamos éste caso:

class PublicFoo {
public:
  int mFoo;
}

Si, justo lo que no debiese hacerse en POO. Pero suponiendo que ya instancié un objeto con ésta clase y éste tuviese un valor, podría accederlo como:

PublicFoo data = new PublicFoo();
// De alguna manera se carga un dato...
int valor = data.mFoo;

Desde el punto de vista de acceso, debería ser inmediato. Si ahora usamos:

class PrivateFoo {
public:
  int foo() { return mFoo; };
  void setFoo(int foo) { mFoo = foo; };
private:
  int mFoo
}

Para obtener el valor de foo haríamos:

PrivateFoo data = new PrivateFoo();
// De alguna manera se carga un dato...
int valor = data.foo();

Lo que puede llegar a implicar que el compilador genere código para entrar en el método foo(), haciendo mas lento el acceso al valor.

Ahora, en éste otro caso:

class PrivateInlineFoo {
public:
  inline int foo() { return mFoo; };
private:
  int mFoo
}

Un acceso quizás sea tan rápido como en el primero, ya que se me ocurre que el compilador tenga el hint del inline para mejorar el acceso.

Seguramente me estoy perdiendo *mucho* a causa de mi ignorancia. Pero les cuento a que vino todo ésto: se me ocurrió pensar que pasaría si existiese una propiedad de visivilidad que permita que cualquiera acceda al valor de la propiedad de la clase para lectura, pero sólo la clase pueda modificar dicho valor. ¿sería mas "sencillo" programar?

En fin, nada mas mostrándole al mundo mis dudas e ignorancia :-)

jueves, 9 de septiembre de 2010

Paquetes semi oficiales de KDE SC 4.5.1

George Kiagiadakis envió un correo a la lista debian-kde anunciando paquetes semi-oficiales de KDE SC 4.5.1, los que se encuentran disponibles en http://qt-kde.debian.net/.

Algunos detalles mas del correo:

"Desafortunadamente no todos los paquetes están listos, por lo que puede que noten algunos faltantes. Los paquetes fuentes faltantes hasta el momento son kdeaccessibility, kdeadmin, kdegames, kdemultimedia, kdebindings, kdetoys, kdewebdev y kde-l10n como también meta-kde (el paquete kde-standard y misceláneos). A pesar de ésto pueden actualizar todo lo demás a partir de su instalación de KDE SC 4.4.5 usando las instrucciones del sitio (en inglés).

Una vez que todos los paquetes estén preparados y funcionando, planeamos liberarlos a Debian experimental. Hasta que eso ocurra, todas las actualizaciones o paquetes nuevos irán a ése repositorio.

Pedimos disculpas for el largo retrazo desde que 4.5.0 fué liberado, pero espero que entiendan las razones detrás de ésto (preparando a Squeeze para que esté listo, trabajo, vida real, vacaciones de verano, pocas personas activas en el equipo, etc...).

A toda la gente que se ofreció para ayudar: apreciamos su oferta y pedimos disculpas por la falta de documentación acorde. Empaquetar KDE SC no es una tarea fácil y normalmente le recomendamos a los recién llegados que intenten empaquetar algo mas chico primero, como algo de kde-apps.org. Intentaremos hacer las cosas mejores en el futuro, documentando mejor nuestro flujo de trabajo y políticas. Si aún quieren ayudar, como pueden ver, todavía hay trabajo por hacer. Además de empaquetar, hay otras cosas que pueden hacer, como actualizar archivos de copyright (lo que encuentro fácil, pero consume mucho tiempo).

Los mejores deseos,
George


PS: Por favor lean bien las instrucciones y por favor reporten los bugs de empaquetamiento aquí (n. del e.: en la lista debian-kde) y en irc, pero no en el sistema de seguimiento de bugs de Debian. Gracias por adelantado".

Particularmente nunca me pude dar el gusto de compilar KDE SC por mi mismo. Lo intenté un par de veces, pero mi peor enemigo es el tiempo. Y mantener paquetes para Debian tiene que ser un gusto y no una carga. Por eso encuentro la sugerencia de George de empaquetar cosas de kde-apps.org muy adecuada, en especial para los que tenemos poco tiempo ;-) ya que suelen ser programas de menor complejidad de empaquetado.

Por otro lado, si bien estoy lejos de tener muchos conceptos claros, en breve me voy a juntar con unos amigos a enseñarles a empaquetar software. Con un poco de suerte vamos a mantener una serie de paquetes, muy posiblemente relacionados con la electrónica. Espero poder generar sinergia suficiente para que ésto se expanda :-)

Ah, cabe aclarar que gran parte del trabajo para creaer los paquetes de KDE SC 4.5.1 fué realizado por George (o al menos eso tengo entendido) ¡Gracias George!

lunes, 16 de agosto de 2010

¡Feliz 17 años Debian!

Hace algunos años, un tocayo mío escribía en la lista de correo del LugFI una frase que decía algo así como "No entiendo como la gente no usa Debian". Tamaña curiosidad me agarró que, un mes antes de su release oficial, y por no tener banda ancha aún, llegaban desde Buenos Aires dos DVDs con un snapshot de Debian Sarge.

Casi siete años mas tarde, una DebConf y un montón de buenos momentos, yo mismo me hago esa pregunta.

¡¡¡Feliz cumpleaños Debian!!!


Si sentís lo mismo que yo, no dudes en decir gracias.

viernes, 30 de octubre de 2009

Extendiendo el escritorio en KDE 4

Hoy fué la primera vez que tengo a mano un monitor extra para conectarle a mi laptop y tiempo para jugar con eso. Si bien estuve buscando en la web un poco, encontré muchas soluciones que tocan el xorg.conf... y nada claro.

Con el menú de configuraciones de KDE tampoco tuve mucha suerte: cree que tengo un monitor solo con dos resoluciones :-/ (es mas que claro que mucha idea al respecto no tengo...).

Y llegué hasta xrandr:

xrandr # Veamos que es lo que tenemos disponible
xrandr --output LVDS --right-of VGA

El monitor externo está funcionando a 1024x768 en vez de a 1680x1050, pero es mejor que nada :-)

Por las dudas, la info de mi placa de video:

00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07)
00:02.1 Display controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07)


Nota 20091101 17:30 ARST: David Palacio me pasó el siguiente dato:

xrandr --output VGA --left-of LVDS --mode 1680x1050

Dicho sea de paso, también Armin Berres me sugirió que jugara con ésos parámetros.

Y con eso, problema resuelto: cada monitor con su resolución :-)
Ahora me faltaría agregar eso al código de krandr y proponer un parche...

sábado, 15 de agosto de 2009

Jornadas del Sur: el resumen que pretendió ser del día cero y terminó siendo el final

Mi intención fué bloggear día por día lo que iba viendo y viviendo.... pero no llegué :-)

Lo primero que debo hacer es felicitar públicamente a Nico y Níco (adivinen cuál es cuál. Tip: miren el acento). Cuando me contaron del proyecto lo ví muy ambicioso. Gracias a Dios me equivoqué :-)

Seguidamente pero sin quitarles mérito, al resto de los chicos del BBLug (y creo que otros también, incluyendo a GulBAC y chicos del CeCom). Se movieron un montón, y cabe destacar lo bien que reaccionaron a los imprevistos que siempre surgen en éstos casos.

En lo personal, y jugando de local, no tuve nada que ver con la organización. Eso fué por decisión propia. De hecho, no hubiese presentado una charla si MEC no hubiese mandado un mail a sus contactos pidiendo que el que pueda presente algo. Ahí fué cuando me dije: "OK, aaaalgo tengo que hacer". Menos mal. MEC, te debo una :-)

En lo que a mi respecta, ya es tarde para resumir algo mas. Encuentro con amigos y conocidos, caras familiares y no tanto. Tengo casi dos Gigas de videos y fotos para colgar. Bueno, los videos los voy a reducir.

Espero que Níco y Nico no pierdan las ganas para el año próximo :-) . Y, porqué no, alguno que se haya mantenido al costado del LUG local por el motivo que fuese y quiera empezar a participar de la comunidad, se anime a dar el primer paso.

viernes, 14 de agosto de 2009

Linux en la tostadora: una breve introducción al desarrollo de sistemas embebidos con GNU/Linux

Éste domingo doy una charla homónima a éste post en las Jornadas del Sur. La charla va a ser muy sencilla, dedicada a quellos que quieran un primer pantallazo de lo que hay que aprender para desarrollar software libre en sistemas embebidos. El material de la misma lo pueden encontrar acá.

Con respecto a las jornadas, para ser que se realizan en Bahía Blanca, no he tenido casi relación con su organización. Recién hoy por la tarde pude ir a tratar de dar una mano, para volverme medio rápido a mi casa debido a un resfrío que estoy curando...

Pero me pone muy contento ver la cantidad de logros (¡y lo que se han movido!) que han conseguido los chicos que organizan. Al igual que Marga, es mi primer contacto social en masa con otros geeks desde la DebConf 8.

Si pueden, no se las pierdan :-)

viernes, 3 de julio de 2009

Origami matemático (o de cómo lograr que gente muerta resuelva tu problema)

Robert Lang dió una charla para TED sobre el origami y las matemáticas. Lo que al principio parece un lindo juego para matemáticos termina convirtiéndose en una herramienta:


Algunas frases para destacar:

  • "Cómo lograr que gente muerta resuelva tu problema"
  • "Nuestra aplicación corre en muchas plataformas... inclusive en Windows", refiriéndose a TreeMaker... que está bajo la GPL.

miércoles, 1 de julio de 2009

Arreglando problemas de una instalación truncada de ia32-apt-get

Hoy estaba instalando ia32-apt-get en mi máquina, cuando se clavó la misma durante la generación de unas claves gpg. Cuando quise volver a ejecutar la misma, saltaba un error. Cuando quise desinstalar el paquete a medio instalar... otro error. Para colmo, no me dejaba instalar o desinstalar otro paquete. Hora de ensuciarse las manos :-)

Probé un par de cosas que se me fueron ocurriendo, y como no podía dar en el clavo, pregunté en #debian-ar. Marga tuvo la gentileza de darme una mano.

El primer error fué éste:

  1. root@tonks:/home/lisandro# aptitude install ia32-apt-get
  2. Leyendo lista de paquetes... Hecho
  3. Creando árbol de dependencias
  4. Leyendo la información de estado... Hecho
  5. Leyendo la información de estado extendido
  6. Inicializando el estado de los paquetes... Hecho
  7. Leyendo las descripciones de las tareas... Hecho
  8. No se instalará, actualizará o eliminará ningún paquete.
  9. 0 paquetes actualizados, 0 nuevos instalados, 0 para eliminar y 12 sin actualizar.
  10. Necesito descargar 0B/20,1kB de ficheros. Después de desempaquetar se usarán 0B.
  11. Escribiendo información de estado extendido... Hecho
  12. dpkg (subproceso): fallo al ejecutar dpkg-deb para extraer la información de control: No existe el fichero o el directorio
  13. dpkg: error al procesar /var/cache/apt/archives/ia32-apt-get_18_all.deb (--unpack):
  14.  el subproceso dpkg-deb --control devolvió el código de salida de error 2
  15. Se encontraron errores al procesar:
  16.  /var/cache/apt/archives/ia32-apt-get_18_all.deb
  17. E: Sub-process /usr/bin/dpkg returned an error code (1)
  18. Un paquete no se pudo instalar. Intentado recuperarse:
  19. Leyendo lista de paquetes... Hecho
  20. Creando árbol de dependencias
  21. Leyendo la información de estado... Hecho
  22. Leyendo la información de estado extendido
  23. Inicializando el estado de los paquetes... Hecho
  24. Leyendo las descripciones de las tareas... Hecho
Marga sugirió que me fije que existiera /var/cache/apt/archives/ia32-apt-get_18_all.deb, pero estaba ahí. Instalarlo a mano con dpkg -i daba el mismo error. Entonces sugirió que intentara abrir el archivo con mc. Ahí dió en el clavo que llevaría a al solución: mc se quejaba de que no existía dpkg-deb. Resulta ser que ia32-apt-get genera un divert de ése binario. Para solucionar el problema, bajé el paquete dpkg, lo descomprimí y copié los binarios a mano en donde correspondían. Esto no asegura que el sistema quede limpio, ya que no sabía en qué estado estaban los divert.

Ésto me permitió volver a intentar instalar el paquete ia32-apt-get obteniendo el siguiente resultado:

  1. root@tonks:/usr/bin# aptitude install ia32-apt-get
  2. Leyendo lista de paquetes... Hecho
  3. Creando árbol de dependencias
  4. Leyendo la información de estado... Hecho
  5. Leyendo la información de estado extendido
  6. Inicializando el estado de los paquetes... Hecho
  7. Leyendo las descripciones de las tareas... Hecho
  8. No se instalará, actualizará o eliminará ningún paquete.
  9. 0 paquetes actualizados, 0 nuevos instalados, 0 para eliminar y 12 sin actualizar.
  10. Necesito descargar 0B/20,1kB de ficheros. Después de desempaquetar se usarán 0B.
  11. Escribiendo información de estado extendido... Hecho
  12. Seleccionando el paquete ia32-apt-get previamente no seleccionado.
  13. (Leyendo la base de datos ...  00%
  14. 169299 ficheros y directorios instalados actualmente.)
  15. Preparando para reemplazar ia32-apt-get 18 (usando .../ia32-apt-get_18_all.deb) ...
  16. Desempaquetando el reemplazo de ia32-apt-get ...
  17. Configurando ia32-apt-get (18) ...
  18. gpg: no default secret key: clave secreta no disponible
  19. gpg: signing failed: clave secreta no disponible
  20. dpkg: error al procesar ia32-apt-get (--configure):
  21.  el subproceso installed post-installation script devolvió el código de salida de error 2
  22. Se encontraron errores al procesar:
  23.  ia32-apt-get
  24. E: Sub-process /usr/bin/dpkg returned an error code (1)
  25. Un paquete no se pudo instalar. Intentado recuperarse:
  26. Configurando ia32-apt-get (18) ...
  27. gpg: no default secret key: clave secreta no disponible
  28. gpg: signing failed: clave secreta no disponible
  29. dpkg: error al procesar ia32-apt-get (--configure):
  30.  el subproceso installed post-installation script devolvió el código de salida de error 2
  31. Se encontraron errores al procesar:
  32.  ia32-apt-get
  33. Leyendo lista de paquetes... Hecho
  34. Creando árbol de dependencias
  35. Leyendo la información de estado... Hecho
  36. Leyendo la información de estado extendido
  37. Inicializando el estado de los paquetes... Hecho
  38. Escribiendo información de estado extendido... Hecho
  39. Leyendo las descripciones de las tareas... Hecho

Bien, ése error era entendible: el proceso se había cortado durante la generación de las claves. Al principio pensé que se trataba de una clave general del sistema. Busqué sin suerte, hasta que me cansé y tomé por el lado sano: descomprimí el paquete ia32-apt-get y miré los scripts de instalación. Ahí encontré que las claves se generan en /usr/share/ia32-apt-get/.gnupg . El script chequeaba que las claves no existieran, para no generarlas de gusto en caso de que ya estuviesen creadas. bastó con eliminar ése directorio y finalmente pude instalar el paquete.

Pero no todo termina ahí: no sabía como estaba el divert. Para arreglar ése problema, desinstalé ia32-apt-get. Ésto hizo que se volvieran a borrar los binarios como dpkg-deb. Arreglando el problema a mano, procedí a volver a instalar ia32-apt-get. Listo, ahora todo éstá en su lugar :-)

En tódo ésto, fué primordial tener acceso al códgo fuente. Después me preguntan porqué me gusta tanto "éso del software libre" :-)

¡Mil gracias Marga!

miércoles, 17 de junio de 2009

Aprendiendo de la cola de un gecko

Gracias Geeks are sexy, me encontré con la siguiente charla de TED. ¿Alguna vez se preguntaron porqué ciertos animales tienen cola? Bueno, la respuesta me dejó muy asombrado.




Según mi madre mi mascota ideal sería un cable, yo me inclino cada vez mas por uno de éstos animalitos. Me queda ver si realmente les puedo dar un hábitat como el que se merecen.

sábado, 16 de mayo de 2009

La raíz de 3 / Root 3

Original english version below.

Éste es un poema que parece haber sido escrito por David B. Feinberg. Es sencillamente genial.

Raíz de 3 (burda traducción de mi parte)

Estoy seguro que siempre seré
Un número solitario como la raíz de tres

El tres es todo lo que es bueno y está bien
¿Porqué debe mi tres quedar fuera de vista,
debajo del vicioso signo de la raíz cuadrada?
Quisiera en cambio ser un nueve

Porque el nueve podría deshacer este truco maligno,
con nada mas que un poco de simple aritmética.

Sé que nunca veré el sol como 1.7321,
ésa es mi realidad, una triste irracionalidad.

Cuando ¡oye! ¿Qué es ésto que veo?
Otra raíz cuadrada de tres.

Mientras bailamos vals tranquilamente,
Entre los dos ahora nos multiplicamos
para formar el número que preferimos,
regocijándonos en un entero.

Nos libramos de nuestros lazos mortales
con el batir de varas mágicas

Nuestro signo de raíz cuadrada se despega
Tu amor por mí ha sido renovado.


Root 3

I’m sure that I will always be
A lonely number like root three

The three is all that’s good and right,
Why must my three keep out of sight
Beneath the vicious square root sign,
I wish instead I were a nine

For nine could thwart this evil trick,
with just some quick arithmetic

I know I’ll never see the sun, as 1.7321
Such is my reality, a sad irrationality

When hark! What is this I see,
Another square root of a three

As quietly co-waltzing by,
Together now we multiply
To form a number we prefer,
Rejoicing as an integer

We break free from our mortal bonds
With the wave of magic wands

Our square root signs become unglued
Your love for me has been renewed

David Feinberg

jueves, 5 de marzo de 2009

Un mundo holográfico para la mujer amada

Un extraño hombre construye un mundo holográfico usando imágenes de la mujer a la que ama. Posiblemente a éste video lo hayan visto en muchos lugares ya, pero contiene varias cosas que, desde mi punto de vista, hacen que valga la pena que cree un post sobre el mismo.

Es un video con muchas ideas geek, y muy romántico. No se lo pierdan.