12.28.2007

blogs&twitter en valladolid

Me llega el siguiente correo:
"""
Hola!

Se va a celebrar el próximo 3 de enero el Blogs&Twitter Valladolid, una reunión para personas que tienen blog, twitter, flickr o participan de cualquier forma en alguna de las muchas redes que hay en la web. Está organizado por el Consejo Provincial de la Juventud de Valladolid y por 5lineas.com

Hay varias fuentes con toda la información:
http://5lineas.com/archivo/internet-web20/blogstwitter-valladolid-el-3-de-enero/
http://www.amapolasdigital.com/blogstwitter-valladolid/2007/12/27/

http://wiki.5lineas.com/blogs_and_twitter_valladolid (el wiki para apuntarse)

http://www.flickr.com/photo_zoom.gne?id=2141779196&size=l (cartel en grande)

Esperamos que te interese y poder contar con tu participación.

Muchas gracias por tu tiempo

Un saludo!
Dani
"""
Me imagino que habrá llegado a mi a través de planet augcyly reproduzco aquí por si alguien está interesado. Parece interesante, no sé si podré asistir :/

12.25.2007

Feliz navidad versión "art coder"

Llega la moda de felicitad navidad y yo con estos pelos. Aquí teneis un video que he capturado de una intro que hice para un juego que he dejado a medias pero cambiando el texto.



música: wonder
herramientas: blender, ODE, vc++ express, paint

y otra más, un pequeño raytracer para móvil con ambient occlusion (sin filtrar). En un k610i tarda una media hora, no se puede decir que esté muy optimizado.



si alguien quiere el código que lo pida :)

12.17.2007

Grafistas vs programadores (round 1)

Los pobres grafistas de unkasoft, faltos de argumentos, atacan a los programadores con cosas como esta:



Transcribo:
"""
Hay que ser muy hombre para ser grafista...\n por eso soy programador
"""

Agradezco el detalle, como prometí me la pondré, aunque habrá venganza...

12.09.2007

Test n80

Molan los telefonos con wifi :)

12.03.2007

Consejos para crear tu propio formato de fichero

Cuando programas una aplicación, por pequeña que sea, siempre tienes la necesidad de almacenar ciertos datos que permanecerán durante las sucesivas ejecuciones. Lamentablemente los requisitos y diseños de las aplicaciones cambian y normalmente se ven reflejados en el modelo de datos que tenemos, con el consecuente cambio en la forma de almacenar los datos.

Esto se eleva a la máxima potencia cuando además esos datos son de usuario y se añaden varios problemas más:

- el primero y más importante es que para el usuario sus datos son importantes y no puede perderlos.
- el segundo es que los datos ya no están tranquilamente resguardados en un sitio calentito, van a salir a la calle, VAN A SER MANIPULADOS POR EL USUARIO, serán comprimidos, copiadas, borrados y transferidos.

Hay una serie de puntos que pueden salvarnos de muchos problemas, no son desde luego axiomas, pero a mi me han salvado de más de un problema, aquí van:

- Elige un formato: texto o binario, por un lado el texto nos permite hacer debug rápidamente, hacer cambios a mano, tiene la pega que es más complejo de leer ya que requiere un parseo. Por el contrario el binario para debug es un infierno pero permite una lectura más rápida y además evita que los usuarios sepan más de lo que quieres. Esta pequeña guía es para formatos binarios

- Usa un magic al comienzo del fichero: esto es, unos bytes prefijados por los cuales sepas nada más leer los primers bytes que de verdad es tu fichero. Esto es condición necesaria, pero no suficiente, aunque te quitará de problemas. Un detalle más, el MAGIC si puede ser ascii mejor, de esta forma cuando abrimos el fichero con un editor de texto veremos nuestro magic ahí, lo primerito y sabremos si es un hijo nuestro o no. Probadlo con un PNG, ZIP o similar, todos tienen un magic ascii.

- Usa un número de versión. De esta forma cuando tus datos vayan cambiando tus loader sabrán que hacer con ese fichero en función del número de versión. Además, conviene que tengas dos números de versión, uno que indique que cambia tu formato y otro que diga que el fichero ha cambiado pero que el formato sigue siendo el mismo. En este punto hay un tema bastante interesante: qué hacemos con ficheros que son de versiones anteriores a la actual? tenemos varias opciones, personalmente he usado dos, por un lado tener algo así:

loader = loaderFactory.getLoader(fileVersion);
loader.load(file);

o por otro:

if(fileVersion != currentFileVersion) {
migrateFile(fileVersion, currentVersion);
}
loader.load(file);


Sinceramente no sabría decir cual de las dos es mejor, en agroguía uso la primera y no me cuesta mucho mantenerla.

- guarda siempre más datos de los que necesites. Salvo que el dispositivo esté muy limitado normalmente dará igual tener un fichero de 500kb que de 600kb y te puede ayudar una burrada. Para qué puede servir esos datos extra? pues por ejemplo para almacenar datos de debug, acciones del usuario, datos internos que es posible que dentro de 4 días te puedan servir. Personalmente a mi los datos de más que guarda la aplicación me han servido para poner la cara roja a más de uno y me ha evitado problemas.

- No te cierres puertas, deja el formato abierto al futuro (pero tampoco demasiado), esto es, organizalo por secciones de forma que dejes secciones para uso futuro, te ahorrás tiempo haciendo conversores y loaders, aunque será un poco más complejo crear el loader la primera vez.

- Utiliza serializer si puedes, en pocas palabras, intenta que el código que guarda y salva ser el mismo siempre, así no habrá problemas de incoherencias entre lo que guardas y lo que cargas. No es fácil hacer un sistema así, sobretodo cuando hay objetos de por medio, el código público del unreal tiene un ejemplo a lo bestia. La idea sería más o menos así:

class serializer {
 public:
  bool isReading;
  bool serialize(int &i) {
   if(isReading)
    i = readIntFromFile();
   else
    writeIntToFile(i);
 }

};

class MyClass {
 int data;
 void serialize(Serializer s) { s.serialize(data); }
}


No es lo más óptimo, pero te soluciona la vida :). También se puede implementar al modo cutre con una macro de c++. Otra forma de verlo en la web de chaos^fr.

- Puede que tus datos ocupen mucho, intenta que cuando lo guardes sean lo más fácilmente comprimibles, un codificador de deltas no es prácticamente nada en código y puede resultar en un ahorro de espacio considerable una vez se ha comprimido el fichero, para por ejemplo enviar por correo.

Seguro que hay mucho más, pero estos son para mi los más importantes. A mi me habría venido muy bien a la hora de no perder el tiempo cuando he tenido que modificar el fichero de save.

12.01.2007

agroguía @ innovaduero

Ayer estuvimos todo el día en un stand en innovaduero, un feria que mezcla de una forma un tanto extraña tecnología y turismo y que se desarrolló en Zamora, más concretamente en IFEZA . Nosotros estuvimos allí grancias al foro info rural que nos contactó (gracias a Jaime Gómez Gil).



Nunca había ido a una feria así que fuimos un poco al tuntun, con un proyector, unos videos preparados días antes a toda prisa, unas pda y unos GPS para hacer bulto. Por suerte la organización de innova (los mismos que foro info rural) nos había impreso unos carteles en grande que me preparó Juanma Zarza, aka mr koala (un nuevo compañero de trabajo) a toda prisa y casi sin material, lo cual le agradezco de verdad.




Al llegar nisiquiera estabamos en las listas de inscripción y aquella tenía toda la pinta de que iba a ser un desmadre... menos mal que al final no fue así, la organización nos traó de lujo, nos invitó a un café a media mañana, a comer, unas botellas de vino, etc.

Lo siguiente fue montar el stand, no digo más, una foto:



En el rato de preparación del stand preparé una versión de agroguía para poder enseñar una demo de una parcela y preparé unas transparencias (en powerpoint, claro) para una charla que teníamos que dar horas después y de la que nos enteramos horas antes ;)

La mañana pasó divertida, hablando con los compañeros de stand de los que luego hablaré y explicando una y otra vez en que consistía nuestro proyecto, me entrevistaron en la radio, unos 3 minutos, en los cuales mi "habilidad" no me dejó nisiquiera decir la página web ni un teléfono de contacto. Total... te dejan hablar 3 minutos en la radio y no hacer un mínimo de publicidad es para llamarme tonto hasta aburrirte. Una foto de las presentaciones de por la mañana, están aburridos:



Por la tarde más demostraciones y explicaciones, aquello se conviritó en un coñazo terrible, pero bueno. De compañeros de stand tuvimos a:

- fundación médico rural, una fundación que trata de transmitir la necesidad de aplicar la tecnología a las urgencias médicas en poblaciones alejadas. En resumen, tenían un acuerdo con philips que había creado un monitor de esos del corazón que transmitía los datos a un pc remoto gracias a GPRS y de esa forma un equipo especializado podría ayudar al médico o enfermero de la zona rural a salir del apuro. Lo que me contaron los dos señores que estuvieron allí era muy curioso y la verdad es que da que pensar. Tenemos a alcaldes en la cárcel, se están gastando dinero en gilipolleces y para algo que realmente es interesante y puede ayudar a salvar vidas no hacen ni puto caso. La única que había metido pasta era telefónica para poder compensar las supuestas (o presuntas,muy de moda ahora) enfermedades provocadas por las antenas... ahora gracias a la cobertura se pueden salvar vidas y las antenas dejan de ser peligrosas. De esto sí que se debería hacer publicidad, debería recibir ayudas políticas y económicas y atención por parte de los medios de "comunicación".

