javisantana.com

Marketing

El otro día viendo la TV había un programa de estos de curiosidades, zapping y demás. En uno de los repotajes, una alta (sic!) cargo de marketing de citroen hablaba orgullosa de su trabajo con el anuncio del coche bailando [1], comentaba el gran trabajo de los artistas, de los músicos y de todo el personal.

Personamente me encandiló la forma en la que hablaba del trabajo de sus empleados, especialmente los de 3D, y no me imaginaba la cantidad de trabajo que algo así llevaría. Pues otra vez tengo que reconocer que soy un iluso y que los comerciales de grandes empresas hacen su trabajo muy bien. Menos mal que visitando codepixel, en concreto este artículo, me he dado cuenta de que aquellas palabras de esa señora no eran más que una cortina de humo, no hay más que bajarse este video (2Mb) para darse cuenta que una compañía fundada el año pasado, sin comerciales, sin publicidad, sin la parafernalia que adorna a las empresas ahora, es capaz de crear una animación 3D de la misma calidad con muchísimos menos medios (aka dinero).

Moraleja: llevo escuchando desde el verano del año pasado insitentemente que el perfil de ingeniero buscado hoy en día está enfocado mucho más al área técnico-comercial que al propio de un ingeniero, el puramente técnico. A mi me gustaría saber quien es el que hace el trabajo por detrás, quienes son los que diseñan el soft,el hard, o cualquier otra cosa, porque desde luego el comercial de aquí para allá dudo que tenga tiempo de ponerse con rational rose, por ejemplo. Es por esto que la noticia me ha tocado en nervio, ver que toda la parafernalia exterior sobra a la hora de obtener un producto de calidad me hace preguntarme todo lo anterior.

Comentario: Hace un mes y pico, en una entrevista laboral en telefónica, la responsable de RRHH me preguntó algo que todavía estoy pensando : “¿Estás en alerta de la publicidad que puedan estarte mandando de los diferentes medios?”a lo cual respondí sin dudar :”No hago otra cosa”. La respuesta no fue la más afortunada (como las demás), pero aún pienso el por qué de esta pregunta (quizás alguien sepa responderme). El jueves tengo otra entrevista con deloitte, espero que cuando me hagan otra pregunta de ese tipo la conteste mejor, aunque creo que en esta prueba antes de la entrevista personal hay una dinámica de grupo para eliminar a gente como yo, con un instinto comercial nulo. XD

F1 (24/66)

Aún no ha terminado la carrera, pero tengo un sabor agridulce. Después de años (unos 6) siguiendo la fórmula 1 como podía, a veces gracias a TVE, otras gracias a amigos que tenían la RTL y úlmamente gracias a tele5. La peor parte de todo esto es que tele5 está consiguiendo que la F1 sea como el fútbol, una gran masa de gente gritando y haciendo comentarios pensando, pobres, que este es un deporte similar al fútbol. Para mi el verdadero jugo de este deporte se obtiene del carácter técnico del mismo, y no de la emoción mediática que se pueda obtener. Es por ello que me divierte mucho más pensar en cómo harán la estrategia, el soft de gestión del coche, los entresijos de la conducción (pincha schumi ahora mismo, una pena) y creo que para todo esto es necesario un conocimiento de ciertas cosas que no tiene la “gente de la calle” (schumi pincha de nuevo). Quizás peque de clasista -uno estos adjetivos que se usan para indicar que lo que dices no es políticamente correcto (p.ej: xenófobo, racista…)- pero, manteniéndome en mis trece, sigo pensando que el enfoque de este deporte no es el que está tomando en este último año.

Por suerte tenemos, al fin, los comentarios inteligentes y experimentados de Pedro de la Rosa, que gracias a él y al tercer coche obtenido por mclaren debido a la pésima temporada pasada, mclaren está donde está. Además no todo lo que consigue tele5 es malo, está consiguiendo que vea F1 por televisión, que tengamos infomación (poca) sobre apartados técnicos, cobertura casi diaria de los que pasa en el mundo fórmula 1 (bueno, en el mundo de fernando alonso).

En resumen, sabor agridulce.

Por último, y para el que esté interesado en temas algo más técnicos, comentar que xilinx (fabricante de FPGA) tiene algunso artículos del uso de FPGA’s en F1(en concreto williams). No se meten en términos técnicos, son temas comerciales y de rendimiento, pero merece la pena ver que un dispositivo que está al alcance de todos, es usado en un ámbito de hi-tech. En concreto recomiendo el siguiente artículo de la revista xcell: http://www.xilinx.com/publications/xcellonline/xcell_47/xc_formula47.htm

Python, Ruby y threads

