Eventtos vendido a Networking Activo

31 mayo 2007 at 21:10

Fecha Filed in Internet, Bussiness 2.0
Tags Tags: ,

A través del blog de Networking Activo me hago eco de la compra de Eventtos por parte de Networking Activo. La compra ha sido anunciada durante el desarrollo de esta jornada. Eventtos es un sitio web para dar a conocer todo tipo de eventos, conferencias, quedadas, conciertos y exposiciones. Se trata de uno de los proyectos más interesantes de Javier Martín de Loogic.

Javier Martín

Sistemas de control vistos como agentes inteligentes

29 mayo 2007 at 13:03

Fecha Filed in Computers
Tags Tags: ,

TermostatoUn agente es un sistema computacional que está situado en un entorno, y es capaz de realizar acciones con autonomía en el entorno donde se encuentra para cumplir los objetivos para el cual fue diseñado. Cualquier sistema de control puede ser visto como un agente inteligente. Un ejemplo de agente simple que todos podemos tener en casa es el termostato del aire acondicionado. Los termostatos poseen un sensor para detectar la temperatura de la habitación. Este sensor está directamente conectado con el entorno, y produce como salida dos señales: una que indica que la temperatura es demasiado alta (dependiendo de la especificación que hayamos indicado anteriormente), y otra que indica que la temperatura es buena. Las acciones disponibles del termostato son enfriar y no hacer nada. La acción enfriar tendrá el efecto de rebajar la temperatura que posee la habitación, pero no garantizará el efecto, ya que si por ejemplo la puerta está abierta puede entrar calor y el efecto sería nulo. Las únicas decisiones que el termostato implementa (normalmente en hardware electromecánico) son las siguientes reglas:

demasiada calor -> enfriar
temperatura buena -> no hacer nada

Aunque el ejemplo sea bastante simple existen otros sistemas de control con unas estructuras de decisión mucho más variadas y que actuan en entornos más complejos. Por ejemplo sistemas de control de reactores nucleares, sondas espaciales autónomas, …

Modificar headers en Firefox

29 mayo 2007 at 12:31

Fecha Filed in Internet, Computers
Tags Tags: ,

Modify Headers es una completa y sencilla herramienta de spoofing para Mozilla Firefox. Te permite añadir, modificar o filtrar headers de peticiones http. Por ejemplo podemos modificar el user agent (navegador, sistema operativo, … que estamos usando), añadir un referer falso, …

Añadir

Si la opción de añadir (add) está seleccionada, agregará un valor al header indicado. Si el header no existe por defecto, se creará de todos modos. Esta opción viene muy bien para los casos donde los headers pueden contener más de un único valor, por ejemplo:

  • Accept
  • Accept-Encoding
  • Cache-Control
  • Cookies

No es una buena opción a usar para headers donde no se permiten valores múltiples, por ejemplo el user-agent.

Modificar

Si deseas cambiar el valor de un header existente usa la opción de modificar (modify). Es la opción adecuada para los headers que solo pueden tener un único valor, por ejemplo:

  • Referer
  • Host
  • User-Agent

Si esta opción se usa para especificar un header que no existe por defecto, un header con el nombre seleccionado se creará.

Filtrar

La opción de filtrar elimina un determinado header de la petición http. Realmente solo es útil para eliminar headers estándar, como es el caso de Cookie (de esta forma deshabilitariamos las cookies).

Su desarrollador es Gareth Hunt, un programador inglés. Enfatiza que mucha gente piensa que el user-agent se puede especificar libremente, y no es así, ya que existe una guía para el user-agent y demás headers de peticiones http establecida por el W3C.

Modify Headers

Más información | Modify Headers

Hoy no le canto a la ETA - La Revolución

28 mayo 2007 at 04:38

Fecha Filed in Carnaval, Andalusia, Video
Tags Tags: ,

Antonio Martínez Ares se mostró crítico y comprometido en uno de los pasodobles que pertenece al repertorio de una de las últimas comparsas que puso sobre las tablas del Gran Teatro Falla, La Revolución. Con Hoy no le canto a la ETA, el autor condena la injusticia que sufre el pueblo andaluz a causa de aquellos que nos castigan con violencia.

Hoy no le canto a la ETA - La Revolución

Autor: Antonio Martínez Ares
Año: 2002

Hoy no le canto a la ETA ni a la guerra de su madre,
hoy no le canto a esa gente que asesina nuestros días,
hoy no le canto a esa patria de los que callan y saben,
hoy me guardo este coraje para la pobre Andalucía,
la princesa de las ferias, la reina de los paraos,
la que cura con incienso las heridas del Señor,
por esa blanca y verde, donde escupen los del Norte
a los grandes carajotes que hacen fiesta la nación.