- Proxima systems, una empresa que integraba productos de comunicación para aplicación a domótica, video vigilancia y demás. Muy interesante lo que hacían, además tuve la suerte de que eran técnicos y pudimos hablar de algo más que de vender humo y de lo maravilloso que eran sus productos. Muy agradables.

Como curiosidad tuvimos todo el día un segway de esos, además casi en exclusiva, con el que casi nos matamos :). Fue la sensación de la feria.

En resumen, una jornada muy divertida, pudimos conocer a mucha gente y aprendimos bastantes cosas acerca de lo que hacer en una feria.

Decir que un 0 para lo políticos, los cuales llegaron mal y tarde. Como siempre, para hacerse la foto. De mal en peor.

11.22.2007

Jugando con fractales

Hacía tiempo que tenía ganas de probar a renderizar un fractal y leyendo ayer en la wikipedia acerca de Mandelbrot vi que el código era muy simple. Después de todo es calcular si una función diverge tras una serie de iteraciones por cada pixel.

He hecho un pequeño código en python para hacer pruebecillas, la verdad que con muy poco código se obtienen imágenes bastante bonitas, de hecho estoy pensando en imprimir alguna y ponerla de poster. Se generan imágenes de este pelo:





El código, necesita PIL y python 2.4 y he dejado algunas funciones para generar animaciones (con un par de hilos para -intentar- aprovechar mi dual core) y 3 ó 4 test de resultados chulos. El código generado HTML a partir del .py usando, como no, vim, la putada es que blogger te mete saltos de linea y hay que quitar los tags br, con un simple replace basta.


import Image;
from threading import Thread;
SIZEX = 1024;
SIZEY = int(SIZEX*2.0/3.0);
NFRAMES = 50;
ZOOMSTEP = 1.0;

def get_color(xx,yy):
  x = x0 = xx;
  y = y0 = yy;
  colour = 0;
  iteration = 0
  maxiteration = 600

  while ( x*x + y*y < 4  and  iteration < maxiteration ):
    tx = x*x - y*y + x0;
    ty = 2*x*y + y0;
    x = tx;
    y = ty;
    iteration = iteration + 1;
  

  colour = float(iteration)/maxiteration;
 
  return colour;

class Palete:
    def __init__(self):
        self._colors = []
        pass;
    def addColor(self,color, t):
        self._colors.append((color,t));
    def getColor(self,t):
        #search for color
        i = 0;
        while(self._colors[i][1] < t):
            i+=1;
        if(i == 0):
            return self._colors[0][0];
        else:
            t0 = self._colors[i-1][1];
            t1 = self._colors[i][1]
            dist = t1-t0;
            d = (t-t0)/dist;
            c0 = self._colors[i-1][0];
            c1 = self._colors[i][0];
            #print d
            color = (c0[0] + d*(c1[0] - c0[0]),
                     c0[1] + d*(c1[1] - c0[1]),
                     c0[2] + d*(c1[2] - c0[2]));
            return color;

            

def get_img_fractal(zoom, px,py, palete):
    im = Image.new("RGB", (SIZEX,SIZEY))
    for x in range(SIZEX):
     for y in range(SIZEY):
        t = get_color(px + zoom*(-2.0 + 3.0*(float(x)/SIZEX)) ,py + zoom*(-1.0 + 2.0*(float(y)/SIZEY)));
        color = palete.getColor(t);        
        im.putpixel((x,y),(255*color[0],255*color[1],255*color[2]));
    return im;
    

class Fractal(Thread):
   def __init__ (self,fractals):
      Thread.__init__(self)
      self._fractals = fractals;
   def run(self):
       p = Palete();
       p.addColor((1.0,1.0,1.0),0.0);
       p.addColor((1.0,0.0,0.0),0.5);
       p.addColor((1.0,1.0,1.0),1.0);
       for x in self._fractals:
           print "generating %.3d.png" % x[3];
           get_img_fractal(x[0],x[1],x[2],p).save("%.3d.png" % x[3]);


    

def animation():

    zoom = 1.0;
    it = 0;
    fractals = [];
    for n in range(NFRAMES):  
        fractals.append((zoom,-0.77028065155993652446, -0.11144667326007166574,n));
        zoom = zoom/2.0;
        it+=1;

    #launch two threadç
    f1 = Fractal(fractals[:len(fractals)/2]);
    f2 = Fractal(fractals[len(fractals)/2:-1]);

    f1.start();    
    f2.start();

def testColoring():
    p = Palete();
    p.addColor((1.0,1.0,1.0),0.0);
    p.addColor((1.0,0.0,0.0),0.5);
    p.addColor((1.0,1.0,1.0),1.0);
    get_img_fractal(0.4,-0.77028065155993652446, -0.11144667326007166574,p).save("coloring.png");

def testColoring2():
    p = Palete();
    p.addColor((0.0,0.0,0.0),0.0);
    p.addColor((145.0/255.0,165.0/255.0,192.0/255.0),0.5);
    p.addColor((1.0,1.0,1.0),1.0);

    get_img_fractal(0.0001,-0.77028065155993652446, -0.11144667326007166574,p).save("coloring2.png");

def testColoring3():
    p = Palete();
    p.addColor((1.0,1.0,1.0),0.0);
    p.addColor((145.0/255.0,165.0/255.0,192.0/255.0),0.5);
    p.addColor((0.0,125.0/255.0,244.0/255.0),1.0);

    get_img_fractal(0.0001,-0.77028065155993652446, -0.11144667326007166574,p).save("coloring3.png");

def testColoring4():
    p = Palete();
    p.addColor((0.0,0.0,0.0),0.0);
    p.addColor((145.0/255.0,165.0/255.0,192.0/255.0),0.5);
    p.addColor((1.0,1.0,1.0),1.0);

    get_img_fractal(0.00001,-0.26605838294940658357,-0.65123057178473777796,p).save("coloring4.png");

#testColoring2();
#testColoring3();
testColoring4();
#animation();

11.19.2007

reunión del DOID 17/11/07

El pasado sábado estuve en una de las reuniones que DOID organiza para presentarse. Fue en Madrid, en la sede del medialab, un sitio muy cool, con puertas grandes, todos con mac y gafas de pasta.

En el sitio de congregan para realizar una serie de talleres sobre temas de visualización, la verdad es que los temas que tratan parecen interesantes, precisamente el sábado estaba el creador de processing y unos meses atrás estuvo el proyecto levelhead, sí, el del cubo con webcam.

Al grano, Nae empezó comentando qué era DOID que se había hecho hasta ahora, que empresas lo formaban (tirón de orejas por no incluir unkasoft) y cual eran las directrices.

La exposición pasó a ser un debate en el que cada uno pedía lo que le salía de las narices poco más o menos, unos se quejaban de lo mal que se trata a los empleados, otros de la fama de frikis, las empresas se defendían incluso, ojo al dato, diciendo que se pagaba bien y que se pagaban las horas extras, sí, habeis leído bien. Fue de lo mejor que escuché en ese rato, una empresa que se dedica a temas relacionados con ingeniería (no me gusta la palabra informática) que paga horas extras, eso me impactó realmente. En ese poco tiempo se pidió un servicio de servidores de trac y svn, formación, difusión, apoyo a amateurs... de todo un poco.. ah! y se presentaron dos juegos casuales con muy buena pinta.

Hubo cosas curiosas, como por ejemplo el momento en el que entra juan tamargo, jefe de proyectos de pyro, entonces Nae paró la exposición y le preguntó acerca de un tema interesante, la falta de diseñadores y gestores de proyecto... el fulano le dijo que no venía representando a pyro, respondió brevemente y se piró. Qué momentazo.

En conclusión, hay pocos profesionales, no hay dinero en esta nuestra industria, la gente se va a otros sitios donde se trabaja menos, con menos presión, pensando menos y cobrando más... todas las nuevas empresas que empiezan lo hacen programando para móvil y mucha gente parece que se pasa a nintendo DS.

Una foto del evento tomada de la cuenta de flickr de medialab, donde se pueden encontrar más fotos del sábado.



Enhorabuena a Nae por saber tirar del carro.

11.13.2007

visión de Android desde el punto de vista de desarrollador

Después de ver el SDk de Android puedo decir, desde mi punto de vista de desarrollador para móvil (o casi :P) es lo siguiente:

- google no se ha mojado nada: todo cerrado, ni código fuente de la VM, ni especificación del formato del bytecode ni API para C++. Ya solo esto es muy triste. Creo que hace unas horas era lo más preguntado en el grupo de android. Ahora está la fiebre de "Android programmer wanted!!". Por suerte ya ha gente haciendo hacks para correr aplicaciones compiladas en C.

- todo basado en java: entiendo que hayan tomado este lenguaje porque un mono puede hacerse 5 midlets en media hora, pero tratándose de google me resulta extraño. Seguramente por no hacer cambiar a los desarrolladores para móvil de lenguaje y herramientas. Sinceramente, esperaba C++ con bindings para python.

- Si funciona puede estar muy bien pero si no funciona se quedará en la misma mierda que J2ME pero encima no soportado por todos los fabricantes. Lo dicho, si tiene éxito lo bueno es que probablemente no caigan en los mismo errores que ya se han comentido con el tema de la fragmentación.

- No hay ningún móvil soportado... el emulador es muy bonito, pero ya sabemos que son como la noche y el día