Estaba ayer terminando de portar uno de los wizards de configuración de red de soleupix. El código en cuestión lanza un thread para hacer unas llamadas a la shell para ejecutar los comandos necesarios para configurar la red. El problema surge al portar el código en Ruby (usa GTK pero es caso a parte, digno de unos miles de post) a python, concretamente los threads y los callbacks son la parte más compleja ya que Ruby implementa una especie de delegates. En un primer momento pensé en hacerlo con lambda, pero dada la complejidad de las funciones opté por implementarlo con funciones normales (según escribo esto creo que será mejor hacerlo con funciones locales). Resumiendo, en ruby para crear el thread se hace más o menos así:

  
 thread = Thread.new do  
        # cleanup first  
        system("/sbin/pump -k -i \\"#{Global.device}\\"")  
 ...  
         
 end  

Yo lo traduje a python de la siguiente forma:

  
 th =thread.start\_new\_thread(self.Thread\_func,(self,None)); #hack   

Pero no ejecutaba la función que le especificaba. Pensé los argumentos podrían estar mal y probé unas cosas en un fichero de pruebas:

  
  
  
from threading import Thread;  
import thread;  
  
class B:  
   
 def \_\_init\_\_(self,name):  
  self.\_th = Thread(target = self.Func);  
  self.\_name = name;  
  self.\_th.run();  
 def Func(self):  
  print "aqui otro thread (%s)" % self.\_name  
    
class C:  
   
 def \_\_init\_\_(self,name):  
  self.\_th = thread.start\_new\_thread(self.Func,());  
  self.\_name = name;  
 def Func(self):  
  print "aqui otro thread (%s)" % self.\_name;  
  
  
def fn(data):  
 print data;  
c = thread.start\_new\_thread(fn,("holax",));   
  
C("2");  
B("3");  
  
  
  

La clase B funciona correctamente (de hecho así lanzo ahora el thread), sin embargo la clase C no funciona y es precisamente porque usa la función start_new_thread del módulo thread. Un poco más abajo uso esta función para lanzar un thread, pero ahora es una función que no pertenece a una clase, y en este caso funciona correctamente. En la documentación de python2.4 no dice nada acerca de cómo usar la función start_new_thread y mucho menos su uso en clases, tendré que googlear un poco para ver qué pasa, aunque mi instinto me dice que puede ser por el parámetro self que debería pasarle y no le paso, sin embargo en este caso lanzaría una excepción.

PD: lamento el formateo pero blogger parece que no se lleva nada bien con el HTML embebido
PD2: viendolo desde blogger quedaba mal formateado, pero desde Planet AUG-CYL(hola a todos por cierto:) es prácticamente ilegible, así que he optado por eliminar el code y poner un italic y un pre (mis conocimientos de HTML no dan para más).

Vamos a quemar al barbas con keroseno

El pasado día 3 de Mayo el señor, por decir algo, Richard Stallman, conocido gurú del soft libre, vino a la ETSIT de valladolid a dar una charla sobre patentes. En principio pensé que hablaría de los múltiples beneficios del soft libre, y que saldría preparado (instruído) para usar Linux, incluso usar gcc y eliminar mi partición windows con mi querido vc++7.1. Nada de eso ocurrió, habló sobre las patentes del software. La charla resultó interesante a trozos, en mi opinión repetía mucho conceptos que ya había dejado claros, aunque usaba ejemplos bastante cotundentes -conceptualmente porque su locución(*) era algo cansina de escuchar - y fáciles de entender para alguien que no supiera nada acerca de desarrollo.

Además de la conferencia en si, hubo aspectos destacables, como la asistencia bestial de público, la obsesión del señor Stallman por la pepsi, su descuidado aspecto físico, la pequeña flauta con la que apuntó a modo de pistola para hacer más gráfico un argumento, el pesado periodista -creo- del comienzo de la charla, el “asequible” merchandising del final, el detalle de las prioridades en las preguntas finales (mal argumentadas a mi modo de ver)…

En cuanto a la gente, un 10, no hubo murmullo aparente por detrás, nada de grandes barullos al final y la organización muy buena para los dos días que llevó (destacando el detalle de las pepsis que comenta Jorge en su blog ). Por mi parte vi a algunas personas que no conocía personalmente como Jorge y David Grajal (que debía haber visto por la facultad alguna vez, ya es hora de que actulice la foto de su blog XD).

(*) para escuchar la voz de stallman solo debes escribir algo relacionado con patentes en tu editor de texto favorito, convertirlo a pdf, visionarlo con el Acrobar Reader y poner la opción de leerlo… el sintetizador es para inglés, pero clava la voz del Stallaman XD

código del día

Dado que muchas veces tengo código suelto y no tengo demasiado tiempo para comentarlo, qué mejor que una sección donde pegar el código sin tener que dar explicaciones a nadie ? XD

Este code lo he visto en los foros de stratos , aunque ya me sonaba de la web de perlin. La verdad que este código es un guiño al pasado, solo hay que ver esto (después de ejecutar el código en C que os pongo lo entendereis).

El code:

main(k){float i,j,r,x,y=-16;while(puts(“”),y++<15)
for(x=0;x++<84;putchar(“ .:-;!/>)|&IH%*#”[k&15]))
for(i=k=r=0;j=r*r-i*i-2+x/25,i=2*r*i+y/10,j*j+i*i<11&&k++<111;r=j);}

saludos