Rigel en Inglaterra

lunes, febrero 27, 2006

Qué bajo he caído

Una agencia de trabajo me ha llamado en relación a un puesto de soporte técnico de una aplicación web. Parece que le gustaron los acrónimos que aparecían en mi curriculum. El sueldo está muy bien, pero el trabajo me parece gris hasta la náusea. Lo peor es que voy a ir a la entrevista, por si no me sale lo de Symbian ni lo de NDS.

Al visitar el sitio web de la empresa esta encontré difícil entender a qué se dedican. De los siguientes párrafos que voy a poner, uno fue generado aleatoriamente por un script, otro procede de la empresa que me va a entrevistar, y otro está sacado de la empresa donde trabaja mi hermana.

a) Our company leverages a distinctive combination of industry expertise, technical depth and differentiated services to deliver the benefits of world-class management consulting to our clients.

b) Customers in a wide variety of industries and departments choose our business intelligence and performance management software to improve decision-making, boost performance, and maximize the value of their corporate data.

c) Our mission is to enthusiastically provide access to multimedia based intellectual capital such that we may continue to dramatically build resource-leveling deliverables while maintaining the highest standards.

Una galleta al que adivine cuál es el generado aleatoriamente.

sábado, febrero 25, 2006

Marcas inglesas y otras curiosidades

Wall's logo
Hay varias cosas de las que quería hablar que se han ido acumulando. Aquí están, sin orden específico:

Si te paseas por un supermercado inglés te tropezarás en ocasiones con logotipos que te resultan familiares. Si te fijas en el nombre que viene pegado al logotipo te darás sorpresas como por ejemplo que los helados Frigo aquí se llaman Walls, o que el café Marcilla se llama Douwe Egberts.
Douwe Egberts logo
Desanima un poco ver que tu dinero acaba siempre en manos de multinacionales que exprimen a sus trabajadores sin importar las fronteras, para luego vender sus productos en los mercados más caros.

Hablando de países tercermundistas. Leo en la BBC que un hombre sudanés fue descubierto mientras violaba una cabra. El dueño del animal llevó al hombre al consejo de ancianos, que dictaminó que el violador tendría que pagar el precio de la cabra y podría quedarse con ella. Me parece fatal que dejen a la pobre cabra en manos del cafre ese. Si al menos la tratase con cariño...

Creo que no había explicado nunca en el blog que desde hace dos meses los lunes y los miércoles colaboro en una ONG. En Inglaterra es bastante habitual encontrarse tiendas de objetos de segunda mano que están dirigidas por una ONG. Gente anónima trae ropa, libros y objetos. Nosotros los clasificamos, etiquetamos y vendemos. Si es ropa también la planchamos, con el objetivo de que tenga mejor aspecto y para evitar parásitos. Es una labor muy simple, pero cuando vuelves a casa te sientes mejor. El dinero recaudado se invierte en pagar enfermeras que cuidan de enfermos del corazón y otras actividades relacionadas con la prevención y cura de enfermedades cardiovasculares.

La manager de la tienda es una mujer muy agradable. Tiene dos hijos, de 19 y 10 años, aunque nunca ha estado casada. Dice que los hombres que ha conocido eran todos ranas. Ni un sólo príncipe, por mucho que los ha besado. Yo a eso le respondo que tiene razón, que lo mejor que va a encontrar son ranas que no le den asco. A ver si tiene suerte.

viernes, febrero 24, 2006

No me han aceptado en Vulcanus

Me ha remitido mi encantadora madre una carta que llegó hoy de Bruselas:


After careful examination of all the applications
received for the above-mentioned programme, we are
sorry to inform you that your application has not been
retained, despite your qualifications and background.

Due to the huge amount of applications received, the
selection board members have retained only the
applications of those studens whose background
perfectly fitted one of the profiles requested by the
host companies. (For your information, only 1
application out of every 7 has been short-listed).

Please note that no further information on the reasons
for your elimination will be provided.