- Por otro lado hay cosas buenas, muy al estilo google, como las diferentes librerías que incorpora, entre ellas OpenGLES (¿quien dijo que OpenGL estaba muerto?), Me alegra ver que han tirado por esta especificación, tengo ya ganas de ver lo que se puede hacer en dispositivos potentes como espero que sean los que corran Android.

PD: sí, la realidad es que java no me gusta nada, me parece un lenguaje que no tiene todo lo bueno de C++ ni todo lo bueno de lenguajes más modernos como python e incluso C#.

11.10.2007

Crónica (destructiva) del Motodev summit

Seguramente en los próximos días pondremos en el blog de Unkasoft una crónica un poco más suave de lo que pasó allí. Aquí empieza la mía:


Para empezar diré que motodev summit (lietaralment es cumbre) es una serie de charlas sobre la tecnología de Motorola sobre móviles y alrededores. Uno de los eventos era en londres, en un hotel bastante chulo (por fuera) en la zona de Barbican. La verdad que el evento estaba muy muy bien montado, muchas charlas, comida para todos, pantallas indicando lo que había, una zona donde empresas mostraban sus productos (comento más adelante el tema). Como digo, todo bien montado, salvo que en el lunch este de las narices no había mesas para todos (se comía de pie) y una vez terminabas no había sitio para dejar los platos...

Llegamos tarde gracias a british airways, total que nor perdimos las primeras charlas y la primera la pillamos empezada, una sobre un futuro API (JSR 293)para localización. La charla fue muy buena, comentó cosas muy interesantes.

Pero lo bueno empezó a terminar cuando entramos a la charla de optimización de Midlets para J2ME. No quiero poner a caldo al fulano que la impartío, un tal Gerard Palma, pero a los 3 minutos los que estaban viendo la conferencia se rieron de él en toda la cara, se suponía que este tío es experto en JVM... no tenía ni puta idea de optimizar ni de absolutamente nada. Hubo carcajadas en la sesión, sobretodo cuando uno le comentó algo acerca de por qué el motorola V3 (para el que no lo sepa es el peor móvil creado por la raza humana) iba tan como el culo. Patético.

Ya el colmo fue cuando entramos en la charla del sistema de desarrollo que plantea Motorola para sus móviles... una burda copia de EclipseME (un pluggin para eclipse para desarrollo en móvil de forma simple) nos hizo la presentación una tía que era el primer día que cogía eclipse, es que nos enseñó a que tenía autocompletion, lo que tiene uno que ver... no sabía luego lanzar la midlet, etc, lamentable.

Para poner la guinda casi perdemos el enlace en barcelona gracias, nuevamente a british airways, cuyas personas de seguridad me cachearon, por lo menos lo hicieron con cierta gracia, porque el fulano de 2 metros me dijo "ohhh, your lucky day!".

En resumen, si el tal palma este lleva 7 años y es consultor estratégico yo debería ser, como mínimo, director técnico de google. La conclusión es que, aunque no lo parezca, en españa estamos a un buen nivel técnico, sobretodo si nos medimos con la gente que había allí escuchando las charlas, que sabían rato más que los ponentes.

Estoy seguro que aquí podemos organizar unos talleres de optimización de midlets mucho más interesantes...

11.04.2007

La demoscene llega a pixar

Un grupo de sceners se han cogido las maletas y se han ido a enseñar algunas de las maravillas que se producen dentro del mundillo. Todos los sitios que visitan, entre ellos nvidia y pixar, quedan reflejados en el blog que han abierto.

Para no llegar con las manos vacías han versionado en 4k la típica escena del flexo de pixar.

Dejo el video de youtube, pero merece la pena bajarse el ejecutable y sobretodo el zip para leerse el "readme" y ver que el coder es un español.





Por youtube se pueden encontrar más versiones, algunas muy divertidas, pero seguro que ninguna en 4kb.

10.21.2007

¿Qué pasa con EGNOS?

Mucha gente me pregunta qué pasa con Galileo, ese sistema europeo para posicionamiento global que va a solucionar todos los problemas de GPS. Al final nos pasa como con el modelo OSI: los europeos hacemos un modelo basado en una serie de capas, perfectamente especificado, inmejorable... de mientras los estadounidenses montan TCP/IP, lo ponen a funcionar y triunfan.

Lo mismo con GPS pero encima con ventaja. Llegan los americanos con su ejército, sí, ese que usamos los españoles para criticar a USA diciendo que meten un montón de pasta , que si son unos descerebrados... imbéciles de mierda, cómo podemos ser tan tontos, mientras nuestro ejército compra inhibidores de frecuencia ellos posicionan con milímetros de precisión, no me explico como podemos seguir criticando eso... me desvío del tema, mientras los americanos implementan GPS, años después europa plantea un sistema de posicionamiento llamado Galileo, del cual parece que en el 2014 estará funcionando... y solo lleva 3 retrasos. De momento tenemos 3 satélites de mierda dándonos corrección diferencial y encima mala, me explico:

Qué pasa si vas en un móvil y te corrige la posición, pongamos 3 metros, durante un periodo de tiempo. Pasado un rato el satélite desaparece como de la nada y deja de corregir posición... el móvil de un segundo a otro pega un salto de 3 metros. Para eso es preferible mantener un error más o menos constante en vez de estar dando correcciones de mierda...

Total, llevamos un fin de semana en el que tenemos unos errores GPS bestiales sin comerlo ni beberlo y con una quemada considerable. De todas formas no hya mal que por bien no venga, estoy aprendiendo de GPS lo que no está escrito, de hecho voy a montar una estación en mi casa para ver qué error hay a lo largo del día y comprarlo con la corrección que me da EGNOS, la que veo en las gráficas de los GPS fijos de la ESA y la corrección diferencial que da la Junta de Castilla y León.

10.17.2007

Esto mañana estará...

en microsiervos, anaitgames, vidaextra y aledaños, cosa que no me extraña (hoy ya está en tigsource y linuxjuegos), ojo al concepto de este juego:




Lo que se puede llegar a hacer con un poco de ingenio, vim, blender, opengl y un poco de procesamiento de imágenes. Además, en la web del autor se puede encontrar un script para poder capturar los datos de los sensores de los mandos de la wii con python + blender. Será para lo poco que vale la wii, jajaja.

10.04.2007

Carlos Ulloa returns

Sí, después de años desaparecido en combate, casi desde que dejó psygnosys después de aquel excelente pero incomprendido g-police ya no se había vuelto a saber nada de él. Ahora re-aparece en una entrevista que han enlazado en barrapunto.
Y te preguntarás, quién es este fulano... pues uno de los míticos de game40 :).

9.27.2007

los 10 mandamientos de la venta de tecnología

Llevo unas semanas ocupadísimo, con mil cosas en la cabeza y prácticamente sin poder descansar. Ahora es temporada para los agricultures y tienen una necesidad abrumadora de sistemas de guiado por GPS. En estos días hemos tenido un puñado de llamadas, mails y de ventas, se puede decir que estamos haciendo el agosto en pleno octubre.

Cuando vendemos el sistema lo planteamos como algo más familiar que otra cosa, nosotros conocemos al agricultor, sabes que hace, si trata tierras para los demás o no, si necesita tal o cual cosa... por esa razón nos acercamos al pueblo del agricultor a enseñarle el sistema de guiado. En las visitas que haces te encuentras preguntas y situaciones verdaderamente de risa y las mejores se producen cuando se juntan muchos agricultores.

No me molesta lo poco "educada" tecnológicamente que está la gente, en el fondo tampoco tienen que saber de nada, lo SI me molesta profundamente es que no te hagan ni puto caso. Cuando van al médico se toman las pastillas que les recetan, hacen las casas como les dicen los arquitectos, pero no hacen ni puto caso cuando les dices que si una cabina es metálica la recepción de una antena es mejor o que los errores de un GPS están correlados en tiempo y distancia cercana.

En resumen, hay una serie de patronesq que se repiten cuando vendes tecnología:

- Hay medidas estandard populares de calidad. En las cámaras de fotos son los megapixeles, en los GPS el número de satélites, en los coches la potencia máxima, sin importar el tamaño del objetivo, la frecuencia de actulización en los GPS o el par motor...

- Si es más barato es peor y si es mucho más caro que el resto es mejor. Esto suele ser cierto, pero no siempre. Así que si vendes algo más barato la estás cagando. Para más información ver la máxima III del blog de jesús de la torre (lectura muy recomendable).

- Si el comercial te da explicaciones el producto es difícil de manejar o tiene truco. Si das explicaciones técnicas, la has cagado de nuevo. A nadie le interesa que le expliques amablemente como funciona, todo lo contrario, lo valoran negativamente, NO LES INTERESA TU VIDA, prefieren vivir en la ignorancia.

- Cuanto más grande es el sistema y más bonito entonces es mejor. Como explicar que la antena de un GPS no tiene que ser necesariamente más grande? Como "pon aquí una marca conocida de tractores" pone un GPS tan grande... total, merece la pena gastar el tiempo en tonterías de que quede muy bonito a mejorar el producto, esto es una regla de oro. No pierdas el tiempo en pensar algortimos, gasta el tiempo en mejorar la presentación.

- La tecnología _TIENE_ que solucionar todos tus problemas. Una vez la has adquirido tiene que servirte para todo, siempre y sin el más mínimo error.

- La tecnología _TIENE_ que ser perfecta. En otros sectores los errores y desgastes se asumen como algo normal. Si compras un coche sabes que tarde o temprano algo te fallará.

