Thursday, October 13, 2011

Murió uno de los creadores de C y Unix


Dennis MacAlistair Ritchie (que usaba en algunos foros de discusión el sobrenombre ‘dmr‘), nació en 9 de septiembre de 1941 y murió ayer 12 de octubre del 2011. Fue uno de los científicos más notables en la ciencia de la computación. Desarrolló C y tuvo una gran influencia en otros lenguajes de programación, así como en la parte de sistemas operativos, tales como Multics y Unix.

Recibió el premio Turing en 1983 (algo así como el Nobel de la computación), y también fue galardonado con la Medalla Nacional de Tecnología en 1998. Ritchie se retiró en el 2007 siendo la cabeza del departamento de investigación de software y sistemas de Lucent Technologies. Ritchie era físico de profesión además de tener un grado en matemáticas aplicadas. En 1967 comenzó a trabajar en los Laboratorios Bell (hoy AT&T). En 1968 recibió el título de doctor por la Universidad de Harvard,  bajo la supervisión de Patrick C. Fischer.

A Dennis Ritchie se le conoce más por se el creador del lenguaje de programación C y un desarrollador clave del sistema operativo Unix. El libro más popular es el que precisamente escribiera Ritchie con Brian Kernigham: “The C Programming Language“. La invención de C y su rol en el desarrollo de Unix conjuntamente con Ken Thompson, lo colocan como el pionero más importante de la computación moderna. El lenguaje C está en uso ampliamente y sin duda su filosofía ha influenciado decenas de otros lenguajes de programación. En lo que se refiere a Unix, estableció conceptos de sistemas operativos que hoy en día son usados contínuamente en todo el mundo. El 90% de los servidores de Internet usan alguna versión de Unix, Mac OS X es una versión de Unix. Vamos, la influencia del trabajo de Ritchie es enorme y vasta.

Dennis Ritchie recibió en vida muchísimos premios. Se le hizo miembro de la Academia Nacional de Ingeniería, en 1988, por el desarrollo del lenguaje de programación C y por su co-desarrollo del sistema operativo Unix. en 1983 Ritchie y Thomspon recibieron conjuntamente el premio Turing por su desarrollo en la teoría de los sistemas operativos genéricos y específicamente por la implementación del sistena operativo Unix. El discurso de Ritchie al recibir el premio se llamó: “Reflexiones sobre la investigación en software“, que puede leerse aquí.

En 1990, ambos, Ritchie y Thompson, recibieron la medalla Richard W. Hamming, por parte de la IEEE, por haber originado el sistema operativo Unix y el lenguaje de programación C. También ambos recibieron de mano del entonces Presidente Clinton, la Medalla Nacional de Tecnología por Unix y C, que ha llevado a enormes avances en hardware, software, sistemas de redes, además de estimular el crecimiento de la industria, logrando el liderazgo norteamericano en estos rubros de la ciencia de la computación.

Este año, 2011, Ritchie y su gran amigo Ken Thompson, recibieron el premio japonés para la comunicación e información, por sus trabajos en sistemas operativos, en particular el desarrollo de Unix. Parecen demasiados premios por lo mismo, pero eso simplemente habla de la importancia de lo que estos personajes han hecho en el mundo del cómputo y su relevancia internacional. Ritchie escribió dos libros muy conocidos:  The C Programming Language (1978, con Brian Kernighan; conocido tambien como el K&R) y  el Unix Programmer’s Manual (1971)

Dennis Ritchie era un hombre de carácter privado y a pesar de sus contribuciones, no ha tenido ni probablemente tendrá la cobertura mediática que recibió Steve Jobs al morir. Yo me pregunto qué calificativos se le pueden asignar a alguien que hizo tanto por el cómputo como Ritchie, cuando a Jobs no ha faltado quien (equivocadamente) le califica de genio y visionario. Así parece ser injusto el mundo. Descanse en paz.

¿Hoy es el día mundial de qué...?

De un tiempo a acá, he notado que cada día que pasa ya está asignado a algún evento. "Hoy es día mundial contra el cáncer", "hoy es día internacional del medio ambiente", "hoy es el día mundial contra la hambruna", etc. y me pregunto de dónde salen todos estos dias. ¿Quién decide qué se conmemora/festeja/recuerda? porque realmente parece algo extraño.

Mi amiga Nadia publicó en Facebook que hoy es el "día Internacional para la Reducción de los Desastres". Y hay una página web de las Naciones Unidas que habla de esto. La cosa es que buscando en Internet hallé otra página en donde ya se catalogaron muchísimas fechas al respecto. Véase aquí.

Pues bien, en esta página última, no se menciona el día que Nadia y las Naciones Unidas dicen que es para la Reducción de los Desastres. Entonces, ¿quién o quiénes deciden estos días? ¿quién le pone el cascabel al gato? Misterio.

Tuesday, October 11, 2011

Otra característica de nuestra mexicanidad


A mí me parece que, por ejemplo, el clima de un país incide en las conductas de sus habitantes. Por ejemplo, no es casualidad que los países del primer mundo se encuentren en el hemisferio norte. Debido a que el clima en esa región no es el más benigno muchas veces, los habitantes de esos lares han tenido que aprender a convivir con el clima que les tocó. Así, debido a las heladas, a que la comida podía faltar, en esos países se inventaron procedimientos para mantener la comida sin que se eche a perder, a conservarla. Algunos países se volvieron entonces expertos en conservas. La necesidad es la madre del ingenio y la supervivencia probablemente lo es más. Así entonces, el vivir en un país con cierto clima hace que la gente sea de una manera muy específica.

En México, por ejemplo, independientemente del clima en el que vivimos, que en general es mucho más benigno que en los países primermundistas (¿cuántas tormentas de nieve se recuerdan por ejemplo, en la ciudad de México?), tenemos el "clima" que nos heredaron los priístas por unos 70 años. Ahí nació la corrupción que hoy día nos aqueja y que parece imposible poderla deshacer. Pero en este clima de impunidad, corrupción, los mexicanos hemos aprendido con los años a ser de una manera muy específica. Por ejemplo, no faltan las escenas de alguien siendo detenido por ir en estado de ebriedad, o bien, porque la patrulla de la policía halló algo con lo cual probablemente quiera una "mordida". La respuesta del afectado, del ciudadano, es siempre estar a la defensiva. Si se nos agarra borrachos o simplemente con unas copas de más, es probable que entonces se nos diga que nos tienen que remitir al Ministerio Público por estar en ese estado (aunque no sea estrictamente cierto que estamos borrachos). Para evitar (¿o generar?) más problemas, más de uno diría cosas como: "¡usted no sabe con quién se mete!", "ahora mismo le hablo a su jefe porque soy amigo personal de él", o bien, podrán llegar algunos a los bochornosos espectáculos de las "ladies de polanco", de quienes ya escribí aquí. Es decir, el mexicano es muy de tener en los casos que se requiera "palancas" (dénme una palanca y moveré al mundo), para evitar ser castigado por la falta que cometió. Si para colmo le añadimos que la policía en este país es el enemigo público número uno de la ciudadanía, el cuadro se completa.

Hay otros casos. Por ejemplo, la frase que se corea en los estadios mexicanos, o por mexicanos en estadios extranjeros: "¡sí se puede!". Esta frase lamentable es producto de generaciones y generaciones en donde el mexicano ha fracasado. Ya sea en las Olimpiadas, o en ganar algún concurso internacional, etc. Por ello, ya nuestra cultura tiene metido en la cabeza, en el firmware del cerebro, estas frases de dizque aliento. Igual muchas veces en competiciones internacionales, los comentaristas mexicanos apelan a frases como "ya nos toca ganar", como si el resultado fuese una cuestión de justicia divina.

