Juego online y multijugador (multiplayer) de defensa (defender)

En estas vacaciones me estoy aficionando a los diversos juegos de defensa hechos en flash que hay colgados por diferentes webs.

A parte del otro juego que comenté en un artículo anterior, me está gustando mucho uno que se puede jugar en tiempo real con otro jugador. Puedes acceder al juego en este enlace:

Starland Multiplayer TD.

Lo que hago es crear yo la partida, y entrar como usuario invitado, en todas las veces que he jugado no he tenido que esperar más de un minuto hasta que otro jugador se ha incorporado al juego.

Leer parámetros desde la URL en JavaScript

Normalmente se suelen mandar parámetros desde un formulario en HTML / XHTML a un script escrito en un lenguaje de lado de servidor (JSP, PHP, ASP, …), pero en alguna ocasión tendremos que llamar a un HTML / XHTML pasándole parámetros por URL (es decir, los parámetros son enviados usando el método GET).

En JavaScript podemos recurrir al objeto del navegador location y a su método search. Si una URL con parámetros tiene la forma:

http://elbitcampeador.wordpress.com?parametro1=valor1&parametro2=valor2

Para esta URL, el método location.search devuelve la cadena:

?parametro1=valor1&parametro2=valor2

Donde cada parámetro está separado por el caracter &, y para cada párametro se usa el carácter = para separar el nombre del valor.

A continuación pongo un ejemplo completo de lectura de parámetros desde URL usando JavaScript, y usar dos parámetros en concreto (uno llamado ancho y otro alto) para hacer un recuadro con esas dimensiones.

index.html

[sourcecode language=”html”]

Leer parámetros desde JavaScript
<script type="text/javascript" src="script.js"></script>

La URL es:
El valor del parámetro ANCHO es:
El valor del parámetro ALTO es:

[/sourcecode]

script.js

[sourcecode language=”javascript”]
function Init(){
var url = String(window.location.href);
var params = String(window.location.search);
var aux1 = new Array();
var aux2 = new Array();
var cont = 0;
var tot = 0;

//si hay parametros
if (params.length > 0){
//eliminamos el primer caracter ‘?’
params = params.substr(1);

//insertamos en un array las parejas nombre=valor
aux1 = params.split("&");
tot = aux1.length;
for (cont = 0; cont < tot; cont++){
//separo el nombre del valor
aux2 = aux1[cont].split("=");

//trabajo con cada parámetro
if (aux2[0].toLowerCase() == "ancho"){
document.getElementById("ancho").innerHTML = aux2[1];
document.getElementById("cuadro").style.width = aux2[1];
}
else if (aux2[0].toLowerCase() == "alto"){
document.getElementById("alto").innerHTML = aux2[1];
document.getElementById("cuadro").style.height = aux2[1];
}

}

}
else{
alert("No hay parámetros en la URL");
}

document.getElementById("url").innerHTML = url;
}
[/sourcecode]

Escritorio remoto en Ubuntu

Me he visto en la necesidad de conectarme desde un ordenador remoto a mi escritorio de Ubuntu, aunque es sencillo hacerlo he preferido dejarlo aquí por escrito para recordarlo en el futuro, y por si le sirve a alguien más.

Lo que vamos a hacer es compartir el escritorio de Ubuntu, que es muy diferente a entrar remotamente en Ubuntu creando una nueva sesión (esto lo explico luego al final de manera más brevemente).

Afortunadamente Ubuntu 7.10 (gutsy) trae instalado la utilidad de compartir escritorio remotamente, y supongo que en versiones posteriores también.

Yo lo he configurado desde el escritorio GNOME. Para acceder a las opciones sigue estos pasos:

Sistema -> Preferencias -> Escritorio remoto

En la pantalla que se muestra podremos configurar lo siguiente:

– Permitir a otros usuarios ver el escritorio.

– Permitir a otros usuarios controlar el escritorio.

– Cuando un usuario quiera conectarse: Pedir confirmación y/o password.

Una vez ajustado a nuestras necesidades no debemos olvidar abrir el firewall, si disponemos de uno instalado, al puerto 5900. Si vamos a acceder desde el exterior de nuestra red local, entonces debemos habilitar dicho puerto también desde nuestro router.

Ahora, desde otro ordenador con Windows instalaremos un cliente de VNC, por ejemplo RealVNC, que puedes obtener gratuitamente desde su web oficial.

Al arrancar el cliente de VNC desde Windows, nos pedirá el equipo al que queremos conectarnos, si es desde una red local pondremos su IP local, por ejemplo 192.168.1.10, en otro caso su IP pública. Si la conexión es exitosa, se establecerá la conexión, aunque si se configuró en Ubuntu la autorización habrá que esperar a que alguien nos autorice, y si especificamos password, el cliente de VNC nos lo pedirá.