- la tecnología dura para siempre y debe ser gratis. Si compras un coche tienes que cambiar el aceite, ahora, si dices que el software lo de pagar actualizaciones... "pero si te salen gratis!". Ver siguiente:

- Si tu tecnología lleva software este te sale gratis. Nadie entiende como es posible que la gente cobre por algo que se copia "gratis". Tampoco le intentes hacer entender que lleva trabajo, le da igual.

- Los cambios en la tecnología son simples (y gratis). "Oye, es que quiero meter tu software en un N95" y para mi irni me dice: "me lo dejarás barato que yo pongo el hardware". Un fulano se gasta 800€ en un móvil y te escatima 100€ en un software? Nada de hacerle entender que su flamante móvil no lleva el SSOO adecuado.

Falta aún mucho para que la gente empiece a tener cierta educación tecnológica, espero que las nuevas generaciones que han empezado desde muy pequeños a estar en contacto con ella tengan cierto cirterio y hablen con cierta propiedad.

9.20.2007

Me gusta gran hermano...

porque disfruto viendo televisión. Me confieso fan del "como se hace" y desde que estuve trabajando en televisión no puedo por menos que ver cómo lo hacen o como estimo yo que lo están haciendo.

El caso es que me encantas las cosas como: "mercedes, guapa, creo que tienes el pinganillo al lado del micro", esto después de haberse oido las órdenes de realización. El programa en si no tiene demasiado, pero técnicamente tiene que ser una gozada porque imagino que tendrán doble realización, comunicación entre los estudios y la casa, una escaleta (el guión que se sigue) kilométrica...

9.11.2007

Screen-Space Ambient Occlusion

Revisando la imagen del día de gamedev me encuentro con la implementación del algoritmo que la gente de crytek describió en la charla que han dado en el siggraph de este año. Y, para variar, de un español, iq. Merece la pena lerr el hilo completo ya que describe el algoritmo y se da información de posibles mejoras.

9.04.2007

Quedada de desarrolladores en Salamanca

Te gustan los videojuegos, el diseño, la programación y vives en o cerca de Salamanca? quizás te interese una quedada que estamos organizando para vernos las jetas.

- post en el blog de Unkasoft
- post en el foro de stratos

Aprovecho con este post para que se publique en Planet AUGCYL que seguro hay gente de Salamanca y alrededores :).

9.02.2007

Sintesis de sonido con planetas

Pongo el link al (recomentable) blog Lost Garden. Ojo al video que pongo aquí también. Es el típico sistema basado en nodos pero llevado a la realidad :)

9.01.2007

puzbe: prototipos

Como soy un negado para diseñar una mecánica de juego más o menos divertida voy probando cosillas sobre lo que ya tengo hecho a ver si suena la flauta. Hasta ahora mi idea era hacer un juego de puzzle en el que conseguir diferentes hitos colocando una serie de piezas predeterminadas en cada nivel y usando la fuerza de la gravedad. Creo que ese será finalmente el objetivo del juego, aunque mis carencias como diseñador reaparecen cuando tengo que diseñar los niveles.

Como tengo hecho el motor de físicas he hecho un pequeño dominó que no sé si meteré como minijuego, por ejemplo, colocando las puezas que faltan si que se caigan las demás en un tiempo determinado. De momento he probado a generar un dominó con una espiral de fermat y con un spline:






A ver si se me ocurre alguna idea más porque me quedan 15 días (creo que la entrega es el 20) y aún me falta diseñar los niveles, hacer las pantallas, la música y los sonidos... :/

8.29.2007

radares y más radares

Y digo yo? qué coño hace un radar en una carretera nacional abandonada, en medio de un pueblo de 1500 habitantes a las 3 y media de la tarde en agosto?

Es que me hastía tanta gilipollez de control de velocidad. Es que acaso un tío que va a 60 por una nacional con plena visibilidad donde la limitación es a 50 es una falta? Es que no ven que están haciendo el ridículo? es que no ven que a 200 metros de donde está el radar están sirviendo bebidas alcoholicas a menores, que sale un fulano que mete de ostias a la mujer, un puto camello de mierda? Eso sí que es una "falta" y no ir a 10km/h.

Suerte que les he visto y en los pocos metros que había (estaban bien escondidos) he conseguido ponerme a unos 25km/h (velocidad mínima en esa vía) y por si me veían les he dado unos toques de freno en señal de protesta. Y digo yo, si a esa velocidad me da tiempo a ponerme a 25 y a pensar en toda su familia digo yo que de igual forma me hubiera dado tiempo a frenar si me sale un chaval con una bici...

El modelo de radar era un autovelox, era un 307 azul oscuro. Se detectan muy fácil porque tienen la ventanilla de atrás bajada y el aparato sobresale "bastante".

Por si a alguien le es útil por la zona de salamanca-valladolid se suelen poner 306 azules y blancos, y C4 blancos, aunque el otro vi un zx blanco (imagino que están resucitando viejas glorias para recaudar más).

Como con el nuevo código de circulación ir a más de 180km/h por autovía es delito, al igual que si veo que están atracando a alguien llamo a la policía, es mi obligación llamar a la policia.

Estoy bastante molesto, al igual que muchísimos conductores, con la política aplicada por la DGT. Personalmente voy muchas veces más pendiente de si voy a 60 por la cuidad a si frena el de delante, que ya es triste. Estoy bastante mentalizado con lo peligroso que puede llegar a ser un coche, sobretodo por algunos pequeños altercados que he tenido últimamente, pero me considero lo suficiente maduro como para saber si en una zona puedo ir a 50 o a 60.

ya lo dije :)

8.20.2007

Ya estoy de vuelta

Ya vengo de mis vacaciones por cantabria y galicia, he visitado un montón de sitios, sobretodo de galicia que no conocía nada, me he caminado unas playas enormes y he añadido unos 3000 y pico kilómetros más al marcador del coche de mi novia :).

Lo mejor de las vacaciones: Destacar la gozada que es viajar con un sistema como tomtom, usar google earth para poder echar un vistazo a los sitios antes de ir, medir distancias, etc y porsupuesto los sitios, sobretodo las vistas tanto de cantabria como de galicia. También saber que aún hay gente honrada, se nos perdió la cámara de fotos en Vigo y gentilmente un matrimonio nos la devolvió.

Lo peor de las vacaciones, la bazofia de carreteras que tienen por el norte, una auténtica vergüenza, no me vuelvo a quejar en la vida de las que tenemos aquí, y sobretodo la congestión en santander (circunvalación) y pontevedra, la mierda de peajes de Galicia (AP-9) y sobretodo, sobretodo, la extrema subnormalidad de quien tenga las competencias en galicia de la señalización, toda en Gallego y con sus propias señales para indicar pueblos... se puede llegar a un nivel tan bajo de sentido común? Es que he llegado a ver carteles en gallego y en inglés! es colmo de la gilipollez política y practicidad cero.

Han estado bien unos días sin PC y prácticamente sin conexión, sobretodo para darme cuenta de la dependencia que tengo de internet y del PC (que tiene cosas buenas y cosas malas). Es un tema para reflexionar, la verdad. Bueno, voy a seguir disfrutando de una semana más hasta volver a trabajar :).

8.10.2007

Me voy de vacaciones

Y me voy de vacaciones para, speaking in silver, tocarme en nabo a dos manos, quiero olvidar por un par de semanas los GPS, el java y alguna que otra cosa más. Espero poder dormir mucho, descansar más aún, leer cosas que tengo pendientes (temas de filtrado y de álgebra), jugar con la PSP y intentar ver un trocito de la parte norte de España.

En teoría esta semana debería ser semana sin PC, pero es algo tan difícil, además, tengo media vida (y algunas películas, series y ebooks) metido en este paralepípedo :)

8.07.2007

Lifeforce de ASD

Repasando los resultados de la assembly de este año que acabó hace unos días vi que ASD había presentado demo. Sé que ASD no me puede fallar, cuando haces click sobre un enlace que lleva a uno demo suya ya sabes que te va a quedar con la boca abierta y esta vez con lifeforce no me han decepcionado.

No he podido ver la demo en tiempo real porque en mi pc iba a saltos, "solo" he visto el video (merece la pena bajarse los 200 y pico megas en vez de ver el de youtube). De todas formas he estado echando un vistazo a los datos que trae el zip de la demo que esta vez no están encriptados como pasó con iconoclast(aunque la encriptación era solo un xor), de la que uso su track como sonido para despertarme. En él se pueden ver tanto las meshes (y sus lightmaps), las texturas y los shaders que usa.



Por último una nota curiosa que deja el programador en el readme:
"""
Lifeforce, like all ASD demos, is almost completely hand made; which means that apart
from some static models and textures all model animation, particle effects, post
processing, camera paths, synchronizations and everything else that makes this demo
has been hard-coded. We believe that it is impossible to deliver a demo of the
complexity of lifeforce by using an available demoscripting engine and putting in
less work than hard-coding it the way we did in the first place. The code in
Lifeforce is based on a very minimalistic 3D engine (a combination of all first 20 or
so NeHe tutorials, for example, is a superset of our 3D engine
) and heavy use of
image processing and shaders.
"""

He puesto en negrita lo de NeHe porque me ha llegado al alma.

8.02.2007

El mercado de los PocketPC

