FightCode: programando robots para la lucha con javascript

Reconozco que me encantan estas cosas. Y que luego ni soy bueno, ni tengo el tiempo, ni la energia, que me gustaría dedicarle, pero por lo menos, esta vez me ha motivado para escribir un nuevo post en este blog, mucho (pero mucho, mucho) tiempo después.

Captura de pantalla 2013-03-22 a la(s) 21.23.29

¿En que consiste esto de FightCode? Pues es una aplicación web mediante la cual, utilizando un lenguaje ampliamente utilizado en estos dias como es javascript, puedes programar el comportamiento de un robot, que luchará “a muerte” con otros robots programados por otros usuarios. En principio, esto no es un nuevo concepto, no es una innovación brutal, y de hecho existen numerosos ejemplos de aplicaciones realmente similares y mucho mas antiguas como RoboCode, o el antiquísimo RobotWar, pero la posibilidad de programarlo con javascript es algo que me motiva especialmente.

FightCode ofrece un API con los diferentes métodos utilizables para programar tu robot. Este API ofrece las opciones mas básicas y lógicas para el movimiento de tu robot (adelante, atras, girar izquierda y derecha), y tambien los movimiento básicos de ataque (girar la torreta en ambas direcciones, identificar objetivo y disparo). Además ofrece otros movimiento mas “especiales” como “clone” que te permite generar un robot identico al tuyo que luchará a tu lado con tus mismas características. O la función “disappear”, que te permite desaparecer de la detección del resto de los robots durante un corto periodo de tiempo.

 

Posted in General, Tecnologia, Web0 Comments

Como proteger nuestro ordenador de los virus

Prácticamente desde el inicio de la proliferación computadoras, han existido los virus informáticos, pequeñas piezas de código malintencionado que se instalan de muchas formas en nuestros ordenadores, y que nos producen efectos y comportamientos no deseados. Aunque el auge real de estos pequeños programas ha llegado con la popularización de las redes, y de Internet.

Model of a Virus

Existen muchas formas en las cuales los virus consiguen penetrar en nuestros sistemas. Gracias a la seguridad de los sistemas operativos actuales, prácticamente cualquier virus necesita de la interacción del usuario para poder residir en nuestra computadora, aunque, una vez dentro, pueden ser muy difíciles de erradicar. Estas interacciones pasan por la ejecución de aplicaciones infectadas, documentos o conexiones a redes inseguras.

Y al igual que la forma de “infección”, sus efectos tambien pueden ser muy variados. Los hay desde los que habilitan / inhabilitan funciones del sistema operativo sin nuestro consentimiento, corrompen o destruyen información, los que permiten acceso remoto a nuestro ordenador sin acceso remoto, o los que simplemente, en una demostración de destreza del programador, no corrompen nada, pero se replican y contagian a otros ordenadores masivamente discretamente.

Pero no todo son noticias negativas, existe gran cantidad de software, para cada uno de los sistemas operativos, incluso para los móviles, que facilmente nos ayudarán a eliminar a estos indeseables programas.

Puedes consultar mas información en la página oficial de Norton

Posted in Gadgets, General, Tecnologia2 Comments

Entrando en el mundo de los móviles chinos

Después de varios años conmigo, mi iPhone 3GS necesitaba un relevo, y tras comentar con algunos amigos decidi dar el salto a Android. A diferencia de Apple, la variedad de dispositivos es tan grande, que requiere un estudio exhaustivo de la oferta. Puedes lanzarte a por las grandes marcas del momento, Samsung y HTC, que son las que esta exprimiendo el sistema operativo de google para móviles al máximo, pero esta opción no es mucho mas barata que comprar un iPhone, y yo estaba buscando algo mas barato.

57091440049496056854771

En los operadores actuales podemos encontrar otras marcas, menos conocidas y que sin embargo ofrecen unos móviles con unas especificaciones razonables a precios razonables, como son Huawei, ZTE, y al investigar sobre ellos, encuentras que puedes comprarlos libres, en tiendas online como pandawill.com, o etotalk.com a precios muy razonables y que existen otra gran cantidad de marcas y modelos, muy populares en este tipo de tiendas, y de los que no tenemos noticias en países como España. Marcas como Jiayu, Meizu, Freelander o Newton, totalmente desconocidas en nuestro pais, son lideres de ventas. Y aunque el precio puede ser un factor determinante, la diferencia de precio entre alguno de estos móviles y los móviles de última generación de marcas mas populares  como HTC o Samsung, no es tan grande. Muchos de estos móviles prácticamente calcan las especificaciones de dispositivos como el Samsung Galaxy S3, el Galaxy S2, o los diferentes modelos de Nexus fabricados por HTC.

Otra característica de estas marcas es la ausencia, o la dificultad de encontrar soporte y actualizaciones para estos modelos, sin embargo, disponen de una scene que se encargan de personalizar y mejorar las escasas versiones que proporcionan los fabricantes.

Tras revisar varios de estos móviles, y teniendo en cuenta los precios y especificaciones, pre-seleccioné algunos de ellos:

  1. Freelander i10 / Newton N1
  2. Jiayu G3
  3. UMI X1

