Ya quiero oír la canción de la dopamina o del cáncer de cólon.
Our Motto:
miércoles, 29 de octubre de 2008
Colección Privada (IV)
Ya quiero oír la canción de la dopamina o del cáncer de cólon.
martes, 28 de octubre de 2008
¿Cómo haces más feo un Zune?
lunes, 27 de octubre de 2008
El fantasma de Grace Hooper
(Advertencia: esta entrada es larga como la cuaresma
La historia va así: El Gobernator quiere cambiar los salarios de todos los trabajadores del estado (concretamente bajarlos), en un ataque de austeridad democrática de esos que conocemos mucho aquí en México. La semana anterior, en otro hecho aparentemente inconexo, el mismo gobierno de California puso a mucho personal en pre-jubilación (o sea, ya no trabajan). Cuando se les da a los nuevos empleados la orden de aplicar los descuentos de las medidas de "responsabilidad hacendaria" a la nómina, horrorizados descubren que toda su sapiencia es inútil para atacar ese problema aparentemente sencillo. ¡Pero si son tan solo unas restas! ¡Mi contador, mi esposa, mi nieto pueden hacerlas! El problema es que nadie sabe como escribirlas: el sistema que controla todas las complejidades de los pagos a los trabajadores es una reliquia de los 70's escrita en COBOL, un bello dialecto informático del que todos han oído, al que todos desestiman por anticuado, pero que temen cruzarse con él por miedo a quedarse engarrotados frente a sus formalismos y estructuras tan apabullantes. Todos los que podrían haber ejecutado esa orden tan sencilla están ahora disfrutando las delicias del pre-retiro. Mientras todos estos chamaquitos empiezan a bajar tutoriales como histéricos para tratar de domar a la bestia y a llorar en los rincones como, miren cómo son las cosas, novatos en Vietnam que sienten (saben) que lo que les tocó es demasiado y no los prepararon para ello, mientras el T-800 desea vengarse de esa SKYNET con olor a naftalina, el espectro de la almirante que diseñó esta maravilla de la verbosidad sonríe en el más allá, satisfecha de que su memoria jamás será olvidada, aunque algo sorprendida de la ironía: su creación debería ser entendida por personas comunes, pero parece que los expertos se dan de topes con la pared.
Es chistoso que la mayoría de los programadores se burle (nos burlemos) de COBOL: si la gente común supiera que las entidades más críticas, aquellas sobre las que se funda nuestra sociedad (bancos, gobiernos, grandes cadenas), detrás de esa máscara de alta tecnología que nos muestran a través de páginas web y el nipper (luego hablaremos de él) siguen dependiendo de él, y que en los grandes centros de estudio ya no se imparte, esta misma gente común nos interpelaría en la calle llamándonos irresponsables, niños que juegan en la arena creyéndose grandes ingenieros. Si supiera que las computadoras donde corren estos sistemas duran años, décadas (sí, décadas) sin tomarse un sólo descanso, se preguntarían extrañados ¿dónde las venden para comprar una? Si supieran que no son mucho más poderosas que las que tienen en su escritorio, y sin embargo pueden con toda la maraña de las transacciones globales de bienes y servicios, se darían cuenta de que es ridículo que una PC se trabe con el Word, o con el Messenger. Pero eso no lo sabrán, ¿verdad? Les seguiremos vendiendo sistemas hechos en .NET, aunque sepamos la de recursos que consumen.
***
En esta historia hay tres lados que quisiera mencionar: el primero, que algo tan importante como COBOL debería ser aprendido por todos, o por lo menos, deberíamos tener esa opción, o una noción de ella. Sí, sé que las posibilidades que un programador recién egresado ponga sus manos en un sistema basado en COBOL o en algún lenguaje así es infinitesimal, pero es real. Aparte es un buen ejercicio de humildad. Sí, lo que hace un behemot escrito en un lenguaje así lo puede hacer otro cualquiera, pero tal vez no sería tan estable, o tan rápido. Los lenguajes de este tipo trabajan con menos capas de abstracción. Parecen complicados porque son tediosos de teclear, pero en realidad no lo son. ¿Qué tendría que hacer un pobre cristiano que quisiera hacer una transacción de fondos de un banco en C#? Objetos tras objetos tras objetos, cosa que no sucede en COBOL: Diseñado en la era de las tarjetas perforadas, prácticamente manipulaba la información directamente. La lección de humildad es: no necesitas tantas cosas, hombre. Esto mas eso es aquello. Y aparte, puedes esperar sentado a que tu programa en C# se abra paso a través de todas las clases necesarias para hacer una transacción.
Lo segundo (que en realidad es continuación de lo primero) es que esto de los lenguajes importantes pero olvidados por el ímpetu de seguir la última moda no ha dejado atrás a COBOL solamente: casi todas las personas que conozco no se atreverían a pensar siquiera en hacer un sistema en C o C++. Estamos hablando de lenguajes probados, famosos, respetados, indudablemente usados, pero que no queremos aprender, y mucho menos usar, por el simple hecho de no tener un IDE bonito a nuestra disposición, o por que nada más no se oye en la "vida real" que alguien lo use. Las probabilidades de encontrarse con una aplicación en C o C++ no son tan bajas; cualquiera puede bajar el código de un programa open source cualquiera. Yo cuando leí el código del programita que me permitía jugar Sudoku me fui para atrás. No podía concebir que alguien pudiera haberlo creado desde cero. Todavía no lo creo. Incluso algo más amigable como Delphi es, por lo menos en mi clase, una cosa espantosa: ¿2002? ¿Win32? Bah, lo de hoy es Linux. Sí, el Linux escrito en C, compañero. No hay que olvidar las bases.
Lo tercero es algo que he tenido en la mente desde hace unos días. A lo mejor no me expreso bien esta vez, pero pienso volver al tema, no se preocupen. El punto es que estamos confiados a que siempre tendremos lo último de lo último, que siempre estaremos avanzando. Durante los últimos 50 años ha sido así, gracias al cielo y la Ley de Moore. Podemos darnos el lujo de olvidar las complejidades de la estructura sobre la que yacen nuestros pobres e intrascendentes programas. Para hacer un reloj checador no es necesario saber cómo funciona mi equipo, que hay un linker y un compilador, qué cómo funciona en realidad un DataSet... todas esas cosas las obviamos. Seguimos programando. Y mientras sigamos con esa actitud, me temo que seremos cada vez menos los que sepan los verdaderos fundamentos de nuestro oficio, y en el caso de que llegue la guerra nuclear o el holocausto zombie y tengamos que reconstruir, ¿quién demonios va a saber cómo? Bueno, sin irme hasta el extremo: nos vamos a convertir en esclavos de nuestras herramientas. Visual Studio hace lo feo y tedioso por ti. Lo que ÉL (los fabricantes) decida que es lo feo y tedioso. Lo que no tienes derecho de ver. Sólo puedes hacer con estos LEGOS lo que viene en la foto. Esa figurita verde es para el pasto, no para los muebles. Y ni se te ocurra hacer tus propias piezas (bueno, en realidad si se pueden hacer componentes para Visual Studio.NET). Bah, ni para qué te tengo que decir eso: ni sabes cómo. Tal vez estoy exagerando y Visual Studio es una herramienta nada más, pero de verdad creo que la manera de enseñar programación en estos días es "Aquí está el diseñador. Haz un ABC (Altas - Bajas - Consultas) y estás del otro lado". Así sin más. Tal vez soy un nerd por exigir saber cómo coños funcionan las cosas, pero quiero pensar que es una queja válida. Porque si supiéramos todas las complejidades que existen detrás de una simple ventanita tal vez, sólo tal vez, se nos podría ocurrir una forma de hacer las cosas más simples, mejores... o regresar a COBOL, al fin y al cabo, todo lo que quiere la gente es sumar y restar.
domingo, 26 de octubre de 2008
Top 5 a las 5 - Detectives
5.- Javert
4.- El Inspector
3.- Gerd Wiesler
2.- Sherlock Holmes
1.- Unidad de Víctimas Especiales
Tops mucho mejores:
sábado, 25 de octubre de 2008
Code Monkey
La vida de un maquilador de software no es tan mala. Después de una carrera provechosa, haces un ligero examen en una oficina con olor a lavanda y ¡bam! estás dentro. No sabrás cómo funciona lo que escribes, pero sabes hacer unos formularios en Visual Basic chulos de bonitos. Llegas, te sientas, y preguntas lo que tienes que hacer a tu líder de proyecto. Él siempre sabe qué hacer y lo más importante, cómo. Tú eres un programador: las complejidades del mundo real no son tu problema. Tú escribes en Java como nadie. Tu creaste esa forma de convertir un dato entero en un texto y de allí a un arreglo, para luego compararlo con el resultado de una división de dos números tomados de la hora de la computadora, todo para saber un dato aleatorio. Los recovecos de esa función tienen una belleza inexplicable, casi barroca, con sus propios allegros y pianos, contrapuntos que desafían al entendimiento, que alimentan al espíritu, y que impresionan tanto a tu jefe inmediato que ese día tuvo que beber el doble del café y tomar el triple de píldoras que de costumbre para mantenerse despierto y entender su complejidad en toda su extensión.
O mejor aún; si eres ambicioso, oyes los regaños de “EL JEFE” para saber qué demonios quiere esta vez. ¿Desea que ordene los productos por la fecha en que fueron descubiertos por el hombre (no es tan sencillo: pregúntate dónde va el encendedor)? ¿Quiere consultar su horóscopo y ponerlo en un reporte de Crystal Reports? ¿Desea prospecciones de indicadores económicos con base en las notas del noticiero? Tu aceptarás el reto, no tienes de otra. Por lo menos allí está Google. En el momento en el que escribes “López-Dóriga” + “J2SE” te das cuenta de lo afortunado que eres de vivir en esta era. ¡Dios, los antiguos tenían que saber cuánta memoria tenía su máquina! ¡Leían libros… en papel! ¡Tenían que sentarse cara a cara para preguntarse cosas! ¿Cómo se hacían llamar programadores si todo lo que hacían estaba en modo texto? They are from the past…! Y estando en esas elucubraciones, lo ves:
help?
So i have this problem with a ZabludovzkyNotHandledException…
El resto no importa: vas por buen camino. Por lo menos sabes que lo que tu jefe te pidió puede hacerse: sí, desafiando toda la lógica, pero se puede. En una versión vieja e inestable, pero se puede. Tendrás que usar todas tus cuentas en foros para programadores, pero lo lograrás. Y después de tres días de estar copy-pasteando con material de más de treinta posts diferentes, tienes un cerro de código que deja chiquita a tu función IntToStringToArrayToRandom(). Estás allí, nervioso ante ese castillo de naipes, y das Debug.
0 warnings, 69 errors.
—
Abriéndote paso entre esa selva de variables mal nombradas, métodos peor usados y crímenes contranatura más allá de la imaginación, te has cansado. Caes dormido, y sueñas. Es muy apacible aquella construcción onírica. No quieres despertar. Entre las cebras-unicornio, el fantasma grillo y el Augusto Atormentador (quién dice que los programadores no tenemos alma poética), ves un libro antiguo, con tapas de piel y hojas apergaminadas, que desprenden un suave aroma a guardado, a sabiduría antigua. Hermenéutica. Criptografía. ¿MD5? Apartas esos pensamientos de tu mente, tratando de disfrutar de la escena. Pones tus ojos en las páginas. Un amanuense, quizás un monje muerto hace mil años, escribió en letras de oro y bellas miniaturas una oración en una lengua muerta. Sin embargo la reconoces. Le das otra mirada. Sí, esas expresiones arcaicas te son familiares. Las metáforas caducas, los silogismos trillados… todo eso ya te lo sabes de memoria. El libro, antes místico y sugestivo, te parece aburrido y soso ahora. Tus ojos desnudan su verdadero sentido: es un manual de COBOL. Friki tenías que ser.
—
El beep del speaker de tu máquina te despierta, y te dice que algo anda mal. Sí: borraste todo al caer rendido ante el teclado, y reemplazaste todo desde “GetNotiHost()” con frases como “rkjhjghjfjhj” y “aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa”. Miras tu reloj: todavía hay tiempo. Miras tu calendario: no, es para hoy. Recompones lo mejor que puedes. Sabes que es inutil, pero lo intentas. Tu memoria te juega jugarretas, los dedos se te enredan, te fallan, aprietas teclas sin querer, escribes “printf(”ESTO NI AL CASE T_T\n”)”… y lo dejas en un easter egg (¿qué sería un programador sin esa clase de humor?). Por fin, tu Frankenstein vuelve a parecerse a lo que era, y todavía mejor, hasta te sobró código. Das Debug:
47 warnings, 0 errors.
¡Listo, al despacho del JEFE!
No lo puedes creer, funcionó. Tarda como cinco minutos en ejecutarse, pero funcionó. Tu jefe inmediato no lo puede creer. El módulo se conecta con un servlet en un servidor en Jaipur, India, que a su vez recibe información de un par de viejitas en un búnker en Vladivostok, Rusia (bendito sea el software libre, el open source y el amor al arte. ¿qué haríamos los programadores sin esos hippies?) Tu JEFE, el que firma los cheques, está contento, y aunque dice que está muy lento, te felicita, y restriega tu éxito en la cara de tu líder de proyecto quien, otra vez, contempla el suicidio. Tu pellejo está a salvo por ahora. Puedes dejar de hacer la documentación, al fin y al cabo vas a tener que volverlo a hacer. Y ahora, te pones tu camiseta de “I’m blogging this”, y le cuentas tu aventura a tus amigos. Eso es lo importante.
viernes, 24 de octubre de 2008
The Shinning (II)
* Mientras desayunaba, recordaba cómo había tratado de explicar a mi prima cómo funciona una lámpara incandescente (foco, y no pregunten qué estaba pensando al explicar cómo funciona). Hasta me acordé que el filamento era de bambú al principio. Ese día, me encuentro con que era el aniversario de la lámpara de Edison.
* Desde hace unos días he tenido una idea en la cabeza. Si fuera un vándalo, sería un friki-vándalo (no puedo dejar de ser yo ni en mis sueños) e iría por la ciudad buscando consultorios de médicos homeópatas para tacharles la palabra de "Médico", por que la homeopatía no es más que una extraña incoherencia sin sustento científico. Precisamente hoy en la mañana pasé enfrente de uno y no dejaba de idear cómo sería más fácil: con aerosol, con cinta, con un imán... Pues bien, hoy me encuentro con estos 51 puntos sobre la homeopatía, que no hacen mas que hacerme pensar más en mis ideas anti-anticientíficas, y al mismo tiempo, en la experiencia paranormal.
No deja de tener su gracia que las dos coincidencias (o sincronías) me llevan a la ciencia. ¿Será acaso una revelación de que la clarividencia es tan real como la electricidad o la medicina? ¿Es un mensaje de que todo está conectado? ¿El DIOS de la actividad extrasensorial quiere que lo lleve a la luz de la ciencia de una forma que no deje lugar a dudas? ¿O es una agradable coincidencia fruto de mi ociosidad? Obviamente me decanto por la última opción, pues es más divertida. Aunque bien podría poner una academia de estudios de la energía psíquica (AEEP A.C.) y saldría de pobre...
jueves, 23 de octubre de 2008
Colección Privada (III)
miércoles, 22 de octubre de 2008
La vida del estudiante
Y juro que tengo que pasar por un control así cuando entro.
martes, 21 de octubre de 2008
Colección Privada (II)
lunes, 20 de octubre de 2008
Colección privada (I)
Lo sabía. Sabía que era imposible que aquí en México no hubiera dementes.
domingo, 19 de octubre de 2008
Top 5 a las 5 - Trilogías
5.- Dune
Esta no es una trilogía, es una 1757575gía. Pero los primeros tres son los que cuentan (como en el No.1). La pongo porque fue el primer libro de ciencia ficción con el que realmente me emocioné, por lo que fue mi primera entrada al frikismo. Claro, lloré sangre para encontrar el tercero, pero eso no le quita nada.
4.- Star Wars (IV-V-VI)
¿Qué más se puede decir de Star Wars, aparte de que
3.- El Señor de Los Anillos
Sí, Star Wars es una serie mítica, y no pierde fuerza por más tiempo que pase, pero no hay que perder de vista que pertenece a una época antigua, distante y perdida entre la leyenda: Los 70's y los 80's. Los que no vivimos en esa era nos maravillamos con Yoda y Darth Vader pero a través de VHS y DVD, y no es lo mismo. Nosotros los hijos de esa generación necesitábamos nuestra película "uy, yo la fui a ver al cine, cof, cof, cof", porque, con un demonio, Harry Potter es para bebés, o en su defecto niños en edad de dentición. Y es allí donde entra Peter Jackson con su hiper-nerdismo y sus 545415145457 horas de metraje.
2.- Trilogía de Berlín
Low es un gran disco. "Heroes" es virtualmente perfecto, y aunque Lodger flaquea un poco, tiene lo suyo. Sólo "Heroes" fue grabado en Berlín totalmente, pero como el mismo David Bowie se refiere a los tres así, puedo ponerlos aquí.
1.- Fundación
Me gusta mucho la historia. Me gusta mucho el detalle, las motivaciones y sobre todo, el hecho de que nada permanece, el proceso de los cambios. Por eso me encanta la historia de la Fundación, y me río de mí mismo cuando recuerdo cómo veía esos libros con desinterés cuando iba al super con mi mamá. Tantos personajes en el pequeño espacio de los tres libros y no se sienten muy apretados. De hecho, te quedas con ganas de más Tantos hechos, tantas historias y sólo forman parte de un pequeño rincón de la galaxia. Por esa sensación de amplitud es mi trilogía favorita.
Más diversión multipartes con:
Zark: http://proyecto75232.
William Saints: http://esquemaspiramidales.
Fargok : http://leonenjaulado.wordpress.com
Y nos vemos la próxima.
lunes, 13 de octubre de 2008
domingo, 12 de octubre de 2008
Top 5 a las 5 - La religión
domingo, 5 de octubre de 2008
Top 5 a las 5 - Armas
5. Podadora - Dead Rising
Me encanta el aroma de los zombies cortados por la mañana.
4. MP44 - Call Of Duty
3. Taser - Syphon Filter
2. Flak Cannon - Unreal Tournament
Mi otra arma favorita: un cañón de metal fundido que desbarata a todo lo que se le ponga enfrente. Lo mejor: los pedazos de persona gritan.
1. Lancer - Gears Of War
Gears Of War es una compilación de armas enfermas, como la escopeta que destaza, el arco con flechas explosivas o el cañón de energía satelital. Pero creo que ésta resume toda esa brutalidad, que es lo que espero en un arma que se precie.
Menciones honoríficas:
Lanzallamas
Dudo que haya un arma más útil que ésta: destruir evidencia, dispersar multitudes, asar carne... ¡sirve para todo! Y huele a victoria.
Feromonas (Half Life 2)
A simple vista parece inofensiva, pero en realidad es una vesícula de un insecto-madre que atrae a sus insectos-hijos. Mandar a un soldado Combine a una muerte horrible es, sin duda, bellísimo.
Pasen a más listas de Navidad de la NRA:
Zark: http://proyecto75232.
Alex: http://alexgondel.wordpress.
Fargok: http://leonenjaulado.
William Saints: http://esquemaspiramidales.
Kalimero: http://kalimerozone.blogspot.
Y nos vemos.
miércoles, 1 de octubre de 2008
Ejemplo sobre cómo ver el futuro
No digan que no se los advertí.