lunes, junio 30, 2008

La eternidad de un minuto

¿Cómo explicarle a un adolescente —o a un cachorro— que la vida, a su edad, es larguísima, interminable, aunque tuviera que morir al día siguiente? Es la actitud quien fija la duración de todo. Cuanto vemos a través del deseo es bello, pero no lo que vemos cuando se halla cumplido ese deseo. En diez minutos, un amor puede perfectamente ser eterno. Tú, Troylo, de eso sabes mucho más que nosotros. Por eso, aunque no creo que te sirva de consuelo, debo decirte, Troylo, que tú eres mi espejo más cercano, el único en el que me miro cada hora. Porque tú, que ya eres otro Troylo distinto del que conocí un primero de mayo de hace bastantes años, eres también casi lo único que me queda a mí del otro Antonio Gala que yo era. Nadie es dueño de nada: ni del todo, ni siempre. Se nos han caído encima demasiados escombros; demasiadas mañanas luminosas se nos han apagado; hemos corrido, hasta perder el resuello, por demasiadas calles sin salida. Somos moribundos, Troylo, que lloran por sus muertos: que los echan de menos en el atardecer; que preguntan por ellos a las cosas. Pero no hay que asustarse: en el fondo, fuimos lo mismo antes, nosotros y los demás, toda la vida. Que quieran reconocerlo o no, da igual, Troylo, da igual.

"Palabra de amor" (Charlas con Troylo)
Antonio Gala

Galaxy Zoo

Me acabo de apuntar a un proyecto de computación distribuida que vi hace tiempo, y que me llamó la atención. Se llama Galaxy Zoo y me llamó la atención por dos motivos: el primero, porque es un sistema para la clasificación de galaxias según sus formas, y a mi el tema de la astronomía me encanta. El sistema va analizando una tras otra distintas imágenes de galaxias y va indicando si es espiral (en el sentido de las agujas del reloj, o en sentido contrario), si es elíptica, o bien si no es ni una ni otra (por ejemplo, la foto de una estrella, de la traza de un satélite, de errores en las imágenes, etc.).

587737825937129767

La segunda tiene que ver con el sistema en sí. Estaréis pensando que el algoritmo para clasificar cada imagen tiene que ser complicadísimo, siguiendo algún medio de reconocimiento y clasificación de imágenes, o redes neuronales, o vete tú a saber qué. Pues en realidad tienes razón en todo. El sistema que clasifica cada imagen, eres precisamente tú. A falta de un algoritmo implementado en un ordenador, este proyecto se aprovecha de la facilidad que tenemos los humanos para procesar imágenes rápidamente (para la que sí estamos diseñados) y no tanto en nuestra capacidad de cálculo (para la que sí están diseñados los ordenadores, al fin y al cabo, tontos que suman muy rápido).

Razones para irse

Computerworld ha publicado un artículo (Eliminate reasons for IT staffers to leave their jobs) en la que comenta los motivos que podría tener una persona para abandonar su actual puesto de trabajo. ¿Crees que es gratis? Si sumas el sueldo de la nueva persona, la formación y el tiempo que tarda en pillar el ritmo, más el conocimiento perdido, el trabajo de más y el daño a la moral del resto de los empleados, según el artículo, el coste asciende a un 150% del salario de un empleado (las empresas que lo saben hacen lo posible por cuidar a sus empleados. Su rotación: 7%).

El artículo enumera a continuación algunos de los motivos que pueden provocar una salida "voluntaria":

  • Aburrimiento
  • Falta de formación
  • Carrera profesional en una calle sin salida
  • Falta de vida personal

¡Vaya! Tres de cuatro...

— Capitán Roger a torre de control, solicito permiso para despegar, roger.
— Roger, permiso concedido, pista 36...

domingo, junio 29, 2008

¡Ya tenemos la Eurocopa!

¡¡CAMPEONES!!

Vudú

No cabe duda. Vivimos en una sociedad altamente tecnificada, aunque muchas veces, a fuerza de darnos de bruces con ella, no seamos del todo conscientes. No me refiero únicamente a la electrónica, sino a todos los mecanismos basados en conocimientos técnicos. Desde la casa en la que vivimos, hasta la instalación eléctrica o del agua, hasta la iluminación de la calle, el metro o el autobús o el coche que nos lleva al trabajo, nuestro teléfono móvil, la tele, el reproductor de dvd, el mp3, calculadoras, ordenadores, infraestructuras de transporte, nuevos materiales... Detrás de cada "artificio" existe un conocimiento técnico que ha aplicado cierto conocimiento científico, de forma que sea económicamente viable para unos y provechoso para otros. Un poco como decía Ortega, "la técnica es el esfuerzo para ahorrar esfuerzos".

Y en contraste con todo ello, si lo piensas, te darás cuenta de que caemos muchas veces en supersticiones y supercherías que es mejor no tener (porque dan mala suerte ;-). Claro está, normalmente, ante una pregunta directa, negaremos serlo: "¿Yo? ¿Leer el horóscopo? ¡No, hombre, yo no creo en eso!". Y lo leemos (lo reconozco, yo también caigo). Y siempre hay un chiste en la ofi sobre que hoy es martes y 13 y seguro que algún servidor va y tiene una lesión de disco duro y hay que llevarlo al hospital de servidores. O rodeas la escalera porque bueno, quién sabe, lo mismo va y se cae el bote de pintura encima de la cabeza, y vaya, qué mala suerte.

Bueno, pues lo último en supercherías que no se creen nadie, pero en la que todo el mundo cae se lo ha sacado de la manga la cadena de televisión Cuatro y se llama "Otto". Según su página web:

¡Por fin llegó OTTO, el guardián de la selección! Un amuleto 100% eficaz concebido para animar a España en la Eurocopa. Pínchame para ser campeones.

¿Pinchar para ser campeones? ¿Tan poco confiamos en nuestros jugadores que tenemos que pinchar un muñeco como si estuviéramos pinchando a la selección alemana? ¿Y dónde he visto yo eso de amuleto 100% eficaz? ¡Ah, sí!

DSC01093

Otto lo puedes comprar por 10 euracos. Yo por ese precio, prefiero otro tipo de vudú.

sábado, junio 28, 2008

Destilado de Singletons

He querido recopilar información sobre uno de los patrones más conocidos y a la vez de los peor usados: el Singleton. Recogido en el ubicuo libro de la Pandilla de los Cuatro (no los de la cadena de televisión, los otros), se ha dicho de ellos que favorecen el acoplamiento, la creación de dependencias invisibles, que hace difícil las pruebas unitarias (precisamente por esas dependencias) y otras lindezas. Otros sin embargo defienden que (bien usado) puede ser un magnífico aliado.

Si tienes prisa o no mucho tiempo para estudiar los inconvenientes de este patrón, yo empezaría por una página de Google relacionada con un "Detector Google de Singletons", que parece casi uno de los chismes del Coyote en sus correrías tras el Correcaminos. Es un resumen muy claro sobre los problemas ocasionados por los singletons. Además, da acceso a otros dos muy buenos.

El primero de ellos es la discusión en el conocido wiki de Ward Cunningham sobre este patrón (además de ser un tremendo repositorio de charlas entre algunas de las mejores mentes del diseño software, en este wiki encontrarás el Repositorio Portland de Patrones). La información no está tan ordenada como en la página de Google, pero seguir la discusión es un buena forma de captar cómo ha ido evolucionando este tema (hace muchos años que se discutió, pero estoy convencido de que sigue de rabiosa actualidad que no de popularidad).

El segundo es el artículo publicado en IBM developerWorks por J. B. Rainsberger, un tipo muy bueno en metodologías ágiles que sigo más por sus artículos en el IEEE Software. Como suele ser habitual en él, presenta el problema de forma muy clara, concisa y amena y ofrece algunas alternativas para evitar los problemas ocasionados por los Singleton. Es de los pocos artículos en los que se comentan las bondades del patrón (como si estuviera diciendo: un Singleton no es ni bueno ni malo, sino que lo usas bien o lo usas mal; ¡me encantan estos argumentos!)

Sin duda es el wiki de Cunningham el que ofrece un tratamiento más amplio del tema. En particular, puedes encontrar la discusión acerca de uno de sus efectos indeseados: la de inyectar estado global a tu aplicación; en otras páginas puedes aprender por qué son buenos para unos y malos para otros, o averiguar formas de reemplazarlos o refactorizarlos. Dado que son clases muy difíciles de probar, encontrarás algún consejo para hacerlo. Ya como curiosidad, tienes a tu disposición implementaciones de este patrón en Visual Basic, Ruby, Python, PHP, Perl, Java y C++.

(No pierdas el tiempo leyendo esta página, tiene que ver con una discusión acerca de la manera en la que habría que organizar el contenido de esta otra página que argumenta por qué los singletons son malignos, que sí es útil).