Le canto al tomillo y al romero y a un gobierno que torea
los pilares y las mareas de su pobre jornalero,
le canto a sus ocho capitales que dejan que
su dinero se vaya para el extranjero de los vascos y catalanes.

Hoy no le canto a ETA, que se pudra sin más,
que se mea en nuestra bandera y en nuestra libertad,
que el caudillo ya está muerto, que nos dejen en paz con su puta independencia,
a mi tierra, sólo le canto a mi tierra, la que entierra
el corazón y le crece una flor a la vera de sus cruces,
España de mi sufrir, que es lo que sería de ti sin los andaluces…


Firefox 3.0 da un gran paso

27 mayo 2007 at 17:22

Fecha Filed in Internet, Computers
Tags Tags: ,

Mozilla FirefoxHace unos días desarrolladores de Mozilla anunciaron que se ha dado un gran paso importante en el proceso de desarrollo de Firefox 3.0, añadiendo novedades de las nuevas características de los Places que se incoporará en la versión alfa, una semana antes del lanzamiento. Los Places, una completa mejora del bookmarks y de las funciones del historial del navegador fueron uno de los puntos más criticados en el lanzamiento de Firefox 2.0.

“Permitimos la implementación de bookmarks en el trunk” , dijo el equipo que se encarga de los Places en el blog de desarrolladores de Mozilla. “Aunque aún hay mucho por hacer, es un paso muy importante para nosotros.” El lanzamiento de Firefox 3.0 alfa 5 está previsto para el 1 de Junio.

Los Places usan la base de datos SQLite (open-source) para almacenar y recuperar los bookmarks y las entradas del historial, por eso es incompatible con los bookmarks de ediciones anteriores de Firefox. Los usuarios de la versión alfa deberán de convertir sus entradas existentes, dijeron los desarrolladores de Mozilla.

Si se realiza algún cambio en bookmarks.html usando Firefox 2.0, habrá que exportarlo manualmente y reimportarlo de nuevo en el bookmark de Firefox 3.0.

Vía | Linux World

Alfredo Pérez Monteseirín

26 mayo 2007 at 02:20

Fecha Filed in Society, Andalusia, Video
Tags Tags: , ,

Estas son las declaraciones del alcade astronauta socialista de Sevilla, Alfredo Sánchez Monteseirín, tras inaugurar la Avenida de la Astronomía.

Es muy bueno que haya astrónomos. Estamos en la Avenida de la Astronomía. Está bien que haya astrólogos, pero es fundamental que haya astronautas. Porque ¿qué sería de nosotros los astronautas si no nos dijeran los astrólogos o los astrónomos cómo son las cosas? ¿Qué nos podemos encontrar allí, en el más allá? ¿O qué podemos hacer, o qué podríamos desarrollar nosotros, los que estamos allí, los que nos pisamos el suelo de la realidad de las cosas? ¿Qué sería de nosotros si no existieran los astrónomos y los astrólogos? pero ¿qué sería de todos nosotros sin la tarea de los astronautas?


Como gane este tío es que Sevilla va muy mal… Monteseirín, a la puta calle.

Tu ranking en top.blogs.es

25 mayo 2007 at 03:00

Fecha Filed in Internet, Blogs
Tags Tags: ,

TopAunque no creo en el ranking perfecto de blogs en castellano, top.blogs.es es el que sigue los criterios más justos según mi opinión. Está desarrollado por Ludovico Magnocavallo, un tipo genial que tuve la oportunidad de conocerlo a través de LightPress. Algo que quizás muchos lo que han echado en falta del ranking es la posibilidad de mostrar en el blog el puesto que ocupa, al igual que lo hacen otros rankings de blogs en castellano como Top Emezeta o Alianzo. Para aquel que desee mostrar el ranking que ocupa en top.blogs.es puede usar este pequeño código xHTML:

<img src="http://www.alfonsojimenez.com/top/identificador/” alt=”Top” />

Como podemos observar, el source de la imagen es http://www.alfonsojimenez.com/top/identificador/. Lógicamente deberemos de sustituir identificador por el que nos corresponda. Por ejemplo, mi identificador es alfonso-jimnez:

Top Blogs

Si además deseamos cambiar el color de fondo y/o el color de la fuente podemos usar los parámetros bg_color y font_color a través de GET. Los valores que deseemos pasar (los colores) estarán codificados en hexadecimal. Por ejemplo:

http://www.alfonsojimenez.com/top/alfonso-jimnez/?bg_color=000000

Top

http://www.alfonsojimenez.com/top/alfonso-jimnez/?font_color=FFE91F

Top

.../top/alfonso-jimnez/?bg_color=0FAC1E&font_color=D6DB89

Top

Así de sencillo. Espero que os guste :)

Pilar Rubio, la última sensación española

24 mayo 2007 at 06:13

Fecha Filed in Internet, Curiosities
Tags Tags: , , ,