Pero además, al mexicano le encanta especular sin bases: "sé de buena fuente que Calderón está coludido con el narco mexicano". "Todos sabemos que Ebrard ya hizo un pacto con el Chapo Guzmán", por mencionar dos ejemplos al respecto. Nadie puede demostrar esos nexos y si pudiese y no lo hace, y no los denuncia ante la autoridad, entonces se convierte en cómplice. Por ejemplo, se dice: "Se sabe en los Pinos que Calderón es un borracho". Yo no sé si lo sea. Lo que sé es que nadie puede demostrarlo. Yo francamente jamás lo he visto decir estupideces por estar borracho. Las estupideces que dice las hace generalmente estando sobrio. O bien: "Muy casadito con la Gaviota, pero Peña Nieto ya tiene su segundo frente"... asunto por demás indemostrable, pero que podría ir de boca en boca como rumor, el cual como buenos mexicanos repetiremos.

Al mexicano le gusta eso, especular, casi declarando como hechos innamovibles asuntos que nadie puede demostrar. En mi opinión, esto es parte de la cultura, producto de un modo muy particular de hacer política en este país.

Breve visita a Stanley Park

En uno de los últimos días que estuve en Vancouver, Canadá, fuimos a Stanley Park, un parque que contiene todo género de jardines. Muy bien cuidado, muy ordenado todo, en donde se ve que hay organización y respeto en todos sentidos.


Llegamos relativamente tarde y habremos estado una hora aproximadamente. Marga nos mostró el jardín de las rosas, las cuales brillaban por su ausencia (no están en esa época), y después fuimos a ver los tótems. La verdad es que no esperaba gran cosa de esta parte pero sí me decepcionó, porque ni siquiera uno puede acercarse demasiado a ellos. No esperaba que fuese un show estilo Disneylandia, pero la verdad es que tiene poco chiste.

Como sea, fue una experiencia interesante, y me demostró que un país puede funcionar si la gente sigue las reglas, si las respeta, si no se quiere en todo momento pasar de vivo, entre otras cosas. Vancouver en un ejemplo de que se puede vivir sin pensar en la falta de seguridad, sin el temor cotidiano de a ver qué pasa ahora. He aquí las fotos que tomó Marga con su teléfono, porque me olvidé la cámara en su casa.



Mi mamá, Marga y yo

Friday, October 07, 2011

Sobre Steve Jobs


Con la reciente muerte de Steve Jobs, ocurrida apenas hace dos días, se han volcado en internet, en las redes sociales, en Twitter, toda una serie de halagos que desde mi perspectiva son exagerados. Hay quienes no lo bajan de genio, de visionario, y su admiración por este personaje -me parece- los ciega a la realidad. Me pregunto cómo alguien puede ser genio y visionario y nadie le haya hecho antes un homenaje en vida. Parece que se dieron cuenta de esto cuando se supo de su deceso.

Miren, Jobs sin duda es un icono de la tecnología norteamericana, pero dista de estar entre los genios universales. Para empezar, jamás escribió una línea de código, probablemente no sabía programar y lo que sí supo hacer muy bien fue el de vender computadoras. Apple, o cualquier empresa que se dedique a la tecnología puede tener los mejores productos, pero si no hay quien los publicite y los venda, pues no vale nada. Así, Jobs supo ver sus oportunidades y vendió muy bien los productos de Apple. Y en eso sin duda destacó.

Steve Jobs tuvo serios fracasos. Vaya, lo corrieron de su propia empresa en 1985 por las pocas ganancias que daba e incluso, Apple tuvo serios problemas financieros y estuvo a punto de cerrar. Fue rescatada por Bill Gates en algún momento, que le dio unos 150 millones de dólares de liquidez. Cuando Jobs salió de Apple era la imagen personificada del fracaso. Si se hubiese muerto en ese entonces, las opiniones no habrían sido las que ahora se dicen contínuamente.

Jobs se vendió como  un personaje, creó un misticismo en los productos de Apple. Mintió, como todos los vendedores, exagerando las virtudes de sus dispositivos, como cuando dijo que "la mejor experiencia de navegación por internet la daba el iPad". Y lo entiendo, son argumentos de ventas nada más. Veo difícil creerle eso, por ejemplo.

Así pues, a mí me hubiese gustado más moderación en lo que se dice ahora que Jobs no está con nosotros. Si alguien no lo alaba entonces es un envidioso, un perverso, un amargado. Yo dudo que sea uno así. Simplemente me parece fundamental que las las cosas caigan en su justa medida.

¿Fue Jobs un genio? Lo dudo. ¿Fue un visionario? Lo dudo. Jobs hizo cosas nuevas, sin duda, pero mucha gente lo hace y no están en el ojo del huracán de los medios. Por ejemplo, ¿quién inventó la tomografía axial computarizada? ¿Alguien sabe? Si se muere este personaje, probablemente recibirá, si bien le va, una pequeña notita perdida en los periódicos. Y probablemente la tomografía sea uno de esos inventos que podrían calificarse de geniales ¿o no? ¿Inventó siquiera la interfaz gráfica Jobs? No.Se la pirateó a Xerox. Quienes en esa empresa inventaron la interfaz gráfica probablemente sí eran visionarios.

A mí me parece que en los negocios Jobs hizo algunas cosas interesantes, el modelo de negocios que implantó con su tienda apps de aplicaciones para eliPhone/iPod/iPad ha sido copiada por otros, con mucho menos éxito, sin duda. Y esto habla de las capacidades del personaje en cuestión para hacer negocios.

Steve Jobs tiene sus propios méritos. Al final de su vida logró sus mejores éxitos y fue reconocido, pero él es sólo quien vendía. Habiéndose convertido en un icono, cuando salía a decir algo, se le hacia caso. Hay premios Nobel, que han dedicado sus vidas a la ciencia y no tienen ni lejos, la resonancia de un personaje mediático como lo fue Jobs. De alguna manera Jobs era como el conductor de un noticiario. Atrás de este personaje, que sale a cuadro, hay mucha gente, redactores, reporteros, camarógrafos, técnicos, etc., que hace que podamos ver en la noche la TV y escuchar las noticias. Pero todo este personal, que es anónimo finalmente, no lo vemos, aunque ahí está. Pasa lo mismo en Apple. Yo dudo que Jobs indicara a los programadores cada característica que debía tener su sistema operativo. No, Jobs daría instrucciones generales-a lo más- sobre lo que se tenía que hacer, pero ese ejército de programadores pasa anónimo. ¿Quiénes son? ¿quiénes han escrito tal o cual parte del código? Nadie sabe. Solamente vimos a Jobs anunciando las nuevas versiones de sus sistemas operativos, de sus dispositivos y entonces le achacamos la paternidad de todo a él.

Sin duda Steve Jobs representa una gran parte de la historia moderna de la tecnología en los Estados Unidos, pero lejos, muy lejos está de ser un visionario (visionario Babbage, por ejemplo, que imagino una máquina calculadora cuando no había siquiera electricidad), o un genio (Einstein, Dalí, sin duda califican como genios, por mencionar un par de ellos). Así que de verdad, pongamos a Jobs en su justa proporción y percepción.

Thursday, October 06, 2011

"Mosquito" Creek

Creek significa riachuelo y cerca de donde viven Marga y Mauricio está un parque llamado "Mosquito Creek", que toma su nombre porque por ahí pasa un riachuelo. Hoy, que salió el sol en Vancouver, fuimos un rato a pasearcon mi madre que, curiosamente, no había ido por ahí en las varias veces que ya había venido a esta ciudad.

He aquí algunas fotos que tomé hoy:










Tuesday, October 04, 2011

El consumismo que nos invade