Termino ya esta recopilación con dos artículos que me han llamado especialmente la atención. En Patterns I Hate #1: Singleton, Alex Miller explica por qué es el patrón que más odia, las alternativas para evitarlos, insinúa cómo refactorizarlos, y da algún consejo si a pesar de todo quieres seguir usándolos. A lo largo de mi viaje por estos territorios, he comprobado que somos muy viscerales con este tipo de cosas, porque en pocas ocasiones leerás que el patrón es apropiado o inapropiado, o bien que es adecuado usarlo en tal circunstancia guiado por cierta solución de compromiso, sino que más bien leerás que alguien lo odia o que es maligno. Mu pofesional ;-).

Steve Yegge es famoso, aparte de por haber trabajado en Amazon, trabajar en Google y por haber migrado Rails a JavaScript, decía que es famoso por publicar entradas tremendamente largas, pero se las apaña para mantener tu atención, a la vez que hace la lectura amena y divertida (aunque más complicada de leer en inglés, precisamente por eso). Cómo no, también ha escrito sobre singletons, pero más que odiarlos o quererlos, piensa de ellos que son... estúpidos ;-) En Singleton considered stupid también los estudia, pero esta vez desde un punto más "psicológico", más "social", más... no sé, mira: échale un looking, diviértete, y luego me cuentas.

Y vosotr@s, ¿qué opináis de Singleton? ¿Es un ángel caído o en nuevo santo que canonizar? ¿Comentarios? ¿Experiencias? ¿Críticas? ¿Algún billete suelto de 50 €? ¡Di algo! Si no, creeré que siempre tengo razón ;-)

Otherwise

They wanted me here just to show you my face, but when it comes to the crunch I just hide in disgrace. You're calling me mad but I know you're the same, 'cause you got to be seen to be playing the game, yes we got to be seen to be playing the game.

It ain't gonna hurt now if you open up your eyes, you're making it worse now everytime you criticise. I'm under your curse now but I call it compromise. I thought that you were wise but you were otherwise.

A specimen like you I would love to obtain. I asked a tedious guy if he'll tell me your name. I'd love to impress you with a back somersault, I want to take out your love, but it's locked in a vault, I wanna take up your love but it's locked in a vault.

It ain't gonna hurt now if you open up your eyes, you're making it worse now everytime you criticise. I'm under your curse now but I call it compromise. I thought that you were wise but you were otherwise.

When I open my mouth I'm so brutally honest and I can't expect that kind of love from you. When you open your mouth your teeth are beautifully polished and I can't extract the pain you're going through. No I can't explain the pain you're going through.

It ain't gonna hurt now if you open up your eyes. You're making it worse now everytime you womanise. I'm under your curse now but I call it compromise, I'm under your curse.

It ain't gonna hurt now if you open up your eyes, you're making it worse now everytime you criticise. I'm under your curse now but I call it compromise. I thought that you were wise but you were otherwise.

Otherwise, Charango
Morcheeba

viernes, junio 27, 2008

Solitude


Solitude, originalmente cargada por kainet.

Cambiar rápidamente la configuración de la impresora

Esta es una friky-entrada.

No hay cosa que más me aburra que cambiar las propiedades de la impresora cada vez que tengo que hacer algún "envío especial" (por ejemplo, a doble cara, en formato libro, o en A3 apaisado). Le das a imprimir, luego Propiedades, luego por cada pestaña buscando dónde cambiar cada valor... En fin, un rollo repollo (ya sabéis que los informáticos somos más bien tirando a vagos, sólo que decimos que "automatizamos lo que hacemos" :-).

Para evitarme tanta penalidad ;-) lo que hago es crear varias impresoras en Windows, pero todas apuntando a la misma impresora (física). A cada impresora (lógica) le puedes cambiar las propiedades independientemente de las otras. Te aconsejo que a cada impresora le pongas un nombre descriptivo. Luego, cuando voy a imprimir, elijo la impresora con la configuración que necesito.

Este truco sólo funciona para impresoras conectadas en local (o por red a través de un puerto), pero no para impresoras compartidas por otros ordenadores (a las que se accede con el nombre \\maquina\impresora).

Para crear una nueva impresora (lógica) que apunte a una impresora (física), sigue estos pasos:

  1. Haz clic en Inicio, luego en Panel de Control y luego en Impresoras y faxes.
  2. En la ventana que te sale, haz doble clic en Agregar impresora, luego clic en Siguiente.
  3. Selecciona Local y otra vez en Siguiente.
  4. En la lista de puertos selecciona el que ya usabas para tu primera impresora (lógica). Y claro, Siguiente. (Este es uno de los puntos importantes: estamos creando una nueva impresora pero que está apuntando a la impresora física, representada por el puerto).
  5. En la lista de impresoras, selecciona el modelo que tengas. ¿Siguiente? Sí, Siguiente. En este momento, puede preguntarte si quieres conservar el controlador o reemplazarlo. Lo mejor es conservarlo.
  6. Escoge un nombre descriptivo para la impresora y Siguiente. En el resto de los pasos puedes dejar las opciones por defecto. Por fin, cuando llegues al final, clic en Finalizar.

Y ¡voila, ya lo tienes! Ahora puedes cambiar las propiedades de la nueva impresora según tus preferencias. Yo utilizo básicamente tres. La primera es "Sábanas", y la tengo configurada para imprimir en A3 apaisado por una sola cara, muy útil cuando tengo que imprimir diagramas UML o E/R.

La segunda se llama "Doble cara" y su nombre habla por sí misma (por eso decía lo de los nombres ;-). Es A4 en horizontal a doble cara, para ahorrar papel.

Por último, la tercera se llama "Trabajos largos", y es una impresora que por defecto está pausada. Para no interrumpir el trabajo de mis compis, cuando el trabajo es mucho lo envío a esta impresora para que no se me olvide (porque tengo una memoria de pez tremenda, tremenda de mala quiero decir). Luego, en un momento de poco tráfico, le quito la pausa, y se la vuelvo a poner cuando termina de imprimir.

¡Espero que os sea útil!

jueves, junio 26, 2008

Ocho años

Todavía recuerdo como si fuera ayer mismo el abrazo eterno que nos dimos mi hermana y yo. Fue un te quiero infinito que hoy, después de ocho años, me une de una manera muy especial con ella.

Mariene

Te echo mucho de menos.

Comentario a "La Pastilla Roja"

Acabo de leer el post "Cobrar lo que se pueda a quien se pueda", de La Pastilla Roja, y no he encontrado la manera de realizar un comentario. Como no sé si están habilitados o no he sido bendecido con la habilidad de publicar comentarios ;-) publico esta entrada con la esperanza de que aparezca en la lista de trackbacks.

El artículo trata sobre el concepto de segmentación, y en particular de su aplicación al software. La segmentación se explica mejor con un ejemplo. Una compañía láctea envasa la misma leche (o para el caso, de calidad similar) con dos marcas distintas, una de ellas con un precio sensiblemente superior a la otra. Las personas con cierto poder adquisitivo tenderán a comprar la marca más cara (por prestigio, por calidad, porque son el target de la campaña de marketing o simplemente porque pueden), mientras que los más ahogados, económicamente hablando, cuidarán de su bolsillo comprando la más barata. ¿Motivo? Con una única marca y un solo precio perderían los ingresos provenientes de los que  pueden pagar más, y también los ingresos por parte de aquellos que no podrían pagar ese precio.

El caso es que recordé que todo esto lo había leído yo antes, junto con algunos comentarios acerca de por qué esta estrategia puede llegar a fallar, y es justo esta última parte la que quería aportar al post al que me refiero. Como digo, todo esto lo leí en un artículo llamado Camels and Rubber Duckies, en uno de los blogs tecnológicos más importantes y más divertidos, Joel on software, por Joel Spolsky.

(Ahora acabo de caer en la cuenta de que los que busquen el artículo de Spolsky, también encontrarán gratis el post de La Pastilla Roja ¡Larga vida a Internet! ;-)

miércoles, junio 25, 2008

La vida en juego

Donde pongo la vida pongo el fuego
de mi pasión volcada y sin salida.

Donde tengo el amor, toco la herida.

Donde pongo la fe, me pongo en juego.

Pongo en juego mi vida, y pierdo, y luego
vuelvo a empezar, sin vida, otra partida.

Perdida la de ayer, la de hoy perdida,
no me doy por vencido, y sigo, y juego
lo que me queda: un resto de esperanza.

Al siempre va. Mantengo mi postura.

Si sale nunca, la esperanza es muerte.

Si sale amor, la primavera avanza.

Ángel González

Shhh... Releela, poco a poco, lentamente... Deja que cada palabra resuene... Descubre su canción, respira su sentido...

¡Qué gran maestro!

Nautilitis

Hace tiempo publiqué un post sobre el nautilus en el que os comentaba que era uno de mis animales favoritos (me dejo pendiente un monográfico sobre "Animales que me gustan"), o mejor, que son animales con los que me identifico de alguna manera, unas veces claramente, aunque no por los motivos que uno pudiera pensar, y otras veces de manera tan oscura que casi estoy por preguntarle al psicólogo :-)