Muchos de vosotros os habéis quejado de que ya no pongo fotos de tetas en el blog. Esta vez os muestro una recopilación de fotografías y vídeos de Pilar Rubio, la última sensación española. Tiene unas piernas, un culo y unas tetas de infarto.

Fotos de Pilar Rubio

Pilar Rubio

Pilar Rubio

Pilar Rubio

Pilar Rubio

Pilar Rubio

Pilar Rubio

Pilar Rubio

Pilar Rubio

Pilar Rubio

Vídeos de Pilar Rubio




Technorati cambia de look

23 mayo 2007 at 21:55

Fecha Filed in Internet
Tags Tags:

Technorati

Tomcat 5.5 en Feisty Fawn

23 mayo 2007 at 04:05

Fecha Filed in Computers
Tags Tags: , ,

TomcatTratando de instalar Tomcat 5.5 en Ubuntu 7.04 Feisty Fawn desde los repositorios oficiales de la distribución observé que la instalación no se efectuaba correctamente (no podía arrancar el demonio). Indagando un poco por Ubuntu Forums encontré un excelente mini-howto que explicaba como resolver los problemas que surgían al intentar instalar Tomcat en Faisty Fawn. Cabe decir que son pequeños problemas, pero a su vez son vitales para el funcionamiento de Tomcat. Para echar a andar nuestro servidor Tomcat debemos de arreglar principalmente dos puntos:

1) Establecer el JAVA_HOME por defecto para Tomcat

sudo vim /etc/default/tomcat5.5

Descomentar la línea donde se encuentra definida la variable JAVA_HOME y establecer la ruta donde se encuentra el JDK que tengas instalado.

JAVA_HOME=/usr/lib/jvm/java-6-sun

2) Arreglar el fichero catalina.out

Desafortunadamente, parece ser que el fichero log de Tomcat es una pipe, pero Tomcat no puede arrancar sin dicho fichero. Nosotros lo volveremos a crear como un fichero normal con la misma configuración de seguridad.

cd /var/log/tomcat5.5/
sudo rm catalina.out
sudo touch catalina.out
sudo chown tomcat55:nogroup catalina.out
sudo chmod uo-wrx catalina.out

Ahora Tomcat debería de funcionar como demonio. Inícialo con:

/etc/init.d/tomcat5.5 start

Ahora el servidor web debería de funcionar en http://localhost:8180/. Para cambiar el puerto por defecto debemos de modificar el fichero server.xml y reiniciar Tomcat:

sudo vim /usr/share/tomcat5.5/conf/server.xml
<!-- Define a non-SSL HTTP/1.1 Connector on port 8180 -->
    <connector port="8180“…</connector>

Por otro lado, si deseas arrancar Tomcat no como un demonio, sino desde una herramienta de desarrollo (por ejemplo Eclipse), te darás cuenta que Tomcat da algunos errores. Así que debemos de cambiar los permisos del directorio de trabajo de Tomcat:

cd /var/cache
sudo chmod go+rwx tomcat5.5

Twitter Plugin para LightPress

22 mayo 2007 at 17:04

Fecha Filed in Computers, Blogs
Tags Tags: ,

Hace unos días hablando con Fernando Serer estábamos de acuerdo en qué LightPress es un proyecto muy interesante, pero necesita el apoyo una comunidad de desarrolladores activa para seguir adelante. Yo en mi ratos libres, a veces me pongo a programar para LightPress. Esta vez me gustaría presentar un plugin para mostrar los posts de Twitter.

Screen Shoot

Es bastante sencillo y totalmente configurable. El plugin posee 5 parámetros:

  • twitter_id: Aquí debemos indicar el user id
  • count: Es el número de posts que deseamos mostrar
  • screen_name: El screen name que usemos
  • image: Si deseamos mostrar la imagen de nuestro perfil
  • name: Si deseamos mostrar nuestro nombre

Podéis ver el plugin funcionando en la barra de la derecha :)

Descarga

Permalink Descarga | Twitter Plugin for LightPress

Levi's - A Midsummer Night's Dream

21 mayo 2007 at 02:31

Fecha Filed in Video
Tags Tags: , , ,

Siempre me ha llamado mucho la atención la publicidad de la compañía norteamericana Levi’s. Unos anuncios muy conseguidos que no dejan indiferente a nadie. Hace unos meses (años tal vez) lanzó una campaña donde interpretaban el acto 3 de la primera escena de una obra de Shakespeare titulada A Midsummer Night’s Dream (El sueño de una noche de verano). Aunque en España se lanzó una versión en castellano, prefiero la versión original (en inglés antiguo), ya que pierde totalmente su esencia.


BOTTOM: I see their knavery: this is to make an ass of me

SNOUT: Bottom,

BOTTOM: to fright me if they could

