Hace unos días estuve viendo el video de spore. En él Will Wright muestra algunos detalles técnicos del juego, así como una gran parte de su contenido jugable. Básicamente el juego trata de evolucionar con tus criaturas desde que eres un microorganismo hasta invadir otros planetas de galaxias lejanas. En el juego destaca la capacidad de creación de criaturas en base a partes del organismo que el juego te ofrece y a partir de ellas, proceduralmente, se generan las animaciones y demás. Es bastante impactante ver en el video como genera diferentes criaturas añadiendo patas a su columna vertebral, o picos y ojos a su cabeza (o cabezón). Además, como dice en el video, los escenarios están generados proceduralmente, esto es, no están previamente creados por un artista y almacenados en disco. El artista lo diseña y se guarda la información que permite generarlo posteriormente, no los datos ya generados. Esto permite un ahorro bestial de disco.
Me llamó poderosamente la atención el hecho de que las animaciones se generaran al vuelo, supuse que habrá algún tipo de directrices que permitan generarlas, de otra forma es imposible, aunque con lo que he visto de video no soy capaz de concluir nada. Me puse a buscar información al respecto y he encontrado un link del 1994 sorprendente.
Karl sims propone un algortimo genético en el cual a partir de unas funciones muy básicas (sumas, multiplicaciones...) y un grafo neuronal genera criaturas en base a cubos usando una física "muy básica". Las crituras que crea tienen 3 propósitos, andar, salar y nadar. Lo que sorprende, sobretodo en las criaturas que nadan, es como la evolución hace que se parezcan a las criaturas que tenemos e la naturaleza. Si te interesa el tema no dejes de leer los dos papers: "Evolving Virtual Creatures" y "Evolving 3D Morphology and Behavior by Competition". Explica sin demasiados tecnicismos como están creadas las criaturas y las puedes ver en movimiento bajándote el video de archive.org
4.29.2006
4.27.2006
Windows Mobile 5 y licencias de aplicación
La mayoría de aplicaciones que se basan en licencias utilizan algún sistema para fijar una licencia a un determinado dispositivo, de tal forma que esa licencia solo se puede usar para cierto dispositivo y no otros. Es lógico pensar que una de las opciones es usar el identificador único que la mayoría de máquinas tienen para fijar esta relación.
Hace no demasiado me he comprado un PocketPC que trae windows mobile 5 y una de las cosas que me hn llamado la atención es que al ejecutar algunas aplicaciones el sistema operativo me avisaba de que no estaba firmada y podría dañar mi equipo. Ya estamos acostumbrados a ver estos mensajes cuando instalamos un driver en windowsxp que no está firmado por alguna autoridad y por tanto he estado pasando de él.
En estos días estoy testeando la aplicación para asistencia al guiado para el agricultor en diferentes equipos y me han dejado un pocketpc con windows mobile 5 con un GPS con un refersco de 5Hz. Al arrancar la aplicación veo que la rutina que toma el identificador del dispositivo falla. Voy a internet y tras unos minutos encuentro lo siguiente: resulta que por cuestiones de seguridad microsoft ha optado por deshabilitar las llamadas al sistema que permitían obtener el identificador del dispositivo salvo para códigos "trusted", esto es, de una fuente conocida. Para ser una fuente conocida tu aplicación debe tener un certificado que permite leer ese identificador y claro, para obtener esa certificación tienes que abonar la correspondiente suma.
Menos mal que han habilitado una función para recoger el ID, GetDeviceUniqueID, y cuyas cabaceras y librerías vienen en el SDK de windows mobile 5, que por otro lado no te puedes bajar si no posees una copia legal de windows. Como son 170 y pico megas y yo vengo de una saga de aventureros usuarios de modem de 56k decidí que pasaba de bajarme toda esa purrela para usar una simple función. Recordé mi época en la que todo era maravilloso y todo lo quería hacer modular dividiendo las aplicaciones en tropecientas DLL's que, por cierto, casi nunca llegaban a ninguna parte, y me puse manos a la obra.... un poco de LoadLibrary, un poco de punteros a funciones y voila:
typedef HRESULT (*idfunc)(LPBYTE,DWORD,DWORD,LPBYTE,DWORD*);
inline BOOL GetDevideIDWindowsCE5(unsigned int *id)
{
idfunc GetDeviceUniqueID;
HINSTANCE h = LoadLibrary(_T("coredll.dll"));
if(h)
{
GetDeviceUniqueID=(idfunc)GetProcAddress(h, _T("GetDeviceUniqueID"));
if(GetDeviceUniqueID)
{
HRESULT hr = NOERROR;
BYTE rgDeviceId[DEVICE_ID_LENGTH];
DWORD cbDeviceId = sizeof(rgDeviceId);
#ifndef GETDEVICEUNIQUEID_V1
#define GETDEVICEUNIQUEID_V1 1
#endif
hr = GetDeviceUniqueID(reinterpret_cast(APPLICATION_DATA),
APPLICATION_DATA_LENGTH,
GETDEVICEUNIQUEID_V1,
rgDeviceId,
&cbDeviceId);
if(hr != NOERROR)
{
return FALSE;
}
BYTE* p =(BYTE*) rgDeviceId;
unsigned int k = 0;
for(int i=0; i< cbDeviceId; ++i)
{
k += *p;
}
*id = k;
return TRUE;
}
return FALSE;
}
return FALSE;
}
Hace no demasiado me he comprado un PocketPC que trae windows mobile 5 y una de las cosas que me hn llamado la atención es que al ejecutar algunas aplicaciones el sistema operativo me avisaba de que no estaba firmada y podría dañar mi equipo. Ya estamos acostumbrados a ver estos mensajes cuando instalamos un driver en windowsxp que no está firmado por alguna autoridad y por tanto he estado pasando de él.
En estos días estoy testeando la aplicación para asistencia al guiado para el agricultor en diferentes equipos y me han dejado un pocketpc con windows mobile 5 con un GPS con un refersco de 5Hz. Al arrancar la aplicación veo que la rutina que toma el identificador del dispositivo falla. Voy a internet y tras unos minutos encuentro lo siguiente: resulta que por cuestiones de seguridad microsoft ha optado por deshabilitar las llamadas al sistema que permitían obtener el identificador del dispositivo salvo para códigos "trusted", esto es, de una fuente conocida. Para ser una fuente conocida tu aplicación debe tener un certificado que permite leer ese identificador y claro, para obtener esa certificación tienes que abonar la correspondiente suma.
Menos mal que han habilitado una función para recoger el ID, GetDeviceUniqueID, y cuyas cabaceras y librerías vienen en el SDK de windows mobile 5, que por otro lado no te puedes bajar si no posees una copia legal de windows. Como son 170 y pico megas y yo vengo de una saga de aventureros usuarios de modem de 56k decidí que pasaba de bajarme toda esa purrela para usar una simple función. Recordé mi época en la que todo era maravilloso y todo lo quería hacer modular dividiendo las aplicaciones en tropecientas DLL's que, por cierto, casi nunca llegaban a ninguna parte, y me puse manos a la obra.... un poco de LoadLibrary, un poco de punteros a funciones y voila:
typedef HRESULT (*idfunc)(LPBYTE,DWORD,DWORD,LPBYTE,DWORD*);
inline BOOL GetDevideIDWindowsCE5(unsigned int *id)
{
idfunc GetDeviceUniqueID;
HINSTANCE h = LoadLibrary(_T("coredll.dll"));
if(h)
{
GetDeviceUniqueID=(idfunc)GetProcAddress(h, _T("GetDeviceUniqueID"));
if(GetDeviceUniqueID)
{
HRESULT hr = NOERROR;
BYTE rgDeviceId[DEVICE_ID_LENGTH];
DWORD cbDeviceId = sizeof(rgDeviceId);
#ifndef GETDEVICEUNIQUEID_V1
#define GETDEVICEUNIQUEID_V1 1
#endif
hr = GetDeviceUniqueID(reinterpret_cast
APPLICATION_DATA_LENGTH,
GETDEVICEUNIQUEID_V1,
rgDeviceId,
&cbDeviceId);
if(hr != NOERROR)
{
return FALSE;
}
BYTE* p =(BYTE*) rgDeviceId;
unsigned int k = 0;
for(int i=0; i< cbDeviceId; ++i)
{
k += *p;
}
*id = k;
return TRUE;
}
return FALSE;
}
return FALSE;
}
4.21.2006
un par de links
Visitando el blog de Jare he encontrado dos links batasnte interesantes.
Uno de ellos es a una galería con imágenes generadas proceduralmente. Lo interesante no son solo las imágenes, además el autor deja el código fuente de los applets que generan esas imágenes, que por cierto usan una librería/lenguaje llamado processing. Dos ejemplo: creación de una ciudad y node garden. No os perdais el código fuente que puedes ver en la misma página que el applet.
El segundo link es a una entrevista a Kenta Cho en la que habla de sus juegos, da algunos detalles de la programación, su inspiración y otras cosas. Merece ser leída.
Uno de ellos es a una galería con imágenes generadas proceduralmente. Lo interesante no son solo las imágenes, además el autor deja el código fuente de los applets que generan esas imágenes, que por cierto usan una librería/lenguaje llamado processing. Dos ejemplo: creación de una ciudad y node garden. No os perdais el código fuente que puedes ver en la misma página que el applet.
El segundo link es a una entrevista a Kenta Cho en la que habla de sus juegos, da algunos detalles de la programación, su inspiración y otras cosas. Merece ser leída.
4.19.2006
Estudio económico de una aplicación
Bien, estoy terminando el proyecto fin de carrera y como muchos sabéis es una aplicación que ayuda al agricultor en labores en las que el apero es de un gran ancho de trabajo y por ello no puede calcular las distancias a ojo.
Estoy en la parte del estudio de costes y aprovechando una hand-shake de correos con rafael mompó en el que discutíamos sobre el estado de las telecomunicaciones, en concreto de los empleos, en España y Europa a la luz de la reciente noticia del déficit de empleados, le he enviado un mail con un presupuesto chorra basado en la más cruda realidad:
"""
"""
(1) Un PC dura dos años, a 1200€ sale 50€/mes
(2) Datos reales
(3) Sin ningún tipo de prima
Ahora en serio. Siguiendo las inidcaciones de rafa, cobrando 3 millones al año, con unos gastos de SS de 10000 euros, más un 20% de la cantidad anterior de gastos extras y teniendo en cuenta que solo trabajas 112 días al año, finalmente sale un precio hora de unos 40€.
Lo triste es que esos 3 millones no los gano ni por el forro, porque teóricamente debería vender unas 36 unidades al año a unos 1500€, cosa bastante imposible :).
Estoy en la parte del estudio de costes y aprovechando una hand-shake de correos con rafael mompó en el que discutíamos sobre el estado de las telecomunicaciones, en concreto de los empleos, en España y Europa a la luz de la reciente noticia del déficit de empleados, le he enviado un mail con un presupuesto chorra basado en la más cruda realidad:
"""
Calculo que he tardado unos 3 meses en hacer la aplicación (a tiempo completo tomando cafés y eso) y tengo que estudiar los costes de mano de obra. Como puedo trabajar en casa pongo el coste 0 de oficinas, unos 50€/mes el PC (1), no les cobro internet porque con mis conocimientos de redes he conseguido crackear la contraseña WEP al vecino, 60€ de la copia de windows home y luego 400€/mes que es lo que valgo según las empresas del sector (2) (bueno, no incluyo los tickets de comida 5€/día). Además debo incluir los impuestos que en este caso, al ponerme como supuesto autónomo serían unos 200€/mes (3)(el 50% de mi sueldo) e imagino que me quedo en el tintero alguna cosa más. Total, si vendo 1 unidad de la aplicación del proyecto ya ha salido rentable y todavía gano dinero...
"""
(1) Un PC dura dos años, a 1200€ sale 50€/mes
(2) Datos reales
(3) Sin ningún tipo de prima
Ahora en serio. Siguiendo las inidcaciones de rafa, cobrando 3 millones al año, con unos gastos de SS de 10000 euros, más un 20% de la cantidad anterior de gastos extras y teniendo en cuenta que solo trabajas 112 días al año, finalmente sale un precio hora de unos 40€.
Lo triste es que esos 3 millones no los gano ni por el forro, porque teóricamente debería vender unas 36 unidades al año a unos 1500€, cosa bastante imposible :).
4.18.2006
Pyweek en linuxjuegos
Hoy en linuxjuegos han hecho referencia a una noticia que envié hace unos días acerca de pyweek.
Además de eso también comentan la posibilidad que les plantee de promover a través de linuxjuegos la participación en las compos de stratos. Ellos han escrito algunos tutoriales (1,2 )de creación de juegos con pygame que pueden resultar de utilidad a la hora de crear un juego, pero sobretodo atraer e impulsar a gente a crear pequeños juegos.
A ver si sale algo :)
Además de eso también comentan la posibilidad que les plantee de promover a través de linuxjuegos la participación en las compos de stratos. Ellos han escrito algunos tutoriales (1,2 )de creación de juegos con pygame que pueden resultar de utilidad a la hora de crear un juego, pero sobretodo atraer e impulsar a gente a crear pequeños juegos.
A ver si sale algo :)
4.17.2006
Blender splash contest
Leo en BlenderNation que el concurso para el splash screen de blender 2.42 ya ha salido. Como siempre hay muy buenas imágenes aunque de momento no hay tantas como las otras veces.
Hablando de Blender, también he visto un enlace interesate de como generar figuras kaleidoscopicas. Recuerdo cuando era jóven que hice un caleidoscopio, un tubo que en su interior tenía 3 espejos formando un triángulo por todo lo largo del tubo. En el extremo final había un cilindro que dejaba pasar la luz y que contenía trozitos de cristastales de colores. Cuando mirabas por el agujero se generaban figuras "bonitas" debido a que los espejos se reflejaban entre ellos.
Hablando de Blender, también he visto un enlace interesate de como generar figuras kaleidoscopicas. Recuerdo cuando era jóven que hice un caleidoscopio, un tubo que en su interior tenía 3 espejos formando un triángulo por todo lo largo del tubo. En el extremo final había un cilindro que dejaba pasar la luz y que contenía trozitos de cristastales de colores. Cuando mirabas por el agujero se generaban figuras "bonitas" debido a que los espejos se reflejaban entre ellos.
4.16.2006
Ganadores de PyWeek2
Hoy terminaba el plazo para votar a los participantes del segundo concurso de pyweek. En pocas palabras el concurso trata de hacer un juego en una semana usando python y este debe tratar de un tema que proponen al comienzo de la semana. Esta vez el tema fue "it runs on steam".
Los ganadores han sido rushed en la categoría de participación individual y trip on the funny boat en la categoría de grupos. Como ya comenté mi favortio era rushed que finalmente ha sido el ganador, aunque no fallé el tiro con los dos siguientes ganadores (en la categoría individual). En la lista de votos se puede ver como bisciuts games y traintris han quedado segundo y tercero respectivamente. Una pena que no haya podido probar el juego del barquito, me falla al arrancar, creo que por un problema con la versión de pygame.
Lo cierto es que este tipo de concursos de creación rápida de videojuegos lejos de traer juegos con un aspecto gráfico de 5 estrellas o una mecánica compleja, traen juegos en los que prima la originalidad y la jugabilidad. Son juegos simples y por tanto no son objeto del público hardcore, sin embargo alguno de los que se han presentado podrían ser mejorados y vendidos como shareware sin problemas.
Aprovechando esta última reflexión y que últimamente en stratos la gente empieza a plantearse el adentrarse en el mundo del shareware, ya sea planteando los temas que pueden resultar llamativos o buscando formas de publicitarse en base a concursos . Planteo lo siguiente: aprovechando que ya se propusieron nuevas ideas para las compos de stratos se podría tratar de unir las dos cosas, buscar la venta de un juego + publicidad con la idea de los concursos, se podría intentar hacer una compo similar a la de pyweek2 con una buena organización apoyandose en stratos.
Las ideas son las siguientes:
- Crear una competición, basada en un tema general que se propone por unos organizadores, de una semana de duración, de creación de videojuegos.
- Publictarla en diferentes sitios relacionados. Esto requiere la ayuda de diferentes sitios, pero imagino que no habría mucho problema en conseguir que algunos blogs ( vidaextra, kedume, mondopixel, anaitgames,extralife, plastico.tv y muchos otros) pusieran algún post del tema.
Asumo demasiadas cosas, quizás la participación no sea muy alta, en stratos no hay mucha gente y quizás el concurso no fuera lo demasiado llamativo como para atraer a gente y menos si no hay un premio más o menos interesante. También tendría que haber una buena organización para que otros sitios se fijaran en el concurso y llevaran gente a probar los juegos. Se platena difícil, habría que madurar la idea. Hago un llamamiento para que la gente de planeta stratos aporte ideas :)
Los ganadores han sido rushed en la categoría de participación individual y trip on the funny boat en la categoría de grupos. Como ya comenté mi favortio era rushed que finalmente ha sido el ganador, aunque no fallé el tiro con los dos siguientes ganadores (en la categoría individual). En la lista de votos se puede ver como bisciuts games y traintris han quedado segundo y tercero respectivamente. Una pena que no haya podido probar el juego del barquito, me falla al arrancar, creo que por un problema con la versión de pygame.
Lo cierto es que este tipo de concursos de creación rápida de videojuegos lejos de traer juegos con un aspecto gráfico de 5 estrellas o una mecánica compleja, traen juegos en los que prima la originalidad y la jugabilidad. Son juegos simples y por tanto no son objeto del público hardcore, sin embargo alguno de los que se han presentado podrían ser mejorados y vendidos como shareware sin problemas.
Aprovechando esta última reflexión y que últimamente en stratos la gente empieza a plantearse el adentrarse en el mundo del shareware, ya sea planteando los temas que pueden resultar llamativos o buscando formas de publicitarse en base a concursos . Planteo lo siguiente: aprovechando que ya se propusieron nuevas ideas para las compos de stratos se podría tratar de unir las dos cosas, buscar la venta de un juego + publicidad con la idea de los concursos, se podría intentar hacer una compo similar a la de pyweek2 con una buena organización apoyandose en stratos.
Las ideas son las siguientes:
- Crear una competición, basada en un tema general que se propone por unos organizadores, de una semana de duración, de creación de videojuegos.
- Publictarla en diferentes sitios relacionados. Esto requiere la ayuda de diferentes sitios, pero imagino que no habría mucho problema en conseguir que algunos blogs ( vidaextra, kedume, mondopixel, anaitgames,extralife, plastico.tv y muchos otros) pusieran algún post del tema.
Asumo demasiadas cosas, quizás la participación no sea muy alta, en stratos no hay mucha gente y quizás el concurso no fuera lo demasiado llamativo como para atraer a gente y menos si no hay un premio más o menos interesante. También tendría que haber una buena organización para que otros sitios se fijaran en el concurso y llevaran gente a probar los juegos. Se platena difícil, habría que madurar la idea. Hago un llamamiento para que la gente de planeta stratos aporte ideas :)
4.14.2006
4.12.2006
El negocio (político) de las televisiones autonómicas
En estos días que se está escuchando tanto sobre la despedida, por decirlo suave, de montón de gente relacionada con TVE, sobretodo de los centros regionales, choca ver como se están abriendo nuevas televisones autonómicas.
No sé si me parece bien que larguen a gente de TVE, por lo que yo he visto y oído en valladolid era bastante común que los de TVE se rascaran los cojones respaldados por un sindicato feroz. Lo veo lógico, si tienes a 50 personas para emitir 25 minutos de informativo al día te terminas tocándo los cojones y tiras de la teta del estado todo lo que puedas, todo el mundo termina acostumbrándose a esto, por desgracia claro.
Ahora abren tv extremadura y tv aragón, y desde luego gastarán bastante dinero (los equipos de audiovisual son __realmente caros__ y me quedo corto), pero da igual, a los gobernantes les es muy rentable tener una tv. Precisamente ahora no es el mejor ejemplo, pero ahí tienes a berlusconi...
Es fácil decir que los políticos usan la televisión para su propio beneficio pero realmente cómo funciona el sistema por el cual un partido político da buena imagen? Está claro que el sistema de manipular la información no funciona porque la gente se da cuenta (no solo hay un medio de comunicación), pero hay otros métodos que funcionan muy bien. Por ejemplo, el consejero de turno se va a Argentina a hacer algo, allí van varios periodistas y cámaras a cubrir el evento, con conexiones en directo y con reportajes de la zona y de la visita. El presidente de la comunidad se va a andalucía a ver a fulanito, inagura tal o cual, está con los pobrecitos de no sé dónde o la técnica de "qué bien estamos ahora" sacando las innovaciones tecnológicas, los avances en obras públicas, lo bien que tenemos a los agricultores... y es que las noticias solo son noticias si alguien de un medio decide que así sean. Yo me niego a pensar que muchas de las "noticias" que sacan los informativos de los fines de semana sean noticias, son gilipolleces, pan para el pueblo (de la misma forma que lo es el desayuno de ronaldiño o las amistades o salidas nocturnas de cualquier jugador de fútbol).
Por eso cada vez reniego más de los medios de comunicación y de los periodistas. De mientras voy a ver si sale alguna convocatoria para ingeniero en televisión en alguna autonómica, me han dicho que se vive bien :)...
No sé si me parece bien que larguen a gente de TVE, por lo que yo he visto y oído en valladolid era bastante común que los de TVE se rascaran los cojones respaldados por un sindicato feroz. Lo veo lógico, si tienes a 50 personas para emitir 25 minutos de informativo al día te terminas tocándo los cojones y tiras de la teta del estado todo lo que puedas, todo el mundo termina acostumbrándose a esto, por desgracia claro.
Ahora abren tv extremadura y tv aragón, y desde luego gastarán bastante dinero (los equipos de audiovisual son __realmente caros__ y me quedo corto), pero da igual, a los gobernantes les es muy rentable tener una tv. Precisamente ahora no es el mejor ejemplo, pero ahí tienes a berlusconi...
Es fácil decir que los políticos usan la televisión para su propio beneficio pero realmente cómo funciona el sistema por el cual un partido político da buena imagen? Está claro que el sistema de manipular la información no funciona porque la gente se da cuenta (no solo hay un medio de comunicación), pero hay otros métodos que funcionan muy bien. Por ejemplo, el consejero de turno se va a Argentina a hacer algo, allí van varios periodistas y cámaras a cubrir el evento, con conexiones en directo y con reportajes de la zona y de la visita. El presidente de la comunidad se va a andalucía a ver a fulanito, inagura tal o cual, está con los pobrecitos de no sé dónde o la técnica de "qué bien estamos ahora" sacando las innovaciones tecnológicas, los avances en obras públicas, lo bien que tenemos a los agricultores... y es que las noticias solo son noticias si alguien de un medio decide que así sean. Yo me niego a pensar que muchas de las "noticias" que sacan los informativos de los fines de semana sean noticias, son gilipolleces, pan para el pueblo (de la misma forma que lo es el desayuno de ronaldiño o las amistades o salidas nocturnas de cualquier jugador de fútbol).
Por eso cada vez reniego más de los medios de comunicación y de los periodistas. De mientras voy a ver si sale alguna convocatoria para ingeniero en televisión en alguna autonómica, me han dicho que se vive bien :)...
4.11.2006
caché
El concepto de caché se usa muchísimas veces en informática, se usa para la memoria caché, para los accesos a disco, para los servidores web, para los dns, etc. Y todo es porque hay unos principios, que surgen del sentido común, que dicen que hay una posibilidad alta de que algo que se ha usado se vuelva a usar en un plazo corto de tiempo y que si usas otra cosa es muy posible que utilices otra cosa que está muy cerca de esta. Esto se resume en el principio de localidad de referencia.
Cuando estoy trabajando con el PC, normalmente en dos o tres "proyectos", da la casualidad de que el número de cosas a las que accedo, ya sean programas, carpetas, documentos, sitios web, son casi siempre los mismos y además lo hago repetidas veces al cabo del día. Y pregunto yo, por qué no se aplica ese principio a la usabilidad en el SO. Desconozco si linux, mejor dicho el interfaz de costumbre, tiene un sistema similar, pero windows desconoce casi completamente de lo que hablo.
Estaría muy bien tener un sistema por el cual supiera cuales son los sitios web que más usas, a qué carpetas accedes más, qué documentos y qué programas y los colocara bien accesibles en la barra de tareas, sin necesidad de tener que andar agregando a favoritos. Favoritos son los que más acceso, no te das cuenta windows xp mío? El caso es que con la música existen sistemas de todo tipo, para saber qué reproduces más, qué escuchas cuando es de noche, qué tipos de música, etc,etc, por qué no un sistema similar para carpetas?
Cuando estoy trabajando con el PC, normalmente en dos o tres "proyectos", da la casualidad de que el número de cosas a las que accedo, ya sean programas, carpetas, documentos, sitios web, son casi siempre los mismos y además lo hago repetidas veces al cabo del día. Y pregunto yo, por qué no se aplica ese principio a la usabilidad en el SO. Desconozco si linux, mejor dicho el interfaz de costumbre, tiene un sistema similar, pero windows desconoce casi completamente de lo que hablo.
Estaría muy bien tener un sistema por el cual supiera cuales son los sitios web que más usas, a qué carpetas accedes más, qué documentos y qué programas y los colocara bien accesibles en la barra de tareas, sin necesidad de tener que andar agregando a favoritos. Favoritos son los que más acceso, no te das cuenta windows xp mío? El caso es que con la música existen sistemas de todo tipo, para saber qué reproduces más, qué escuchas cuando es de noche, qué tipos de música, etc,etc, por qué no un sistema similar para carpetas?
4.10.2006
Ya está aquí mi pequeña
Después de esperar unos 15 días, ya está aquí mi DELL X51v. Después de verla con un 35% de descuento no he podido por menos que comprarla, total, mi posición económica me permite hacer bastantes gastos de este tipo (snif). Lo que me llamó la atención era la cantidad de caracterísitcas que tenía: pantalla VGA, aceleración 3D por HW, wifi, Bluetooth, ranuras SD y CF, 600 Mhz... Después de estar todo el año programando para pocketpc, jugueteando con unas cuantas, me apetecía tener una potente para hacer alguna cosa.
El coste total ha sido de 300€, incluídos gastos de envío e incluyen PDA, base, funda, cargador y adaptador para cargarla sin base. Nada más encenderla se nota muchísimo la diferencia de tener una pantalla con 640x480 a una 320x200, la definición es muchísimo mejor. En una PDA normal cuando bajas el tamaño de la letra un poco la lectura es prácticamente imposible, ahora con la letra más pequeña puedes leer sin problema, cosa que se agradece cuando estás leyendo alguna web. La base es muy sólida y la funda protege bastante, aunque he leído que jode la pantalla (¿?).
Pasando a la parte interesante, la aceleración 3D. Pensé que sería una aceleración por suave, pero no lo es tanto. Lo primero que probé fue un juego de rally que viene en el CD, GeoRally y la verdad te quedas con los ojos como platos viendo como se mueve eso. Tal vez sea porque aún no he visto ninguna PSP :).
El siguiente paso ha sido bajarme el powerVR SDK para opengles y probar las demos. He hecho unas fotitos, la primera es un efecto de partículas con reflejo, la segunda es una espcie de jarrón con envmap a modo de reflejo y transparencias y por último una cabeza con iluminación por pixel.
A ver si tengo algo de tiempo y programo algo, además el SDK es bastante completo, ejemplos, librerías y herramientas.
El coste total ha sido de 300€, incluídos gastos de envío e incluyen PDA, base, funda, cargador y adaptador para cargarla sin base. Nada más encenderla se nota muchísimo la diferencia de tener una pantalla con 640x480 a una 320x200, la definición es muchísimo mejor. En una PDA normal cuando bajas el tamaño de la letra un poco la lectura es prácticamente imposible, ahora con la letra más pequeña puedes leer sin problema, cosa que se agradece cuando estás leyendo alguna web. La base es muy sólida y la funda protege bastante, aunque he leído que jode la pantalla (¿?).
Pasando a la parte interesante, la aceleración 3D. Pensé que sería una aceleración por suave, pero no lo es tanto. Lo primero que probé fue un juego de rally que viene en el CD, GeoRally y la verdad te quedas con los ojos como platos viendo como se mueve eso. Tal vez sea porque aún no he visto ninguna PSP :).
El siguiente paso ha sido bajarme el powerVR SDK para opengles y probar las demos. He hecho unas fotitos, la primera es un efecto de partículas con reflejo, la segunda es una espcie de jarrón con envmap a modo de reflejo y transparencias y por último una cabeza con iluminación por pixel.
A ver si tengo algo de tiempo y programo algo, además el SDK es bastante completo, ejemplos, librerías y herramientas.
4.07.2006
Feedback en las entrevistas de trabajo + blogging + google analytics
Hay algo que pienso a veces, por qué cuando vamos a una entrevista de trabajo después de la selección no te notifican qué has hecho bien o qué has hecho mal. Ya sé que muchas empresas te mandan la carta típica de "no tiene el perfil requerido, sin embargo mantendremos tu currículum en nuestras bases de datos para futuros puestos de trabajo". No, a mi eso no me vale, me gustaría que me dijeran: "mira, la has cagado aquí, cuando dijiste esto restaste 20 puntos por tal y tal, tu forma de hablar no es la correcta, esto que dijiste me gustó", o incluso, llegando más lejos, "estaría bien que mejoraras tal y tal para la próxima".
Por un feedback de ese tipo yo pagaría, ya no por que te fuera a servir para conseguir un puesto de trabajo, si no por el simple hecho de mejorar. Es muy difícil conseguir un buen feedback, habitualmente en nuestro entorno de trabajo las opiniones de los demás no suelen ser sinceras y si lo son, no tienen el suficiente contenido como para mejorar algo.
Suerte que estamos en la sociedad de la información y que los que no tenemos suficiente sentido común para darnos cuenta de las cosas, tenemos a google, podemos tener cierto feedback que, no sé si será interesante, pero curioso desde luego sí.
Mirando las stats de este blog en google analytics me he dado cuenta que el miercoles y el jueves he recibido 4 y 2 visitas de infojobs.net. Ya en la entrevista que tuve el lunes (*), el que me entrevistó, me comentó que había leído el blog y me imaginé que lo había hecho o por la firma de mi correo, o por los datos de infojobs. Bueno, analitycs te da una cantidad de datos bastante grande, incluído el lugar de donde vino la visita, el navegador y otros muchas cosas:
miercoles jueves:
Visitas: 2+4
fuente: Valladolid
Tipo de usuario: returning visitor, lo cual quiere decir que me ha visitado más veces (incluso en semanas anteriores).
Origen: /empresa_ver_cv_inscripcion.cfm, luego es alguien de una empresa, porque me imagino que esa web será de acceso sólamente para empresas.
Se puede concluir que solo es una persona la que me visita, sin embargo espero que no sea un caso aislado, creo que puede dar mucha información a la empresa leer por encima lo que hace y deja de hacer el individuo en cuestión, desde luego es mucho más que lo que se puede conseguir en 10 minutos de preguntas generales.
(*) No he hablado de ella porque fue lamentable. Está claro que para las entrevistas laborales no tengo una base sólida, ya sea por falta de experiencia (tanto laboral, como en entrevistas) o porque soy gilipollas XD. Aunque no es lo peor, el problema es que no soy capaz de sacar una conclusión, creo que tendré que cambiar radicalmente la forma en la que me describo en las entrevistas.
Por un feedback de ese tipo yo pagaría, ya no por que te fuera a servir para conseguir un puesto de trabajo, si no por el simple hecho de mejorar. Es muy difícil conseguir un buen feedback, habitualmente en nuestro entorno de trabajo las opiniones de los demás no suelen ser sinceras y si lo son, no tienen el suficiente contenido como para mejorar algo.
Suerte que estamos en la sociedad de la información y que los que no tenemos suficiente sentido común para darnos cuenta de las cosas, tenemos a google, podemos tener cierto feedback que, no sé si será interesante, pero curioso desde luego sí.
Mirando las stats de este blog en google analytics me he dado cuenta que el miercoles y el jueves he recibido 4 y 2 visitas de infojobs.net. Ya en la entrevista que tuve el lunes (*), el que me entrevistó, me comentó que había leído el blog y me imaginé que lo había hecho o por la firma de mi correo, o por los datos de infojobs. Bueno, analitycs te da una cantidad de datos bastante grande, incluído el lugar de donde vino la visita, el navegador y otros muchas cosas:
miercoles jueves:
Visitas: 2+4
fuente: Valladolid
Tipo de usuario: returning visitor, lo cual quiere decir que me ha visitado más veces (incluso en semanas anteriores).
Origen: /empresa_ver_cv_inscripcion.cfm, luego es alguien de una empresa, porque me imagino que esa web será de acceso sólamente para empresas.
Se puede concluir que solo es una persona la que me visita, sin embargo espero que no sea un caso aislado, creo que puede dar mucha información a la empresa leer por encima lo que hace y deja de hacer el individuo en cuestión, desde luego es mucho más que lo que se puede conseguir en 10 minutos de preguntas generales.
(*) No he hablado de ella porque fue lamentable. Está claro que para las entrevistas laborales no tengo una base sólida, ya sea por falta de experiencia (tanto laboral, como en entrevistas) o porque soy gilipollas XD. Aunque no es lo peor, el problema es que no soy capaz de sacar una conclusión, creo que tendré que cambiar radicalmente la forma en la que me describo en las entrevistas.
4.05.2006
resultados de pyweek 2
Ayer decidí bajarme todos los juegos (torrent) de la competición pyweek2. Creo que jugué a casi todas, salvo a algunas que no debía tener las versiones necesarias de las librerías python y otras que necesitaban estar online, y la verdad es que me han sorprendido muchísimo.
Algunas son un verdaderos truño, lógico pensando que es solo una semana y que cualquier no puede hacer un juego en una semana, pero otros son verdaderamente una maravilla, sobretodo en lo que a imaginación se refiere. Solo pondré los 3 que más me han gustado, pero sí que hay alguno más que merece la pena:
LightYears de biscuit games: es una especie de RTS en el que tienes que llevar vapor a ciudades usando unas tuberías. Para ello tienes que generar puntos intermedios y tener en cuenta el nivel de cada uno de ellos. De vez en cuando vienen unos cabronazos a joderte las ciudades y los nodos intermedios. Tiene un acabado muy bueno y un tutorial que te enseña a jugar paso a paso. Necesita algo más de 5 minutos, pero merece la pena :).
TrainTris: Se trata de un clon de tetris muy especial. En este caso es en 2.5D (isométrica), las piezas, que son vías de tren, caen desde el cielo y tu las colocas donde quieres o puedes, de forma que tienes que conseguir loops para que los trenes circulen por ellas. Falla un poco de control, pero es una idea muy divertida.
Y por último Rushed. La verdad es que es una idea simple, pero muy muy adictiva (pruebalo, ya verás). Hay unas teteras que sueltan vapor y tienes que condensarlo encima de una planta para que el agua le llegue. Hay diferentes elementos para condensar, evaporar y transportar el vapor y la verdad es que es un reto regar la(s) plantas. Lo recomiendo encarecidamente.
La pena es que haya que tener instalado python (9.2 Mb), pygame(10mb) y pyopengl y quizás NumPy. Son 50 Mb para un juego de 400kb, pero merece muchísimo la pena.
Algunas son un verdaderos truño, lógico pensando que es solo una semana y que cualquier no puede hacer un juego en una semana, pero otros son verdaderamente una maravilla, sobretodo en lo que a imaginación se refiere. Solo pondré los 3 que más me han gustado, pero sí que hay alguno más que merece la pena:
LightYears de biscuit games: es una especie de RTS en el que tienes que llevar vapor a ciudades usando unas tuberías. Para ello tienes que generar puntos intermedios y tener en cuenta el nivel de cada uno de ellos. De vez en cuando vienen unos cabronazos a joderte las ciudades y los nodos intermedios. Tiene un acabado muy bueno y un tutorial que te enseña a jugar paso a paso. Necesita algo más de 5 minutos, pero merece la pena :).
TrainTris: Se trata de un clon de tetris muy especial. En este caso es en 2.5D (isométrica), las piezas, que son vías de tren, caen desde el cielo y tu las colocas donde quieres o puedes, de forma que tienes que conseguir loops para que los trenes circulen por ellas. Falla un poco de control, pero es una idea muy divertida.
Y por último Rushed. La verdad es que es una idea simple, pero muy muy adictiva (pruebalo, ya verás). Hay unas teteras que sueltan vapor y tienes que condensarlo encima de una planta para que el agua le llegue. Hay diferentes elementos para condensar, evaporar y transportar el vapor y la verdad es que es un reto regar la(s) plantas. Lo recomiendo encarecidamente.
La pena es que haya que tener instalado python (9.2 Mb), pygame(10mb) y pyopengl y quizás NumPy. Son 50 Mb para un juego de 400kb, pero merece muchísimo la pena.
4.04.2006
Marrón-Negro-Rojo
Según el contador que hay a la izquierda de la web, debajo de mi foto, este blog cuenta con 10000 impresiones de esta página. Gracias a todos los me que leeis :).
Blender CE
Hace poco hablaba de OpenglES y hoy en blendernation hablan sobre la primera alpha del proyecto blender CE. Se trata de un port del blender de toda la vida para windows CE.
Yo lo probé hace cosas de un par de meses e iba bastante aceptable en el pocketPC que lo hice (un n35, por cierto, el GPS es malo a rabiar), aunque, como era de esperar, era inmanejable, entre otras cosas, por lo poco avanzado del desarrollo y por las limitaciones del propio terminal. En la versión de blender para windows se usan un montón de ajatos de teclado y siempre te falta monitor para meter pantallas, imaginaos cómo será en una pantalla de 320x200 con 4 botones y el estilus :).
Plantearse el poder hacer pequeñas cosas con el pocketpc suena muy bien, a mi me gustaría poder hacer algún modelo 3D (sí, me estoy aficionando a poner cubos y cilindros) en los ratos perdidos de autobús o en cualquier otro sitio. Creo que para pocketpc estaría muy bien un programa tipo smooth teddy al cual le marcas un contorno y te genera por revolución un modelo. Merece la pena probarlo, sobretodo si eres un coder manazas... se pueden hacer cosas simpáticas
Bueno, unos screenshots de BlenderCE y a probarlo :)
Yo lo probé hace cosas de un par de meses e iba bastante aceptable en el pocketPC que lo hice (un n35, por cierto, el GPS es malo a rabiar), aunque, como era de esperar, era inmanejable, entre otras cosas, por lo poco avanzado del desarrollo y por las limitaciones del propio terminal. En la versión de blender para windows se usan un montón de ajatos de teclado y siempre te falta monitor para meter pantallas, imaginaos cómo será en una pantalla de 320x200 con 4 botones y el estilus :).
Plantearse el poder hacer pequeñas cosas con el pocketpc suena muy bien, a mi me gustaría poder hacer algún modelo 3D (sí, me estoy aficionando a poner cubos y cilindros) en los ratos perdidos de autobús o en cualquier otro sitio. Creo que para pocketpc estaría muy bien un programa tipo smooth teddy al cual le marcas un contorno y te genera por revolución un modelo. Merece la pena probarlo, sobretodo si eres un coder manazas... se pueden hacer cosas simpáticas
Bueno, unos screenshots de BlenderCE y a probarlo :)
4.03.2006
facilidad de uso o flexibilidad
Leo en planetcodigo un post bastante interesante sobre las futuras caracterísitcas de la programación sobre avalon y dice cosas bastante interesantes y no faltas de razón.
Cuando has programado con windows para hacer cualquier cosa, siempre te topas con alguna dificultad que soluciones tirando del bajo nivel, siempre hay alguna "ñapa" que te saca del apuro. En mis escasos años como observador de las tecnologías de programación me he dado cuenta como se tiende a hacer lenguajes más simples, más eficientes en cuanto al tiempo de programación. No hay más que comparar C con C# o cualquier de los lenguajes más o menos recientes. Es lógico que esto sea así, la hora d e mano de obra es cara y compensa mucho más tener un producto más barato a pesar de necesitar una máquina más potente, ahora las máquinas son baratas en el fondo.
Sin embargo llega un momento en el que facilitar tanto las cosas deja de ser algo bueno para la tecnología, al acercar la programación a nivel de usuario, por decirlo de alguna forma, estás quitando flexibilidad a los programadores más experimentados. Esto es una espada de doble filo, ya que permite acercar a la programación a personas que no necesitan tanta cualificación, pero por otro lado, estás arriesgándote a que el software sea de peor calidad y no estás permitiendo "salirse del tiesto" a los que lo necesitan. El modelo de visual basic ha sido así y ha funcionado (y sigue haciéndolo) muy bien.
Otro detalle que comenta es el posible mercado de componentes. Recuerdo cuando estudiaba en quinto (jaja) todo el sistema que pretendían montar sobre componentes, J2EE, CORBA (vamos, el rollo aquel que tenían de componentes) y aquellos sistemas para descrubrir componentes que después se ha aplicado a los web services (de las narices) y que serviría para crear un mercado global de componentes, en el cual tuvieras un interface bien definido... cualquier persona en sus cavales se reiría de esto, la verdad es que es algo bastante interesante y sería cojonudo tener cajas negras de verdad reutilizables y buen precio (que se lo digan a los fabricantes de hardware lo bien que les funciona VHDL). La verdad es que estaba todo bien montado tecnológicamente, pero, como llevamos viendo unos años, no es precisamente lo más avanzado tecnológicamente hablando lo que finalmente termina imponiéndose. Creo que todo el mundo quiere un sistema para tener la modularidad y reusabilidad tan deseada, pero no creo que sea a costa de tener que pagar X cantidad a MS (o cualquier otra) para poder usar su SDK y tener la licencia necesaria.
Cuando has programado con windows para hacer cualquier cosa, siempre te topas con alguna dificultad que soluciones tirando del bajo nivel, siempre hay alguna "ñapa" que te saca del apuro. En mis escasos años como observador de las tecnologías de programación me he dado cuenta como se tiende a hacer lenguajes más simples, más eficientes en cuanto al tiempo de programación. No hay más que comparar C con C# o cualquier de los lenguajes más o menos recientes. Es lógico que esto sea así, la hora d e mano de obra es cara y compensa mucho más tener un producto más barato a pesar de necesitar una máquina más potente, ahora las máquinas son baratas en el fondo.
Sin embargo llega un momento en el que facilitar tanto las cosas deja de ser algo bueno para la tecnología, al acercar la programación a nivel de usuario, por decirlo de alguna forma, estás quitando flexibilidad a los programadores más experimentados. Esto es una espada de doble filo, ya que permite acercar a la programación a personas que no necesitan tanta cualificación, pero por otro lado, estás arriesgándote a que el software sea de peor calidad y no estás permitiendo "salirse del tiesto" a los que lo necesitan. El modelo de visual basic ha sido así y ha funcionado (y sigue haciéndolo) muy bien.
Otro detalle que comenta es el posible mercado de componentes. Recuerdo cuando estudiaba en quinto (jaja) todo el sistema que pretendían montar sobre componentes, J2EE, CORBA (vamos, el rollo aquel que tenían de componentes) y aquellos sistemas para descrubrir componentes que después se ha aplicado a los web services (de las narices) y que serviría para crear un mercado global de componentes, en el cual tuvieras un interface bien definido... cualquier persona en sus cavales se reiría de esto, la verdad es que es algo bastante interesante y sería cojonudo tener cajas negras de verdad reutilizables y buen precio (que se lo digan a los fabricantes de hardware lo bien que les funciona VHDL). La verdad es que estaba todo bien montado tecnológicamente, pero, como llevamos viendo unos años, no es precisamente lo más avanzado tecnológicamente hablando lo que finalmente termina imponiéndose. Creo que todo el mundo quiere un sistema para tener la modularidad y reusabilidad tan deseada, pero no creo que sea a costa de tener que pagar X cantidad a MS (o cualquier otra) para poder usar su SDK y tener la licencia necesaria.
4.01.2006
UPC 2006 Lecture Slides
Jare, del que he hablado ya en algunas ocasiones en este blog, ha publicdo las transparencias de la charla que ha dado en la UPC. Son prácticamente iguales que las que tiene en su web de la charla que dio en la universidad de Sevilla, pero merece la pena leerlas de nuevo si ya las has leído y desde luego no puedes perdertelas si aún no lo has hecho.
Suscribirse a:
Entradas (Atom)