El caso es que mientras elaboro el monográfico os dejo con un vídeo que encontré via Fogonazos, llamado "La vida secreta del nautilo" y que me ha resultado muy interesante, porque completa la información que había buscado sobre estos hermosos animales. Disfrutadlo.

Y es verdad que tiene un fallo en la traducción, cuando dice que avanza con la concha por delante, para poder ver hacia dónde se dirige... ¿Será por eso que me siento identificado con él? Who knows!? En lo que no coincido es en lo de comer sólo una vez al mes :)

martes, junio 24, 2008

No claudiques

Si en la lid el destino te derriba
Si todo en tu camino es cuesta arriba
Si tu sonrisa es ansia insatisfecha
Si hay faena excesiva y vil cosecha
Si a tu caudal se contraponen diques
Date una tregua pero NO CLAUDIQUES.

Autor anónimo,
De una nota que mi padre llevaba en la cartera...

lunes, junio 23, 2008

El Principito

legiondelespacio_184

De "La Legión del Espacio".

Aunque estaría por decir que lo que han cometido es un sacrilegio, creo que por esta vez lo dejaré pasar, porque al fin y al cabo me han recordado uno de los libros que más me gustan ;-)

Alan M. Turing

Este mismo día, pero del año 1912 nació en Wilmslow (Inglaterra) el matemático, lógico y criptógrafo Alan M. Turing.

Turing es una de las principales y más destacadas figuras de la informática teórica. Entre sus contribuciones más importantes podemos apuntar las siguientes:

  • Desarrolló y formuló el concepto de algoritmo, por medio de su máquina de Turing, un modelo abstracto de ejecución (de hecho, cualquier ordenador por sencillo o complicado que sea, puede reducirse a una máquina de Turing equivalente). La aplicación más importante de este modelo matemático es la resolución de la cuestión planteada por David Hilbert acerca de la decibilidad de una proposición matemática (esto es, si existe un método para determinar si una proposición matemática es cierta o no). Turing demostró que hay problemas que efectivamente no son decidibles.
  • Durante la Segunda Guerra Mundial, trabajó en el descifrado de los códigos nazis, sobre todo el empleado en la famosa máquina Enigma.
  • Estableció un criterio para determinar si una máquina se podía considerar inteligente o no. Se dice que este test de Turing ya ha sido pasado por un programa, pero fue una confusión más que una prueba siguiendo un método científico. Un individuo estuvo conversando durante unos minutos con Eliza, pensando que era una persona.

Como homenaje, la Association of Computing Machinery (ACM) estableció un galardón con su nombre, para premiar a aquellas personas que han colaborado sustancialmente a la comunidad informática.

Sus documentos están disponibles en formato electrónico aquí.

domingo, junio 22, 2008

¡Ahivá! ¡La encuesta!

¡Casi me olvido!

Revisando el layout del blog he caído en la cuenta de que no presenté los resultados de la última encuesta planteada a mis amables lectores. Procedo pues.

Contestaron once visitas, de las cuales diez opinan que vivimos muertos, mientras que sólo uno piensa que vivimos muertos y que parecemos vivos. El discrepante, ¡oh, sorpresa!, es el que suscribe.

Explicaré mi opción, y pido perdón por la reflexión tan poco común sobre estos temas escatológicos.

¿Qué significa que vivimos muertos? Quizá que queremos aparentar que vivimos, hacernos la ilusión de exprimir cada segundo, que nos damos enteros a cada instante. O quizá quiera decir que ya hemos muerto en vida, que vivimos sin objetivos, sin metas y sin ilusiones, que la vida nos ha adelantado, que nos hemos detenido en nuestro caminar diario. ¿Significará quizá que no vivimos sumergiéndonos como debemos en la vida, en nuestra Vida?

¿Y que significa que parecemos vivos? Que a pesar de todo, no lo estamos, que es una fachada, una apariencia (una máscara), que parece que vivimos porque nos movemos, porque hablamos, porque reaccionamos (que no "accionamos", sino que respondemos pasivamente a la acción).

¿Y no es acaso todo eso lo mismo? ¿No se reduce todo al final a una sola cosa? Que nos ha sido dada una vida, no una cualquiera, sino la Nuestra. Y ninguna posibilidad de repetir: es una sólo.

Lo voy a repetir, para que no pase inadvertido:

Sólo tienes una Vida

Y no sabes cuándo te será arrebatada.

Sé que estos temas no son agradables, que la gente los evita, quizá pensando ingenuamente que si no se reflexiona o no se habla sobre ellos desaparecen. Casi como los pequeños que se tapan los ojos para esconderse de los demás. Pero una reflexión profunda del tema puede ser la clave para bucear por fin en cada pulsante momento de tu vida (todos elaboramos teorías, nos es fácil; algunos saben llevarlas a la práctica; los que menos tienen éxito... Por eso, no hagáis mucho caso de las mías).

Me vienen a la mente dos sugerencias de lectura: el muy breve Tratado sobre la Brevedad de la Vida, de Lucio Anneo Séneca, y el Bushido Shoshinshu (El Código del Samurai), de Taira Shigesuke.

Ya para terminar, y como una forma de equilibrio, las reflexiones sobre la inmortalidad del inimitable Santi Rodríguez.

(por cierto, por experiencia sé que todo lo que cuenta del cuchillo y las cebollas es tristemente cierto, uno de los gilipollas fui yo :-)

Thank you

How about getting off of these antibiotics
How about stopping eating when I'm filled up
How about them transparent dangling carrots
How about that ever elusive kudo

Thank you India
Thank you terror
Thank you disillusionment
Thank you frailty
Thank you consequence
Thank you thank you silence

How about me not blaming you for everything
How about me enjoying the moment for once
How about how good it feels to finally forgive you
How about grieving it all one at a time

Thank you India
Thank you terror
Thank you disillusionment
Thank you frailty
Thank you consequence
Thank you thank you silence

The moment I let go of it was
The moment I got more than I could handle
The moment I jumped off of it was
The moment I touched down

How about no longer being masochistic
How about remembering your divinity
How about unabashedly bawling your eyes out
How about not equating death with stopping

Thank you India
Thank you providence
Thank you disillusionment
Thank you nothingness
Thank you clarity
Thank you thank you silence

yeah yeah
ahh ohhh
ahhh ho oh
ahhh ho ohhhhhh
yeaahhhh yeahh

Thank you, Supposed Former Infatuation Junkie
Alanis Morissette

sábado, junio 21, 2008

Los dos extremos

"Ya pensé. Demasiado quizá. Es momento de pasar a la acción".

¡Qué grandes palabras! ¡Y qué vacías! ¡Y qué pobres! Nacieron ya muertas, no llegaron a llorar, apenas abrieron los ojos... Y dejaron de ser... Y si al menos hubieran sido una vez, quedaría de ellas su novedad, su unicidad, al menos serían por no ser otras, fugaces burbujas por encima del negro vacío, testigos de la nada. Pero ni siquiera eso. Fueron, son y serán. Nada las diferencia, todas pobres, todas muertas.

Mueren ellas, o muero yo. O muero porque mueren, y mueren conmigo.

[...]

Si apenas pudiera vislumbrar un camino, aunque apenas las lindes fueran visibles, si sólo un trazo, una pequeña señal, un algo después de otro, una flecha, un rastro, sólo eso... Y miro a mi alrededor y en todos sitios veo lo mismo o no veo nada. Y nada me indica, nada me dice. Ningún camino o cualquiera.

Todo detenido.

M. Roca Salazar,
De Génesis

Ejercicios calisténicos para objetos (IV)

En estas entradas, el término "calisténico" no hace referencia a ejercicios musculares (puedes encontrar información sobre eso aquí por ejemplo, o seguir buscando en google).

Ir a la introducción de esta serie.
Ir a post anterior.

4. Utiliza sólo una introducción punto por línea

Usa sólo un punto por línea. Este paso evita que tu código alcance profundamente a otros objetos para llegar a sus métodos o propiedades, y por tanto romper conceptualmente la encapsulación.

En definitiva, que te tienes que OlvidarDe.Llamar().AUnMetodo().TrasOtro() en la misma línea y UtilizarSolo.UnaLlamada()

De cara al interface público (es más, publicado) proporcionado al usuario de tus clases, no sé dónde se rompe la encapsulación. Encapsular es asignar cierta responsabilidad a un módulo (en el sentido de Parnas), y hacer que los secretos relacionados con dicha responsabilidad, por ejemplo algoritmos o estructuras de datos, queden efectivamente escondidos en ese módulo. Si quiero saber cuántos alumnos de Derecho reciben clase de un determinado profesor, ¿qué problema habría en escribir el siguiente código?

Universidad.EquipoDocente(idProfe).Docencia(Titulaciones.Derecho).Alumnos.Cuenta()

Por poner un ejemplo. ¿Dónde rompo la encapsulación? Es verdad que aumento la dependencia del usuario de un montón de objetos, y a lo mejor sería bueno crear una fachada, del estilo:

ServiciosDocentes.NumeroAlumnos(idProfe, Titulaciones.Derecho)