SNOUT: thou art changed! what do I see on thee?

BOTTOM: But I will not stir from this place

BOTTOM: What do you see? you see an asshead of your own, do you?

BOTTOM: I will walk up and down here, and I will sing

TITIANA: What angel wakes me from my flowery bed?

BOTTOM: that they shall see I am not afraid.

TITIANA: I pray thee, gentle mortal, sing again: Mine ear is much enamour’d of thy note; So is mine eye enthralled to thy shape; I love thee.

Sí, lo sé. El título de esta obra coincide con el título de mi blog, pero esa es otra historia… Tal vez alguna noche me anime a contarla aquí.

Phaboo + Nena Daconte

19 mayo 2007 at 18:32

Fecha Filed in Music
Tags Tags: ,

Y es que cuando dije que Phaboo era un artista no me equivocaba. Hace unos días me lo volvió a demostrar enviándome un remix de un tema de Nena Daconte titulado En qué estrella estará. Era el cumpleaños de su novia y no pudo hacerlo de otra manera. Tal vez sea lo más íntimo que ha hecho Phaboo. Aquí está la versión: Nena Daconte y Phaboo - En qué estrella estará

Cuando pierdes los zapatos e ignoras el terreno, ya no queda otra opción que la de mirar en el cielo, escucha, bajo una estrella fugaz, ella pronunció sus sueños, ya que aquel ángel la envió con la lluvia del invierno, para que Morfeo que es dueño de ellos los traduzcan en encuentros inesperados para que la magia surja, buscan constelaciones que más tarde le dibuja, escondido entre destellos de miradas que se cruzan, por ello desea, sonríe, imagina y sueña, tarareando una canción, esperando alguna señal. Indaga en la ilusión, enseña el miedo que persiste, por un niño alado creado de verdes y grises, que mira con esperanza y viste de nubes tristes, un billete de tren, le insisten en que existe, que está donde la luz que dicen que hay allí, que vuelve con seis palabras entre rincones de París, juega con el mundo a su antojo y a su manera, brilla un cabecero, una estrella en su estela, las lágrimas que pierde cuando anhela una escena, la sonrisa que me envuelve escribiendo junto al Sena y ahora no la puedo ver como a una luna nueva, pero cuando más la siento es cuando la noche llega

Zapatos

Agentes Tcl

18 mayo 2007 at 21:20

Fecha Filed in Computers
Tags Tags: , , ,

Agentes TCLAnteriormente he hablado de Telescript y Aglets, y no podía olvidar a los Agentes Tcl. El Tool Control Language (Tcl - pronunciado como tickle) y su compañero Tk están relacionados con los sistemas de agentes móviles. Tcl fue creado por el Doctor John Ousterhout y fue principalmente creado para convertirse en un lenguaje de comandos estándar. La idea es que varios aplicaciones proporcionen lenguajes de control (bases de datos, hojas de cálculo, …), pero cada vez que se desarrolla una aplicación, también se desarrolla un nuevo lenguaje de comandos. Tcl ofrece las facilidades de implementar tu propio lenguaje de comandos. Tk es una librería de ventanas basadas en widgets. Tcl/Tk combinado crea un actractivo y simple herramienta de desarrollo de interfaces gráficas, sin embargo, tienen otras características que lo hacen aún más interesante:

  • Tcl es un lenguaje interpretado
  • Tcl es extensible (proporciona un conjunto de primitivas implementadas en C/++)
  • Tcl/Tk puede ser embebido (el intérprete está disponible como código escrito en C++, el cual puede ser embebido en una aplicación)

Las aplicaciones en Tcl se llaman scripts. Muchas de las propiedades de estos scripts son las mismas que poseen los Unix Shell Scripts:

  • Hay aplicaciones de texto plano, que contienen estructuras de control y estructuras de datos (por ejemplo listas, arrays, pilas…) como un lenguaje de programación normal.
  • Se pueden ejecutar como programas de consola (tclsh o wish)
  • Se pueden llamar desde otras aplicaciones externas

Como los programas en Tcl son interpretados, es mucho más sencillo usar un debugger que en otros lenguajes compilados como C/C++. La idea de un agente móvil viene de la sencillez de construir aplicaciones donde se intercambian scripts Tcl a través de una red y se ejecutan en máquinas remotas. El lenguaje Safe Tcl brinda unos mecanismos para limitar el acceso a un script. Por ejemplo, el Safe Tcl controla el los permisos de acceso a una GUI que un posee un script (por ejemplo, estableciéndole límites en el número de veces que se puede modificar una ventana).

En resumen, Tcl/Tk proporciona un rico entorno para construir aplicaciones, particularmente interfaces gráficas. Pero no en un principio fue planificado para un entorno de programación de agentes. Las primitivas que pueden heredar se pueden usar para construir entornos de programación de agentes móviles - el código de fuente es libre, estable, bien diseñado y fácilmente modificable. El framework Agent Tcl fue uno de los primeros que precisamente intentaron hacer eso.