Hoy se realizó la conferencia de prensa de Apple, para anunciar su nuevo modelo de teléfono iPhone, su nueva línea de iPods, etc. Por alguna razón, cada vez que Apple saca algún juguete la gente parece volverse loca. En Twitter una vez comenzada la conferencia de la manzana ,muchos internautas casi casi se vuelven reporteros, anunciando en los 140 caracteres que da Twitter cada cosa que dice el presentador en turno. Otros muchos, comentan que ya quieren tener esta nueva versión de ése oscuro del deseo en el cual se ha convertido el iPhone, y que no ven para cuando llegue a México.

Cuando llegó el iPad a México, hace como un año, las pocas tiendas Apple en el país organizaron una venta nocturna, que empezó a las 12 de la noche de no sé qué día. Ya para las 9 pm de ese día había colas que daban vuelta a la manzana. Y en serio, sin duda el iPad es un muy bonito juguete, amén de muy caro... Y aún así ¿de verdad vale la pena estas colas absurdas y este montaje para hacerse ANTES QUE NADIE EN MÉXICO de una computadora en forma de tableta?

Apple vende imagen, exclusividad, que empieza por hacer creer a sus clientes que con estos equipos serán únicos e irrepetibles. Y muchos delos que compran artículos de Apple solamente lo hacen por esta razón. Es típico verlos en un Starbucks "presumiendo" su Mac Air o su iPad de última generación. Vaya, me pregunto cuántos usuarios de Mac saben que usan un sistema tipo Unix, que pueden entrar en modo de comandos y que tienen montones de herramientas creadas originalmente en Unix y que lo hacen un sistema muy poderoso. ¿Cuántos salen de la interfaz gráfica de Mac? ¿Cuántos usan todas las características que pagaron por tan caro equipo?

Otro ejemplo de esto es cuando salieron unas dizque tapas inteligentes para el iPad2. En Matuk.com hubo una discusión sobre el tema y los mac-fanáticos alababan a grados insospechados algo tan bobo, pero tan bobo, como la supuesta tapa "inteligente"... Por favor...

Y que no se malinterpreten mis palabras. Sin duda los equipos de Apple son estupendos, pero que son mucho más costosos que los demás, lo son y este sobreprecio no se puede justificar en desempeño de los equipos. También las mac se atoran, también el iPhone se congela y hay que resetearlo. Tienen sus problemas como todas las computadoras, aunque los propios mac-eros jamás discutan estas cosas y cierren los ojos a la realidad.

El asunto es que los medios, la propaganda con la que nos invaden contínuamente nos han terminado por hacer creer que ser es tener, y por ende, ansiamos un iPhone, o la novísima Mac, o la pantalla de 60 pulgadas, o el siguiente "gadget" ya anunciado por alguna compañía de tecnología.

Y me queda claro que todos queremos tener objetos que por alguna razón nos llaman poderosamente la atención. Quizás para presumirlos, para convertirnos en únicos e irrepetibles, qué sé yo. En mi caso, por ejemplo, quisiera hacerme de un smart, el microauto. Por el precio de un smart puedo hacerme de dos chevys casi. ¿vale la pena? probablemente no, pero todos tenemos estas cosas, estas pretensiones por demás absurdas y nolo dude  ,en el momento que pueda, me hago de un smart. 

La vida consumista nos entrega sin duda algunos beneficios. Sí, es más agradable ver la TV en una pantalla de 50 pulgadas, por ejemplo, pero muchos de sus beneficios son falsos, amplificados quizás por los medios, como cuando me hice de mi teléfono Android, que me obligó a contratar un plan de datos porque parece que si no se tiene Internet hasta en la sopa, no somos nada. Mis reflexiones al respecto las escribí aquí.

Aquí dejo estas reflexiones, sin siquiera la pretensión de que analicemos nuestras conductas consumistas. No se trata de vivir en la frugalidad, como tampoco ostentar estos costosísimos gustos que a más de uno les mueve el tapete. Digamos que hay que buscar cierto equilibrio. Eso es lo que pienso.

Monday, October 03, 2011

Lecciones del primer mundo


En el momento de escribir esto estoy en Vancouver, Canadá, en casa de mi hermana Marga y su esposo Mauricio. Vine por una semana y ayer domingo me apersoné en una tienda de electrónica/hardware/software/computadoras llamada "Future Shop". Ahí uno encuentra cualquier cantidad de marcas de videocámaras, roedores, monitores, videocámaras de alta definición (de todos los tamaños y precios), etc.

En estas tiendas hay una sección de software. Recuerdo que hace unos años, en alguno de estos primeros viajes al primer mundo, había una buena sección de la tienda con llamativas y coloridas cajas de software. Y entonces uno compraba el programa X y éste venía en una cajota que contenía manuales, licencia de uso, garantía, etc., además de diskettes o CDs, si acaso un DVD.

Hoy encuentro que en "Future Shop" la parte de software está limitada a "gaming", es decir, a los cartuchos o discos para las consolas como Wii, XBox y PlayStation. Ya prácticamente la parte para PC y Mac está limitadísima a unos pocos juegos y francamente, luce un poco abandonada.

Los mercados cambian, y lo que parece estar pasando es que ya pasó el momento en donde comprar software tenía que ser justificado por la empresa vendedora dándonos a cambio de muchos o pocos dólares, un sinfín de materiales, caja, manuales, etc. No, ya eso está desapareciendo y "lo de hoy"  es simplemente descargar todo del sitio web del fabricante. Ya a nadie le importa siquiera que los discos donde descargamos los programas vengan en un disco original. De hecho, ni siquiera ya se necesita descargar todo el programa adquirido, más bien ahora toda la instalación se hace desde el web del fabricante.

Este es, sin duda, el modelo de negocios que se mantendrá vigente por mucho tiempo. El asunto de ver las cajas originales del software es cosa del pasado.

Sunday, October 02, 2011

De sistemas redundantes


Todos lo sabemos: los sistemas pueden fallar. Pueden hacernos pasar un mal rato de pronto. Si usamos computadoras deberíamos respaldar con más frecuencia nuestra información porque como bien dice mi amigo Carlos Soto: "los discos duros no tienen palabra de honor". Vaya, ya alguna vez incluso el sistema que hospeda este blog  -"blogger"- falló, y los responsables del sistema respaldaron la información de los usuarios, explicando a todos que la base de datos estaba comprometida y con dificultades. Finalmente arreglaron todo y los artículos respaldados aparecieron en los respectivos blogs de los usuarios (en lasección de borradores).

Aquí, finalmente no podemos quejarnos, pues el servicio de blogger es gratuito y en su licencia de uso no se hacen responsables finalmente de los datos de ningún usuario. Desde luego que éste es un formalismo legal, porque quienes trabajan en blogger siempre buscan que el servicio esté disponible y funcionando correctamente.

Hay por ejemplo, servicios redundantes en los bancos. A los banqueros les queda claro que todas las transacciones deben ser documentadas y que no se puede fallar en esto.Los sistemas espejos en este sentido incluyen protección contra sismos o catástrofes naturales. No se puede pensar que un día pase un gran sismo, por ejemplo, y que después el banco informe que no hay registro del dinero de ni siquiera uno de sus cuentahabientes.  

Muchas veces, la estrategia más simple para evitar problemas es la de usar un sistema redundante, en espejo. Es decir, se replica todo el sistema, por más complejo que sea. Cuando falla el sistema original, entra el sistema espejo y puede rescatar los problemas al menos mientras se arregla el sistema dañado.

Y hablo de esto porque apenas pocos días, en el Aeropuerto Internacional de la Ciudad de México, falló el sistema eléctrico, hubo un corto circuito y adivinen... las dos pistas con las que cuenta dicho aeropuerto no se podían usar por falta de luz. Es decir, un corto circuito inutilizó el aeropuerto capitalino por unas horas.