Pero al final, ¿no llevaría esto a tener una serie de clases con multitud de métodos, uno por cada ruta seguida a través de los puntos? Empiezo a pensar que esto va un poco de coña...

5. No abrevies los nombres

Esta restricción evita la "verbosidad" procedimental que se crea por ciertas formas de redundancia—si tienes que escribir el nombre completo de un método o variable, casi seguro que te llevará más tiempo pensar en su nombre. Y evitarás tener objetos llamados Pedido con métodos llamados enviarPedido(). En vez de eso, tu código tendrá más métodos del estilo Pedido.Enviar()

La traducción creo que no es muy buena (¿alguien sabe cómo se traduce "verbosity"?), así que lo pongo en el original.

This constraint avoids the procedural verbosity that is created by certain forms of redundancy—if you have to type the full name of a method or variable, you’re likely to spend more time thinking about its name. And you’ll avoid having objects called Order with methods entitled shipOrder(). Instead, your code will have more calls such as Order.ship().

Pues... totalmente de acuerdo. Es más ¿hay alguien que no lo haga así?

¡Espero vuestros comentarios!

viernes, junio 20, 2008

¡Orden!

Orden...

Orden en mi mente,
en mis pensamientos,
en mi cabeza,
en mis reflexiones,
en mi aprendizaje...

Orden en mi espacio,
en el trabajo,
en mi mesa...

Orden en el espacio y
orden en el tiempo,
orden en los objetivos,
orden en el contenido,
orden en la forma.

Orden en mi corazón,
en mis sentimientos...

Orden, por fin, en mi vida,
en mi.

Orden...

Y con el orden, la constancia. Y de la constancia, la voluntad, y de la voluntad la realización, y de la realización...

...de la realización espero que la felicidad.

A ver si sale. Muchas gracias don Enrique.

Listo

Bueno, pues como cada día (laborable), abro el Visual Studio .NET Advanced Enterprise Development for Enterprise Architects and the caña of Spain, y mientras espero a que desaparezca el relojito de la muerte que me indica que está intentando desproteger uno de los ficheros del proyecto, me fijo en la barra de estado:

Listo

Pues eso, y que me parece que no me está diciendo que está preparado, sino más bien otra cosa, quizá una insinuación:

Listo

Quizá le falte completar la frase:

Listo, que eres un listo

jueves, junio 19, 2008

(Casi) sin palabras

 

Lordy don't leave me all by myself (x3)
Good time's the devil I'm a force of heaven (x3)
Lordy don't leave me all by myself (x3)
So many time's I'm down down down (x3) with the ground

Lordy don't leave me all by myself (x3)
Whoa, in this world (x3) Lordy don't leave me all by myself

In this world, 18
Moby (el que se ata la zapatilla)

miércoles, junio 18, 2008

De la adaptación de una solución a un problema

Hoy todo el mundo habla de procrastinación, ya sabéis, el ir retrasando en el tiempo aquello que debe hacerse en favor de otras tareas menos útiles, pero más apetecibles.

Y a mi me sonaba que ya había escuchado esa palabra antes, mucho antes, allá por mis principios en el mundo universitario... Procras, procas, porcras... A la vista de la definición, estaba claro que no coincidía con lo que yo recordaba de la palabra: su historia. La palabra provenía del nombre de un individuo que tenía la desafortunada costumbre de hacer dormir a los altos en camas pequeñas y cortarles las piernas, y a los bajos en camas grandes y estirarlos hasta desmembrarlos. Claramente nada que ver con la procrastinación. Estaba claro que la palabra era otra, pero no conseguía recordarla.

El caso es que gracias a Santa Internet y por intermediación de San Google, con la plegaria "mitología griega cama altos bajos" por fin encontré la palabra. Procusto (del griego Προκρούστης, estirador) era el bandido y posadero que poseía esa extraña costumbre.

Imagen:Theseus Prokroustes Louvre G104.jpgEn la Wikipedia he encontrado que la palabra también se aplica a la informática. Se dice que una cadena es procusteana si es de longitud fija y, al almacenar texto en ella, se rellena con espacios al final si el texto es de menor longitud, y se truncan los caracteres sobrantes si es de mayor longitud. Esto da explicación a muchos fenómenos "extrañ" en ciertas "aplicaci".

Y aprovechando la charla, se me ha ocurrido pensar que los informáticos somos muy partidarios del procustismo porque, ¿cuántas veces no hemos intentado adaptar una solución a un problema, sin darnos cuenta de que lo estiramos y estiramos hasta desmemblarlo, haciendo que la solución deje de ser válida para el problema? ¿Y tantas otras veces que intentamos "recortar" aquí y allá una solución a todas luces inapropiada al problema que tenemos entre manos? Claro está que es de buen ingeniero aprovechar una solución de forma razonable para resolver un problema, pero todo tiene un límite: el de la Cama de Procusto (en términos de patrones: contexto, fuerzas, aplicabilidad, consecuencias...).

Gorillaz

A veces, la manera de encontrar algo es dejar que la mente vague libremente por la campiña de lo posible y lo imposible, explorando sin restricciones ni prejuicios el espacio de soluciones (y problemas), el jardín del millón de conceptos. Porque a veces la razón es un profesor demasiado riguroso, y una compañera demasiado estricta, y de vez en cuando viene bien darse un paseo sin collar por el parque de lo ridículo...

Reflexión pseudo-filosófica patrocinada por un periodo de procrastinación bastante importante en YouTube, que me llevó a encontrar por casualidad un par de vídeos que hacía siglos que no veía y que me molan. El primero es "Clint Eastwood" y el segundo es "19/2000", ambos de Gorillaz.

 

Y el otro:

 

Anunciados como una "banda virtual", es (porque sigue siendo) el proyecto de Damon Albarn, de Blur, en colaboración con otros músicos que han ido entrando y saliendo de la banda, a excepción del propio Albarn. La virtualidad se concreta en los dibujos de Jamie Hewlett, autor del conocido comic Tank Girl (del que se hizo una película). Los miembros de la banda son 2-D (vocalista principal de la banda), Noodle (guitarra y voz), Murdoc (que se apaña con el bajo), y Russel (percusión).

¿Y cómo hacen entonces para dar conciertos?

Así (ojo al volumen).

Citas

It is a paradoxical but profoundly true and important principle of life that the most likely way to reach a goal is to be aiming not at that goal itself but at some more ambitious goal beyond it.

"Es un principio de la vida paradójico, pero profundamente verdadero e importante, y es que la forma más probable de alcanzar un objetivo es apuntar no al objetivo en sí, sino a un objetivo más ambicioso y más allá de él".

Arnold Toynbee

Lo superfluo, algo tan necesario.

"Lo superfluo, algo tan necesario". ¡Ah, no! Que este ya estaba traducido...

Voltaire, filósofo francés (via Microsiervos)

The future is here. It's just not widely distributed yet.

El futuro está aquí. Sólo que todavía no está demasiado distribuido.
William Gibson

The most overlooked advantage to owning a computer is that if they foul up there's no law against whacking them around a little.

La ventaja que pasa más inadvertida de poseer un ordenador es que si destrozan algo, no hay ley en contra de sacudirles un poco.
Joe Martin

And remember, no matter where you go, there you are.

Y recuerda, no importa dónde vayas, ahí estás.
Earl Mac Rauch

Es un hecho importante y conocido que las cosas no son lo que parecen.

Douglas Adams,
Guía del autoestopista galáctico, via Microsiervos.

martes, junio 17, 2008

Morcheeba

¿Eras de los mios? ¿De los que sólo escucharon "Rome wasn't built in a day" de Morcheeba?. Por la amable sugerencia de Indye, os presento dos temas que no conocía y que me han encantado.

El primero de ellos se llama "Enjoy de ride", un hermoso tema que puedes escuchar en este video, con un extraño estilo de animación, pero que no ha dejado de gustarme (echadle un looking a la letra, tampoco tiene desperdicio):

El segundo tema se llama "Slow down", y es verdad que viene muy bien para desconectar al final del día... Si con ello no le quitara valor a la reflexión, diría que es el "¡relájate!" de Pablo Motos...

Y ahora, slow down and enjoy the ride...

Posibles posibles

En aquel momento comprendí cómo razonaba mi maestro, y me pareció que su método tenía poco que ver con el del filósofo que razonaba partiendo de primeros principios, y los modos de cuyo intelecto coinciden casi con los del intelecto divino. Comprendí que, cuando no tenía una respuesta, Guillermo imaginaba una multiplicidad de respuestas posibles, muy distintas unas de otras. Me quedé perplejo.

—Pero entonces —me atreví a comentar—, aún estáis lejos de la solución...

—Estoy muy cerca, pero no sé de cuál.

—¿O sea que no tenéis una única respuesta para vuestras preguntas?

—Si la tuviera, Adso, enseñaría teología en París.

—¿En París siempre tienen la respuesta verdadera?

—Nunca, pero están muy seguros de sus errores.

