Kamis, 06 Januari 2011

Physical Exam

Stanford's internal medicine program puts an emphasis on the physical exam. This is why.

Image shown under Fair Use, from A Cartoon Guide to Being a Doctor.

Rabu, 05 Januari 2011

Programación lúdica


Existen en la actualidad una inmensa cantidad de libros acerca de la programación. La cantidad de textos sobre cómputo se ha multiplicado de manera extraordinaria y no cabe duda que la razón de esto es la red Internet y el hecho evidente del uso de la computadora personal a todos los niveles, pero cada vez más cercana a la cotidianidad. En su mayoría, los libros de programación son finalmente libros de texto, para ser usados probablemente por profesores en sus respectivas cátedras universitarias. No obstante esto, no hay muchas obras de divulgación sobre la labor de programar. ¿Es fácil? ¿Es difícil?

La mayoría de la gente no intentará programar computadoras debido a una proverbial idea de que es demasiado complicado y que “eso” se estudia solamente en las universidades o es únicamente para especialistas y “nerds”. . Cabe señalar que además de esto, los libros sobre la enseñanza de la programación son áridos y poco atractivos para el común de los mortales. Si uno hojea dichos tratados verá temas como: “Uso de listas ligadas y doblemente ligadas”, “Caso ejemplo: programa de costos unitarios”, “Estructuras de datos dinámicas”, etc. Es claro que este tipo de tópicos hacen que muchos programadores potenciales simplemente dejen el libro en donde lo hallaron.

Sin embargo, la computación se ha hecho innecesariamente reverente y yo soy de la opinión que la diversión puede y debe estar presente cuando se programa una computadora. No todos son textos de solemnidad doctoral o software formal y serio de hojas de cálculo, procesadores de palabras o bases de datos. Afortunadamente la computación da para más que eso y en ese sentido este libro es la propuesta que bien puede ser para enseñar a programar en algún lenguaje popular o bien simplemente como una colección de ensayos sobre cómputo, ajedrez computarizado, Internet, la inteligencia artificial, etc., temas que finalmente nos son cotidianos por la relevancia que la cibernética ha cobrado en los últimos años.

Con el empeño de que la programación es de esas pocas cosas divertidas que pueden hacerse con los pantalones puestos se encaran los temas dentro de este libro. A partir de artículos que originalmente se publicaron en periódicos virtuales y reales, pero reescritos para darles forma más completa (las ideas apoyándolas con argumentos técnicos), amén de no tener las limitaciones que imperan en un artículo de 5000 caracteres, este libro pretende que el lector se introduzca al mundo de la programación y que a la larga lo motive para crear sus propios sistemas. Algunos artículos son simples reflexiones filosóficas sobre ciertos temas de interés en el mundo de la informática, otros (la mayoría), son sistemas completos que pueden ser usados por los lectores de manera libre y que contienen ideas específicas de programación.

Hoy día las mega-obras del software están hechas: hojas de cálculo, procesadores de palabras y bases de datos ya son comunes en las llamadas “suites”, paquetes completos para la productividad, impuesta por el modelo económico de occidente. Todos estos grandes esfuerzos se hicieron por enormes equipos de programación. Sin embargo, hay espacio para todo género de aplicaciones y programas menos ambiciosos pero que resuelven problemas cotidianos y que pueden ser escritos –los más complicados– en un par de semanas por una sola persona, si se trabaja lo suficiente en el problema a resolver. Puede verse así que aún hay margen para todos los programadores de fin de semana, por decirlo de manera coloquial.

El libro contiene un disco compacto (CD) (**) con todo el código fuente y programas de apoyo, así como algunas carpetas con componentes para ser usados por el lector interesado así como archivos adicionales. Así pues, no se necesita necesariamente meterse de lleno en el tema y aprender a programar a la fuerza para poder usar el contenido e información aquí descrita, aunque evidentemente no le caería nada mal hacerlo de esa manera.