Aquí la problemática es que el gobierno federal está finalmente involucrado en la falla. ¿Es que nadie pensó que podía ocurrir algún problema? ¿es que el aeropuerto de esta gigantesca ciudad puede inutilizarse tan fácilmente? ¿es que no hay sistema de respaldo, de redundancia? Vaya, si el servicio queda el aeropuerto fuese gratuito, podría entender que no hay de qué quejarse. Pero el servicio no es gratis: las aerolíneas pagan por tener sitio para sus aviones, para los lugares donde documentar, etc. Los restaurantes también pagan por estar ahí, al igual que para las tiendas "duty free". Vaya, incluso el estacionamiento es carísimo, quizás el más costoso dentro de la ciudad de México. Así pues,vaya un gran abucheo a los responsables del aeropuerto de esta ciudad. De verdad que ni para estas cuestiones, que son importantes en la vida de una ciudad, el gobierno hace su trabajo como se debe. Esto es otro claro ejemplo de que este país no sirve.

Monday, September 26, 2011

Codificación de conocimiento en ajedrez

En mi búsqueda por tener algo parecido a un lenguaje que describa posiciones e información de ajedrez, he hallado algunos interesantes esfuerzos. Uno de ellos es de Christian "Chrilly" Donninger, el autor del programa Nimzo y además, de Hydra, un monstruo de 32 procesadores que no ha perdido una sola partida oficial contra jugadores humanos. Información sobre este proyecto extraordinario (lamentablemente descontinuado), puede verse aquí.

Donninger escribió todo un lenguaje de programación para dotar a su programa "Nimzo", con conocimiento posicional. Dicho lenguaje se llama Che (hay rumores de una comunidad que le ha agregado funcionalidad y que ahora se llama por ello "Che++") y pretende añadir al motor de juego de Nimzo con conocimiento posicional ajedrecístico codificado.

Por ejemplo, se sabe que en el sistema Colle, la estructura de peones blancos en c3, d4, e3, con el afil blanco en d3, contra los peones negros en c5 y d5 (véase diagrama),


Las negras no deben jugar c4, porque fija la estructura y el rompimiento en e4 (que es uno de los motivos del sistema Colle), es entonces más fuerte. La jugada c4 del negro fue típica por algún tiempo entre los programas de computadora, porque los "engines" de ajedrez suponían que esta jugada limitaba la acción del alfil de d3, pero la experiencia entre grandes maestros ha calificado como mala esa jugada.

Donninger describe su lenguaje Che en un interesante artículo que apareció en la revista especializada en ajedrez por computadora (ICCA) y que puede ser consultado aquí (me tomé la libertad de escanearlo Yo compré dicha revista por el artículo y por lo complicado y difícil de acceder a esta información, la puse disponible a los interesados en el enlace mencionado). Donninger ha hecho un trabajo notable con Che. Su sistema está básicamente orientado como un intérprete de Forth y a decir del autor, cualquiera -con conocimientos del elemental lenguaje Basic- puede aprender a alimentar información ajedrecística en Che. En las referencias de Donninger sobre su artículo, menciona la tesis doctoral sobre un programa para dar consejos sobre posiciones de ajedrez. Hay un artículo que habla de eso, que puede leerse aquí. Se llama Chunking for Experience y realmente habla del mismo problema que estoy tratando de resolver: el de tener una manera de describir vía un lenguaje, las posiciones de ajedrez.

Por su parte, Armando Estrada, buen amigo virtual de este blog, me dio la referencia: "Chess skill in Man and Machine" Editado por Peter W. Frey que explica este tipo de representación. capitulo 3 (paginas 54 a 59). Se publicó en 1977. Sin embargo, de lo que habla Armando es de la representación vía bitboards y no es exactamente lo que ando buscando. Este interesante libro de Peter Frey puede obtenerse aquí.


Che puede conseguirse en el programa comercial Nimzo 8, que vendía hace tiempo Chessbase. en él Donninger menciona que explica cómo usarlo y añadir ese conocimiento a Oracle, el sistema de juego que usa Nimzo 8.


Tengo más información al respecto. A quien le interese, escríbame a morsa@la-morsa.com

Poema de Juan Manuel Serrat

La siguiente canción, cantada por Juan Manuel Serrat, es de su propia autoría. No lo sabía. La verdad es que me parece un pequeño poema notable. Que lo disfruten:

He aquí la letra:

Letra de Soneto a Mamá 
Joan Manuel Serrat

No es que no vuelva porque me he olvidado
de tu olor a tomillo y a cocina,
De lejos, dicen que se vé más claro,
que no es igual quien anda y quien camina.

Y supe que el amor tiene ojos verdes, 
que cuatro palos tiene la baraja,
que nunca vuelve aquello que se pierde
y la marea sube y luego baja.

Supe que lo sencillo no es lo necio,
que no hay que confundir valor y precio
y un manjar puede ser cualquier bocado.

Si el horizonte es luz y el rumbo un beso,
no es que no vuelva porque te he olvidado,
es que perdí el camino de regreso, mamá...

Friday, September 23, 2011

Rescato mi artículo para la revista Proceso



Para qué jugar ajedrez

Cuando empecé a jugar al ajedrez, hace ya muchos años, estaba empezando la adolescencia y Bobby Fischer retaba al campeón del mundo Boris Spassky, de la Unión Soviética. El llamado match del siglo fue espectacular porque desde el final de la Segunda Guerra Mundial, nadie de occidente había podido llegar a la final de un campeonato mundial para retar la soberanía soviética en el juego ciencia.

Fischer no solamente lograría esa hazaña sino que además, venció convincentemente a Spassky y en 1972 el título mundial no sólo lo perdió la Unión Soviética y Spassky, sino que se le tuvo que otorgar a Bobby Fischer, de la potencia enemiga, de los Estados Unidos.

Yo me acuerdo que en esos tiempos, al aficionarme al ajedrez y empezar a estudiar, simplemente lo hacía solo. Estudié muchos libros solo; fui a torneos y mis mejores amigos los hice quizás en ese ambiente.
Compartíamos –y lo seguimos haciendo– esta pasión por el ajedrez. Seguimos reuniéndonos a ver partidas, a platicar sobre los grandes encuentros, a analizar variantes de apertura, a darnos cuenta que el ajedrez de elite de hoy día es muy complejo de entender y que quizás, para nosotros, nuestros mejores tiempos ya han pasado.

Hoy en día hay muchos jugadores jóvenes en el país. Muchos de ellos ya incluso han viajado a festivales ajedrecísticos que se juegan en lugares tan lejanos como la India o Grecia. Muchos de esos niños y jovencitos han ido a esos torneos patrocinados por sus padres porque, no cabe duda, tener un hijo que competirá en el extranjero es algo que debe enorgullecernos como padres, aunque la realidad sea diferente: puede ir a jugar quien pueda pagarse el viaje. Es decir, la Federación Nacional no envía a sus mejores exponentes y por ende, va una pléyade de chamaquitos entusiastas, pero sin la preparación adecuada. Y entonces enfrentan a jugadores que sí juegan bien, que entrenan cotidianamente, que se dedican seriamente al ajedrez.

Para nuestros pequeños compatriotas, estos torneos difícilmente son para foguearse porque, simplemente, no se tiene el nivel, y muchos de esos niños y jovencitos que tuvieron esa experiencia dejaron ya el juego ciencia porque, la verdad, no es muy agradable hacer un punto de 11 posibles, por ejemplo, y quedar en los últimos finales de la tabla. Pero he aquí que la culpa no la tiene el ajedrez ni su dificultad inherente, sino el hecho de que los padres empujan muchas veces a sus hijos a que participen en esas competencias, pensando que con ello los títulos de campeón llegarán automáticamente.

Y los niños no ganan y entonces los padres se molestan. No han entendido que finalmente no se trata de tener campeones nacionales o mundiales en casa, sino que se trata al final del día, que los niños tengan una actividad lúdica que les servirá toda la vida. Por ello, me causa cierta lástima ver que algunos papás de niños ajedrecistas hacen desesperados esfuerzos porque sus vástagos sean grandes jugadores.