Más información | Agent Tcl

Aglets, agentes móviles en Java

18 mayo 2007 at 18:25

Fecha Filed in Computers
Tags Tags: , , ,

Aglets es tal vez la plataforma basada en Java para agentes móviles más conocida. Un Aglet es una instancia de una clase de Java que extiende a la clase Aglet. Cuando implementamos una clase, el usuario puede usar un gran número de métodos proporcionados por la clase Aglet. Los más importantes son:

  • El método onCreation(), que permite a un Aglet inicializarse a sí mismo.
  • El método run(), que se ejecuta cuando un Aglet llega a un nuevo destino.

El corazón de un Aglet es el método run(). Este método define el comportamiento de un Aglet. En el interior de dicho método, un Aglet puede ejecutar el método dispatch(), para poder transmitirse a sí mismo a un destino remoto. Un ejemplo del uso de dispatch() puede ser:

this.dispatch(new URL("atp://loquesea.com/contexto1"));

JavaEsta instrucción hace que el Aglet se ejecute para ser seriado (por ejemplo, para que sus estados sean almacenados), y se envía al contexto (contexto1) de la máquina remota (loquesea.com). Un contexto se comporta igual que un lugar en Telescript; una misma máquina remota puede tener varios contextos. En esta instrucción, atp es el nombre del protocolo por el cual se transmite el agente (atp son las siglas de Agent Transfer Protocol). Cuando el agente llega a la máquina remota, se crea una instancia del agente, se inicializa el agente, sus estados se reconstruyen a partir de los estados seriados que se envían junto al agente, y, finalmente se invoca el método run().

Más información | Danny Lange
Más información | Aglets Sourceforge

Telescript

18 mayo 2007 at 17:25

Fecha Filed in Computers
Tags Tags: , , ,

RJ45Telescript fue un lenguaje para construir sistemas multiagente desarrollado a principios de los años 90 por la empresa norteamericana General Magic, Inc. Fue un producto comercial, desarrollado pensando en un mercado de dispositivos móviles emergente. Había dos conceptos clave en la tecnología de Telescript: lugares y agentes. Los lugares son las localizaciones virtuales que ocupan los agentes - un lugar puede corresponder a una máquina, o a un conjunto de máquinas. Los agentes en Telescript son programas interpretados; la idea era similar a lo que son los Java bytecodes para una máquina virtual Java.

Los agentes de Telescript tienen la capacidad de moverse de un sitio a otro, transportando su programa y su estado codificado y transmitido a través de una red a otro lugar, donde la ejecución se reanuda. Cuando el agente viaja usa un ticket, donde se especifica los parámetros de su viaje:

  • El destino del agente
  • El tiempo en cual el viaje se completará

Los agentes de Telescript se comunican con otros agente de diferentes modos:

  • Si ocupan diferentes lugares, entonces se pueden conectar mediante una red
  • Si ocupan el mismo lugar, entonces pueden quedar con otros

Por otro lado, los agentes de Telescript disponen de unos permisos asociados, donde se especifica qué pueden hacer (por ejemplo, limitaciones de viaje), y que recursos puede usar el agente. La recursos más importantes son el dinero (medido en teleclicks, que corresponden a dinero real), el tiempo de vida (medido en segundos) y el tamaño (medido en bytes).

Tanto los agentes como los lugares son ejecutados por un motor, el cual es esencialmente una máquina virtual del estilo de la de Java. Al igual que los sistemas operativos puede limitar el acceso a un proceso, un motor limita el modo en el cual un agente puede acceder a su entorno. Un motor continuamente controlar el consumo de recurso que realizan los agentes, eliminándolos si exceden su límite establecido. Además, los motores proporcionan enlaces a otras aplicaciones mediante APIs.