—¿Y vos? —dije con infantil impertinencia—. ¿Nunca cometéis errores?

—A menudo —respondió—. Pero en lugar de concebir uno solo, imagino muchos, para no convertirme en el esclavo de ninguno.

Me pareció que Guillermo no tenía el menor interés en la verdad, que no es otra cosa que la adecuación entre la cosa y el intelecto. Él, en cambio, se divertía imaginando la mayor cantidad posible de posibles.

El Nombre de la Rosa
(Cuarto día, vísperas, hacia el final)
Umberto Eco

Y ahora, amig@s informátic@s (y los que no lo sean también), ¿seguiremos tirándonos de cabeza a la primera solución que encontremos para un problema? ¿Creeremos que tenemos LA solución, o mejor UNA solución? ¿Será mejor elaborar un conjunto admisibles de posibles soluciones, de posibles posibles?

"Thinking please, thinking..."

lunes, junio 16, 2008

Star Guitar

En su álbum "Come with us", Chemical Brothers incluía un tema cuasi-instrumental (porque la letra no es más que esta: "You should feel what I feel / You should take what I tell you") llamado "Star Guitar". Lo más característico del tema es su vídeo. Mira a ver si ves a qué me refiero...

¿Lo has visto? ¿Sabes a qué me refería?

Si te fijas, los sonidos del tema (los samples) se corresponden con los objetos que el viajero en el tren ve por la ventanilla (casas, farolas, depósitos, coches, vagones con inmesas salchichas alemanas ;-)

Actualización (14/09/2008): Una curiosidad. En el vídeo de Could you, de Mojo Project, hacia el minuto 0:55 verás un guiño a este mismo vídeo.

Pero lo que más me ha sorprendido, procrastinando por ahí, en YouTube, es que hay un "making of" del vídeo: todo un ejemplo de prototipos en papel, prototipos evolutivos, pruebas de concepto, métodos iterativos, ... Todo muy informático y muy "ágil". Para disfrute de todos, he aquí el vídeo:

Libros de autoayuda

Magnifique!

Esperanza

Esperanza,
araña negra del atardecer.
Tu paras
no lejos de mi cuerpo
abandonado, andas
en torno a mí,
tejiendo, rápida,
inconsistentes hilos invisibles,
te acercas, obstinada,
y me acaricias casi con tu sombra
pesada
y leve a un tiempo.
Agazapada
bajo las piedras y las horas,
esperaste, paciente, la llegada
de esta tarde
en la que nada
es ya posible...
Mi corazón:
tu nido.
Muerde en él, esperanza.

Ángel González

domingo, junio 15, 2008

Sobre los consejos

Un consejo es algo que pedimos cuando sabemos la respuesta pero nos gustaría no saberla.

Erica Jong, escritora (via Microsiervos)

Siempre es bueno una tontería dar consejos, pero darlos buenos es fatal.

Oscar Wilde

La revisión tiene que ver con que encontré la frase original de Wilde:

It is always a silly thing to give advice, but to give good advice is fatal.

sábado, junio 14, 2008

Citas

Happiness is always a by-product. It is probably a matter of temperament, and for anything I know it may be glandular. But it is not something that can be demanded from life, and if you are not happy you had better stop worrying about it and see what treasures you can pluck from your own brand of unhappiness.

La felicidad es siempre una consecuencia inesperada. Probablemente tiene que ver con el temperamento, y hasta donde yo sé puede ser glandular. Pero no es algo que puedas exigirle a la vida, y si no eres feliz, harías mejor en dejar de preocuparte sobre ello, y ver qué tesoros puedes arrancarle a tu propio tipo de infelicidad.
- Robertson Davies

The true measure of a man is how he treats someone who can do him absolutely no good.

La auténtica medida de un hombre es la manera en la que trata a alguien del que no puede obtener ningún beneficio.
- Samuel Johnson

There is nothing new under the sun but there are lots of old things we don't know.

No hay nada nuevo bajo el sol, pero hay un montón de cosas antiguas que no sabemos.
- Ambrose Bierce

¡Atiéndame, por favor!

Acabo de ver por primera vez un anuncio en Internet que sigue la misma filosofía que inauguró Telemadrid (que yo sepa) hace años con sus "flashes", un aviso explicando que sólo íbamos a ver un anuncio, el anuncio en sí, y luego de nuevo el programa. ¿Cabía mejor estrategia para asegurarse la atención y evitar el odiado zapping?

Últimamente ya es muy habitual verlo en otras cadenas no autonómicas, en especial Antena 3 y Tele 5, en los que una voz en off, o el mismo presentador del programa, nos avisa de que volverán en breve. Esta buena práctica ha derivado en otras no tan buenas en las que nos avisan de que "sólo" van a tardar 5 minutos (o más) en volver, es decir entre 10 y 15 anuncios, tiempo más que suficiente para ordenar papeles, cepillarte los dientes, estirar las piernas y otro tipo de actividades importantes.

Imagino que el origen de todo esto puede tener que ver con esos anuncios que te animan a comprar el Butterfly Evolution, o el último BMW "por sólo 65000 euracos", y en el "sólo" va implícito que podría ser mucho más, y claro ¿quién querría perderse una oportunidad así? ¡Tener un baterflai evolusion por sólo 59,90 euracos de !

Rebobino pa'lante que estoy mu pesao. El caso es que hoy he visto en Internet un anuncio en el que te avisan de que puedes cerrarlo haciendo clic en una X que marca el sitio, o bien esperar 8, 7, 6... segundos... (un contador te dice cuántos quedan). ¡Justo el tiempo que dura el flash! Aunque tosco (porque en mi opinión todavía se podría mejorar y evitar que nos lancemos sobre la X sin ni siquiera darle la oportunidad de ser leído), la idea no me parece mala. Al menos, te paras a pensar entre cerrar o mirar, porque total, sólo van a ser 8 segundos. Ahora sólo deberían hacerlo atractivo para que nos decidamos por la opción de leerlo.

¿Y dónde lo has visto? ¿De qué iba el anuncio?

Pues oye, ahora no me acuerdo...

Actualización (2008.06.16): El que no tiene memoria, tiene post-its (marca registrada de 3M) y marcadores de FireFox. El anuncio salió al hacer clic en este enlace.

Libro geek: El Nombre de la Rosa

Y ya que estamos con Umberto Eco y su "El Nombre de la Rosa"...

Para él hubiera sido imposible, como semiólogo que es, no haber hecho girar todo el misterio de su novela detectivesca (llevada al cine con bastante acierto), alrededor de la confusión entre significante y significado, entre símbolo y esencia, entre la realidad de las cosas existentes ¿reales? y de las cosas pensadas ¿imaginadas?.

Atención, spoiler. Si no te has leído el libro o no has visto la película, no continúes. El siguiente texto contiene pistas que te podrían destripar la película (de mala manera).

Dicho lo cual, continuamos:

SECRETUM FINIS AFRICAE
MANUS SUPRA IDOLUM
AGE PRIMUM ET SEPTIMUM
DE QUATUOR

"La mano sobre el ídolo opera sobre el primero y el séptimo de los cuatro".

¡El primero y el séptimo de la palabra QUATUOR, no de su significado!. No entendían porque confundieron el significante con el significado. Y así nuestra "realidad" no es más que un jardín de símbolos en un cerebro que, con suerte, los manipula con habilidad.

50pipe Y "la verdad está ahí fuera" significa que lo existente es un jardín de ontologías sobre los que hemos creado un conjunto de símbolos, y sobre los que estamos de acuerdo. Sucede también que, bien manejados, la combinación de esos símbolos y una serie de reglas de la razón nos permite "predecir" el futuro, si hablamos de ciertos símbolos "causa" y ciertos símbolos "efecto". La base de nuestro conocimiento es el acuerdo tácito y dirigido por reglas "razonables" (¿derivadas de aquellos símbolos quizá?) acerca de los conceptos representados por símbolos, junto con una asociación causa-efecto (que Hume cuestionó, por cierto).

Pero no todo es tan fácil. Se debe ser muy preciso en qué símbolo se le quiere dar a qué significado, o arruinaremos el entendimiento. En una conversación informal, se puede permitir cierta ambigüedad y en ciertos casos es incluso necesario (por ejemplo, al contar un chiste), porque la información imprecisa se puede obtener más o menos fácilmente del contexto del receptor. Pero en una conversación más formal, la imprecisión no tiene lugar.

Vale, quillo, ya... lo he pillado ¿y qué?

Pues que si a esta reflexión acerca de la representación por medio de símbolos de conceptos pre-existentes "ahí fuera", junto con la precisión de los símbolos utilizados en la comunicación, le unes ciertos juegos lógicos dispersos por el libro, y lo yuxtapones a ciertas referencias a la criptografía, lo que tienes es que "El Nombre de la Rosa" es un libro geek, friki total, informático 100%.

Ya bueno, lo único que además habla de herejías y religión y... ¿y eso?