Para empezar, muchos de estos padres desconocen que la preparación ajedrecística lleva tiempo y que, además, puede llevar años. Aún así no hay garantía de nada. Es tan complejo y difícil el ajedrez que incluso con las mejores intenciones, el mayor esfuerzo y dedicación, puede pasar que quien se dedique así al juego no logre lo que esperaba. Vaya, qué tan difícil es el ajedrez que ni Garry Kasparov se salva de perder alguna partida.

Por ello mismo, yo apelaría a que la actividad ajedrecística se tome con seriedad pero con alegría. Las hermanas Polgar fueron entrenadas para jugar, por ejemplo, pero jamás recibieron un grito, un regaño, nada malo, si perdían alguna partida. No es casualidad que las tres hijas de Polgar hayan logrado destacar notablemente en el ajedrez internacional e incluso, que Judit, la más chica de las hermanas, sea una jugadora de ajedrez que está en la elite mundial.

Hagamos, pues, gente que ame el ajedrez más que campeones. La competencia es muy dura y aún así se puede lidiar con ello. Se puede llegar a jugar bien e incluso, obtener algún título ajedrecístico internacional, pero eso no es lo importante. Lo que verdaderamente es fundamental es que los niños y jóvenes, atraídos por el ajedrez, puedan admirar el gran arte que tienen en el tablero, que les haga estar felices ver una combinación magistral o bien, que incluso cuando jueguen y pierdan, se den cuenta de sus errores y en esto haya aprendizaje. Si esto se logra, el ajedrez podrá estar presente en la vida de todos los que amamos el juego, con sus grandes jugadores, con sus hazañas memorables dentro y fuera del tablero.

Ya lo decía Fischer: “para jugar bien al ajedrez se necesitan dos cosas: concentración completa y un amor desmedido por el juego”. Y no le falta razón.

Thursday, September 22, 2011

Más censura en Facebook


Hace tiempo hablé aquí, en este blog, de la censura en facebook. Pues bien, hoy hablaba con un exalumno de la Ibero por Facebook. Me contaba que estaba interesado en el software libre, en Java, en el código abierto, etc. Me preguntaba si conocía algunos libros de Java para poder empezar a trabajar sobre ese lenguaje. Le escribí entonces que entrara a www.4shared.com. Ahí podría encontrar un sinfín de libros digitalizados en PDF sobre el tema...


Pero para mi sorpresa, Facebook me puso la siguiente leyenda:

Este mensaje incluye contenido bloqueado que anteriormente se denunció como ofensivo o correo no deseado. Ponte en contacto con nosotros si crees que se trata de un error.


Volví a probar poniendo la dirección del sitio 4shared.com y de nuevo, facebook me regresó la misma leyenda. Me llama la atención. Probablemente los administradores de facebook recibieron la alerta de algún usuario sobre el sitio mencionado, que es un depósito de software en el que -desde luego- hay mucho software y archivos digitalizados ilegalmente. La idea será que los usuarios de facebook no caigan en conductas poco éticas. Sin embargo, lo que más me llama la atención es que esto era una comunicación privada entre dos usuarios.

Es evidente que Facebook no tiene a un administrador "mirón" para censurar mis comentarios. Es todo automático. Sin embargo, no deja de llamarme la atención este asunto.

Se me ocurrió hacer una prueba: poner un mensaje público mencionando el sitio ofensor. He aquí que facebook no se quejó, no puso ningún comentario adverso ni censuró el mensaje. De hecho, al poner la dirección www.4shared.com, facebook contestó con lo que se puede ver en la siguiente imagen:


Curiosamente, volví a repetir el anuncio, pero solamente poniendo 4shared.com (sin las www) y de nuevo, me dijo que era un mensaje con contenido ofensivo.

No entiendo muy bien las políticas de facebook. Me parecen curiosas, por decir lo menos.

Tuesday, September 20, 2011

Un libro de ajedrez diferente


El libro "Genius in the background", de Tibor Károlyi y Nick Aplin, es sin duda una interesante obra. Narra, de alguna manera, a los entrenadores de los grandes jugadores, a aquellos que están detrás de cámaras, detrás de las cortinas, pero que son parte fundamental del éxito de los jugadores más importantes en el mundo.

Los autores logran algunas entrevistas con los entrenadores, muchas veces opacados por los triunfos brillantes de sus pupilos. Hay una parte en cada capítulo en donde los propios jugadores tienen palabras de elogio sobre estos personajes que son una parte importante del ajedrez y muchas veces desconocida.

Pero también el libro pone el dedo en la llaga con respecto a la vida de estos fortísimos jugadores, que dedicaron su vida al entrenamiento de muchos de los considerados jugadores de elite y que por muc has circunstancias, ahora sus vidas no son las más tranquilas. Alguno de los entrevistados ahora hablan de estar desempleados, o que simplemente su status de gran entrenador ya es solamente un bonito recuerdo, porque ya no consigue a quien entrenar, porque las condiciones en su país, han cambiado, etc.

Cada capítulo contiene  algunas partidas de estos entrenadores, comentadas, así como partidas importantes de sus pupilos. Creo que el enfoque es novedoso, que el tema no se había tratado de esta manera y al final del día deja un sabor mucho más personal de las batallas que se pelean antes del tablero, y de las difíciles condiciones que para progresar, a veces impone la propia vida. Pensamos en Kasparov, en Topalov, en muchos jugadores de elite como personajes con un talento fuera de serie. Pero nunca pensamos en su trabajo cotidiano en ajedrez, en los años frente al tablero sin jugar, sólo analizando, para develar los misterios de tan fascinante juego. Vemos siempre el final, como un regalo recién desenvuelto, sin pensar en las cientos o miles de horas que dichos jugadores pasaron con sus entrenadores trabajando duramente en el tablero.

Una versión electrónica del libro puede hallarse aquí. De cualquier manera, mi sugerencia es que si les convence, le compren al autor el libro (vía Amazon, por ejemplo). Creo que es un trabajo muy bien cuidado.

Vale la pena echarle un ojo.

El tercermundismo que ahoga


Un país como México no tiene ninguna posibilidad de convertirse en parte del primer mundo mientras leamos noticias como la recién publicada por el Universal, que dice así:

 Fragmentos de satélite podrían caer en México

La probabilidad de que alguno de los restos alcance a una persona es muy remota, aunque no se desintegre en el país su entrada a la atmósfera será visible

La visibilidad del satélite UARS en México será en la zona centro y en la región del Pacífico cruzando lo más alto del cielo (Foto: Especial NASA / Heavens Above )

Martes 20 de septiembre de 2011 Andrés Eloy Martínez | El Universal00:54

Fragmentos del satélite UARS (Upper Atmosphere Research Satellite ) de la NASA podrían caer sobre México y desperdigarse en una amplia zona de este país, sin que signifique un grave riesgo para la población de acuerdo a la Sociedad Astronómica Urania en México.

Las predicciones se derivan de los últimos datos orbitales disponibles por parte de la NASA, que muestran la trayectoria de UARS sobrevolando el  territorio mexicano, los días 21,22 y 23 de septiembre, siendo éste último día la fecha estimada para su reingreso en la atmósfera.

De acuerdo a la agrupación astronómica, aunque no se desintegrara en algunos de sus pasos sobre México, el satélite será visible desde una gran parte del centro de nuestro país, como un brillante punto luminoso desplazándose entre las estrellas.

Hasta el momento la fecha exacta del reingreso a la atmósfera del satélite de investigación científica es indeterminado, debido a la inconstante velocidad de frenado aerodinámico que sufre en su rozamiento con la parte alta de la atmósfera, lo que ha llevado a los ingenieros aeroespaciales a dar un margen de tolerancia de más o menos un día, a partir 23 de septiembre.

De acuerdo a Urania, esto significa que el satélite podría desintegrarse entre el 22 y el 24 de septiembre, justo en dos de los tres días que pasara sobre territorio mexicano.