Si queremos conectarnos a nuestro escritorio remoto de Ubuntu desde un sistema Linux, tendremos que asegurarnos que tiene instalado el paquete vncviewer, ejecutaremos desde una consola el comando:

vncviewer 192.168.1.10

Evidentemente pondremos la IP que corresponda.

Si nuestro Linux es una distribución Ubuntu, lo tendremos más fácil porque tenemos instalado el terminal remoto, que accedemos con esta secuencia de pasos:

Aplicaciones -> Internet -> Cliente de Terminal Server

En la ventana que se abre especificaremos la IP del equipo remoto y el protocolo que es VNC.

En Ubuntu 7.10 (gutsy) viene instalado el Cliente de Terminal Server, suponiendo que en versiones posteriores sucede lo mismo.

Otro caso es que en vez de querer compartir escritorio en Ubuntu queramos iniciar sesión remotamente en nuestro sistema, para esto tendremos que tener instalado el paquete vncserver, y ejecutar la siguiente instrucción desde una consola:

$ vncserver :1 -name sesion1 -depth 16 -geometry 800x600

Donde :1 es el número de sesión que vamos a crear, sesion1 es el nombre de la sesión, 16 es la profundidad de color en la que vamos a servir la sesión remota, y 800×600 la resolución de pantalla que se mostrará en el cliente.

Para conectarnos remotamente es exactamente igual que como he descrito para el caso de escritorio remoto. La única diferencia es: Donde especificamos la IP, en el cliente, a la que nos queremos conectar, tenemos que poner al final :1 (en nuestro ejemplo) para especificar que sesión queremos iniciar. En nuestro ejemplo sería: 192.168.1.10:1.

La crisis afecta menos al sector de la Informática

Según recoge hoy el diario El Mundo, la Informática es la única que se salva de la crisis en el sector servicios.

…es más fácil encontrar trabajo en empresas relacionadas con las tecnologías de la información.

Puedes leer el artículo completo en el siguiente enlace:

Sólo la Informática se salva de la crisis en el sector servicios.

Preparar MySQL en Linux para que sea accesible desde la red

Cuando instalamos MySQL en nuestro sistema Linux, normalmente, la instalación por defecto solo permite acceder al motor de la base de datos desde la misma máquina y como localhost (o 127.0.0.1) pero en ningún caso con la IP local propia, y mucho menos desde otros ordenadores, desde nuestra red local o desde Internet. Esto es así por motivos de seguridad.

Si queremos que sea accesible en local desde la IP de la propia máquina, o queremos que sea accesible desde la red local o Internet tendremos que realizar una breve modificación en el fichero de configuración my.cnf. Dicho fichero, en instalaciones normales, se encuentra en el directorio /etc/mysql.

Buscaremos la línea

bind-address = 127.0.0.1

y la sustituiremos por

bind-address = IP_local_maquina

donde IP_local_maquina es la IP local de la máquina en la que está instalado MySQL, por ejemplo 192.168.1.10, quedando:

bind-address = 192.168.1.10

Ahora simplemente tendremos que reiniciar nuestro MySQL:

/sbin /service mysqld restart

Y ya tendremos nuestro MySQL configurado para ser accedido desde el exterior. No olvidar abrir su puerto, por defecto 3306, si tenemos instalado un software de firewall, o en el router si va ser accedido desde Internet.

Metodología de análisis y gestión de riesgos de los sistemas de información

El Consejo Superior de administración electrónica ha elaborado la metodología de análisis y gestión de riesgos de los sistemas de información, llamada MAGERIT, cuya utilización promueve, como método de intento de minimizar los riesgos a los que están expuestos los sistemas de información, sean de la índole que sean.

Conocer el riesgo al que están sometidos los elementos de trabajo es, simplemente, imprescindible para poder gestionarlos y por ello han aparecido multitud de guías informales, aproximaciones metódicas y herramientas de soporte todas las cuales buscan objetivar el análisis para saber cuán seguros (o inseguros) están y no llamarse a engaño. El gran reto de todas estas aproximaciones es la complejidad del problema al que se enfrentan; complejidad en el sentido de que hay muchos elementos que considerar y que, si no se es riguroso, las conclusiones serán de poco fiar. Es por ello que Magerit persigue una aproximación metódica que no deje lugar a la improvisación, ni dependa de la arbitrariedad del analista.

Los usuarios de los sistemas de información, que frecuentemente no son técnicos, se preguntan si estos sistemas merecen su confianza, pero ésta se ve mermada por cada fallo. Lo ideal es que los sistemas sean fiables; pero lo cierto es que se acepta convivir con sistemas que en ocasiones no lo son. El asunto no es tanto la ausencia de incidentes como la confianza en que están bajo control: se sabe qué puede pasar y se sabe qué hacer cuando pasa. El temor a lo desconocido es el principal origen de la desconfianza y, en consecuencia, aquí se busca conocer para confiar: conocer los riesgos para poder afrontar los y controlarlos.