Exacto. Pues te sorprendería saber la fe que le tienen algunos a ciertos IDE, la devoción rayana en el fanatismo a una tecnología, las experiencias místicas de otros contemplando la luz de un patrón de diseño, las apostasías de los seguidores de Windows reconvertidos en Linux por obra y gracia del código abierto, y las veces que algunos heresíacos del demonio mencionan equivocadamente el santo nombre de Parnas en vano, y ahogan sus enseñanzas bajo toneladas de código innecesariamente complejo... ¡A la hoguera!

Creo que es mi deber sugerirte que te replantees lo que te propuse hace unas entradas de ir al psicólogo... Conozco uno muy bueno que...

Nop.

viernes, junio 13, 2008

Mirar mejor

— Pero ¿quién tenía razón? ¿Quién tiene razón? ¿Quién se equivocó?— pregunté desorientado.

— Todos tenían razón, todos se equivocaron.

— Pero vos —dije casi a gritos, en un ímpetu de rebelión—, ¿por qué no tomáis partido? ¿Por qué no me decís quién tiene razón?

Guillermo se quedó un rato callado, mientras levantaba hacia la luz la lente que estaba tallando. Después la bajó hacia la mesa y me mostró, a través de dicha lente, un instrumento que había en ella:

— Mira —me  dijo—. ¿Qué ves?

— Veo el instrumento, un poco más grande.

— Pues bien, eso es lo máximo que se puede hacer: mirar mejor.

El Nombre de la Rosa
(Tercer día, nona, hacia el final)
Umberto Eco

Citas

The best way out is always through.

"El mejor camino para salir es ir de frente".
- Robert Frost

We are continually faced with a series of great opportunities brilliantly disguised as insoluble problems.

"Continuamente nos enfrentamos a una serie de grandes oportunidades, brillantemente disfrazadas de problemas sin solución".
- John W. Gardner

There are many who dare not kill themselves for fear of what the neighbors will say.

"Hay muchos que no se atreven a suicidarse por miedo a lo que los vecinos puedan decir". (¿"suicidarse" o "matar ellos mismos"?).
- Cyril Connolly

jueves, junio 12, 2008

Capítulo II. Ready to go

You're weird, in tears, too near and too far away, He said, saw red, went home stayed in bed all day, Your t'shirt, dish dirt, Always love the one you hurt.

It's a crack, I'm back yeah standing on the rooftops shouting out. Baby I'm ready to go, I'm back and ready to go. From the rooftops shout it out. It's a crack, I'm back yeah standing on the rooftops having it. Baby I'm ready to go I'm back and ready to go. From the rooftops shout it out, shout it out.

You sleep, too deep, one week is another world, big mouth, big mouth, drop out, drop out, you get what you deserve. You're strange, insane, one thing you can never change.

It's a crack, I'm back yeah standing on the rooftops shouting out, Baby I'm ready to go. I'm back and ready to go. From the rooftops shout it out, It's a crack, I'm back yeah standing on the rooftops having it. Baby I'm ready to go I'm back and ready to go. From the rooftops shout it out, shout it out

Abused, confused, always love the one that hurt ya hurt ya hurt ya.

It's a crack, baby I'm ready to go Baby I'm ready to go...

"Ready to go" @ Republica,
Republica

Capítulo II

A pesar de la crisis, hoy necesito combustible para arrancar un nuevo motor.

013_shuttle

Imagen poco usual de una de las toberas del Shuttle.
Más
aquí.

Ahí van las primeras dosis:

La primera, por alusión directa al tema de este blog...

La segunda por que me gusta y yastá y sacabó y unanomássantotomás y lodijoblaspuntoredondo y punto (enboca):-)

Ahora vuestro turno ¿qué cosas por ahí os funcionan de combustible?

miércoles, junio 11, 2008

Decidir

No siempre a uno le gusta hacer lo que debe hacer. Decidir, elegir en cada pequeño instante de entre todas las posibilidades que se nos ofrece, eso es precisamente vivir. La frase no es mía. El Maestro Ortega ya dijo el siglo pasado que vivir es decidir el paso qué nos mantendrá vivos. No nos damos cuenta, pero lo hacemos constantemente. En cada milésima de segundo, nos vemos en la disyuntiva, en la encrucijada de caminos, ante la duda, evaluando cada alternativa, cada rama. Sólo que no nos damos cuenta. Un paso nos levanta, un paso nos viste, un paso nos alimenta, un paso nos hace avanzar, otro nos hace retroceder, uno nos lleva lejos de donde estamos, otro hace que demos vueltas sobre el mismo sitio.

Cada una de esas decisiones nos mantiene vivos, aunque la gravedad de tomar una u otra no influye significativamente en nuestra vida, en la manera en la que vivimos. ¿Tomaré un café o será té? ¿Voy hoy casual o será mejor ir más formal? ¿Qué línea tomo, la 8 o la 10? ¿Qué tarea haré primero? ¿Iré hoy a comer con los compañeros? ¿En el comedor o fuera? ¿Qué restaurante? ¿Pagaré con tarjeta o saco dinero del cajero? ¿Termino esto o lo dejo para mañana? ¿Procrastino con esta página, con este blog, con este twitter o me dedico a mi? ¿Hablo o callo?

Otra sin embargo, son determinantes para seguir vivos. Algunas tan determinantes que ni siquiera suponen un problema, porque todas las alternativas quedan descartadas inmediatamente. Simplemente no las haces. Si las haces, tu vida corre peligro. Y de esa forma, nadie se pregunta si meterá los dedos en el enchufe, o si debería dar el último paso en el abismo de los railes del metro, o si debería comer una tajada de pescado que tiene el mismo color que una lechuga. Salvo los suicidas.

Y sin embargo, la vida a veces te plantea ciertas decisiones para la que no hay camino claro, ni fácil. El Manual de la Vida (en su trigesimosexta edición ya) termina con ellas. Sólo las presenta, las comenta superficialmente y termina ahí. No hay más capítulos, no hay más secciones. El índice no tiene ninguna entrada, la tabla de contenido se rompe y queda en voladizo.

Esas decisiones reciben en psicología un horrible nombre, que poco ayuda: conflictos de atracción-repulsión. No me gusta la palabra repulsión... Pero me estoy desviando del asunto. Es la decisión que te plantea cruel e inmisericorde, y en la que todos los caminos terminan en desfiladero, la misma Vida. Es la decisión que nunca querrías tomar. ¿A quién quieres más? ¿A mamá o a papá? ¿Con qué arma desea batirse? ¿Sable, florete o arma de fuego? ¿A cuál de tus dos hijos salvarías si tuviera que morir el otro? ¡No quiero!

Soy una duda gigante, una interrogación, un tal vez, un quizás, un no sé, un no sé cuánto. Y con el paso del tiempo maduro, envejezco y a hostias aprendo. Duele pero aguanto. Y desconfío de aquellos que lo tienen todo más claro que el agua, ¡qué miedo!, ¡qué espanto! Hipócritas falsos. Que yo prefiero dejar el desierto repleto de huellas, errores y aciertos, buscando...

Y la crueldad se mide en los inexistentes caminos de salida, en los senderos imposibles. Te recorre el ánimo la martilleante sensación de qué da igual el rumbo que elijas porque no hay soluciones de compromiso, no hay ideas felices. Por algún sitio rompes, la Vida sabe. Por algún sitio quiebras, por algún lado mueres.

A veces creo que la Vida te lo da todo cuando naces, y a medida que creces, te lo va arrancando poco a poco con dolorosos bocados. No es que sea malo, ni bueno. Es. Quiero creer que es cierto eso que dicen de que con cada cincelazo, la Vida te quita un pedazo, pero también te va haciendo. Espero que sea eso... Los mordiscos tienen desde la forma más ingenua, porque los Reyes no son tan Magos como uno pensaba, hasta la más cruel, quitándote sin que quieras a quien no debería de tu lado, sin explicaciones.

Y escoges. Ese mordisco, esa sonrisa de la que sabe que las tenía todas ganadas antes siquiera de empezar la partida...

No me conformo con media verdad, ¿qué mentira cochina será si me leo el sumario?. Quiero saber que hay debajo de sus limpias togas, juzgar a los jueces que a mi me juzgaron, y no sentirme culpable de todo, de nada me sirve saber si está bien o es pecado. Si la intención era buena me basta, yo dicto mi propia sentencia, y estoy perdonado.

Pero yo, yo no he sido. Yo, yo no he sido. Yo no he sido, yo.

Y cargas con la decisión, porque no puedes coger el tallo de la libertad sin la flor de la responsabilidad. Y a hostias aprendes. Y admites todas las maldiciones que la gente te quiera echar. E incluso, como si eso ayudara, tomas también las que no son tuyas. Y das por bueno el sufrimiento que te mata, y el que diste, y a la vez que te quema te va reconstruyendo, porque no queda más remedio. Porque la Vida, inconsciente, sigue su camino, y en él tú.

