Entries Tagged 'Programación' ↓

Charla sobre Ajax en Madrid

Para quién le interese el tema, mañana viernes voy a dar una charla de introducción a Ajax: qué es, qué ha provocado y, principalmente, cómo se usa.

La charla tendrá dos partes: una introducción teórica a los conceptos que aporta Ajax (no más de media hora), y otra parte práctica en las que expodré pequeños extractos de código en crudo, cada uno de esos ejemplos irá destinado a las distintas variantes de Ajax (GET/POST, XML/JSON, a pelo/con Protoype/otras librerías, etc…). Intentaré que la parte práctica sea más amena y que nos lleve algo más de tiempo que la teórica. También intentaré que la teoría no sea muy pesada, así que he preparado una presentación algo zen con algunos puntos graciosos :)

La charla se engloba dentro de la semana de Jornadas técnicas del GUL de la universidad Carlos III, como la anterior que hice hace algunos meses sobre JavaScript en general.

Si queréis más información sobre la ponencia técnica:

Lugar: Universidad Carlos III de Madrid, Leganés, aula 4.0F.16
Hora: De 6 a 8 de la tarde (supongo que acabaremos antes)
Título: Ajax, aplicaciones web más potentes y dinámicas
Ponente: Yo, es decir, Víctor Pimentel

Por cierto, dos horas antes de la mía, en el mismo lugar, hay otra interesante charla sobre Apache2 y su configuración.

Aviso: archivo modificado en el futuro

Vaya, sin duda es de los mejores Warnings que he visto en Java, a lo mejor si lo consigo reproducir me sube la nota de la práctica. Dice tal que así, por cada uno de los archivos .java que quieras compilar:

Warning: Clase.java modified in the future

Lo que te quiere decir es, simplemente, que está modificado en el futuro. Es decir, que la hora de modificación del archivo es más tarde que la hora actual. Normalmente puede pasar al editar un archivo en diferentes ordenadores, un de ellos demasiado “en el futuro” o demasiado “en el pasado”.

Es fácil de reproducir. Cambiad la hora de vuestro ordenador (hasta 1990 valdrá) e intentad compilar algo de Java.

Tras este pequeño parón-anecdótico, ¡vuelta a los exámenes!

Invadido por los Geeks

Considérese una estación espacial en donde se desarrolla una contienda entre los androides humanoides que la pueblan y una versión cibernética de la temida cepa H5N1 del virus de la gripe aviar. [...] La estación estará representada por un entramado bidimensional (un tablero) de F filas y C columnas, cuyos límites están determinados por un muro. [...] Los robots podrán estar «sanos» o infectados por el virus. El comportamiento de los robots «sanos» es tratar de aislarse de los demás. Sin embargo, un robot infectado tendrá un comportamiento distinto, tendrá una necesidad desmedida de compañía, por lo que buscará desesperadamente a sus compañeros. [...]

Así empieza la última práctica que me ha tocado hacer en un par de días de la asignatura Informática Teórica. Ey, 1000 líneas de código en Java, no ha sido para tanto la gripe aviar :D

ClearType/antialiasing en NetBeans 5.0

Por motivos (ajenos) este año las prácticas de Java las he acabado escribiendo en NetBeans y en Windows, y poco a poco me he ido acostumbrando a este editor/IDE de desarrollo. Una de las cosas que odio de algunas aplicaciones Java es que no usan antialising (y olvidémonos del ClearType de Windows), es decir, que las fuentes no salen redondeadas, sino que aparecen muy pixeladas, y esto, y con un tamaño de letra pequeño, es un horror.

Una solución, quizás la más radical es trabajar sobre Java 1.6 Codename Mustang, que erradica completamente este problema. Pero claro, no me quiero ni imaginar la de bugs que aparecerían :D

NetBeans: la diferencia