Para qué sirve un pocketpc? a priori parece que puede servir para infinidad de cosas, algo así como un portátil en pequeño en el que poder jugar, ver videos, navegar, usar el GPS y hacer muchísimas más cosas que con el portátil no puedes hacer.

La realidad es muy diferente, es un cacharro superado en todos los aspectos. Como agenda personal está más que muerto, los móviles ahora tienen una agenda mucho más completa y se sincronizan con outlook igual o mejor. Como teléfono dejan mucho que desear: poca duración de batería, suelen fallar y encima la pantalla es delicada. Como sistema para tomar notas... el interfaz es peor que malo e incómodo para todo. Intentemos navegar con wifi: la batería dura media hora, el navegador que hay de serie es pésimo, casi todas las webs se ven mal. Hay algunas que tienen cámara de fotos, pero es de mala calidad y es superado por una cámara convencional o cualquier teléfono. Si las usamos como GPS al final terminan teniendo la pantalla más pequeña y dan muchos más problemas que un sistema GPS integrado como tomtom.

Y aún no he hablado del precio. Si quieres una pantalla de un tamaño tirando a grande 3.5" ya saltas de los 300€ y si lo quieres con GPS, soporte y demás, casi 400. Total, por la mitad te compras un tomtom que te sirve para lo mismo.

En resumen, están retirando casi todas las pda (DELL no hace mucho), llevan sin aumentar la potencia de estas hace ya tiempo, bajan el tamaño, no hay nuevas funcionalidades y por si fuera poco son carísimas en contraste con otros sistemas de similar funcionalidad.

y tú? usas la pda para algo que no sea para tenerla en casa de adorno y como recordatorio de los 300€ peor gastados de tu vida?

7.30.2007

El trabajo del informático

Me escribe mi ex-tutor de proyecto fin de carrera y ahora amigo, con el que sigo adelante en el proyecto para poder seguir comercializándolo, mejorando, aprendiendo y algunas cosas más. El correo es una de una larga lista en los que discutiamos sobre qué mejorar a corto plazo, qué corregir y sobre qué investigar más con el objetivo de que agroguía sea lo más usable y útil posible. EL párrafo en concreto es el siguiente:

"""
PD: Cada día veo más claro, que la gente no valora para nada el trabajo en
temas de informática. La gente tiene asociado que si va a un abogado, le
tiene que pagar, pero en temas de esto nada, porque a veces el ordenador se
lo arregla el hijo de la vecina, el sobrino, se lo baja de Internet, etc.
"""

Yo considero que agroguía es más un trabajo de ingeniero de telecomunicación que de ingeniero informático ya que es mucho más importante entender el filtrado que usan los GPS que tener una buena arquitectura en la aplicación, pero el correo es bastante explícito. Es muy común escuchar con respecto a esto: "es que a vosotros hacer copias no os cuesta nada". Esto debe ser lo único que sabe la gente, que copiarlo es gratis (que tampoco).

Y es que la gente no distingue entre profesiones y no sabe que la diferencia entre el servicio de un abogado o un ingeniero informático no es el precio, si no que la profesión es distinta y tan respetable una como la otra.

Ante esto he pensado lo siguiente: qué pasaría si regalo agroguía? paso de cobrar 1300€ + iva a 0€. En pocas palabras paso de ser una desarrolladora a ser una empresa que ofrece servicios. Ahora en vez de cobrar por unidad cobraría por hora de ingeniero y, claro está, estaríamos en la oficina esperando que vinieran para explicarnos sus problemas y lo que quieren.

Por ejemplo, llega un agricultor y me resulta que quiere poder medir área, trabajar en sus parcelas de tal zona de España y además hacerlo con su tractor X. Un ingeniero se desplaza, le hace un estudio de la pendiente de sus tierras para ver si necesita un sensor de pendiente, hace un estudio de los mejores días en función de su zona y de la triangulación de los satélites, le hace un informe y le instala el agroguía más decuado. A unos 200€/hora, teniendo en cuenta que estudiar las pendientes puede llevar unas horas, realizar los informes otras cuantas, al final cobraría, entre el trabajo de ingeniero, desplazamientos y demás como mínimo unos 1600€. Y total, para instalar lo mismo que instalo sin hacer todos esos estudios :)

Es que vamos que tener que hacer todo ese teatro para que sepan que nuestro trabajo es serio? Estoy pensando en hacer la prueba un día e ir bien vestido y poner el tono ese de "soy un profesional por hablar de términos que no entiendes" en vez de ir normal para subirme al tractor y enseñarle al agricultor como funciona el tema in situ (mucho más lógico creo yo).

De todas formas, siempre pienso que las cosas siempre son útiles para algo y siempre hay algún momento donde puedes aplicarlas y todo lo que estoy aprendiendo sobre el funcionamiento del sistema GPS en condiciones diferentes a las habituales, de los algortimos de filtrado, del trato con los agricultores, de la presión que supone ver qué hace tu competencia, etc, y a pesar de que no siento valorado mi trabajo por parte de algunos, merece la pena.

7.24.2007

he perdido mi pasado

En mi plan "road to artfutura07" he pensado en implementar la lógica de cada pantalla en python y para ello me disponía a usar unas clases que hice hace tiempo, las cuales publiqué hace ya tiempo en flipcode. El caso es que no las tengo en mi disco duro y flipcode murió hace tiempo, así que he perdido mi pasado para siempre :(. He intentado pillarlo desde archive.org, pero nada, ha sido imposible, veo la explicación, pero el código no está.

Al final he decidido presentar el juego de puzzle, he pensado en hacer una serie de minijuegos basados en física con el pasecto de la foto que ya publiqué hace unos días. A ver si consigo scripterar la parte de los niveles y con eso hacer cosas más rápido.

7.23.2007

Ya está aquí mi PSP

Me he pillado una PSP, la verdad casi con la única intención de rememorar los juegazos de psx :)




La foto está hecha con el móvil :/

7.17.2007

La DGT piensa prohibir usar el GPS con el coche en marcha

Leyendo 20minutos me entero de que según el periodista la DGT ha dicho que prohibirá el uso de los GPS mientras el vehículo está en marcha. Supongo yo que se referirá a la manipulación del sistema cuando el coche está andando...

No me queda otra que descojonarme completamente de la DGT y de los que proponen las normas. Es que me pongo de mala ostia con estas payasadas, es cierto que el GPS despista mucho si estás toqueteándolo, pero también despistan los cruces no señalizados, los carriles de aceleración de 50 metros, los baches que hay en la autovía (no hay más que ir por la A-62 un ratito), los guardarrailes sobrepuestos, los límites de velocidad estúpidos, etc, etc.

La moda es prohibir y por si fuera poco hacen el llamamiento a los fabricantes para que implementen en su software la forma de evitar que se puedan manipular durante la marcha. No multan al fulano que enciendeo un cigarro y me multan a mi por usar el GPS? Me dirán que diferencia hay entre usar el GPS y poner una emisora de radio o poner el climatizador o tocarle la pierna a la novia cuando va de copiloto.

Cierto es que hay gente que se dedica a mirar el GPS más que a la carretera, pero es que los hay tontos, con GPS o sin GPS, es de sentido común que no puedes quitar los ojos de la carretera. Me parece que se deberían dedicar a las cosas serias y no a las gilipolleces varias del GPS, de beso, de no ir a ni un 1km/h más de 120. Y entre esas cosas están los borregos que se tajan y cogen el coche, porque aquí tengo que decir que el responsable de poner los controles de alcoholemia roza la gilipollez integral. Si yo tuviera que poner controles no se escapaba ni uno, aunque me pregunto qué razones hay para no poner los controles donde todo el mundo sabe que la gente se taja.

Desde luego que el mismo día que TOMTOM o cualquier otro fabricante saque un software que "detecte" que el coche está en marcha publicaré un tutorial de como deshabilitar las sentencias NMEA que llevan la información de velocidad.

7.12.2007

Falta de programadores

Leo con gracia lo que escriben en algunos blogs sobre la falta de profesionales en el desarrollo de software. Según estos artículos está llegando un punto en España en el que las empresas se van a aempezar a a dar de ostias por los programadores.

El caso es que todo esto me suena a lo mismo que el tema de la burbuja inmobiliaria. La burbuja está ahí, todo el mundo lo sabe, todo el mundo sabe que los pisos deben bajar, pero no bajan, no estalla la burbuja y aunque el tipo de interés fuerce la máquina, el engranaje sigue funcionando. Pues esto es igual, se dice que los programadores cobramos una mierda, que trabajamos como mulas, que hay (somos) pocos profesionales, que las empresas están jodidas, etc, pero se siguen cobrando los mismos sueldos de mierda y se sigue teniendo al desarrollador como un mindundi.

Cuánto se cobra en otras profesiones diferentes? es diferente la profesión de programador al resto? es que acaso la gente se cree que en otras profesiones entras cobrando 5 kilos al año? Yo he estado en otros mundos y todos son iguales, se cobra menos de lo que se querría cobrar, hay pocos profesionales y aunque siempre dicen que la cosa va a mejorar nunca mejora.

Y digo yo, cúanto debería cobrar y qué condiciones debería tener una persona que tiene su vida puesta encima de las teclas de una máquina? Siendo sinceros y comparandolo con el trabajo que realicé en TV, el trabajo de programnador infinitamente más duro y requiere una dedicación y un aprendizaje muy muy superior para cobrar lo mismo. En TV estuve 1 año y en ese año apenas apareció nada nuevo, todo seguía prácticamente igual, las tecnologías eran las mismas con pocas mejoras (aunque sí mucho más caras), el trabajo requería un esfuerzo mental, pero solo puntual, bastaba con estar pendiente el resto del tiempo.