Y tengo clara tan sólo una cosa en la vida, que tú fuiste la mía y te he deseado, que tú viniste a llenar de ilusión esta casa que fue tuya y fue mia aunque yo vuelva llamando. Si no me quedo jugando contigo y echando una siesta a tu lado y me marcho volando es porque las despedidas me matan y llevo en el coche colirio, me sueno y arranco.

Y arranco, y ardo con él como si fuera un fénix, y empiezo mil veces el camino. Levanto anclas, suelto amarras y echo la vela al viento. Y me llevo el pasado, con el corazón deshecho, con los jirones colgando de los recuerdos y el dolor en cada paso. Y cualquier cosa te trae su aroma, y en todas partes ves sus ojos, y los números ya no son lo mismo, y las calles están vacías y la risa recuerda. Y recuerdas. Y cada recuerdo es alfiler invisible y dañino, y sin embargo es una pluma que te acaricia y no quieres quitarla porque morirías en ella, y no quieres dejarla clavada porque te está matando.

Hay en el fondo del mar una llave que esconde la frase prohibida que nunca te canto. Y por respeto a la Vida le cedo mi asiento al Amor y la Muerte y me alquilo un palacio: cuarenta metros cuadrados con dos balconcitos por donde las musas se cuelan volando. Comparto mi habitación con el barrio y serás, ¿cómo no? la más vip de mis invitados.

Y crees que no hay amarras, que las anclas están fuera del agua, que el viento que llenó la vela te llevará a nuevas aguas, quién sabe si mejores o peores, nuevas. Pero no miras al frente, con las manos en el timón como el pirata que soñaste de pequeño, con los ojos oscuros y tristes puestos muy lejos del horizonte que adivinabas, de espaldas a él. Y miras y quieres alegrarte de que no hay cabos ni sogas, que zarpaste.

Pero entornas lo ojos... y las ves... ahí... Cables y áncoras que te atan, no a tu barco, sino a ti mismo como extensiones de tu propia piel, de tus ojos, de tus manos de todo tu. Y no quieres cortarlas, ¡no puedes! ¡Son tú eres ellas! ¿Quién quiere suicidarse? Aun así sacas fuerza que no tenías, y coraje que perdiste, y lloras eterno, y cada lágrima es aquel alfiler, todas las lágrimas, y con sus hojas afiladas cortas mientras gritas. Cortas y mueres.

Mueres, si acaso para nacer de nuevo, intentarlo.

Por eso, amig@s, final del capítulo I.

Pregunta de psicólogo: "¿no te das cuenta de que le estás echando la culpa a la Vida, a tú Vida, algo que tu mente crea para que no te enfrentes de verdad a ti mismo? Debes coger tu vida por el mango y decidir lo que...".

Pare. También decidí ahí.

Yo, yo no he sido. Yo, yo no he sido. Yo no he sido, yo.

Está claro que ya no puedo escuchar a Tontxu...

Fin del capítulo I

Pues eso, amig@s.

Fin del capítulo I

Dolor del vencedor

Para sorpresa de propios y extraños, el Dr. Wituki descubrió que en Google, la expresión "dolor del vencedor" sólo aparecía una única vez, en los anexos de un estudio sobre Al-Andalus.

1 de septiembre de 1054. Atapuerca. Batalla entre los ejércitos de los reyes hermanos Fernando I de Castilla y García III de Navarra, que ni los ruegos de San Iñigo, abad de Oña, ni los de Santo Domingo de Silos, logran impedir. Acaba con la derrota y muerte del segundo, víctima de una lanzada, con gran dolor del vencedor.

Curso: Historia de Al-Andalus. Anexo 2: Cronologías y Mapas. Centro de Estudios del Medio Oriente Contemporáneo. Córdoba, República Argentina.

En unas breves declaraciones ante la prensa local, el Dr. Wituki afirmó que en dicho descubrimiento ha encontrado una motivación aún más fuerte para investigar este curioso hecho, aparentemente contradictorio, y sobre el que espera poder arrojar más luz en el futuro.

Seguiremos informando...

Citas

Elections are won by men and women chiefly because most people vote against somebody rather than for somebody.

("Los que ganan las elecciones lo hacen principalmente porque casi toda la gente vota contra alguien en vez de a favor de alguien")
- Franklin P. Adams

The only time people dislike gossip is when you gossip about them.

("El único momento en el que a la gente no le gustan los cotilleos es cuando cotilleas sobre ellos")
- Will Rogers

The only time to buy these is on a day with no 'y' in it.

("El único momento para comprarlas es en un día que no tenga 'y'")
- Warren Buffett

La última cita tiene todo el sentido en inglés porque todos los días terminan con "-day", así que ningún día es bueno para comprarlas. En castellano, no he encontrado ninguna regla. Se aproxima mucho "que no tenga una s", pero no funciona para el domingo. Tampoco funciona "que no tengan una e", que falla para sábado y domingo. ¿Alguna sugerencia?

lunes, junio 09, 2008

101 razones para hacerte autónomo

Hace unos días, leyendo El Blog Salmón, leí sus comentarios sobre una de las medidas del Ministerio de Industria para frenar la crisis. Una de ellas, tenía que ver con la creación rápida de empresas:

La medida que me resulta más interesante es la reducción de la burocracia a la hora de crear una sociedad limitada. Según el plan, en 24 horas y pudiendo tomar como respuesta positiva el silencio administrativo, cualquier persona puede formar una S.L. Medida muy necesaria, para así fomentar la creación de empresas, aunque debiera ser acompañada de otro tipo de medidas para fomentar el autoempleo. Por ejemplo, que un autónomo que comienza y no tiene ingresos no tenga que pagarse la Seguridad Social. O hacer más compatibles el trabajo por cuenta ajena y cuenta propia, pues es difícil dar el salto. Estas cosas reducirían los trámites y a lo mejor animan a alguien, aunque lo verdaderamente importante es lograr calar en la sociedad que la forma más directa para hacerse rico no es la lotería, sino el autoempleo :-)

Y como en España seguimos teniendo (en parte) esa mentalidad de "un trabajo de funcionario para toda la vida", he pensado que sería interesante dar algún motivo que otro y convencer a la gente para echarse al monte del freelancer. Gracias a Dios, HR World Editors lo ha hecho mejor de lo que podría hacerlo yo, y ofrecen sus "101 reasons freelancers do it better" (101 razones por las que los autónomos lo hacen mejor; en inglés).

Entre las razones más divertidas: nada de reuniones sobre nada, puedes comprar cuando no hay nadie en el super, puedes quedar con el fontanero cualquier día entre el miércoles y el viernes, la ropa casual vale más barata, te ahorrás una pasta en limpiar tus trajes, puedes escoger a tu jefe, te llevas todo el crédito por lo que haces... La lista es enorme, pero muy divertida de leer... Ánimo...

(No sé si hay traducción, pero si os interesa y tengo tiempo, lo podría traducir, o mejor, dividimos el trabajo entre los que pilotéis en inglés y así tardamos menos ;-)

Acción Bloguera en Solidaridad con El Correo

Martin Varsavsky, el que fuera fundador de Jazztel y Ya.com ha promovido una acción bloguera en solidaridad con los trabajadores y periodistas de El Correo. En sus propias palabras:

Siendo Argentino nunca entendí bien el tema de ETA. Pero dentro de mi falta de conocimiento en profundidad hay algo que tengo claro. Cualquiera que sean los objetivos de ETA bombardear medios periodísticos no puede ser una estrategia aceptable. Es más, para mi un grupo armado que bombardea medios para llegar al poder es un grupo que está poniendo claro la clase de dictadura mediática que establecería si llegara al poder. Es por eso que opino que todos los democrátas en el amplio sentido de la palabra tenemos que estar en contra de este horrible atentado. Me imagino a los 50 trabajadores que no solo tienen que estar en sus puestos de trabajo a las 3 de la mañana sino que de ahora en más estarán aterrorizados a las 3 de la mañana recordando este horroroso incidente y preocupados por la próxima locura que vaya a ocurrir.

Pensando más en qué podríamos hacer los blogueros por los periodistas de El Correo hoy se me ocurrió una idea concreta y es enviarles tráfico. Como la llamó Ricardo Galli, una campaña de visitas contra las bombas. Así que aquí va mi enlace e invito a todos los blogueros a que hagamos lo mismo así hoy el día del atentado, sea también el día más leido de El Correo.

¡No faltaría más! También desde la Red se puede colaborar.

¡Mucho ánimo! ¡No podrán con nosotros!

Worldwide Developers Conference 2008

Para los que queráis seguir la WWDC 2008, podéis conectaros a Applesfera, donde hacen un seguimiento en directo del evento. Veremos que se saca Jobs de la manga... :-)

Además, tengo ganas de ver si Steve sigue el mismo esquema del que ya he publicado una entrada.

Actualización (19:11): iPhoneAlley ofrece un streaming del audio. Tardará muchísimo en entrar, pero si tenéis suerte, podréis escuchar más o menos bien a Steve Jobs.

Actualización (19:21): Puedes seguir también el evento desde MacRumorsLive.

Mi próximo MixCD