De producirse su destrucción sobre México, el satélite ofrecería un gran espectáculo en el cielo que no podría pasar desapercibido, pues de ser una luz puntual en el cielo de brillo moderado, esta adquiriría un brillo mayor, mientras su masa de más de cinco mil kilos se fragmenta en pedazos, algunos de las cuales se impactaran en la superficie terrestre, hasta un total de 580 kilogramos.

Se vería en el cielo como un bólido o pequeño asteroide desintegrándose en el cielo, señala Urania.

A pesar de ser de ser una cifra amenazante, los fragmentos se dispersaran en una franja de 800 kilómetros, siendo mínima la probabilidad de que ocasione daños materiales o físicos. La probabilidad de que alguno de los restos del satélite de Investigación de la Alta Atmósfera (UARS) alcance a una persona es de una entre 3 mil 200, señaló hoy la agencia espacial estadounidense (NASA).

Los horarios para observar el paso o la posible desintegración del satélite UARS, sobre la zona centro de México serían:
 
  • 21 de septiembre 7:10 de la mañana, justo en el amanecer
  • 22 de septiembre 5:54 horas (sólo en caso de desintegrarse), 6:47 horas pasando muy cerca del brillante planeta Júpiter hacia el oeste
  • 23 de septiembre 6:24 horas muy bajo hacia el sur

Podría hacerse visible antes de alcanzar esta posición si comenzara a desintegrarse, apareciendo desde el noroeste.

La visibilidad del satélite  UARS en México será en la zona centro y en la región del Pacífico donde podrá verse cruzando lo más alto del cielo.

Estaba previsto que el satélite llegara a finales de septiembre o principios de octubre, pero su caída se adelantará debido al fuerte aumento de la actividad solar la semana pasada.

Finalmente la sociedad astronómica Urania señalo que pedazos del satélite podrían caer en los estados de Sonora, Sinaloa, Durango, Nayarit, Jalisco, Michoacán y Guerrero, así como frente a las costas guerrerenses, solicitando a la población reportarles cualquier información sobre posibles fragmentos de UARS, así como videos de su destrucción al siguiente correo electrónico; andsul2009@hotmail.com

En el caso de que los restos del satélite caigan en un área poblada o cerca de una, las Fuerzas Armadas de Estados Unidos advierten de que los ciudadanos no deben tocar estas piezas y, en cambio, tienen que avisar del hallazgo a las autoridades.

Esto es así no sólo por razones de seguridad, sino también porque todos los restos del satélite son propiedad del Gobierno estadounidense, de manera que, insisten las autoridades, "no pueden venderse a coleccionistas ni a través de la página eBay".

El transbordador Discovery transportó en 1991 este satélite de seis toneladas diseñado para medir los cambios atmosféricos y los efectos de la contaminación, que emprendió su camino de regreso a la Tierra hace seis años.

La NASA sigue la trayectoria del satélite junto con otras agencias espaciales extranjeras e informará sobre el movimiento del objeto espacial a medida que éste se acerque a la Tierra.

Hasta aquí la nota.

A ver, nadie sabe, ni la propia NASA, dónde puede caer el satélite artificial. Repito: nadie sabe. La NASA no se atreve ni siquiera a decir cuál es el sitio más probable para la caída de la nave espacial. Los cálculos, a todo esto, son de un obscura sociedad astronómica de ¿qué país? México, por supuesto. Es claro que los personajes que están en dicha asociación quieren sus cinco minutos de fama. Para colmo, El Universal pone esta nota porque fíjense: México puede ser el destino final del satélite en cuestión. De alguna manera de nuevo México en el panorama internacional, y no por el narco, por ejemplo, sino por una cuestión científica... aunque en el fondo el evento de la caída del satélite no tenga nada que ver con la ciencia.

De verdad que así, con este tipo de notas, con esta dizque promoción de México, con esto de sentirnos hasta privilegiados porque caerá en nuestro país aparentemente el satélite a la deriva, solamente hablamos de este tercermundismo que ahoga, que ante la falta de logros y éxitos, entonces apelamos a estos recursos por demás lamentables.

En mi opinión, este tipo de notas nomás nos pinta como lo que somos: un patético país tercermundista. Muy penoso y vergonzoso asunto.

Tuesday, September 13, 2011

Reflexiones sobre el "Chess Query Language"


¿Qué es lo que hace de una posición de ajedrez un patrón en particular? ¿qué elementos son los que hacen que se pueda describir un patrón como ganador -digamos- en una posición particular? Por ejemplo, consideremos la siguiente:

Juegan las blancas
(Patrón 1)

Quien sepa algunas cosas sobre el ajedrez sabrá que las blancas pueden dar mate en cuatro jugadas con 1.Axh7+ Rh8 2.Ag6+! (evitando que la dama negra capture a la blanca), 2. ... Rg8 3. Dh7+ Rf8 4.Df7#. De hecho, no importa dónde esté el alfil blanco siempre y cuando se mantenga en la diagonal b1-h7:

Juegan las blancas
(Patrón 2)

En este ejemplo podríamos caracterizar la posición como un alfil que corre sin interrupción desde b1 hasta h7, con la dama blanca en h6 y el rey negro en g8. Pero... ¿es esto suficiente? Aparentemente sí. Pero consideremos ahora la siguiente posición:

Juegan las blancas
(Patrón 3)

Este patrón parece ser el mismo que en la posición anterior, pero he aquí que cambia totalmente todo el asunto, porque ahora la torre negra de a7 defiende el punto del mate en f7. Aquí, por ejemplo, las blancas no tienen más que tablas: 1.Axh7+ Rh8 2.Ag6+ Rg8 3.Ah7+ y tablas por repetición. Las blancas no tienen mejor opción que esto.

La pregunta aquí es ¿cómo definir los elementos del patrón que hacen que el patrón 1 sea ganador, Mientras que en el patrón 3 el hecho de tener la torre negra en a7 hace imposible que el patrón de mate se dé? Yo quisiera hallar un lenguaje que describiera los patrones, algo así como una geometría analítica para el tablero de ajedrez. Déjenme ponerles un ejemplo:

Considérese la ecuación de la parábola:

Gráfica 1

y=x^2. Sin vemos la expresión, podemos hacer el dibujo que genera la imagen de la parábola, porque la expresión algebraica representa ni más ni menos a la gráfica 1. En este sentido, la expresión algebraica define y caracteriza la parábola mencionada. ¿Podría haber una especie de "lenguaje algebraico" para caracterizar sin errores cualquier posición de ajedrez? Llevo ya un par de años atorado en esta problemática. No veo cómo hacer un lenguaje que caracterice las posiciones del tablero.


Más de uno se preguntará como para qué quiero algo así. Es fácil: imaginen que tengo la siguiente posición, la cual se dio en la siguiente partida:

Paulsen - Schwarz
Lepzig 1879 (match)
3er juego

1. e4 e6 2. d4 d5 3. e5 c5 4. c3 Nc6 5. Nf3 Qb6 6. a3 Bd7 7. b4 cxd4 8. cxd4 Nge7 9. Nc3 Nf5 10. Na4 Qc7 11. Bb2 Be7 12. Rc1 a6 13. Nc5 Bxc5 14. Rxc5 O-O 15. Bd3 Nfe7?





 
Paulsen-Schwarz
Leipzig 1897 (match)
3er partida
Juegan las blancas 
(Patrón 4)

16. Bxh7+! el clásico "regalo griego". El esquema está dado: el rey negro enrocado. El caballo negro que normalmente está en f6, defendiendo h7 ya no está. El alfil blanco apunta a h7, el caballo en f3 brincará a g5 y la dama blanca entonces se incorporará al ataque.

