jueves, noviembre 09, 2006

Reality

"Está tan vacío por fuera porque, precisamente, está tan lleno por dentro".


Ilustración por Eran Cantrell (Pixelated).


No se lo que el Eran, habrá querido expresar con la imagen. Pero a mi parecer, lo frío, grotesco y vacío del personaje, llevan a pensar en una realidad virtual más llenadora que el mundo real. Lo que a su vez hace reflexionar en el estado actual de la propia.


Se asemeja a la película Avalon, de Mamoru Oshii, en donde la juventud de la época se esta haciendo adicta a un ilegal y potencialmente mortal juego de realidad virtual llamado Avalon.


Mucho se ah dicho del asunto. Estudios afirman que los videojuegos son adictivos, aunque como la misma Dra. Katerina Sommer, psiquiatra de niños y adolescentes, académica de la Facultad de Medicina de la Universidad de Chile dijo.


“Aún no se ha llegado a establecer la adicción a videojuegos como un cuadro clínico definido, a diferencia de lo que ocurre con las drogas, el alcohol o el juego patológico pero, probablemente, en el futuro llegue a describirse esta nueva entidad clínica, sobre todo si consideramos los datos que se han ido recabando en el mundo y que, lamentablemente, aún son insuficientes”.


¿Por qué la adicción? ¿Es esta realmente una vía de escape? ¿O la necesidad de un objetivo en nuestras vidas nos lleva a buscarlo dentro de las fantasías diseñadas por una casa de software?


Definiendo Adicción: Esto es un desorden crónico ocasionado por combinación de factores genéticos, biológico-químicos y sociales. Una adicción es caracterizada por la necesidad de algo concreto para estar o sentirse confortable, y cuando no se puede conseguir se produce malestar.


El consumo puede ser de una sustancia química como por ejemplo las drogas o un comportamiento que alivie la tensión como los videojuegos y desencadene, en cualquiera de ambos casos, una sensación de bienestar.

Toda adicción es una necesidad a consumir con el fin último de sentirse bien.


En el caso de los videojuegos, expertos creen que la adicción se debe al condicionamiento del cerebro a secretar Dopamina y Noradrenalina, (neurotransmisores encargadas de la estimulación motriz y producir estados de satisfacción), obtenidos mediante logros alcanzados con objetivos del juego. Agregándole a esto, un cuadro psicológico llamado “falácea de costo irrecuperable” (del ingles zunken cost fallacy) , en donde el sujeto, que ya ha dedicado tiempo a una actividad, se niega a dejarla, por no sentir que ah sido tiempo perdido.


... como conclusión, me declaro adicto a los videojuegos.  Eso!

martes, noviembre 07, 2006

Manejadores de Eventos Javascript

Estas dos funciones sirven básicamente para lo mismo. Añadir un manejador de eventos a un objeto Web. Debido a las diferencias en el manejo de eventos y en el modelo DOM de Internet Explorer, este ah desarrollado métodos que hacen lo mismo pero de una manera distinta, como es el caso de este ejemplo.


En el modelo W3C, tenemos el método addEventListener(), a quien le debemos pasar tres parámetros al momento de ejecutar. Los que serían: evento, función y un booleano quien determinará en que momento el evento debe ser ejecutado (si al ser capturado o liberado).


elemento.addEventListener(‘click’, loQueEjecuta, false);


Podemos Agregar cuantos eventos queramos o cuantas funciones queremos que se ejecuten para un mismo evento. Incluso podemos entregar funciones anónimas.


elemento.addEventListener(‘click’, function() {

            lo que haya que hacer;

}, false);


En el modelo Microsoft, por otro lado, el método attackEvent(), cumple la anterior función. La forma y su uso es similar también.


elemento.addEventListener(‘onclick’, loQueEjecuta);


Las diferencias a la vista son el modo en el que invocan el evento (click / onclick) y que no hay forma de especificar en que momento se ejecuta el evento, siempre lo hace al momento de liberarse el evento (igual a poner ‘false’ en el modelo W3C).


Otra diferencia importante es que, en este caso ‘loQueEjecuta’ no es una instancia de la función sino una referencia a la misma. Por lo mismo, no es transparente el hecho de conocer quien esta gatillando el evento.


Y es AQUÍ donde se presenta el mayor problema. Ya que no podemos pasarle parámetros a una instancia de función


Por ejemplo:

Teniendo un elemento html, llamado ‘elemento’

<elemento id=”001” />


Y la función.


function loQueEjecuta(obj) {

            alert(obj.id);

}

elemento.attachEvent(‘onclick’, loQueEjecuta);


al no poder pasarle parámetros el elemento quedaría asi.


<elemento id=”001” onclick=”loQueEjecuta()” />


O en otro caso, teniendo la función:

function loQueEjecuta() {

            alert(this.id);

}


Aquí tampoco funciona, porque como ya dijimos, se crea una referencia a la función y no una copia de esta, así que la llave ‘this’ siempre en estos casos hará referencia al objeto ‘windows’ y no sirve.


Fuente, quirksmode.org