Me tengo que hacer un disco con canciones sólo de este tipo... Son tranquilas, y a la vez, de fondo, les recorre una especie de mensaje optimista... No sé cómo expresarlo. Mejor escuchad.

domingo, junio 08, 2008

Mi introducción en la música electrónica

Este fue el primer tema que oí de Kraftwerk, de los que luego aprendí que fueron los pioneros en la música técno/electrónica y que tanta influencia ha tenido en bandas posteriores. El tema, "Music Non-stop" apareció en el album "Electric Cafe", del año 1986. El vídeo puede tener un toque "retro-informático", pero para la tecnología disponible en ese año, el vídeo es una pasada. Kraftwerk fue el responsable de que el virus de la música electrónica me hiciera enfermar con otros virus como Jean Michel Jarre, Depeche Mode, Chemical Brothers, Leftfield...

 

(también podéis ver una versión en vivo aquí)

Su sitio web tampoco tiene desperdicio. Minimalistas como son, parece que el sitio se creo cuando la única programación posible era en ensamblador, en pantallas de fósforo verde de 80x25 (¿se acuerda alguien de ellas?).

Otros temas que dejaron su marca fueron "Autobahn" (1975),  "Trans Europe Express" (1977) o "Das model" (1980), entre los más conocidos.

Su último trabajo se publicó el año 2005, titulado "Minimum-Maximum", e incluye un repaso de su tour durante el año 2004. Sus próximos conciertos tendrán lugar en Krakovia en el "Sacrum-Profanum Festival", del 19 al 21 de septiembre de 2008.

Cómo empecé en el desarrollo de software

Mike Eaton publicó hace unos días un post en el que pretendía conocer mejor a sus tweeps (sus amigos en twetter). Y proponía una serie de preguntas, relacionadas con la manera en la que cada uno de ellos había empezado en el mundo del desarrollo de software. Las preguntas (y las respuestas de Mike) puedes verlas aquí. Como no puedo evitar ver un test sin contestarlo (son buenas maneras de conocerse uno a sí mismo), las mías van a continuación (vía Matt Blodgett's Dev Blog).

¿Cuántos años tenías cuando empezaste a programar?

Mi primer programa (uno que cambiaba el color de fondo de la pantalla cada pocos segundos) lo hice con 11 o 12 años.

¿Cómo empezaste con la programación?

Mi padre me llevó a un curso de lenguaje Basic organizado por la Escuela de Minas, allá por el año 83. Lejos de tener un conjunto uniforme de máquinas, allí te podías encontrar con un Commodore 64, con un TRS-80 de RadioShack, o con el Oric-1, el primer ordenador que tuve en mi vida. Creo que mi padre nunca fue consciente de la (buena) forma en la que cambió toda mi vida desde entonces.

¿Cuál fue tu primer lenguaje?

Como dije antes, Basic (la versión de Oric, claro).

¿Cuál fue el primer programa de verdad que escribiste?

El de verdad no sé, el primero del que me sentí orgulloso de verdad fue uno que resolvía la salida de un laberinto utilizando tipos abstractos de datos y backtracking, un ejercicio de la asignatura Estructuras de Programas y Datos (EPD).

¿Qué otros lenguajes has usado desde que empezaste a programar?

¡Uff! Pascal, Modula 2, Caml, ML, Java, C, C++, C#, Visual Basic (nada que ver con el primitivo Basic), Lisp, ensamblador (6502, Z80, Saturn de HP), JavaScript, PHP, scripts de shell Unix, awk, los lenguajes de programación de las HP 15C y la HP 28S, dBase, macros de Excel, macros de Word (WordBasic)... (¿el vídeo no cuenta?) ¡Yo qué sé cuántos!

Si hubieras sabido lo que sabes ahora, ¿habrías empezado a programar?

Sin ningún género de duda. Sé que me podría haber ganado la vida haciendo otras cosas, pero sé que no hubiera disfrutado tanto, ni hubiera sido tan feliz con mi profesión.

Si hubiera una cosa que aprendiste en este tiempo que te gustaría decirle a los nuevos programadores, ¿qué sería?

Que después de todos los lenguajes de programación que he aprendido, al final caí en la cuenta que el más complicado de aprender es el que te permite hablar y comunicarte con los demás seres humanos. Por más que te guste el mundo de los ordenadores, nunca, nunca pierdas el contacto con la gente. Hablar con las máquinas es fácil. Hacerlo (bien) con los humanos, no.

¿Cuál ha sido el momento más divertido que has tenido programando?

No puedo decir que haya tenido muchos, pero los que he tenido siempre han tenido que ver con lo mismo: diseñar un programa y ver que más adelante, acepta cambios de forma suave, no traumática, en la que todo parece encajar perfectamente... Como si tu diseño fuera un Tetris sin agujeros. Esos momentos oscurecen a todos los demás. ¿El más relevante? Durante el diseño del framework de persistencia para iPDI.

Y ahora, querid@ lector, ¿cuáles serían tus respuestas?

Como si fuera tan fácil

no-sentir-cartel

Via WTF? Microsiervos

sábado, junio 07, 2008

Feria del Libro de Madrid

Es una de esas ferias en las que no me importa que esté hasta arriba. Hoy, por sábado y por buen tiempo, apenas se podía andar sobre todo a última hora de la mañana.

Imagen020

Este año he ido más a lo directo, sin mirar con detalle cada una de las casetas, y he terminado con cuatro libros: "El azar y la necesidad" de Jacques Monod, "Contra la comunicación" de Mario Perniola, "Y si habla mal de España... es español" de Fernando Sánchez-Dragó y "Cosas nuestras" de Antonio Gala (un tetrabiblos de la década de los 80).

Cuando el señor Gala me preguntó por mi nombre y se lo he dicho, me lanzó una mirada medio socarrona, medio cómplice y me soltó: "¡Cómo te gusta llamar la atención! Lo normal es llamarse José Antonio o Miguel Ángel pero...". Como me suele pasar, cuando me encuentro con una persona que admiro, me quedo sin palabras, y mi cara viste una especie de sonrisa tonta, pero bueno. Y no se preocupe, señor Gala, haré por compartirla (el qué, queda entre él y yo, lo siento)...

Imagen021

Por su parte, el señor Sánchez-Dragó incluyó un doliente "¡Ay, España!" en la dedicatoria, que me dejó pensativo durante unas cuantas casetas más...

Este año tiene además como novedad que la Universidad Pontificia Comillas ha hecho acto de presencia en ella por primera vez. Aunque los libros que ofertaban puedo adquirirlos directamente en la Librería de la Universidad, decidí pasarme para curiosear. Allí encontré a las profesoras Ana Berástegui (que me regalo un marcapáginas magnético ;-), y la profesora Blanca Gómez Bengoechea, que firmaban sus trabajos.

El reto principal de la Ingeniería del Software

For some scientists, software development is a branch of mathematics; for some engineers, it is a branch of applied technology. In reality, it is both. The software developer must reconcile the abstract concepts with their concrete implementations, the mathematics of correct computation with the time and space constraints deriving from physical laws and from limitations of current hardware technology. This need to please the angels as well as the beasts may be the central challenge of software engineering.

Meyer, B. Object-Oriented Software Construction, 2nd edition, pag. 8. Prencite Hall, NJ.

Traducción libre del que suscribe: "Para algunos científicos, el desarrollo de software es una rama de las matemáticas; para algunos ingenieros, es una rama de tecnología aplicada. En realidad, es ambas cosas. El desarrollador de software debe reconciliar los conceptos abstractos con sus implementaciones concretas, las matemáticas de la computación correcta con las restricciones de espacio y tiempo derivadas de las leyes físicas y de las limitaciones de la tecnología actual del hardware. Esta necesidad de complacer a los ángeles, así como a las bestias bien puede ser el reto central de la ingeniería del sofware.

Recopilatorio sobre Pablo Soto

Voy a poner mi granito de arena en todo esto. Os ofrezco un recopilatorio de noticias relativas a la demanda interpuesta por Warner, Universal, Emi y Sony.-BMG, con la ayuda de Promusicae, contra Pablo Soto, el creador del llamado "Naspter español", un protocolo P2P de intercambio de ficheros llamado Manolito. (por ahí están intentando hacer reingeniería inversa para poder ofrecer un cliente de código abierto, OpenLITO).

Más en Microsiervos, en La Voz de Galicia, en ADN, en La Petite Claudine (Marta Peirano), en El Mundo, Antonio José Chinchetru en Libertad Digital, en la Asociación de Internautas, en Cinco Días, en 20minutos, en error500, y en el blog del propio Pablo. En inglés, más sobre Pablo en la Wikipedia, en Los Angeles Times y en TypicallySpanish.

Una perla: la entrevista que Terra le hizo hace ya cuatro años.

Actualización (2008-06-07): Enrique Dans ha publicado una apasionada y vehemente entrada en la que critica las acciones de Promusicae.

viernes, junio 06, 2008

Pulgada a pulgada

No voy a esperar ni un segundo a ponerlo.

Vía Pymes y Autónomos.