La otra opción consiste en dos pasos. El primero, para que la IDE completa (menús, etc…) tenga el dichoso antialiasing, se basa en retocar el archivo de configuración en NetBeans. Yo lo he cambiado en Windows, así que en Linux no sé exactamente dónde está. En tu carpeta de instalación de NetBeans (C:\Archivos de Programa\netbeans-5.0 si estás Windows) encontrarás una carpeta llamada etc, y dentro de esa carpeta, un archivo llamado netbeans.conf. Ábrelo con tu editor de texto normal, y a la línea que empieza por netbeans_default_options añade al final esta opción -J-Dswing.aatext=true, de tal forma que quede un espacio entre todas las opciones de esa línea, y que todas esas opciones estén estre comillas (si me expreso mal, mira el formato del archivo, es muy sencillo). Con esto ya hemos hecho que NetBeans se cargue con antialiasing de serie, y puedes comprobar que la diferencia es bastante grande.

El segundo paso es más fácil. Desde NetBeans, vete al menú Tools y escoge Options. Pulsa el botón “Advanced Options”, que se encuentra en la esquina inferior izquierda. En Editing->Editor Settings verás una propiedad “experta”, que se llama, adivina, Text Antialiasing. Selecciónala y pulsa Close, automáticamente los cambios será visibles. Como ves, la fuente del editor ahora está mucho más suave, y por lo menos a mí, me resulta mucho más sencillo de leer.

Bonus: Aprovechando la ocasión, he instalado las nuevas fuentes que traerá Windows Vista, a saber: Calibri, Cambria, Candara, Consolas, Constantia y Corbel. Yo estoy utilizando la fuente Consolas (monoespaciada) para programar, la verdad es que no está mal. Puedes descargarlas desde aquí.

Aprende Ruby, con cachondeo

Al fin me he decidido a introducirme un poco en el tema RoR, y después de leerme varios tutoriales, programar algunas sencillas hierbas y poner en pié un blog desde cero, me he topado con este fantástico tutorial de Ruby en el que dos simpáticos zorros -para mí que son Coby- nos van haciendo la lectura mucho más amena. ¡Impresionante!

Curso del GUL sobre JavaScript

JavaScript, el lenguaje de los navegadores

Actualizado: Las transparencias, 6 horas antes de empezar :P

Este Lunes han empezado en mi universidad las ya tradicionales charlas del GUL, los temas son variados pero todos están relacionados con el software libre (o al menos con el software). Podéis ver el cartel, los horarios definitivos, y para más información, el wiki.

Entre tanto fenómeno, me he colado yo este Viernes (31 de marzo de 6 a 8 de la tarde) para dar una ponencia sobre JavaScript, un lenguaje que parece estar otra vez de moda. La charla tendrá un carácter introductorio: cómo empezó, algo de sintaxis, modelo de objetos, dom y algunos ejemplos y trucos. A lo mejor hasta dejo alguna transparencia para prototype u otra librería tan genial como ésta, todo depende del tiempo.

Si estás cerca de Leganés (Madrid), te interesa el tema y no sabes cómo empezar a meterte de lleno, yo creo que sería un buen primer paso que vinieras a esta charla. Y si estás lejos pero te interesa, también puedes seguirlo mediante streaming. Supongo que las pasarán a vídeo, pero eso puede durar meses.

Mi idea es dejar las transparencias antes de la charla, pero lo mismo las dejo un día antes como las dejo 5 minutos antes de empezar a hablar…

Visibone, libro de chuletas para maquetadores

El libro de las chuletas

Creo que esto tiene ya algún tiempo, pero el milagro de los marcadores sociales (juas) me lo ha devuelto a la memoria. Se trata de Visibone Browser Book, un libro con exhaustivas chuletas sobre XHTML, CSS, JavaScript, DOM, expresiones regulares, fuentes y colores.

Está francamente bien, podeis daros una vuelta por las versiones que dejan ver casi a tamaño real para convenceros. Lo malo es el precio, entre 30$ y 55$, algo carillo para apenas 10 páginas. También lo tienen en cartas, y en otros formatos.

Si no quereis desembolsar pasta, en Criterion han comentado muchas chuletas listas para imprimir, sobre variopintos temas aparte de la maquetación web (Photoshop, ActionScript, Google, etc).

El ataque de los clones