Finalmente, entre el precio y los problemas de stock que tuvo el Jiayu G3, terminé comprando el Freelander i10. Hasta el momento, muy contento, proximamente publicaré como actualizar, y donde informarse sobre la scene alrededor de ese idioma.

Posted in Android, General, Móviles4 Comments

Cosas a tener en cuenta para el mantenimiento de tu equipo

Sea cual sea nuestro equipo, o los sistemas operativos que utilizamos, por norma general deberemos realizar periodicamente ciertas tareas de mantenimiento, para poder seguir disfrutando de nuestro equipo en plenas condiciones. Por lo general, los tres sistemas operativos mas comunes, Windows, Linux, Os X, requerirán acciones similares para problemas similares, aunque cada sistema operativo tiene sus propias características, que nos obligarán a centrarnos mas o menos en unas tareas u otras.

Defrag

Por suerte, podemos encontrar algunas aplicaciones que nos pueden ahorrar algo de trabajo:

Linux

En linux, podremos utilizar el sistema de gestion de paquetes que traiga nuestra distribución favorita, para gestionar que tenemos instalado, que necesita una limpieza y que una reparación. Ademas, tambien podemos hacer uso de herramientas como parted o gparted (en su version gui-gnome) para revisar el estado de nuestro disco duro, memtest para comprobar el estado de nuestra memoria RAM. Y si tienes problemas mas serios, puedes recurrir a las siempre utiles y potentes distribuciones de recuperación como el Hiren’s BootCD, o Ultimate Bootcd, o la mas novedosa, FalconFour’s Ultimate BootCD.

OS X

En OS X, al ser un sistema operativo basado en BSD-Unix, tambien podemos encontrar muchas de estas herramientas que ya hemos comentado para Linux, pero ademas podremos encontrar otras muchas, mucho mas intuitivas, al ser esta (la sencillez) una de las características de este sistema operativo. Algunas de estas aplicaciones son Onyx, AppCleaner, Cocktail… Y puedes encontrar muchas mas en la App Store. Con ellas podrás reparar permisos, revisar el estado del disco duro, ejecutar algunos scripts de optimización y demás…

Microsoft Windows

Para windows, tenemos las tareas clásicas que se realizan desde siempre, que pueden ser realizadas con las propias herramientas del sistema, defragmentación de disco con defrag, análisis con scandisk, pero si quieres conseguir lo máximo de tu sistema después de un tiempo de uso, vas a tener que recurrir a herramientas mas específicas, como Simplifast, Everest, y otros muchos, con los que podrás dejar tu sistema a punto.

Posted in Gadgets, General, Tecnologia1 Comment

Escribiendo Javascript sin usar letras ni números

Dilbert Programming

Sabias que es posible escribir código Javascript sin utilizar ninguna letra o numero? Vale, no solo javascript, pero en este caso es el lenguaje usado para demostrarlo. Patricio Paladino, muestra como se puede escribir código javascript totalmente funcional con solo 8 caracteres, y todos ellos de puntuación.

La palabra importante en este caso es “Typecasting”, o lo que es lo mismo, convertir una variable de un tipo de datos en otro. Para empezar, tomaremos un array vacío, que en Javascript se escribe con unos corchetes “[ ]“. Si hacemos un casting a entero de este array, utilizando el símbolo de la suma “+”, nos devolverá el numero “0″. Y si utilizamos la exclamación, como operador binario de negación podemos obtener un 1. A partir de aquí, sumando, podemos obtener cualquier número.

Pero obtener números simplemente sumando puede ser muy tedioso para números grandes. Sin embargo, podemos concatenar los números y haciendo casting a cadena, y podemos obtener números largos de una forma mucho mas sencilla.

Para obtener caracteres no numéricos, podemos utilizar las palabras false, o true, proveniente de los booleanos, para sacar cada una de sus letras “f, a, l, s, e, t, r, u”. Dividiendo caracteres no numéricos obtenemos la palabra NaN, y de ahí podemos obtener la “N”. Y dividiendo entre 0, podemos obtener la palabra “infinity”, añadiendo las letras “i, n, y, t” a nuestro conjunto de caracteres.

¿Por que es útil conocer este tipo de cosas? Es útil para la prevención de ataques XSS. Ya que estas técnicas para la obtención de caracteres mediante aritmética y sin utilizar ningún carácter, podría pasar las validaciones mas frecuentes de javascript, e incluso los del servidor.

Puedes encontrar mas información en los siguientes enlaces:

http://patriciopalladino.com/blog/2012/08/09/non-alphanumeric-javascript.html
http://blog.infobytesec.com/2012/09/bypassing-wafs-with-non-alphanumeric-xss.html
http://sla.ckers.org/forum/read.php?24,28687

Posted in General, Tecnologia, Web1 Comment

Publicidad

Facebook

By: Rashid Azar

Polls

¿Cuál es la red social que más utilizas?

  • Twitter (70%, 7 Votes)
  • Facebook (20%, 2 Votes)
  • Otras (10%, 1 Votes)
  • Tuenti (0%, 0 Votes)
  • LinkedIn (0%, 0 Votes)

Total Voters: 10

Loading ... Loading ...