Es decir, que no me han aceptado. Genial. A ver cómo se lo toma Mayu. Sé que le hacía mucha ilusión aunque yo le expliqué que es muy difícil que te den esa beca.

Necesito relajarme.

Camino al infarto

Bueno, pues ayer finalmente no llamaron. Eso significa que tendré que esperar el resultado a finales del mes que viene. Cuanto más vueltas le doy más pienso que me van a dar el trabajo, pero también hace que me agobie más pensando en que pude cagarla en los tests.

Por otra parte estoy esperando para hacer la segunda entrevista en NDS que incluye un "ejercicio de grupo" que no me apetece nada vivir. Me dijeron que la harán el mes que viene pero todavía no hay fecha.

En caso de que no fuera suficiente, ando pendiente de que me escriban los de Vulcanus Japan para indicarme si estoy en la lista corta de candidatos o no. Si entrase a la lista corta, eso me daría alrededor de un 30% de posibilidades de obtener la beca. Si no estoy en la lista esa es que me han descartado ya. En ambos casos debería llegarme un email la semana que viene.

Para rematar la faena, esta mañana me llamó una agencia de trabajo y estoy esperando ahora para que me vuelvan a llamar (la señorita debe de estar en el WC en estos momentos).

Esperar. Esperar. Esperar un poco más. ¡Aaaaargh! Lo que quiero son resultados. Caipiriñas tampoco estarían de más, pero me conformo con que me den resultados.

EDITADO: Genial, la señorita no estaba en el WC. Se había ido a casita, así que tendré que llamarla el lunes de nuevo. Mientras tanto, feliz fin de semana a todoos. Yo iré a la librería a leer un rato.

jueves, febrero 23, 2006

Nervios tontos

Durante la entrevista del lunes pasado, una chica de Recursos Humanos nos dijo que si alguno de los candidatos les gustaba mucho, le llamarían el jueves (es decir, hoy). Yo estoy en casa como un idiota, nervioso, cruzando los dedos para que me llamen. Y eso que sé que es altamente improbable. Nos explicaron que a la mayoría de la gente la llaman a finales de marzo. ¿Seré capaz de salir de casa a hacer la compra? ¿Me quedaré esperando por una llamada que probablemente no suceda?

Mientras tanto, y para entreteneros un poco, algunos enlaces aleatorios:

martes, febrero 21, 2006

Un año de casado

Sí, señores y señoras. El día 22 Mayu y yo cumpliremos nuestro primer aniversario. Tengo una mezcla de emociones y me resulta difícil expresarlas sin usar superlativos repetidamente. Haré un esfuerzo: estoy orgulloso, feliz y satisfecho de haber sido elegido por Mayu para ser su amigo, amante y compañero de fatigas en esta vida. Sobre todo los puntos 1 y 3, porque el 2 no lo he podido disfrutar lo suficiente por vivir tan lejos xD

Ella es una criatura excepcional, única en su combinación de humor, dulzura, sencillez, fragilidad e irascibilidad. Si te parece que algunos de los términos son excluyentes, comprenderás por qué pienso que la combinación es única. Además dice que soy gracioso, lo cual es por sí solo un motivo para casarme con ella.

En resumen, que estoy tan loco por ella como hace tres años y me alegro enormemente de haberme casado con ella.

¡Huy! dije que intentaría evitar superlativos. Sorry, se me ha escapado.

lunes, febrero 20, 2006

Entrevista en Symbian

Hoy fui temprano a Londres para hacer las pruebas de acceso a Symbian. Primero sufrimos una larga lista de charlas en las que trataban de convencernos de que la empresa mola mucho. Todas dicen lo mismo, parece que se copiasen las unas a las otras. "¡Fíjate! ¡Hemos crecido un montón en los últimos cinco años!", "Nos preocupamos de nuestros empleados", "¡Mira cómo molamos! No hace falta venir de traje." (esto dicho por un tío trajeado, of course), etc. En fin. Para compensar, nuestros curriculos vitae son algo parecido pero a la inversa. "Mira cómo molo: sé C++, Java, Python... ¿dije ya que sé C++?".