Los agentes y los lugares se programan usando el lenguaje Telescript. Dicho lenguaje tiene las siguientes características:

  • Es un lenguaje orientado a objetos
  • Es interpretado
  • Viene en dos niveles: alto (el lenguaje visible para los programadores) y bajo (un lenguaje semi-compilado parecido a Java bytecodes
  • Contiene una clase proceso, de la cual agente y lugar son subclases
  • Es persistente, significa que, por ejemplo, si una máquina que aloja se apaga y se enciende de nuevo, el estado del proceso sigue ejecutándose en la máquina.

Aunque Telescript fue un lenguaje pionero, que atrajo la atención de muchos desarrolladores, fue rápidamente solapado por Java, y a último de la decada de los 90, un número considerable de frameworks para agentes móviles basados en Java aparecieron. El más conocido fue el sistema Aglets de Danny Lange, del cual hablaré en el próximo post que estoy preparando.

Más información | University of Southampton

Esto es para los locos

18 mayo 2007 at 02:14

Fecha Filed in Curiosities, Video
Tags Tags: , ,


Agentes Móviles (Mobile Agents)

17 mayo 2007 at 18:58

Fecha Filed in Computers
Tags Tags: , ,

Cliente Servidor ProcesosLos agentes móviles (o mobile agents) son agentes que tienen la capacidad de transmitirse a sí mismos a través de una red, y reanudar la ejecución en un sitio remoto. Los agentes móviles aparecieron gracias a General Magic, Inc., con su lenguaje de programación Telescript (del que hablaré en otro post más adelante), aunque ahora existen otras plataformas de agentes móviles disponibles para muchos lenguajes y plataformas. La motivación general que hay detrás de los agentes móviles es bastante simple. La idea era que los agentes móviles reemplazaran las llamadas a procedicimentos remotas a como una vía para que los procesos se comuniquen a través de una red.

Respecto a las llamadas a procedicimientos remotas, la idea es que un proceso pueda invocar un procedimiento (un método, en otras palabras) en otro proceso que se encuentra en una máquina remota. Suponemos que un proceso A invoca un método m en un proceso B con unos argumentos args; el valor devuelto por el proceso B se asigna a una variable v. Usando una sintaxis basada en Java, el proceso A ejecuta una instrucción parecida a lo siguiente:

v = B.m(args)

Crucialmente, en las llamadas remotas de procedimientos la comunicación es síncrona. Por ejemplo, un proceso A bloquea desde el momento que comienza a ejecutar la instrucción hasta que el proceso B devuelve un valor. Si B nunca devuelve un valor (porque la conexion falle, por ejemplo) entonces A debe permanecer suspendida indefinidamente, esperando una respuesta que nunca llegará. La conexión entre A y B también debe de permanecer abierta.

Cliente Servidor Procesos

La idea de los agentes móviles es reemplazar la llamada de prodecimiento remota enviando un agente para hacer los cálculos. De esta manera en lugar de inconvar un método, el proceso A envía un programa (un agente móvil) al proceso B. Este programa interactua con el proceso B. Cuando el agente completa sus interacciones, devuelve al proceso A los resultados requeridos. Durante la operación, solamente el tiempo que se usa para la transmisión de datos es el envío del agente al proceso B y la vuelta de dicho agente al proceso A con los datos requeridos cuando completa su tarea. Este modo es potencialmente más eficiente que si las mismas interacciones fuesen llevadas a cabo todas mediante conexiones de datos. Uno de los principales objetivos de Telescript era proporcionar un modo eficiente de controlar los recursos de las conexiones en dispositivos como PDAs, aprovechándolos lo máximo posible debido el elevado coste de las conexiones móviles a Internet (hoy podemos ver que se va normalizando).

Hay varias cuestiones técnicas que se planean cuando se consideran los agentes móviles:

Seriación
Cuando hablamos de seriación nos referimos a la capacidad de un objeto para almacenar y recuperar su estado mediante un mecanismo de almacenamiento. Una cuestión bastante importante es de qué forma es seriado el agente, y en particular, qué aspectos del agente son seriados: el programa, los datos o el programa y sus datos.

Alojamiento y ejecucción remota
Cuando el agente llega a su destino, como es ejecutado. Por ejemplo si el alojamiento original del agente emplea un sistema operativo o un procesador distinto del alojamiento del destinatario.

Seguridad
Cuando el agente del proceso A se envía a la máquina donde reside el proceso B , hay un potencial obvio para que el agente provoque problemas. Podría potencialmente hacerlo de diferentes maneras:

  • Se puede obtener información leyendo ficheros alojados en la máquina remota o leyendo directamente la memoria RAM
  • Se puede denegar servicios a otros procesos de la máquina remota
  • Se puede malusar los recursos disponibles de la máquina remota
  • Puede simplemente causar molestias a la máquina remota (jugar con los dispositivos externos, manejar la GUI, …)

La cuestión de seguridad predomina en las discusiones de agentes móviles. Java es un lenguaje que arregla algunos agujeros. Por ejemplo, Java no tiene punteros, así que es intrínsecamente complicado que una aplicación en Java pueda acceder a un proceso que se encuentra en memoria. Además, las máquinas virtuales de Java poseen una clase llamada SecurityManager que permite establecer una política de seguridad (accesos a recursos, …). Sin embargo, es muy dificil asegurarse que (por ejemplo) un proceso no use más de un cierto número de ciclos del procesador.

Más información | Wikipedia
Más información | Seven good reasons for Mobile Agents (PDF)

Aún te recuerdo

17 mayo 2007 at 17:08

Fecha Filed in Football
Tags Tags: , ,

Beletti

Sevilla FC, Campeón UEFA 2006-2007

17 mayo 2007 at 04:01

Fecha Filed in Football
Tags Tags: , , ,

El Sevilla FC vuelve a hacer historia y se hace por segunda vez consecutiva con la Copa de la UEFA, venciendo en la tanda de penalties al RCD Espanyol. El Sevilla comenzó adelantándose en el marcador a través de un gol de Adriano en el minuto 18 de la primera parte. Pese al gol de los andaluces el Espanyol no se vino abajo y puso las tablas en el marcador diez minutos más tarde. El encuentro llegó al minuto 90 con el empate a un gol, con buenas actuaciones por parte de ambos equipos. El francés Frederick Kanouté volvió a adelantar al equipo hispalense a punto de terminar la primera parte de la prórroga. Cinco minutos antes de finalizar, cuando ya se podía escuchar algunos gritos de aficionados sevillistas por las calles de Triana, Jônatas devolvió la ilusión a los periquitos y obligó a que la UEFA se decida por penalties.

En la lotería de los penalties solo hubo un héroe: Andrés Palop. El guardameta valenciano, que ya hizo vibrar a la afición sevillista en los cuartos de final gracias a su épico gol ante el Shaktar Donestk, volvió a llevar al Sevilla deteniendo tres disparos en la tanda de penalties. El Sevilla FC se vuelve a proclamar campeón de la UEFA y esto solo puede ser el comienzo de una temporada para recordar. Enhorabuena al flamante campeón, enhorabuena al Sevilla FC.

Andrés Palop

UEFA: RCD Espanyol - Sevilla FC

16 mayo 2007 at 20:44

Fecha Filed in Football
Tags Tags: , , ,

Sevilla FCComo muchos de vosotros sabréis, mi corazón vibra al son del FC Barcelona. Sin embargo hay dos equipos que me simpatizan por la cercanía o, tal vez, por la ciudad que representa su escudo. Esos dos equipos son el Cadiz CF y el Sevilla FC, que mientras no jueguen contra el Barça me gusta que ganen. Lo mismo digo para los demás equipos andaluces (Recreativo de Huelva, Real Betis, Málaga CF, UD Almería, …), que en los últimos años son mayoría en la Primera División Española.

Esta noche me visto de blanco y rojo. Estaré con mis compañeros sevillistas gritando por y para Sevilla. Si esta noche gana la Copa de la UEFA asaltaremos los aledaños del Ramón Sánchez Pizjuán en Nervión y coronaremos la Puerta Jerez. Qué bonitas son las tardes de Mayo…

Portadas de Google y Yahoo en la historia

16 mayo 2007 at 15:49

Fecha Filed in Internet, Curiosities
Tags Tags: ,

El diseño de Google ha sido cuestionado en más de una ocasión. Y pese a ello nadie duda del éxito de Google, que entre otras cosas, la simpleza del diseño seguro que le ha favorecido mucho. El diseño que ha abordado Yahoo sin embargo ha tenido una evolución distinta, donde los últimos años hemos podido apreciar su simplificación. Kabytes nos muestra la evolución que han ido adoptando ambos durante los últimos años:

Google
Yahoo

Nueva caché en Xurrency

15 mayo 2007 at 21:34

Fecha Filed in Personal
Tags Tags: , , , , ,

GráficoUna de las prioridades a mejorar en Xurrency era una caché para los RSS Data Feeds. Para la consulta del Data Feed de una determinada divisa, la caché reducirá entre otras cosas (n-1) veces al día las conexiones a la base de datos, siendo n el número de accesos a un Data Feed. Por ejemplo, si un día se accede un total de 1412 veces al Data Feed del Euro solamente se realizará 1 sola conexión a la base de datos, antes 1411 veces más. A partir de hoy Xurrency funcionará más rápido y mejor.

Estos días me estoy preocupando más en el desarrollo interno de Xurrency que de mejorar el servicio directamente al usuario. Esta quincena espero lanzar la nueva API de Xurrency, que se convertirá en uno de los mayores atractivos del proyecto y sin duda será uno de los servicios que más utilidad proporcione Xurrency al usuario. Ya la tengo totalmente desarrollada y estoy en fase de pruebas :)