Creo que te tiene que gustar mucho programar para no acabar pirándote a otro sector mientras puedas. Lo cierto es que el desarrollo de software engancha y es divertido ver como puedes crear cosas que sirven para algo, pero la ilusión se va y veo a algunos compañeros como se desesperan viendo que no pueden salir del mundo donde se han metido.

Qué pasará si se empieza a valorar a los desarrolladores por lo menos igual que a los comerciales? Pasará que la hora de programador subiera ( y se les pagaran todas las horas como debe), los clientes se quejarán de la subida que ha metido el desarrollo de su software y volverán a hacer la mismas preguntas de siempre y decir las mismas absurdeces: "pero tan difícil es desarrollar software?", "no se puede tardar tanto en hacer un programilla", etc. Se acostumbrarían a no tener a 4 gatos un montón de horas? No lo creo.

Cada día lo tengo más claro, lo que no se puede ver no preocupa ni se valora, y como todo el trabajo que lleva el software no se ve, nos pasa lo que nos pasa. Eso sí, los comerciales, los cuales si hacen ver su trabajo, se llevan una buena tajada por cada venta. Cada día lo tengo más claro, y mucho más después de llevar unos meses vendiendo agroguía: tan importante es desarrollar bien como vender bien y es algo inseparable. Así que me gustaría ver en pocos años a los buenos programadores con sus coches, sus portátiles, sus conexiones en condiciones, sus viajecitos, sus primas por venta (o por desarrollo), etc.

Siento el tocho.

7.10.2007

reto artfutura 07

Siguiendo la idea de colson lo mismo me planteo presentar un jueguecillo a artfutura.

La verdad es que no tengo demasiado tiempo, entre programar nuevas caracterísitcas de agroguía, mantenerlo, probar GPS's nuevos y demás tareas me quedo casi sin tiempo. Por ello me planteo coger un uno de esos juegos que tengo a medio hacer, olvidades y terminarlo para presentar una demo. Rascando un poco en mi carpeta prog he encontrado 3 pequeños juegos a medio hacer que me llaman la atención.

El primero de ellos es un viejo conocido de este blog, un juego de naves en el que casi todo es procedural. La base del juego está hecha, el editor de pistas está creado, la lógica de los enemigos también... solo me falta un 10% para tener una demo, o sea el "otro" 90%. Hablando en términos un poco más técnicos, me queda ajustar la jugabilidad, el control, hacer más pistas, mejorar el aspecto gráfico (un glow por aquí, unos cubitos con blend más por allá, unos fondos chulos) y poco más. Creo que puede ser un mes más de coding tranquilo, a ratos:

Cubeout:


El segundo es un juego de puzle llamado puzbe (suma de puzle y cube)basado en físicas. El objetivo es hacer que dos bolas se choquen. La primer de ellas es fija, la segunda de ellas está a cierta altura, entonces en un determinado tiempo el jugador debe poner diferentes objetos a elegir entre una lista por todo el escenario para quesas dos bolas se coquen. En la primera imagen se ve como hay una bola arriba, la cual se tiene que chocar con la que está al fondo... pero hay una de por medio. Para quitarla podemos dejar caer (la posición de la caida lo indica la flecha azul) una pelota gorda a modo de bola de billar para separarla.


El juego tiene programado la edición de niveles en blender con su exportador, toda la física, un scenegrpah básico, efectos de partículas y un poco de la lógica del gui. EL juego está hecho con toonshader, de esa forma puedo darle un "buen" aspecto sin necesidad de grafista. Me faltaría bastante, aunque el grueso principal está hecho.





Por último un pequeño concept de juego de naves llamado haty (no sé porque puse ese nombre) que solo tiene implementada la lógica básica de colisiones y un generador estúpido de naves procedurales. Una de ellas se ve en el shot. Este prácticamente lo descarto, aunque últimamente me apetece hacer un shooter



con cual seguiriais?

PD: por cierto, cubeout está programado en C (me dio por ahí) y los demás en C++, como buen hombre que soy. Porque, efectivamente, los que somos hombres de verdad usamos C++, con sus destructores, sus unsigneds y sus deletes :)

7.04.2007

caracoles al poder

Esto es lo que se encuentra uno cuando va al campo:

 


Lo fotografió la hermana de mi novia mientras instalabamos un agroguía a un agricultor. Qué tendría ese palo para que estuvieran todos ahí pegados?
Posted by Picasa

7.02.2007

Más juegos procedurales

Comentaba el otro día algo sobre edición procedural y hoy precisamente veo un juego en Independent Gaming hecho en javascript en 4kb. Lo interesante del juego, que en realidad es bastante injugable, es que comentan un poco como han hecho las texturas y los nieveles. Merece la pena verlo.

Penelope's Song

Recuerdo la escena de la película "cadena perpetua" (creo que mi película favorita) - /!\ atención /!\, spoiler - en la que el personaje principal pone por la megafonía del patio de la cárcel un disco que, si no recuerdo mal, le envían de deshecho de bibliotecas después de darles la brasa por carta una temporada. En ese momento los presos se quedan mirando hacia los "altavoces" escuchando la canción atontados.

El otro día, haciendo mi trayecto diario de 65,3 km desde Salamanca a Alaejos, puse radio 3, no porque sea asiduo, si no porque en todas las emisoras a eso de las 3 de la tarde ponen fútbol y más fútbol (ellos lo camuflan como deportes), y en ese momento estaba sonando de fondo una canción que me llamó la atención. Era un concierto desde la alhambra y no me enteré ni del nombre de la cantante ni de las canciones ni de nada, solo sé que las canciones me quedaron como a los presos de la película.

Suerte que tenemos internet y con pocos datos se puede encontrar de todo. La canción que me dejó atontado se llama Penelope's Song de Loreena McKennitt. Lo mejor es que el video en directo supera con creces la experiencia de escuchar la canción, lo que daría por poder haber estado en el montaje técnico de ese evento. Me recuerda al concierto de josé carreras que montamos hace ya más de un año en tvcyl - salvandl las distancias. Si hubieramos tenido una pluma y una iluminación en condiciones hubiera quedado niquelado, aunque la cámara que dimos desde la parte superior del escenario (en la foto la que está en la parte central izquierda, camara2) estuvo muy bien, de hecho fue la que mostraron todas las cadenas de ámbito nacional. Jaja, aún recuerdo que echaba chispas porque había diferencia de potencial desde la masa de la cámara al barrote que la sostenía... qué recuerdos :__).

6.28.2007

Edición procedural

Leo en una noticia en codepixel acerca de houdini , un editor 3D que realmente no sé si está orientado a la creación procedural, pero que en el video de presentación (quicktime) muestran las capacidades enfocadas a este tipo de modelado.

Para no variar usa un editor de nodos en el cual tienes primitivas y modificadores con una serie de parámetros configurables hasta el aburrimiento (ver el video). Y digo para no variar porque todo editor de contenidos procedurales que se precie está basado en nodos, imagino para facilitar la vida al pobre grafista. Desde el editor de materiales del Unreal, el editor de nodos y materiales de blender, werkkzeug1 el editor procedural de farbrausch, el reciente .werkkzeug3, que es la continuación del primero y que ya puedes comprar .

Lo cierto es que cada vez más juegos hacen uso de estas técnicas, aunque no es algo nuevo, sentinel yo lo usó para generar sus niveles. La gracia del tema es usar esto donde realmente puede resultar interesante. Por ejemplo, muchos móviles actualmente soportan un tamaño de jar grande, sin embargo las operadoras lo limitan de forma que los contenidos que puedes meter en el juego son reducidos. Tenemos una combinación perfecta, un dispositivo potente, pero un agujerito pequeño por donde entrar. A ver si pongo en el blog de unkasoft un pequeño sistema de generación produral para móvil que programé en mi tiempo de i+d. Solo me queda hacer un pequeño editor :)

6.10.2007

desarrollando software, un paso más

Hasta ahora estaba llevando el desarrollo de agroguía con subversion y haciendo builds a pelo desde el editor. Los binarios se los pasaba a mi tutor (ahora probador) por correo electrónico sin ningún tipo de control, ni changelog, ni nada.

Subversion es vital, pero llevar "la cuenta" de lo que haces, de lo que te queda por hacer y de lo que has hecho es algo más que fundamental. Para ello, siguiendo la política que seguimos en Unkasoft, he instalado trac y scons.

trac la voy a user como sistema de control de bugs y de caravterísticas a implementar. Por suerte hace tiempo que no salen bugs, pero me interesa mucho tener control sobre nuevas cosas a implementar, porque últimamente es un jaleo saber qué está probado y qué no. De esta forma sé en qué rama de subversion está cierta característica. Esta es otra, he empezado a usar ramas en subversion para poder siempre tener una rama estable que poder vender. De momento es un infierno hasta que subversión saque su versión 1.5 en la que lleva tracking de ramas.

scons lo voy a user para generar las diferentes releases. De esta forma, junto con trac podré saber qué va dentro de cada versión y podré llevar un conteo lógico de versiones para poder diferenciarlas. En el trabajo estoy usando ant una herramienta, me atrevo a decir con todas las de la ley, que es una bazofia. La única razón por la cual se usa es que tiene unas tareas muy buenas para compilar java y derivados, pero como lenguaje para algo más, es malo a rabiar, no puedes hacer un bucle for de forma lógica, tienes que programarte mil tareas para hacer algo potente, etc... y es que XML no vale para todo.