Tras las charlas empezó la parte divertida: los tests. Reconozco que soy un masoquista y los disfruto. Nos daban un tiempo limitado para responder un porrón de cuestiones relacionadas con operaciones simbólicas y con análisis sintáctico. Se trataba de responder las máximas posibles con el mínimo de errores. No creo que destacase en ese área, pero tampoco creo que quedase por debajo de la media. Había un par de tipos que parecían muy listos. Uno de ellos, un indio la mar de majo.

Luego vino la entrevista. Para mi alivio, fue totalmente técnica y quienes la hacían eran dos ingenieros. Fue gracioso. Tras las preguntas de rigor sobre mis estudios, empezaron las cuestiones de tipo técnico.


  • ¿Qué es una clase base? ¿Qué es una clase derivada? Uff... esa es una pregunta muy básica. Una clase base es... [Pinto un diagramita UML]

  • ¿Qué es la herencia múltiple? ¿Qué problemas tiene? [Les cuento en qué consiste y por qué en C++ es una mala idea usarla. UML al canto]

  • Bueno, mejor nos saltamos estas preguntas, que se ve que te conoces bien el tema

  • [Me enseñan una función escrita horriblemente en C] ¿Qué fallos encuentras en este código? [Miro la primera línea] Dios, esto es horrible. Bien, eso es un buen comienzo. [Les explico línea por línea que todo está fatal. Luego les digo cómo habría que haberlo escrito].

  • [Me enseñan un diagrama de una lista enlazada] ¿Cómo harías para insertar un nuevo elemento en la lista? ¿Y para eliminarlo? ¿Qué usos podrías darle a una lista enlazada? [Les explico los dos primeros puntos y se quedan satisfechos. Luego les explico por qué para casi cualquier cosa que quieras hacer hay estructuras más eficientes que una lista enlazada. Entonces van y me dan la razón. ¡Juas!]

  • [Sacan un montón de teléfonos móviles de una bolsa y me explican algunas de ss características.] ¿Qué problemas crees que surgen cuando programas para un teléfono móvil? [Les respondo las limitaciones en memoria, procesador, teclado y pantalla. Luego continúo con el rollo típico de que no es aceptable que un móvil se cuelgue, por lo que el software debe ser totalmente estable. Se quedan la mar de satisfechos.]

  • A continuación me preguntan: ¿Qué hay que hacer si la señal del móvil no llega bien a la torre de antenas? [Sorprendido:] Aumentar la potencia de emisión. (Digo yo, no se me ocurre otra cosa. Pues le gustó la respuesta. Juas).

  • En el CV mencionas patrones de diseño. ¿Puedes describirnos un par de ellos? Bueno, podría hablar del singleton, pero como es un patrón que es usado incorrectamente a menudo, no lo haré. Os hablaré del patrón visitante. Bien, descríbelo. [Me pongo a pintar un diagramita UML en una pizarra y a explicarlo. Me miran con cara rara.] ¿Me estoy explicando mal? ¿Me seguís? No, es que no conocemos el patrón este. (What teh fuck?) [Rigel tras recuperarse del shock, todo esto sin perder la sonrisa por un momento:] Bueno, pues entonces os explicaré cómo es la implementación básica de un patrón visitante. Recientemente leí un artículo extenso sobre implementaciones alternativas dependiendo de las necesidades que uno tenga, pero me centraré en la básica. [Les cuento lo que viene en el Gang of Four. Se quedan asombrados.] Vaya, hoy hemos aprendido algo. (What the flying fucking fuck. Lo que hay que ver. Rigel 1 - Symbian 0)

  • Bueno, las preguntas que venían después de esta lo cierto es que ya nos las has respondido todas con esta explicación. Creo que no hace falta que sigamos preguntándote.



Bueno, eso fue la entrevista básicamente. Creo que se quedaron agradablemente sorprendidos. Espero no haber metido demasiado la pata en los tests.