Más información | Xurrency

¿Cuando es apropiada una solución basada en agentes?

15 mayo 2007 at 17:20

Fecha Filed in Computers
Tags Tags: ,

Como los sistemas multiagente cada vez están más establecidos en la consciencia colectiva de la comunidad de la computación científica, se espera ver un aumento en el esfuerzo de concebir metodologías para soportar el desarrollo de agentes inteligentes. Hay un número de factores que definen el enfoque de un agente:

El entorno es abierto, o al menos es altamente dinámico, indeterminado o complejo
En estos entornos, los sistemas capaces de actuar con una autonomía flexible son casi siempre la única solución.

Los agentes son una metáfora natural
Muchos entornos (incluyendo la mayoría de organizaciones, y algún entorno comercial) son naturalmente modelados como sociedades de agentes, cooperando entre ellos para resolver un determinado problema, o bien, compitiendo entre ellos. En algunas ocasiones, como en las interfaces inteligentes, la idea de un agente es vista como una metáfora natural. Maes (1994a) dijo que los agentes eran una especie de asistentes expertos, cooperando con el usuario para ejecutar una tarea:

El agente interfaz no actua como interfaz o capa entre el usuario y la aplicación. Se comporta como un asistente personal que coopera con el usuario en la elaboración de una tarea.