Magerit interesa, en definitiva, a todos aquellos que trabajan con información y los sistemas informáticos que la tratan. Si dicha información o los servicios que se prestan gracias a ella son valiosos, esta metodología les permitirá saber cuánto de este valor está en juego y les ayudará a protegerlo.

Si quieres tener toda la información y domentación técnica de esta fabulosa metodología de seguridad para los sistemas de información, no dudes en visitar el siguiente enlace, donde además, podrás descargarte la documentación en formato PDF en español e inglés:
Magerit.

Como curiosidad, también se llama Magerit al segundo superordenador destinado a uso científico en España.

Juego de estrategia – Desktop Tower Defense

Os paso el enlace de un juego, hecho en Flash, de estrategia muy adictivo. El juego consiste en impedir que el enemigo cruce un sector. Para esto dispondremos de dinero para comprar torretas defensivas y otros tipos de defensa bélica. Si conseguimos matar a todos los enemigos sin que crucen el sector, pasaremos a la siguiente fase, con más dinero para más defensas y más dificultad.

Lo único que necesitáis para jugar es un navegador web y conexión a Internet, y si estáis aquí ya disponéis de eso 😛 (claro está que necesitaréis el plugin de Flash instalado en vuestro navegador)

Desktop Tower Defense.

ATENCIÓN: ¡¡ Altamente adictivo !!

Evolución de las conversaciones entre los colegios de Ingenieros en Informática y el Gobierno

Noticias frescas, de mano del Colegio de Ingenieros en Informática e Ingenieros Técnicos en Informática de Andalucía, sobre la evolución que los distintos colegios están realizando con los diferentes organismos y representantes del Gobierno español.

A día de hoy los resultados de dichas gestiones y las últimas noticias de que disponemos son los siguientes:

* El Gobierno ha insistido en que la transposición de la Directiva de Servicios de la Unión Europea es el camino para dar salida a nuestras reivindicaciones profesionales. Sin embargo, ya se publicó una ley en ese sentido (RD 1837/2008) que NO CONTEMPLA A LAS INGENIERÍAS EN INFORMÁTICA EN EL MARCO REGULATORIO, y también se ha producido la primera reunión del Grupo de Trabajo Interministerial para la Transposición de la Directiva de Servicios junto con los Colegios Profesionales, en la que NO SE HA CONSULTADO A LOS COLEGIOS DE INFORMÁTICA.
* El diputado del PP Jesús Vázquez Abad, en el Congreso de los Diputados (concretamente el 11 de Septiembre de 2008), formuló una pregunta al Gobierno solicitando una explicación sobre la no creación del Consejo de Colegios de Ingenieros Técnicos en Informática. El pasado día 9 de Diciembre el Gobierno informó que los Ingenieros Técnicos en Informática NO PUEDEN CONSIDERARSE REGULADOS POR ASIMILACIÓN CON OTRAS TITULACIONES en base a la Ley 12/86. Por ese mismo motivo los Colegios autonómicos creados no tienen engarce con la Ley de Colegios Profesionales y el Gobierno NO ESTÁ OBLIGADO a crear dicho Consejo. La consecuencia es que, sin la existencia oficial del Consejo de Colegios, NO TENEMOS interlocutor válido con el Gobierno.
* En la última reunión del Consejo de Universidades se trató el tema de las fichas y cómo abordar el problema de los Grados y Másters en Ingeniería Informática, problema que se está ya concretando en casos particulares que han salido a la luz este último mes. Según sabemos, de forma inmediata el Consejo de Ministros va a aprobar las fichas de las demás ingenierías, SALVO LAS INGENIERÍAS INFORMÁTICAS. La única respuesta obtenida es que se estudiará qué solución se da a los Ingenieros Informáticos en el futuro.
* El pasado día 12D los Colegios se reunieron con el Director General de Política Económica del Ministerio de Economía y Hacienda, y en dicha reunión se presentaron de nuevo nuestras reivindicaciones. La respuesta fue que ese Ministerio INFORMARÁ NEGATIVAMENTE DE TODAS LAS ATRIBUCIONES QUE SE SOLICITEN PARA LA INGENIERÍA INFORMÁTICA, por considerarlas una restricción innecesaria a la libre competencia. Además, consideran que NO HAY BASE LEGAL PARA QUE SE APRUEBEN UNAS FICHAS PARA NUESTRAS TITULACIONES, al no ser una profesión regulada.

Puedes leer la noticia completa en el siguiente enlace:

Comunicado del CPIIA tras el diálogo con el Gobierno.