Si tuviese una manera de describir esta posición vía este "mágico lenguaje" entonces podría hacer búsquedas sobre todas las posiciones en donde este esquema se diese en una base de datos, por ejemplo la megabase 2010. Así, por ejemplo, hallar todas las posiciones con el patrón 4 me permitiría hacer incluso un catálogo o libro con este esquema, y así practicarlo hasta que fuese parte de mi acervo ajedrecístico. Vaya, que escribir libros de ejercicios de combinación sería algo ridículamente simple, pues como autor no tendría que hurgar literalmente en las posiciones, sino que podría pedirle al sistema que hallara el patrón buscado y listo, colección de posiciones para estudiar.

Por ello mismo, el Chess Query Language - CQL, del cual ya hablé aquí antes, es quizás la herramienta que podría solventar las dificultades. Curiosamente el CQL me permite buscar todas las posiciones en un archivo PGN, en donde se dio el regalo griego. Entonces me pregunto: ¿Necesito realmente un lenguaje que describa las posiciones en ajedrez para crear patrones? o bien ¿un lenguaje de consultas en una base de datos es la sustitución natural de este potencial lenguaje y es más que suficiente? Dicho de otra manera, ¿para qué quiero describir posiciones si el CQL me permite crear una búsqueda de un patrón determinado? ¿Será esto equivalente a lo que busco? 

Me llama la atención que el problema de generar un lenguaje descriptor de posiciones sea lo mismo (o al menos equivalente, para hablar con propiedad), que el tener un lenguaje de consultas sobre una base de datos, que finalmente tiene un origen en búsquedas de cadenas. ¿Qué opina lector/a, sobre esto en particular?

Más mentiras oficiales


México, como ya la mayoría de los países, está enmarcado dentro de un ámbito global. Ahora se hacen negocios con muchos más países que antes. Ahora lo que pasa en algunos mercados puede afectar la economía local. Obviamente los enlaces y las interrelaciones comerciales entre los países son ahora muy diferentes que antaño y me es claro que muchísimos fenómenos pueden alterar el rumbo económico de la nación.

Por ejemplo, cuando mataron al candidato del PRI, Colosio, el gobierno de inmediato tomó acciones, por ejemplo: cerró los bancos por tres días, si mal no recuerdo. La razón de esto era, entre otras cosas, evitar que se fugaran capitales. El asesinato del candidato del tricolor a la presidencia nunca se había dado en la época moderna de la política nacional y era un elemento que podía considerarse como peligroso para la economía. Un hehco de esta magnitud, sin duda, podría modificar el mundo económico y financiero de ese momento. Los inversionistas, por ejemplo, podrían haber visto al país como no el más adecuado para invertir, y menos en una situación por demás extrema no vista antes.

Puedo entender eso. Y puedo entender que con el ataque terrorista del 11 de septiembre, algo parecido habrá pasado en los Estados Unidos y por ende a México. Se dice que cuando a los Estados Unidos le da un catarrito, a nosotros nos da pulmonía. Eso simplemente habla, repito, de las interrelaciones comerciales entre los países, las cuales hacen que haya más nexos y en consecuencia, ciertos movimientos en un país pueden afectar económicamente a otros países.

Y todo esto viene a cuento porque leo en los diarios que el dólar ahora se ha puesto muy caro. Se acerca a los 13 pesos por unidad del billete verde. Habrá muchas razones por las cuales el peso se deprecia, pero los argumentos que se leen en los periódicos son mentiras por demás infames. Dicen algunos que estas depreciaciones del peso se observan por los problemas financieros que están pasando en ¡Grecia! Sí, los inversionistas no ven con buenos ojos lo que pasa en la economía de ese país y por ende, México enfrenta la depreciación del peso. Ajá. Me pregunto qué tantos negocios tenemos como país con Grecia como para que el peso se deprecie ante un problema que ya lleva rato en Europa, que es el desastre económico y financiero de Grecia, ni más ni menos que la cuna de la civilización occidental.

En serio ¿a qué salen estos personajes de las finanzas a dar explicaciones que son por decir poco, burdas mentiras? Pudiese entender que el peso se devalúe si hay ciertos eventos en los Estados Unidos, pero... ¿en Grecia? ¿A quién quieren engañar?

La realidad es que así son los mercados. Hay eventos que hacen que el peso se revalúe o de deprecie. En general es un mecanismo que el propio gobierno tiene para controlar algunos aspectos de la economía. Yo puedo entender todo esto. Lo que simplemente no entiendo es esa manía de mentir abiertamente, bajo la premisa ya tradicional de que la gente es por definición tonta y se traga todo lo que le dicen.

Monday, September 12, 2011

Solución al problema de filtración de agua del chevy


El "Bachoco", mi chevy blanco como un huevo, es un guerrero de los caminos. Fielmente ha aguantado todo género de embates, desde los que yo le he dado, hasta los que la Naturaleza le ha aplicado. El último, que tiene un año más o menos, es el de filtración de agua al piso del copiloto cuando llueve. Aquí hablé un poco del problema. ¿Por dónde se mete el agua? era difícil saberlo. Recuerdo alguna vez la lectura que hice sobre una isla en donde supuestamente hay un tesoro escondido. Quienes lo buscaban iban escavando en la tierra y cuando aparentemente se acercaban al objetivo, de pronto se les inundaba el agujero que habían hecho. ¿De dónde provenía esa agua? Para saberlo, echaron agua de color y vieron por qué parte de la isla salía. La historia de este tesoro y la isal en donde está es por demás fascinante.

Desafortunadamente no iba a echar agua con tinta para saber de dónde venía el agua que inundaba el piso del copiloto, porque esto hubiese pintado de otro color la alfombra del chevy. Le eché luz, pero no detecté agujeros. La cuestión es que con las lluvias eventualmente se llenaba de agua, y no sólo se humedecía, sino que si la lluvia era lo suficientemente fuerte, se creaba un charco de dos a tres dedos de altura. Una pesadilla en todos los sentidos.

Porque miren, es tan malo no tener agua como tener en exceso. El asunto aquí es peor no por el agua en sí, sino porque la humedad tiende a la larga a oler mal y además, arruina los materiales. Por ende, había que buscarle una solución.

Entonces Juan, mi hermano, me dijo que había comentado en su trabajo sobre este particular asunto y que alguien le había dicho que al lado de la batería hay un agujero para precisamente drenar el agua. Y sí, había un agujero pero no estaba tapado. Sin embargo, hallamos que la parte debajo de donde va la batería del Chevy estaba semicarcomida. Leyendo y buscando en la inefable red Internet, eventualmente hallamos una posible solución.

Aparentemente cuando llueve, entra por las rendijas del chevy (que están abajo de los parabrisas) y se va el agua por los tubos de drenaje contemplados por el diseño del auto. Sin embargo, si el material que está debajo de la batería está oxidado o picado por los mismos ácidos de la propia batería, entonces el agua no llega toda al tubo de drenaje y se cuela hacia la alformbra del copiloto. Consecuentemente, lo que había que hacer era arreglar esa dificultad viendo cómo estaba esa parte del chasis del auto bajo la batería.

Hallé en esta página, la solución a la dificultad. Ayer Juan y yo fuimos a comprar los materiales. No hallamos los que estrictamente sugiere el autor de la solución, pero compramos una "hoja" de corcho y "duct tape", esa cinta color gris plateado, que se usa precisamente para sellar a veces los ductos, por lo cual, es bastante resistente al agua.

A mí se me olvidó tomar las fotografías de todo este procedimiento, pero rescato las del sitio web mencionado, porque más o menos funciona igual. He aquí las instrucciones:


En esta primer imagen ya se quitó la batería del chevy. Nótese los huecos dejados por el óxido que se ha comido el material. Por ahí se está metiendo el agua que se filtra a la alfombra del copiloto. Para sacar la batería hay que sacar también la rejilla que está pegada a la parte inferior del parabrisas.


