Confidare Weblog

Archive for March, 2006

El retroprograma del… ¿mes? MINOTAUR.BAS

por jcataldo el Mar.30, 2006, bajo Nostalgia

Es cierto, estos últimos tiempos han estado bastante movidos en todos los ámbitos, de manera que quedé muy atrás en las publicaciones de “El retroprograma de la semana”. Para empezar a ponerme al día, hoy presento a MINOTAUR.BAS.

¿Qué puedo decir sobre este programa? Lo más significativo consiste en que es el mejor ejemplo de un software que comienza siendo algo y va transformándose en el camino en una cosa diferente. Al principio, éste no era sino un ejercicio para demostrar un algoritmo simple de construcción de “laberintos”: se recorre una grilla de puntos en la pantalla y en cada uno de ellos se traza una línea hacia uno de los puntos circundantes vertical u horizontalmente.

Para ilustrar cómo el programa fue mutando voy a presentar una conversación imaginaria entre el área “creativa” y el área “ingenieril” de mi mente (cualquier similitud con el show “Dentro de la Cabeza de Herman” es mera coincidencia).

— Pero, ¿y si pudiéramos recorrer el laberinto con el teclado?
— Basta agregar un ciclo que lo consulte y en base a la tecla pulsada actualice nuestra posición en la pantalla (representada por un punto). Por supuesto, no dejaremos que atraviese las paredes o los bordes.

— Muy bien, pero, ya que estamos dentro, ¿por qué no darnos un objetivo?
— Creemos otro punto que aparezca periódicamente en una posición aleatoria de la pantalla, y que debamos “comernos” para recolectar puntos hasta un límite que nos permita abandonar el laberinto (y visitar el próximo).

— Pero es muy aburrido tomar largos desvíos para atrapar al objetivo. ¿Hagamos que nuestro punto pueda atravesar las paredes?
— Así tal cual el laberinto dejaría de tener sentido. Mejor simulemos una “excavación” del punto a través de la pared, o sea, que deba intentar avanzar unas cinco veces antes de derribarla. Para que se cumpla el principio de conservación de la masa, démosle un punto de recolección cuando lo haga.

— Esto es entretenido, pero, ¿dónde está el peligro?
— Muy bien, creemos un némesis que sea controlable con el joystick de manera similar a nuestro “punto” original, y pongámosle como objetivo atraparlo para que pierda. Para no confundirnos, llamemos al punto original “el recolector” y al nuevo “el perseguidor”.

— Pero, seamos realistas, ¿cada cuánto tiempo viene el Eduardo a jugar?
— Ya, ya. Pongámosle “inteligencia artificial” al perseguidor. Heurísticas simples nada más: hagamos que se mueva en la dirección del recolector hasta atraparlo o topar con una pared. Si lo segundo ocurre, hagámoslo moverse un poco perpendicularmente antes de seguir, a ver si se zafa.

— ¡Wow! ¡Cuando está cerca ese perseguidor es implacable!
— Ejem, bueno, no esperarías menos, pero, hagamos otro “para niñitas”, que simplemente rebote de acá para allá creando nuevas paredes que el recolector tenga que atravesar.

— Excelente, pero ¿y si variamos los tipos de laberintos? ¿y los tamaños de los pasillos? ¿y si hacemos que algunas paredes no sean cavables? ¿y si el recolector pudiese utilizar lo recogido para crear sus propias paredes y así bloquear al perseguidor? ¿y si el recolector tuviese un “botón de pánico”, que lo rodeara de paredes y lo salvara del perseguidor? ¿y si aparecieran líneas aleatoriamente mientras los puntos se mueven? ¿y si algunas de esas líneas fueran de un color “venenoso”, que hiciera perder inmediatamente al recolector al tocarlas? ¿y si integráramos esa nueva rutina que implementa un reloj de tiempo real, aunque no tenga nada que ver? ¿y si…
— !

Supongo que captan la idea. Así fue como terminé con este espagueti de código, de todas mis creaciones sin duda una de las más parecidas a Frankenstein. Ahora bien, aunque la gráfica sea en extremo simple, jugar MINOTAUR es entretenido. Bueno, al menos para mí :D

MINOTAUR.BAS. 12.4KB en memoria. 274 líneas. Escrito en 1993-1994.

(continue reading…)

Escribe un comentario más...

FLISOL en Valparaíso

por mruiz el Mar.28, 2006, bajo Software libre

Este sábado 01 de Abril se realizará el FLISOL (Festival Latinoamericano de Instalación de Software Libre) en Valparaíso, en el Centro Cultural - Ex Cárcel .

Muchos se preguntarán: ¿Por qué la demora? La organización tuvo problemas para conseguir un local, por lo que no se pudo realizar en la fecha coordinada internacionalmente (25/03); pero eso ya es historia: lo importante es hacer de este evento algo grande!

Como era de esperar estaré ahí para apoyar la iniciativa y daré una charla acerca de Ubuntu. ;-)
Espero que vaya harta gente, para que Linux y el Software Libre siga creciendo.

Más información en http://valparaiso.flisol.cl/

¡Nos vemos en el FLISOL!



2 comentarios más...

UTFSM le gana al MIT: Desarrollan laptop casi más barato que el de 100 dólares

por jcataldo el Mar.13, 2006, bajo Ocio, Universidad, Vida

¡Tiembla Negroponte! El MIT no lo vio venir: deben estar por preguntarse cómo lo hicieron en la UTFSM para desarrollar estos laptops ultraligeros que están entregando gratis a sus alumnos (bueno, no exactamente gratis; uno tiene que haber pagado la matrícula).

Encuentre las diferencias:

En su momento no entendí el porqué de la decisión de no sumarnos a la iniciativa de 1 laptop por niño (en mi opinión no hay nada que evaluar, sólo hay que decir que sí); sin embargo, ahora todo tiene sentido. También la insistencia de la UTFSM en mantener a Olidata como proveedor es comprensible ahora: debe haberse tratado de una alianza estratégica.

Hoy los alumnos comenzaron a utilizar estas nuevas herramientas, según se aprecia en la siguiente foto.

Aunque, ¡momento…! cien dólares son algo así como 53 mil pesos, mientras que la matrícula cuesta 110 mil. Creo que hice un mal negocio.

2 comentarios más...

¿Cómo dice que dijo?

por jcataldo el Mar.08, 2006, bajo Informática, Ingeniería de Software, Usabilidad

Hablando de usabilidad, un ejemplo de mensaje de error confuso (Office 2003):

Perdón, pero… si digo “sí”, ¿estoy aceptando continuar o estoy aceptando esperar?

No costaba nada poner dos botones “Esperar” y “Continuar”, pero de lo poco que he programado en Visual Basic, sé que crear un diálogo con alternativas “sí/no” significa menos trabajo que crear uno con etiquetas genéricas, así que, esta dificultad para el usuario debe ser producto sólo de la flojera de los programadores de Office…

2 comentarios más...