Aparte el formato wiki de trac me viene de perlas para incluir ficheros de test, pruebas de cada uno de los GPS que usamos, gráficas y un montón de cosas.

Me falta tiempo, arg!

6.04.2007

Yo también puedo

--- 21:08
Con motivo del concurso "Tú también puedes" me planteé hace tiempo crear un jueguecillo. Ya se sabe como funcionan las cosas de las entregas... resumiendo, me quedan menos de 3 horas y ya tengo la base de mi juego de carreras de caracoles... para móvil y con java (uf). Como base he cogido un ejemplo de los tutoriales de Unkasoft Platform y he robado unos tiles de por ahí (lo siento grafista, te daré crédito)

Ahora mismo tengo creada una pista y moviendose al fulano que estaba en el tutorial... una imagen y a seguir.



--- 21:53

El pc va más lento que el caballo del malo (gracias java por tener unas herramientas tan ligeras), mi madre ha llegado y tendré que cenar a toda leche. Ya tengo la meta, he encontrado un bug que no voy a solucionar y estoy empezando con los (qué optimista) enemigos.



---- 22:48
Deshecho la idea de los enemigos, ahora pasa a ser un juego de habilidad... Solo una hora, arg!
-- 00:00

bazofia terminada XD

5.13.2007

Mentir para vender (I)

Ayer fui a enseñar a unas personas (sí, eso a lo que otras empresas llaman clientes) y como siempre les pregunté que dónde habían conocido agroguía y demás. Resulta que antes de llamarme a mi habían hablando con una empresa de maquinaria agrícola que se dedicaba
a vender sistemas de guiado mediante GPS. La cosa hasta aquí muy bien.

Lo jodido del tema es que estas personas preguntaron por agroguía, imagino que pensando que es otro producto más que lo distribuyen a través de empresas de maquinaria, y el señor de la empresa les comentó que él también lo vendía pero que era malísimo, que daba un margen de error enorme y que si quería se lo regalaba, pero que ni merecía la pena.

Pero que pavo, pero la cosa no va a acabar aquí, mañana mismo le llamo para pedirle información de agroguía como si fuera un agricultor, a ver qué me comenta. Grabaré la conversación y la publicaré a ver que le parece.

Me parece bien que si quieren vender otro producto enumeren las ventajas o los inconvenientes del mío, pero por lo menos que sean verdad. Mañana más :)

5.11.2007

Tengo una pregunta para usted (UVA version)

Hace pocos días tuve la oportunidad(?) de estar en una charla impartida por un alto cargo de la universidad de Valladolid. La charla trató sobre la historia de la universidad desde sabe dios cuando hasta nuestros días. En si estuvo bien con altibajos, ya que algunas veces era una chapa, otras veces había discursito político, etc, sin embargo lo divertido llego en el turno de preguntas al señor en cuestión.

Antes que yo le hiciera una pregunta, le formularon alguna que otra críticando el sistema de selección de profesores titulares a las que él repondió con cosas que no tenían nada que ver con la pregunta pero que sí que lo tenían con un discurso político. Llegó mi turno y le plantee un par de cuestiones: la primera de ellas era sobre el nivel actual de las personas que estaban en la universidad y la segunda se refería a si el prestigio de una universidad se centraba en la calidad de sus estudios más que en si tiene equipo de fútbol o monta jornadas de puertas abiertas, ya que el daba una importancia extrema a las actividades de la universidad fuera de la función docente y ponía el listón de la universidad en base a estos conceptos.

Las respuestas... no hubo respuestas, me soltó una chapa de no sé qué cosas, le paré por dos veces para decirle que no me pegara la chapa política y él siguió, de una forma muy correcta, contandome un tostón que ni me iba ni me venía.

Digo yo, si este señor que es un cargo de la universidad de Valladolid nos cuenta estas milongas, que no hará el presidente de la junta o el del gobierno. Pobres periodistas.

Empiezo a estar harto de la corrección política, al final son todo castillos en el aire y venta de humo al por mayor. Mala época para decir esto, pero bueno.

5.10.2007

demovibes7 recopilación de música de la escena

Ya han colgado demovibes7, la recopilación de música de la escena preparada para tostar en un cd, con sus títulos de canciones y perfectamente remezclada. Personalmente la que más me gusta es la de 1995 aparte porque me gusta la electronica chumba chumba, porque la demo mola mucho.

Un CD más para el coche :)

5.02.2007

C++ con eclipse

Dado que en el trabajo hago uso intensivo de eclipse el otro día me puse a probar qué tal funciona para C++. Basta con bajarse C/C++ develpment toolkit (y eclipse claro)con el método habitual de eclipse (help->software updates->find & install) y todo solucionado.

Yo tenía instalado codeblocks antes de instalar eclipse y el pluggin y al instalarlo él solito se encargó de buscarlo (no sé como realmente, pero da igual) y poner los paths adecuados. El primer vistazo muy bien, aunque mucho peor que java. El code completion tira muy bien, así como la búsqueda de los árboles de llamadas, que por cierto, no funciona con macros. También hace un poco de refactoring, rename de variables y poco más, aunque ya es más de lo que te da visual studio. El debugger también va bien, estuve probando a poner un breakpoints, hacer unos watchs y todo fenómeno. Merece la pena probarlo.

Habrá que probarlo con python, que es ya huele que aún no haya un editor en condiciones.

4.24.2007

blog de agroguía

Viendo que hay gente que empieza a conocer agroguía por internet he decidido comenzar un blog en que el voy a ir comentando los avances que haga, así como detalles que tengan que ver con el producto.

Realmente es una prueba para tantear el mercado y quizás debería publicar el blog también en inglés ya que he tenido alguna petición de argentina y si ha llegado allí, ¿por qué no iba a llegar a sitios más cercanos :)?

4.23.2007

usar un pad para desarrollar

El título de este post es engañoso, pero sí que tiene parte de sentido. No hay más que ver este post, sobretodo el video.

Códice software se dedica a crear un sistema similar a subversion pero, por lo poco que conozco, muy orientado al trabajo con ramas y demás. Tienen un visualizador 3D para la estructura del repositorio y parece ser que en la empresa hay algún desarrollador de videojuegos oculto :).

Por cierto, códice software es una empresa que trabaja en Valladolid. Sí, es increíble, hay empresas que desarrollan bien en valladolid!!

4.20.2007

¿qué se busca en este blog?

Leyendo el blog de omepet, en concreto sobre un artículo sobre como aumentar las visitas en una web2.0. Yo no sé si esto es 2.0 o qué es, pero echando la mirada atrás gracias a google analytics encuentro algo curioso. Lo que más me interesa a mi no es, ni de lejos, lo que más le interesa a la gente que entra aquí.

Por ejemplo, las palabras más buscadas en el periodo de un año y medio son las siguientes:

- pse
- microfonos de oro 2006
- makefight
- javi santana
- agroguía
- opengles
- baqueros
- juegos cortos
- speedtree
- ethernet blog

¿? pse es el nombre del blog, no sé si la gente entra buscando el blog de algún partido socialista. Después, los micrófonos de oro 2006. qué tristeza, pongo unas fotos de la gala y resulta ser lo que más entran a ver después de "pse". Me alegra ver que en poco tiempo agroguia está entre las primeras búsquedas.

Una cosa curiosa es que entran buscando "baqueros", ¿?, mi post era un juego de palabras, por dios.

En cuanto a contenidos, el que más visitas tiene es el de los micrófonos de oro (incluso por encima del index), después un artículo de opinión que estuvo para menear, una noticia sobre un nuevo juego de megadrive que se prodigó por algunos blogs y por último dos barrapunteadas (en comentarios), una sobre vim y otra sobre el software libre.

Sacaré conclusiones sobre lo más visitado, pero me temo que no tiene nada que ver con responder a preguntas, si no con donde esté en la primera página de las búsquedas de google :D.

4.13.2007

farbrausch lo vuelve a hacer

Esta mañana revisando los links de codepixel, me encuentro una noticia sobre una nueva demo de farbraush. Pensaba que después de fr08 no habría nada más, pero sí, joder, este tipo de cosas te desmoralizan. Son 177Kb, pero dejando a un lado el tamaño del ejecutable, me ha quedado con la boca abierta el efecto de la "descomposición" en piezas de las letras, casas y demás. Aparte el efecto cámara está muy conseguido, una gozada. Y eso dejando a un lado los efectos de luces (por ejemplo cuando se rompe el suelo y hay luz desde abajo) o cuando se parten unas letras en un tragaluz, caen los restos y meten la cámara debajo mirando hacia arriba, viendo como caen los trozos con una luz de fondo, qué bueno.

Link en pouet

El video por si no teneis máquina suficiente:

4.12.2007

El periodismo toca techo

Está claro que en periodismo queda muchísimo por recorrer, porque cada día se ven nuevos avances. Shot tomada hace 2 minutos de la página de 20minutos:



Claro está que han conseguido lo que querían, obtener visitas a diestro y siniestro, pero a costa de bajar al periodismo, sobretodo el suyo, a unas cotas que nisiquiera hubiera imaginado.

No doy crédito.

4.09.2007

Los blogs y la publicidad

Hay gente a la que le comentas que tienes un blog y no puede por menos de hacer uno de los siguientes comentarios:

- Ah! qué bien
- yo también tengo uno
- A mi esas cosas me parecen una bobada
- Y para qué te sirve escribir en internet?

A lo largo de este tiempo he encontrado al blog muchísima utilidad y resulta muchísimo más interesante de lo que parece. Por ejemplo, si quieres que una empresa te conozca de verdad, qué mejor que el blog para mostrar lo que eres capaz de hacer día a día. A mi me ha servidor, o eso creo, para echarme un cable en las entrevistas de trabajo (por lo menos las últimas :). En, por lo menos, 3 de ellas conocían lo que hacía gracias al blog y me han hecho un comentario en la entrevista.

Pero la cosa no queda ahí, el otro día escribía un correo a ssiia, una empresa Zamorana (de la que hablé y visité hace un tiempo)que se dedica a temas de agricultura de precisión y me comentaban que leían mi blog. Y lo que es la vida, estaba hoy buscando agroguía en google y me encuentro lo siguiente, unas cuantas personas comentando cosas sobre agroguía :_). Les he estado respondiendo a algunas dudas y comentando lo que cuesta llevar a cabo un proyecto de este tipo.

Creo que voy a comenzar un blog de agroguía, ya no solo para dar publicidad, si no por poner algunas fotos de sitios chulos a los que hemos ido. Los campos de castilla son bonitos :)

DGT por puntos

Hace no demasiado fui el afortunado premiado con "140€ de multa y dos puntos menos de retirada de carnet" (palabras textuales del agente) "por exceso de velocidad, viajaba a 114 cuando la velocidad estaa limitada a 80 kmh". Era una multa totalmente merecida, viajaba por un tramo de autovía a unos 120 de marcador estando limitada a 80. Si yo hubiera sido agente la multa me la hubiera puesto con la siguiente frase: ".... por exceso de velocidad en un tramo de autovía recto, con visibilidad, sin incorporaciones ni otro tipo de peligros limitada a 80 kmh".

Nunca me había fijado en los límites de velocidad, como bien decía el director de la DGT hace 5 días en Punto Radio "la propia vía tiene que decir a la velocidad que hay que circular", y hasta ahora no he tenido ningún accidente ni ningún susto por exceso de velocidad (por lo menos por mi parte). Ahora me estoy empezando a fijar en las señales de velocidad de las diferentes vías, para ser lo más estricto posible con los límites de velocidad y evitar que me vuelvan a endosar otra receta y veo, por desgracia, muchísimos errores de señalización.

Sin ir más lejos, el otro día saliendo del trabajo encontré dos incorporaciones a vías en las que no había indicación de límite de velocidad, un tramo de circulación de doble sentido sin la indicación de doble sentido, la indicación de 80 kmh etc,etc.

Digo yo, si cada uno de nosotros tenemos unos puntos, por qué no la DGT o a quien corresponda la señalización y correcto funcionamiento del tráfico, tiene unos puntos que los ciudadanos le podamos quitar cuando encontremos un error de señalización o de cualquier otro tipo. Sería divertido.

En resumen, imponer limitaciones a los conductores no hace que disminuyan el número de acciedentes, esó sí, como te pillen a 60 por la ciudad te han dado por culo, pero ojo, que una nacional pase por el medio de una ciudad no merece la retirada de su cargo a algún "responsable". Pero bueno, total, hoy me he tirado 30 minutos de retención en esa misma localización con una circulación nada diferente a lo habitual, gracias a la ayuda de 4 agentes que estaban "mejorando" la fluidez del tráfico. Eso sí, el rádar camuflado al paso por un pueblo unos kilómetros antes no ha faltado.

4.06.2007

1 minuto de descanso

El otro día un compañero de trabajo me pasó (de primera mano) el trailer de runaway 2 . No he jugado apenas al runaway 2, solo 1 minutín a una demo, pero el trailer, sobretodo por la música, da gusto oirlo. Estaré atento a la soundtrack del juego :). Lo curioso es que en Europa el trailer tiene las mismas imágenes pero diferente música, un error bajo mi punto de vista.

Aunque no te gusten las aventuras gráficas, o incluso los juegos, merece la pena escuchar el video.

4.03.2007

online de nuevo

Sí, este es el típico post en el que cuento que vuelvo a tener internet y esas cosas. Después de un mes bastante movido, entre el cambio de trabajo, cambio de ciudad y el tema de agroguía no he tenido tiempo casi para nada.

De momento la cosa va muy bien, el trabajo es enriquecedor, estoy aprendiendo como se trabaja en serio y como trabajar en equipo de verdad de la buena. De momento todo perfecto salvo el acondicionamiento a java... a quién se le ocurre no poner unsigned? y sobretodo, a quién se le ocurrió que todos los tipos hereden de Object? malditos upcast. Cuándo aprenderán que cuantas menos restricciones de tipo pongas en el lenguaje más problemas habrá en ejecución? que no sé qué poner? pues nada, pongo Object y ya meteré lo que me de la gana... que pongo un clone? pues nada, alegría, que devuelva Object. Menos mal que no todo en java es malo, JUnit rocks. :).

Ya iré contando cosillas de algunos temas interesantes en los que estoy trabajando, aquí y en el blog de unkasoft.

3.09.2007

Ya estoy en unkasoft

Bueno, después de la recta final, mudanza y sobrecarga temporal de trabajo (por 3 vías) ya he aterrizado en unkasoft.

LLevo dos semanas trabajando allí, de momento haciendome al sistema de trabajo, a las nuevas herramientas y al nuevo lenguaje. De momento me quedo con unas cuantas cosas:

- eclipse mola
- skype mola
- java no tiene unsigned ¿¿¿???
- se puede jugar en un móvil :)

Ya seguiré contando un poco aquí y otro poco en el blog de unkasoft, sobretodo en la referente a lo que haga en el tiempo I+D que tenemos semanalmente.

2.23.2007

Tiendas impresentables

Con esto de agroguía ahora estamos comprando bastante en tiendas por internet, es la forma más cómoda y más barata. En esta vida está la gente seria, que hace bien su trabajo y la gente, que no se sabe como, están haciendo cosas y ganando dinero.

Existen tiendas, que trabajan muy muy bien, por ejemplo activagps o software-developers. Son serios, les haces pedidos, se preocupan, te llaman y las cosas te llegan bien y a tiempo. Hasta ahora con activagps hemos tenido un problema de que enviaron una unidad de menos, pero en cuando les llamamos enviaron rápidamente lo que faltaba sin poner pegas.

Por otro lado, existen tienduchas que les solicitas un producto, te comunican que lo tienen el stock, haces una transferencia y al cabo de unos días te comunican, con un mísero mail, que no tenían en stock el producto y que elijas otro. Lógicamente, les pedimos el reembolso de la transferencia que tardó, después de unas cuantas llamadas y una amenaza de denuncia, casi un mes. Esta tienda se llama controlp.

Aparte, mis compañeros de trabajo me han regalado una Wii como despedida (gracias !:). La compraron en el antiguo centro mail y cual fue nuestra sorpresa que tras un rato de juego el mando dejó de funcionar. Ni pilas ni nada, KO. La tienda alegó que ellos no tenían porque recoger un producto que era de nintendo, etc. Total, tengo una wii, pero no puedo jugar, ya que aunque me vendan un sistema defectuoso, no se pueden hacer cargo. Qué triste.

Cada vez me gusta más el corte inglés, a pesar de que son unos negreros con los fabricantes, si tienes algún problema pierden el culo por arreglarlo.

Ya sabeis mi opinión sobre canalp y mi opinión sobre centro mail, espero que google la tenga en cuenta por si alguien la busca.

2.20.2007

Neurona.com

Hoy leía en stratos sobre una web de contactos profesionales que parece bastante interesante, se trata de Neurona.com. En ella te das de alta y puedes ir haciendo contactos que tengan que ver, o no, con tu actividad profesional. Teniendo en cuenta que la mayoría de los trabajos que se consiguen se hacen a través de conocidos me parece que de lo más interesante. Aparte, poder matener contacto con gente que hace lo mismo que tú seguro que es enriquecedor. De momento he mandado unas cuantas invitaciones, espero que vayan aumentando.

Está claro que la publicidad es tan importante como tener un buen producto.

Mi ficha en Neurona. Si los que leeis habitualmente este blog (que creo que os conozco a todos) os haceis ficha, enviadme una invitación.

De momento me he apuntado a la categoría de desarrollo de videojuegos, en lo que voy a trabajar a partir de dentro de una semana.

Me he puesto una foto la mar de sonriente :D.

2.16.2007

eh, papá, felicidades !

54 años hubiera cumplido mi padre hoy. Como cada 16 de febrero desde hace 9 años no puedo por menos que recordar que hoy solía ser un día especial a pesar de las dificultades. Cómo me gustaría poder haber compartido este mismo día sin esos baches y con las cosas un poco mejor.

Seguro que mi padre me hubiera dicho que si era gilipollas por venirme a trabajar a Murcia, seguro me hubiera ayudado mucho con el proyecto. No me cabe duda que ni por asomo él se hubiera pensado que la culminación de mi carrera iba a ser una herramienta precisamente para ayudar un poquito al trabajo que él hacía y mucho menos que la iba a vender a agricultores, como él, que la usarían para labrar esas tierras que tanto sudor le costó a él trabajar.

Cada 16 de febrero es un día triste, pero te hace dar cuenta del valor que realmente tienen los que siguen a tu lado (aunque estén lejos). Suena a tópico, pero no lo es.

Felicidades!