Distribución de datos, control o habilidad
En algunos entornos, la distribución de cualquier control, habilidad o datos significa que una solución centralizada es en el mejor de los casos extremadamente complicada, o en el peor de los casos totalmente imposible. Por ejemplo, distribuir sistemas de bases de datos en el cual cada base de datos está bajo un control separado, generalmente no se permite soluciones centralizadas. Estos sistemas normalmente deben ser convenientemente modelados como sistemas multiagente, en el cual cada base de datos es un componente semi-autónomo.

Sistemas hereditarios
Un problema en expansión para los desarrolladores de software es la herencia: el software que es tecnológicamente obsoleto pero funcionalmente esencial para una organización. En estos casos el software no puede ser descartado directamente, por el coste que supone volver a reescribirlo. Una solución para este problema es envolver la herencia de componentes, proporcionándosela con un agente layer funcional, permitiéndoles la comunicación y cooperación con otros componentes software.

Más información | Mentor System
Más información | University of East London

Mister Wong en castellano

15 mayo 2007 at 16:23

Fecha Filed in Internet
Tags Tags: ,

Mister WongMister Wong es el marcador social más usado en Alemania, incluso es más popular que del.icio.us. Mister Wong cree que es el momento de ampliar fronteras y prepara distintas versiones para diferentes idiomas, entre ellos la versión en castellano: Mister Wong ES. Hace unos días recibí una invitación para probar la nueva versión española que actualmente se encuentra en beta cerrada.

Con Mister Wong puedes guardar tus enlaces y categorizarlos con etiquetas. Puedes crear grupos (públicos o privados) de cualquier tema, editar tu perfil, importar y exportar tus marcadores y consultar los marcadores de tus amigos. Para más información sobre el desarrollo del proyecto, disponen de un blog: http://blog.mister-wong.es/.

Más información | Mister Wong

Semántica en Twitter

15 mayo 2007 at 02:12

Fecha Filed in Internet
Tags Tags: ,

TwitterCómo podemos ver, cada día la web va obteniendo más significado. Un caso bastante curioso es la idea de establecer semántica en los nanomensajes de la red social Twitter mediante nanoformatos. La idea tiene nombre: Twitternanoformats. Entre otras cosas intenta extender las capacidades de Twitter para conseguir sacar más provecho a la herramienta y dar más semántica a la información a los mensajes para un mejor filtraje.

Definen tres sintaxis para los nanoformatos

1nanoformats (syntaxparam)

  • @username: Para mencionar un usuario. Por ejemplo: @miguel estoy de acuerdo contigo

2nanoformats (syntax:param)

  • lang:: Para definir el idioma usado en el mensaje. Por ejemplo: this is a post in English lang:en
  • tag:: Para definir tags en el mensaje. Por ejemplo: Mi gato es bonito tag:gato tag:bonito
  • L:: Para definir un lugar. Por ejemplo: Bienvenido a L:Cádiz
  • todo:: Para definir una lista por hacer. Por ejemplo: todo:estudiar para el examen de mañana
  • event:: Para definir un evento. Por ejemplo: event:Conferencia
  • play:: Para definir un enlace multimedia. Por ejemplo: play: http://media.mfdz.com/track/7.mp3

3nanoformats (syntax:param:param)

  • rate:: Para calificar algo entre 1 y 5. Por ejemplo: rate:3:Titanic
  • vote:: Para votar (for, against, abstain) Por ejemplo: vote:for:Peace

Las utilidades que pueden aportar los nanoformatos en Twitter son muchísimas, más que nada para filtrar los nanoposts. Por ejemplo si nos interesa los mensajes relacionados con un evento importante o visualizar posts usando como criterio una taxonomía propia.

Más información | Twitternanoformats

Nuevas divisas en Xurrency

13 mayo 2007 at 19:28

Fecha Filed in Internet, Computers
Tags Tags: , , ,

Ampliamos la lista de divisas disponibles en Xurrency en 18 nuevas monedas, lo que hace un total de 42 divisas disponibles. De las nuevas podemos entre destacar la inclusión del Peso Argentino (petición popular