A quien le interese mi libro de Programación Lúdica, puede pedírmelo a mi correo morsa@la-morsa.com y se lo enviaré en formato PDF.


(*) La portada, que ilustra este artículo, es cortesía de mi hermano Pedro, que la diseñó usando 3D Studio.
(**) El CD del que se habla en este artículo lo estoy apenas armando. Supongo que estará en un par de semanas listo.

Just For Fun

Oh, there are so many parodies of the "Major General's Song" from Gilbert and Sullivan's Pirates of Penzance. In our undergraduate premed courses, we run into Tom Lehrer's "The Elements" which is quite amusing. Recently, I found another parody by a musical duo called the Amateur Transplants entitled "The Drugs." What surprised me is that I recognized about 90% of them. (And if you're browsing youtube, "The Anesthetist's Hymn" isn't bad either).

Selasa, 04 Januari 2011

Reflexiones sobre una mesa de cristal


Un efecto gráfico interesante, que puede verse en muchos sitios web, es el de una imagen reflejada como si estuviese sobre una mesa de cristal. Creo que Apple fue quien empezó con este tipo de diseño en su página web y por lo bonito fue copiado inmediatamente. Por ejemplo, los iconos del iPod Touch/iPad y iPhone están diseñados de esta manera. Sin duda los diseñadores gráficos de Apple hacen las cosas con sobriedad y buen  gusto.



Pues bien, se me ocurrió pensar en cómo hacer el efecto de reflexión sobre una mesa de cristal. Aparentemente no puede ser muy difícil. Antes de sentarme a programar nada llegué a la conclusión que se necesita una imagen fuente, es decir, la imagen que voy a procesar. Una segunda imagen, la cual es la imagen original invertida (no rotada, porque entonces la reflexión no se cumple). Y después, un proceso que genere el efecto sobre la segunda imagen, la cual se pegará bajo la primera.

Pero ¿cuál es ese efecto? en un principio pensé que se trataba del efecto brillo. Éste es simple, se le suma un valor a cada color de cada punto de la imagen (pixel) y el resultado es una imagen más brillante o menos brillante, de acuerdo el valor que sumemos (o restemos). Hice algunas pruebas pero no me convenció. Quizás no era ése el filtro.

Analizando con detalle, terminé hallando que se trata de cambiar la transparencia de la imagen a procesar (la imagen dos, la invertida de la original). Pero curiosamente,hay que darle un efecto de degradado, porque el efecto de reflexión sobre un cristal se pierde. Así, la reflexión debe ser gradual, el cambio de transparencia no es constante, sino que cada vez es menor.

Una vez entendido esto, puse manos a la obra. De pronto hallé que era realmente latoso hacer todos los cálculos de la reflexión y entonces supuse que ya había llegado alguien a compartir esta parte del código. Y sí, hallé que un buen programador, cuyo sitio es éste (IrSoft), tuvo la amabilidad de compartir esta parte del proceso, la cual francamente es latosa.

Con esto a la mano el programa salió en una hora más aproximadamente. El efecto final es interesante y muy agradable a la vista.


El programa tiene limitaciones. Imágenes muy grandes no pueden ser procesadas, pero para fines prácticos, el programa es útil. Igualmente, el software no salva aún las imágenes creadas, pero ya estoy trabajando en esto. Mientras tanto, puede copiarse el resultado final con cualquier software que capture parte de la pantalla.

A quien le interese el programa, escríbame a morsa@la-morsa.com y se los mandaré vía correo electrónico.

Senin, 03 Januari 2011

Not Appropriate

It is always a question whether I should write about "horror stories" or not. The truth is, for every mishap, I could name a dozen wonderful things I've observed, things I did not expect, things that were brilliant and kind and generous and altruistic. Furthermore, when I talk about things that could have been done better, I do my profession and the institutions I work for no favor. For the most part, there are many ways to skin a cat and a lot of different approaches to the same problem. But last night on call, we took care of a patient who was not treated appropriately by a transferring facility.

Interfacility transfers are a tricky business. A physician at an outside hospital, usually a community hospital without the array of resources of an academic center, identifies a need for a patient that can't be provided at that facility. She then finds an accepting physician at a facility which can provide that service. The patient is transported over, we provide that service and take care of him. Thus, we see transfers for a wide variety of patients: obscure cancers, organ transplants, complex surgeries.

Long story short, a patient was sent from a hospital several hours away in a regular gurney ambulance with 2 EMTs. Our accepting physician confirmed the patient's story and that he was stable for transport. However, it seems that immediately prior to transport, the patient's oxygenation requirements went up considerably from 2 liters of nasal cannula to 10 liters of nonrebreather facemask. The outside facility still continued to transport the patient, and instead of upgrading him to an ICU level ambulance, kept him in a gurney ambulance where his O2 sat could not be measured and a facemask could not be applied. They turned his nasal cannula up at the highest setting and sent him on this 4 hour ride. Near the end of the journey, they ran out of oxygen, and when they pulled up to our hospital, the patient was air hungry, breathing rapidly, and slightly confused with an O2 saturation of 60% (normal would be >95%).

This was a gross error, and we let that facility know. Transport issues are the liability of the sending hospital, but all of us involved want to do the right thing for the patient. We had to meet the patient in the ICU with an ICU team and nurses ready, knowing that his breathing might be in trouble. Again, as I have said many times in this blog, transitions of patient care teams are critical moments, and we really need to be careful to keep patients safe.

Minggu, 02 Januari 2011

Changes

Sometimes I think New Year's Resolutions should instead be New Year's Changes for these are things I'd like to institute now than things to put off. One New Year's Change I'd like to make (at least from a medical side) is to rebalance my life. Intern year is always at risk for dominating everything I do and think about, and I have to stifle it from suffocating all the other facets of my life. William Butler Yeats said, "The intellect of man is forced to choose / perfection of the life, or of the work" ("The Choice"). This is incredibly true; to be a perfect intern is to give up everything else so that medicine subsumes us. There is no right or wrong here, but it's simply something I do not want for myself. Yet it is difficult. The frontier is vast and when we do not look, the shadows encroach upon our space like manifest destiny; I could read and read and read and know only a fraction of medicine; it is the beauty and the rapture of it that holds us enthralled. True - there are those topics to which we avert our eyes - things like genetic disorders of the newborn and renal tubular acidoses - but for the most part, all of us in medicine could find something that could tease us endlessly. But no! This is the New Year's change; I will set aside those problems and dilemmas and conundrums and fascinomas at some point each day so that I can actually enjoy a life separate and segregate from work. Though I say to myself each day I will learn something in medicine - and for the most part, this is true - I will also say to myself that each day I will do something completely unrelated, fun, necessary.

There are of course other things in medicine I resolve to change. For each patient I admit, I will learn something about them that is completely unrelated to their chief complaint - the length of their marriage or the name of their pet or where they grew up and got their accent. I used to do this as a medical student, and it has since faded. I will, from an efficiency standpoint, finish my H&Ps prior to the post-call morning, a commitment that is easy to say when sleep is abundant, but so far away when Somnus calls. And there are half a dozen other easy, sweeping, generic things to say - I will teach more, I will look at all EKGs, I will glance at CXRs and CTs, I will eat well on call, I will go out of my way for my cointerns. These are all things I would like to do, and I have 6 more months on medicine to make it happen.

Sabtu, 01 Januari 2011

La extraña justicia mexicana


No cabe duda que México se cuece aparte. Las cosas no ocurren como en cualquier otro lado. Aquí hacemos todo de manera que de verdad, es para sorprenderse. Por ejemplo, la justicia es de chicle. Si alguien es atrapado por un delito, el que sea, probablemente le cueste más o menos dinero salir del atolladero legal, dependiendo si el inculpado es popular, famoso o algún hombre de la calle. Para una primera muestra, podemos pensar en la hija de Alex Lora, la cual atropelló y mató a un trabajador que limpiaba una caseta telefónica. Todo parece indicar que iba alcoholizada o drogada (no sabemos ni podremos saber, porque todas esas pruebas se pusieron en tela de juicio en los medios, en los que apoyaban o denostaban a la señorita acusada, etc). La presión de los medios hizo que la hija del roquero fuese a dar a la cárcel, porque habiendo una persona muerta y siendo ella la única que había sido detenida en flagrancia, pues no había dudas de que si había un culpable, sería ella.  Pero ojo, sólo estuvo tres meses. La justica, la extraña justicia mexicana, la dejó en libertad a pesar de que murió una persona por las imprudencias juveniles de la hija de Lora, que seamos francos, ya no es tan juvenil.

Pues así, ahora resulta que el cantante Kalimba ha sido acusado de haber violado a una menor de edad. Después de esta acusación apareció otra más, de otra menor, acusando al cantante de color de lo mismo. He aquí la nota del periódico Excélsior al respecto:

CIUDAD DE MÉXICO, 30 de diciembre.- La Procuraduría General de Justicia del DF ya recibió de manera oficial el convenio de colaboración de su similar de Quintana Roo y con ello inicia la búsqueda y localización del cantante Kalimba para que responda a las acusaciones que hay en su contra por el presunto abuso sexual del que lo acusan dos menores de edad.*

Fuentes de la PGJDF, confirmaron ayer por la tarde que el oficio de colaboración que envió la Procuraduría de Quintana Roo, fue recibido en el área de Mandamientos Judiciales y turnado a la Fiscalía de Delitos Sexuales, donde se inició la denuncia contra el cantante; un grupo de agentes ya fue designado para ubicar al ex OV7.

En la dependencia detallaron que se solicita a las autoridades judiciales del DF presentar al presunto responsable ante el Ministerio Público para notificarle las acusaciones en su contra y donde podrían tomar su declaración.

No ha quedado definido por parte de la PGJDF si el cantante será trasladado a Quintana Roo, ni tampoco se detalló si existe además solicitud de ubicar a integrantes del staff del intérprete.*

De acuerdo a los hechos, el presunto ataque sexual ocurrió en un hotel luego de una presentación que tuvo el cantante en un bar de Chetumal, donde las adolescentes fueron contratadas como edecanes.

Los primeros reportes de la Procuraduría  de Quintana Roo, Kalimba fue acusado de agresiones sexuales contra dos menores, la madrugada del 19 de diciembre, tras presentarse como DJ en un club de Chetumal.

En los informes se presume que, tras abusar de la primera menor, Kalimba acudió a otra habitación del hotel donde se encontraba tras su presentación y en ese cuarto estaban tres integrantes del staff del cantante, desnudos, con la segunda joven.

Yo estoy seguro que si no fuese este cantante de dudosa fama, quien fuese el acusado, ya las Autoridades habrían localizado al denunciado y probablemente estaría preso en el mientras se hacen las investigaciones. En otra nota del Excélsior dice: "Hasta las últimas horas del 2010, el citatorio de la PGJDF no había llegado a manos del cantante". O dicho de otra manera: "Ni enterado está", ¿Así cómo va a ir a declarar? Porque conste, la justicia en México es así con los famosos: Lo citan para que rinda su declaración, cuestión que en cualquier país debiese ser así, pero en México solamente los que salen en los medios tienen acceso a este tipo de justicia real, en donde la Autoridad debe demostrar la culpabilidad del acusado, porque sino, éste se considera en principio, inocente. Para los no famosos, para los demás, todo dependerá de cuánto dinero puedas tener para "untarle la mano" a la Autoridad. Así nos la gastamos en México.

Pero regresando al cantante Kalimba, apuesto que a la larga el asunto se desvanecerá. Seguramente las supuestas agredidas llegarán a un acuerdo económico y el personaje en cuestión seguirá feliz por la vida. Sea o no cierta la acusación, todo se arreglará con dinero, como suele hacerse en este país.