EDITADO: Pensando en ello me doy cuenta de que los ingenieros que me entrevistaron no debían de ser informáticos, sino telecos o alguna otra cosa. Espero no haberlos echado atrás con tanto palabro informático que usé tal como recursividad de cola, árboles B+ (sí, el código fuente es mío), árboles rojo-negro, etc. Grrr... Gulín seguro que entiende mi agobio por conseguir curro de una vez.

jueves, febrero 16, 2006

Algoritmos de ordenación

Ayer por la tarde me puse manos a la obra a programar radix sort en C++. La implementación que venía en la Wikipedia era una cacola que provocaba violaciones de segmento.

Para quien nunca haya oído hablar de él, el radix sort es un algoritmo de ordenación O(n). Sí, sí, es más rápido que el quicksort o el merge sort. El truco es que no hace comparaciones entre elementos. En vez de eso, genera una especie de histograma y lo aprovecha para saber en qué posición queda cada elemento en la lista ordenada. Es una idea muy ingeniosa. Lo malo es que requiere una cantidad de memoria extra O(n), mientras que el quicksort se conforma con O(log n).

Aunque la implementación que hice trata de ser lo más simple posible para que sea fácil de leer, en la tarea de ordenar 100 millones de enteros de 32 bits el radix sort en mi ordenador tarda algo menos de la mitad que el introsort que viene con la librería estándar de C++. Diez segundos contra veintiuno.

He subido mi código a la wikipedia. Podéis verlo aquí.

Más tarde si tengo ganas os enseñaré un algoritmo de ordenación que se me ocurrió ayer. Si no me fallan las cuentas, requiere un tiempo O(Mn n! n2), donde n es la longitud de la lista, y M es la cardinalidad del conjunto de donde vienen los elementos de la lista. Por ejemplo, si la lista es de enteros entre 1 y 10, entonces M=10. Traté de ordenar una lista de siete elementos entre 1 y 10 pero me cansé de esperar.

miércoles, febrero 15, 2006

Mis gayumbos son rosas

A esto se le llama un título sensacionalista. Lo malo es que es cierto. Mi hermana tiene unos pantalones rojos que destiñen, y como lavamos toda la colada junta, mis gayumbos ahora son rosa pálido. Soy como un Ken travestido que usa la lencería de su novia Barbie. Bueno, sin puntillas, pero casi.

Hablando de mariconadas, los de BT me han dicho que no he pasado la segunda ronda de entrevistas. Me gustaría saber qué es lo que les ha disgustado, así podría corregir el error.

En otro orden de cosas, he estado leyendo algunos capítulos del segundo tomo del The Art of Computer Programming. En particular, los relacionados con árboles de búsqueda y tablas de hash. Debo decir que Mr. Donald Knuth me ha decepcionado. Para empezar, su estilo literario es bastante árduo demasiado teórico. Lo que es peor, ni siquiera es exhaustivo.

Todo lo que ponía sobre hashes o ya lo había leído antes o ya lo había razonado yo. Para quien esté interesado en el tema, yo le recomendaría echar un vistazo al código fuente de Python dedicado a hashes (ver también la justificación).

En lo referente a árboles de búsqueda, me pareció lamentable que no profundizase mínimamente en los árboles B+, que se usan aplicaciones reales tales como bases de datos y sistemas de ficheros debido a su eficiencia. Tampoco recuerdo haber visto que mencionase los árboles rojo-negro, pero quizás se me pasasen por alto.

Comprendo el mérito de que una sola persona escriba una enciclopedia de la computación, pero la información que contiene no me parece ni más ni mejor que la que se consigue haciendo unas pocas búsquedas en Internet.

EDIT: En cuanto a algoritmos de búsqueda, no vi que mencionase el Introsort, que posiblemente sea el mejor algoritmo general de ordenación.

domingo, febrero 12, 2006

Visita a Martiño

Ayer hice una visita a Martiño en Guildford. No hay tren directo, por lo que hice transbordo en Gatwick. Cuando llegué allí miré los paneles de información para saber qué en qué vía esperar el tren para Guildford. Cual fue mi sorpresa cuando leí algo como:





