Archivo de la categoría Programación

Space Invaders en Javascript



Kris Cieslak, ha desarrollado una meritoria conversión del clásico Space Invaders.

A diferencia de otros ports de juegos similares, que se han creado en Flash, Director o Java, éste Space Invaders, está escrito en Javascript, y lo que es mejor, funciona sin problemas en Internet Explorer, Firefox y Opera.

Lo tenéis disponible para jugar online aquí.



Continuar leyendo...

El archivo que se descomprime a si mismo



Maximum Compression, ha inagurado un nuevo apartado en su web con hechos curiosos. El que más me ha llamado la atención es un archivo GZ que al descomprimirse, vuelve a dar el mismo fichero. Proceso que se puede repetir hasta el infinito o hasta que nos cansemos (lo que antes ocurra).

La pequeña joya, creada por Caspian Maclean la podéis descargar aquí (210 bytes en formato GZ).…

Continuar leyendo...

AS3 Fire



Incitado por Polimalo, y después de la última incursión en la demoscene usando Flash (MX 2004/7 en aquel momento), he decidido darle un voto de confianza a Flash CS3/9, y probar las posibilidades del objeto BitmapData para manipular píxeles.

La idea ha sido portar el clásico algoritmo de generación de fuego a ActionScript 3, y ver que ocurría. La primera versión del programa, la tuve lista en 45 minutos, dando 4 frames/segundo.

Invertí tres horas más optimizando código (más detalles en el changelog del propio fuente), y haciendo pruebas de diferentes implementaciones, hasta llegar a conseguir un rendimiento de 30 FPS, limitado basicamente por la eficiencia del método setPixel().…

Continuar leyendo...

HelpPC



Me ha hecho tremenda ilusión encontrar de casualidad la versión online de HelpPC 2.10 (255 Kb en formato ZIP), que escribiera en 1991 David Jurgens.

Si te interesa, puedes obtener el conversor, y las páginas ya convertidas en Nostalgic HTML Conversion of the HelpPC Shareware Reference.

HelpPC era una guía de referencia, de la época de las variadas Norton Guides, la Ralf Brown Interrupt List, la PC Game Programmer's Encyclopedia PCGPE) o los tutoriales SWAG. HelpPC no superaba en ningún aspecto a las anteriores, pero tenía un poco de todo, y era tremendamente compacto, lo que lo hacía muy práctico.…

Continuar leyendo...

FAR open source



El gestor de archivos FAR ha pasado a ser código abierto.

Debemos recordar que FAR fue creado por Alexander Roshal, el autor de WinRAR, como un gestor de archivos potente y extensible, usando en aquella época la base de código de shell de RAR 2.

La rama 1.71, actualmente en alfa 4 (build 2275) añade sobre la 1.70 algunas nuevas funciones, y errores corregidos, al mismo tiempo que se distribuye también un binario de 64 bits para Windows.

La rama en desarrollo 1.80, actualmente alfa (build 3000), aporta sobre la 1.71 soporte al juego de caracteres unicode.

El ser una aplicación de consola, hace que su ejecución sea tremendamente veloz, y el consumo de memoria mínimo (menos de 1,2 Mb en mi sistema), por contra, ello implica lidiar con una interfaz, que no se ajusta al estándar Windows, aunque afortunadamente, si que sigue el convenio de Comandante Norton/Total Commander.…

Continuar leyendo...

Mala práctica 5



De nuevo he dejado descuidadas las Malas prácticas, y no ha sido precisamente por falta de material.

Fijaros en el código de a continuación. A simple vista se ve que no indenta correctamente, y que utiliza la marca corta de PHP <? y ?>, que no siempre está activada, y podría dar algún que otro problema durante el despliegue.

Si entramos más en detalle, veremos que todos los enlaces están escritos de forma absoluta, algo que es absolutamente una mala práctica. Para rematerlo, hay definida dentro de las constantes una llamada DIR_RAIZ, que nos permitiría permitir generar enlaces absolutos de forma dinámica.…

Continuar leyendo...

Gestión de proyectos efectiva para geeks del web



Meri Williams publica en SitePoint un excelente artículo sobre gestión de proyectos informáticos, pero a diferencia de muchas otras publicaciones, éste omite los bells and whistles innecesarios.

Effective Project Management for Web Geeks, consta de dos páginas que concentran el conocimiento enfocado a la práctica en la gestión de proyectos. Tocando temas como las etapas en el ciclo de un proyecto, el plan de desarrollo, la gestión de riesgos, incidencias, …

El artículo da acceso a descargar (16 Kb. en formato ZIP), unas plantillas básicas con la documentación fundamental para la gestión, que según Meri son el documento de inicio del proyecto, y el documento de avance de proyecto con su correspondiente actualización de issues.…

Continuar leyendo...

Access violation en ntdll.dll desde Zinc



Seguramente MDM Zinc de Multidmedia es el mejor wrapper para Flash que conozco, pero cada vez que me encuentro con un error nuevo, me indigno más.

No me cuesta reconocer, que un proyecto de este tipo, entraña gran dificultad, y es cosa común que se vayan descubriendo bugs. Lo que no es admisible, es que en el foro de soporte, haya incidencias que se han reportado desde hace 3 años, y todavía no se han corregido. Pero lo que es peor, ni siquiera se es capaz de dictaminar cuál es la causa.

Por ejemplo, puede ocurrir que al ejecutar un ejecutable tratado por Zinc desde CD, se produzca una violación de acceso a memoria en NTDLL.DLL.…

Continuar leyendo...

No distinguir caso ni acentos en SQL Server



Tal vez en alguna ocasión, necesites realizar una consulta a una base de datos SQL Server, comparando un campo de texto con un valor, pero sin tener en cuenta mayúsculas y minúsculas; o bien sin diferenciar entre vocales acentuadas de sin acentuar.

La solución es tremendamente sencilla, aunque no intuitiva ni fácil de descubrir. Se trata de utilizar la cláusula COLLATE, para forzar a SQL Server a que use las transformaciones de caracteres (intercalaciones en la traducción del MSDN) que nos interesen.

El truco está en que COLLATE, no solamente permite especificar juegos de caracteres (Modern_Spanish, Latin1_General, …), sino además agregar reglas que indican como tratar esa expresión.…

Continuar leyendo...

AutoIt



AutoIt es un sencillo lenguaje de script para Windows basado en BASIC, que nos permite realizar de forma sencilla programas que automaticen tareas.

AutoIt es gratuito, está disponible para plataformas de 32 y 64 bits, y tiene una documentación, concisa y sencilla de entender.

Si ya se sabe programar en otros lenguajes, se puede empezar a escribir código con AutoIt en menos de media hora. La lista de funciones que soporta AutoIt, van desde las matemáticas más simples (Abs, Sin, …), hasta otras más esotéricas, como la del cálculo del checksum de los píxels de un rectángulo en pantalla (PixelChecksum), pasando por las habituales de gestión de archivos.…

Continuar leyendo...