El autor de la solución consiguió un pedazo de hule que bien podría ser los que usan en el piso de los autobuses. Yo no hallé algo así, pero un pedazo de corcho de 30x18 cms hizo la tarea.


Se limpió todo resto de agua. De hecho, al hacer este proceso ya el lado del copiloto estaba totalmente seco.


Se aspiró el espacio donde va la batería. Se quitaron restos de óxido, de hojas secas, etc. La cuestión es que quedara totalmente limpio.


Se colocó la base de hule (en este caso el corcho), previamente forrado con la "duct tape", de manera que quedara el corcho totalmente cubierto por ambos lados y se pegó con más cinta, sellando todos los agujeros visibles previamente (con la misma cinta).


Una vez asegurados de que no habás agujeros que tapar y dejando sin tapar, desde luego, el ducto que permite que el agua salga por la lateral de la salpicadera, procedimos a poner la batería, las rejillas mencionadas, conectar todo y listo. Asunto terminado.

Esa tarde amenazaba con gran lluvia, lo cual no ocurrió, pero sí llovió un rato y no tomé ninguna precaución como antes estaba haciendo (que era tapar con una lona el auto). No se metió el agua, por lo que pienso, el asunto quedó solucionado. Vaya pues mi agradecimiento a Juan, que me echó la mano en toda esta cirugía menor con la que el Bachoco de nuevo está listo para una aventura más.

Sunday, September 11, 2011

Sobre resolver con Prolog el problema de los sudokus

En mi último artículo sobre programación y sudokus, hablé de un programa que podría resolver, en esencia, cualquier sudoku que se le pusiese, utilizando para ello fuerza bruta, es decir, considerando todas las posibilidades de números a poner en cada casilla. Alguna combinación debe ser la adecuada y con ello el asunto estaría resuelto.

Cuando corrí mi programa, pensé que se tardaría algunas horas quizás, de hecho no lo sabía, pero sospechaba que así sería. Un par de horas después de haber empezado el proceso lo aborté porque me hartó. No se veía para cuando terminaría. Así que decidí primero ver cuántos cálculos tiene que hacer el programa para poder resolver el sudoku planteado, que en ese caso hablamos de 46 números por hallar. Si usamos Prolog, tenemos que calcular la cantidad de combinaciones con repetición de 9 números tomados de 46 en 46.

La fórmula para ello es:
                               (n+r-1)!
Combinaciones =  ----------
                                r!(n-1)!

 donde n es la cantidad de números diferentes y r es la cantidad de espacios a llenar. Además, se pueden repetir los números, es decir, no todos tienen que ser siempre distintos. El resultado de esto es 1,040,465,790, es decir, mil cuatrocientos millones de posibles combinaciones. Para entender la magnitud de este número, si cada combinación se genera en un segundo (muy lento), entonces tardará unos 32 años en probar todas las posibles combinaciones. Si hace 1000 combinaciones por segundo (una aproximación más razonable), el sistema tardará unos 120 días en resolver todas las posibles combinaciones de números. Algo sin duda, demasiado lento. Vaya, si hiciese 10000 combinaciones por segundo, tardaría 12 días en resolverlo. Aún así es muy lento.

La razón de esto es que el programa, como originalmente está escrito, está obligado a prtimero poner a todos los números que buscamos, un "1". Se prueban entonces la combinación (como si fuese una caja fuerte). Si no "se abre", entonces probamos con otra combinación, haciendo backtrack. El resultado es un gigantesco proceso de ir cambiando números.

¿Cómo se podría mejorar? Desde luego que la técnica de prolog de examinar hasta agotar todas las posibilidades (simple fuerza bruta), no es práctica en este caso. Se necesita más inteligencia. Aún así, si no se quiere pensar mucho, bien podría intercalarse la búsqueda de unos pocos números, y entonces checar algunas de las ecuaciones, si eso está correcto, entonces buscar las restantes. Esto es lo que en principio sugirió el buen amigo Eduardo Ramos, aunque aún así los resultados pueden tardar si bien nos va, muchos días. De hecho, el programa se vería esta intercalación así:

predicates

   sudoku
   suma(integer, integer, integer, integer, integer, integer, integer, integer, integer, integer)
   num(integer)
  
clauses
  
   num(1).
   num(2).
   num(3).
   num(4).
   num(5).
   num(6).
   num(7).
   num(8).
   num(9).
  
   suma(A,B,C,D,E,F,G,H,I,R) :-
                          A+B+C+D+E+F+G+H+I = R.  

   sudoku :-
            / horizontales */
          
             num(A1), num(B1), num(C1), num(D1),
             suma(5,A1,4,3,B1,6,C1,7,D1,45),
           
             num(A2), num(B2), num(C2), num(D2), num(E2),   

             num(F2), num(G2), num(H2),
             suma(A2,B2,1,C2,D2,E2,F2,G2,H2,45),
           
             num(A3), num(B3), num(C3), num(D3), num(E3),
             suma(A3,7,6,B3,C3,2,9,D3,E3,45),
           
             num(A4), num(B4), num(C4), num(D4),
             suma(A4,8,B4,7,C4,5,6,D4,1,45),
                       
             num(A5), num(B5), num(C5), num(D5),
             suma(7,6,A5,B5,3,C5,D5,8,9,45),
           
             num(A6), num(B6), num(C6), num(D6),
             suma(9,A6,3,8,B6,4,C6,2,D6,45),
           
             num(A7), num(B7), num(C7), num(D7), num(E7),
             suma(A7,B7,8,1,C7,D7,2,9,E7,45),

             num(A8), num(B8), num(C8), num(D8), num(E8), 

             num(F8), num(G8), num(H8),
             suma(A8,B8,C8,D8,E8,F8,3,G8,H8,45),

             num(A9), num(B9), num(C9), num(D9),
             suma(A9,3,B9,4,C9,7,1,D9,6,45),

            
             /* verticales */
            
             suma(5,A2,A3,A4,7,9,A7,A8,A9,45),
             suma(A1,B2,7,8,6,A6,B7,B8,3,45),
             suma(4,1,6,B4,A5,3,8,C8,B9,45),
             suma(3,C2,B3,7,B5,8,1,D8,4,45),
             suma(B1,D2,C3,C4,3,B6,C7,E8,C9,45),
             suma(6,E2,2,5,C5,4,D7,F8,7,45),
             suma(C1,F2,9,6,D5,C6,2,3,1,45),
             suma(7,G2,D3,D4,8,2,9,G8,D9,45),
             suma(D1,H2,E3,1,9,D6,E7,H8,6,45),
            
             /* cajas */
            
             suma(5,A1,4,A2,B2,1,A3,7,6,45),
             suma(3,B1,6,C2,D2,E2,B3,C3,2,45),
             suma(C1,7,D1,F2,G2,H2,9,D3,E3,45),
             suma(A4,8,B4,7,6,A5,9,A6,3,45),
             suma(7,C4,5,B5,3,C5,8,B6,4,45),
             suma(6,D4,1,D5,8,9,C6,2,D6, 45),
             suma(A7,B7,8,A8,B8,C8,A9,3,B9,45),
             suma(1,C7,D7,D8,E8,F8,4,C9,7,45),
             suma(2,9,E7,3,G8,H8,1,D9,6,45).
            

por cierto, este programa está en el antiguo turbo Prolog 2.0 de Borland.

La conclusión inicial es que si tuviésemos memoria infinita y poder de procesamiento infinito, las soluciones tipo prolog, resolviendo todo el árbol de búsquedas (árbol solución), podría llegar a la conclusión del resultado correcto. Pero en la vida real, al tener limitaciones en memoria y velocidad de proceso, esto desde luego vuelve impráctico este enfoque.

Cabe decir que no por ello prolog no es útil para resolver problemas. Simplemente el sudoku -utilizando el esquema de fuerza bruta- no es el más adecuado.