DestinoHoraVía
Glopcord10:142
Haywing10:181
Hasefroch10:263
Guildford10:31BUS

¿Pero cómo que BUS? Voy al garito de información, preocupado, diciendo: "Oiga, es que tengo un billete para Guildford y...", cuando
me interrumpe con una sonrisa el empleado, que parece el sobrino de Samuel L. Jackson: "Relax... wait here for a minute". Lo que me moló fue la actitud del tío. No era condescendiente, ni en plan de "no pienso acelerarme una pizca porque tengas prisa". Era simplemente un tipo que se tomaba la vida sin agobios, y me guiaba amablemente por el camino del no-estrés. Qué envidia me da esa clase de gente.

Al cabo de unos instantes el hombre guió a un grupito de gente en el que yo me encontraba hacia un bus. Yo pensé: "He comprado un billete de tren, pero cuando he preguntado me han redirigido a un bus. Si no se supone que yo tenga que usar el bus el problema es de ellos por no informar debidamente". Mis temores eran infundados, no me pusieron ninguna pega. De hecho, parece ser que es bastante habitual que cuando están haciendo reparaciones en las vías, proporcionen buses como método alternativo de transporte. Otro día hablaré sobre cómo funcionan los trenes aquí, que es curioso.

Finalmente llego al pueblo/ciudad donde vive Martiño. Hacía un frío de cojones, las casitas eran todas de dos pisos y las mujeres eran rubias y pálidas. Es decir, podría estar en cualquier lugar de Inglaterra. Lo único en romper la homogeneidad que me rodeaba fue un tipo al que identifiqué como un viejo amigo de la facultad. Hacía cosa de un año que no nos veíamos.

No os repito lo que hablamos porque vosotros ya tuvísteis la oportunidad de hablar con él hace poco. Para quien no esté al tanto, resumo: se mata a trabajar en Criterion programando videojuegos seis días a la semana durante al menos ocho horas al día. No deben de saber qué es un sindicato. Ni un derecho humano tampoco, sospecho. Claro que habrá que ver en qué condiciones estaré trabajando yo dentro de unos meses.

Creo que Martiño no conoce Brighton, así que le invitaré a que se pase por aquí si alguna vez le apetece. Aquí sí hay playa. Y es la capital gay de Inglaterra. ¡Miles de posibilidades de entretenimiento!

viernes, febrero 10, 2006

Bolsitas de té y otras menudeces

¿A que no sabíais que las bolsitas de té son la mar de variadas aquí? No sólo en cuanto al contenido, sino también en cuanto a la forma. La típica bolsita a la que estamos acostumbrados, con forma rectangular e hilito no se encuentra facilmente (no la he visto nunca). Las más populares creo que son las bolsas redondas, en forma de disco aplanado para ponerlas en el fondo de cada taza. Otras marcas se enorgullecen de tener bolsas tetraédricas, y defienden que el té sabe mejor así... lo que hacen algunos para vender.

En cuanto a la forma de preparación, cada inglés tiene la suya. Tanto si pone la leche antes de verter el agua o al revés, todos están convencidos de que su método es el método. Para no añadir más leña al fuego omitiré explicar cómo lo hago yo y por qué mi método es el mejor ;)

Respecto a los trabajos, no hay grandes novedades. Hay una empresa en Cambridge que necesita un programador de Python y a lo mejor me entrevistan. El lunes que viene tengo una entrevista telefónica con British Telecom gracias a que superé el primer filtro que tienen (en total son cuatro filtros). Dentro de diez días tengo una entrevista con los de Symbian (sistema operativo para teléfonos móviles). Los de la tele por satélite todavía no me han dado fecha para la siguiente entrevista, aunque me confirmaron que superé la primera.

Esto de buscar trabajo es un coñazo y encima es estresante. Cada empresa quiere que le demuestres que desde que naciste le dedicas amor eterno. Ni las mujeres son tan exigentes.