El Quinto Elemento

O algo así debe pensar digg.

Primero salió r00lz, pero Manu rápidamente dijo que no, que era un blog de enlaces, cerrado y acotado, nada más.

Luego oí hablar de Fresqui, y parecía ser lo que parecía ser.

Al mes, mes y medio o dos meses, los clones despertaron.

El primero en abrir los ojos fue Populicias. No aprovechó la salida.

El segundo fue Menéame, un proyecto llevado a cabo por Ricardo G. en, según él, 11 días. Si vemos un poco el código comprobaremos que es cierto. Ey, que es software libre, un respeto. Y que todavía no está diseñado, que éste es el diseño final.

El tercero, BlogMemes. El único que está basado en diggClone (eso parece), pero la gente dice que diggClone está muy verde y tal pascual. Yo lo único que sé sobre el tío que hizo diggClone es que es un poco palurdo, ya que dejó una versión de diggClone con su fichero de configuración de la base de datos, y se la limpiaron en un momento.

El cuarto, como dije, parece que es Fresqui. Veremos con qué nos sorprende.

Y yo aquí, terminando una práctica sobre estructuras de datos, sobre lo que no me importa una mierda.

¿Tendrá que ver este post con este de hace más de un mes? ¿Qué sabe este tal Antonio Ortiz que no nos quiere decir? ¿Por qué tengo tantas cosas por hacer?

Actualización: Me equivocaba, ya son, seguro seguro, seis proyectos: llega la Sexta.

Ejercicio 1: Prográmame un juego de rol

Hace pocos días, en la ETSII (Universidad Politécnica de Valencia), pusieron un examen sobre bases de datos. Pos que emoción direis algunos. Pos ya sabemos por dónde vas, dirán otros que ya estarán enterados. Bien, la peculiaridad del examen era que trataba sobre los jedis de la Guerra de las Galaxias, y empezaba con la famosa frase “Hace mucho tiempo, en una galaxia muy, muy lejana…”.

Ayer, haciendo exámenes pasados de Programación, me encontré con otra joyita geek: como ejercicio, proponen hecer un juego de rol en java. Se titula la Batalla de las Almas, y básicamente se trata de luchas entre demonios y ángeles.

Empieza así:

Se desea diseñar un juego de rol llamado “La Batalla de las Almas”, el juego está formado por una clase principal denominada “Batalla.java” donde se crean los diferentes participantes del juego y se produce el desarrollo del mismo. El principal objetivo del juego consiste en disputarse el alma de un conjunto de seres Humanos, por lo tanto existirán diferentes elementos (Ángeles y Demonios) que podrán combatir para tratar de “salvar” o “condenar” cada una de las almas puestas en juego.

El examen en pdf desde la propia página de la asignatura. Y también la solución, por si a alguien le interesa java.

Si es que los profesores de informática no pueden ocultar que son unos geeks ;)

RushHour, por fin 1.0

Ya puedo publicar la versión alpha/beta/definitiva de la práctica que hemos hecho en Programación. Alpha porque se debería calificar así, beta porque hice algunas pruebas con mi hermana como conejillo de indias, y definitiva porque en principio no pienso tocarla más.

Además de los bytecodes y el código fuente y archivos necesarios (imágenes, archivos de niveles), incluyo la documentación generada por javadoc y la memoria que nos obligaban hacer. En la memoria se incluye un manual de usuario bastante básico, si teneis dudas sobre la aplicación podeis acudir a él.

Para que veais su aspecto, un par de capturas del juego en sí:


rushhour01


rushhour02

Además se incluye un Generador de partidas, para editar tus propias partidas, y me ha quedado más chulo:


CapturaGenerador

Para bajártela puedes elegir entre un archivo comprimido en .RAR, o en .ZIP.

Por si hay alguna duda, recuerdo que todo lo que publico aquí, salvo que indique lo contrario, está bajo el Dominio Público, esta práctica incluida. Por lo que puedes modificar, copiar, e incluso ganar dinero con estas fuentes (improbable) sin ni siquiera nombrarme.