Historias
Slashboxes
Comentarios
 

Login Barrapunto

Login

[ Crear nueva cuenta ]

McPolu (19560)

McPolu
  McPolu@gmail.com
http://mcpolu.blogspot.com/

Pues, desde siempre, ser lúcido y español aparejó gran amargura y poca esperanza.

-- Reading some of the comments to your blog always restores my lack of faith in humanity.
-- Where There is a Will, There is a Way.
-- Cuando los radiadores funcionan y dejan de molestar se conoce la verdadera escencia humana.
-- Unas lágrimas sin compás son un berrinche.
-- Al abrir su andadura se ven los castillos de Arcalaus el maligno, rojos en el fuego del ocaso.
-- In the process of gaining our rightful place, we must not be guilty of wrongful deeds.
-- Sé que los seres humanos y los peces podrán coexistir en paz.
-- Asi es como muere la libertad, con un estruendoso aplauso.
-- Minino de Cheshire, ¿podrias decirme, por favor, qué camino debo seguir para salir de aquí?

Down Kill Up Publicidad

Bitácora de McPolu (19560)

Sábado, 08 de Septiembre 2007

Beautiful code: un libro excelente pero bastante difícil

01:51h.
Bitácoras
Estoy leyendo Beautiful code y de momento me parece un libro excelente. Voy por el capítulo 11 de 33, así que quizá es demasiado pronto para opinar sobre él. Me está gustando mucho, aunque me parece un libro bastante difícil de entender.

La premisa del libro es sencilla: han invitado a muchos programadores destacados de muy diferentes ámbitos a que escriban un artículo corto acerca de un código que les parezca precioso (beautiful). Los que tratan temas que me resultan más o menos familiares me parecen muy interesantes; y me han sorprendido mucho las profundísimas diferencias de estilo que hay entre unos y otros.

El primer capítulo lo ha escrito Kernighan y su código tiene sabor añejo. El uso que hace de punteros, pre y post operadores o el sacar ventaja del orden en el que se evalúan las condiciones en una instrucción condicional da lugar a un código muy compacto pero que exige del lector un íntimo conocimiento del lenguaje.

Contrasta mucho con otros capítulos escritos por programadores más 'modernos'. Tambien se nota mucho qué autores proceden del mundo académico y cuales de la industria, quién se siente más cómodo en el bajo nivel -hay un capítulo sobre metaprogramación en ensamblador de la máquina virtual de .NET que me dejó con los pelos de punta- y quién prefiere manejar niveles de abstracción mucho más altos.

De momento sólo hay un capítulo en el que no me he enterado de nada. Se trata de un mini-compilador escrito en JavaScript. No es el compilador completo, no genera código, se limita a construir el árbol semántico, pero aun así me ha resultado muy difícil de entender. A pesar de que escribí un compilador en la Facultad, no me he enterado de nada.

[Digresión]
En Junio aprobé las prácticas pero suspendí el examen de compiladores por unas pocas décimas. El profesor me propuso no hacer examen en Septiembre sino entregarle un compilador para la especificación casi completa de Eiffel. Acepté pensando que cualquier cosa sería mejor que un examen y que el profe debía ser medio lelo para ofrecerme ese trato... si hubiera sabido dónde me estaba metiendo le habría estrangulado allí mismo.
[/Digresión]

En cualquier caso, un libro muy recomendable pero para leer muy despacio; es muy posible que encuentres capítulos que tengas que leer tres o cuatro veces para entender el código. De hecho el compilador este en JavaScript creo que voy a tener que depurarlo para ver si me entero de algo. Al final, va a ser verdad que la belleza está en la simplicidad.
Martes, 04 de Septiembre 2007

La crisis de las hipotecas 'subprime'

10:00h.
Bitácoras
Últimamente se habla mucho de la crisis de las hipotecas subprime. Esto es normal, ya que es noticia. Es una crisis en el sector financiero y es muy sano que salga en las portadas de los periódicos. Sin embargo, lo que no es tan normal es que se hayan dicho y escrito la enorme cantidad de tonterías que me ha tocado leer y escuchar en mi escaso contacto con los medios de comunicación masivos (y mi intenso contacto con la web, claro).

Es más o menos comprensible que el bloguero/bitacorero de turno diga todas las tonterías que quiera. Para eso es el blog de cada uno, para publicar lo que se quiera. Lo que ya no es de recibo es que medios de comunicación que se pretenden serios aprovechen la coyuntura para arrimar el ascua a su sardina política. Al bloguero anónimo se le puede achacar ignorancia e incultura financiera, pero al periódico de tirada nacional, radio de presupuesto casi infinito o cadena de televisión con presentadora de peinado imposible sólo se le puede acusar de una cosa: manipulación descarada e interesada.

El mejor artículo que he encontrado acerca del "Pánico del 2007" está en inglés y, aunque está todo muy bien explicado, no creo que esté al alcance de todo el mundo. Voy a hacer lo que pueda para explicar lo que ha pasado -y sigue pasando- sin utilizar tecnicismos. Queden todos advertidos de que no soy economista ni nada parecido.

1. ¿Qué es una hipoteca subprime?

Una hipoteca es un préstamo que, generalmente, se concede para financiar la compra de un bien inmueble como por ejemplo una casa. Dicho bien queda como garantía del préstamo. Vamos, que si no pagas te embargan la casa. 'Subprime' significa "por debajo de lo óptimo"; las "hipotecas subprime " son hipotecas concedidas a personas cuyo riesgo es muy alto, es decir, a personas que probablemente no podrán pagarla. Si es probable que no la puedan pagar ¿por qué les prestan el dinero? La respuesta es que les cobran un interés más alto. El razonamiento que sigue el banco es más o menos el siguiente:

"Concedo 100 hipotecas prime. Lo más probable es que menos del 2% de ellas se dejen de pagar. Si gano X euros por hipoteca prime (con las comisiones e intereses) y el 98% de ellas llegan a buen fin, ganaré 98*X euros. Si concedo 100 hipotecas subprime lo más probable es el 40% lleguen a buen fin. Si subo los intereses en lugar de ganar X, ganaré Y con cada hipoteca, de manera que 40*Y = 98*X y me sigue saliendo rentable".


2. ¿Qué hacen los bancos con las hipotecas?

Antiguamente, los bancos guardaban las hipotecas en un cajón y asumían el riesgo. O sea, que si no pagabas la hipoteca, el banco se quedaba sin cobrar. Sin embargo, esto ya no es así. Ahora los bancos agrupan un montón de hipotecas en un paquete y lo revenden en los mercados financieros. El banco ya no arriesga nada; se queda con las comisiones y tal vez con una pequeña parte de los intereses, pero la mayor parte del riesgo se la queda el que compra el paquete de hipotecas. Es decir, que si no pagas tu hipoteca al banco le da más o menos igual, el que se queda sin cobrar es el que compró el paquete.

3. Y los que compran hipotecas, ¿las compran sin mirar?

No, ni mucho menos. Para hacer los paquetes más atractivos se dan garantías al estilo "Para que te quedes sin cobrar, más del 80% de los hipotecados tienen que dejar de pagar". Como parece altamente improbable que tanta gente deje de pagar, la gente compra confiadamente. Hay contratos con garantías no tan buenas, tipo "Para que te quedes sin cobrar, más del 40% de los hipotecados tienen que dejar de pagar". Y hay contratos con garantías malísimas. Cuanto peor sea la garantía, más riesgo hay de quedarse sin cobrar, por lo que el banco que agrupa y revende las hipotecas ofrece mucho más dinero a los que compren los peores contratos. Esto es natural, y las relaciones riesgo/recompensa son buenas. No se engaña a nadie, el que firma un contrato de alto riesgo sabe que es de alto riesgo.

4. Donde las cosas se empiezan a torcer

Con el tiempo, la composición de los paquetes de hipotecas se fue haciendo más y más complicada. A base de alquimia financiera/estadística se han construido paquetes que parecen de bajo riesgo pero no lo son. La idea es que si en un mismo paquete mezclo hipotecas prime y subprime y mareo un poco la perdiz a base de probabilidades condicionadas y tal y cual, parece que la probabilidad de que te quedes sin cobrar es muy baja. Por otro lado, como el riesgo que corren los bancos es casi nulo, empezaron a conceder hipotecas casi sin mirar. Total, el que se va a quedar sin cobrar no soy yo sino el que compre el paquete de hipotecas, a mi qué mas me da...

5. Y ahora es cuando el sistema financiero se va al garete

Los tipos suben, la economía USA no crece tanto como se esperaba, los posos del café aterrizan en el lado malo de la taza y ¡plaf! a los inversores les empieza a dar miedo que la gente de a pie no sea capaz de pagar sus hipotecas. Mucho ojo a lo que digo, no es que la gente no esté pagando sus hipotecas, es sólo que hay miedo. Los gestores empiezan a desconfiar de los paquetes de hipotecas y todo el mundo los pone a la venta. Casi nadie los compra por lo que su precio baja. Como el precio baja, más gente se pone nerviosa y más gente pone los suyos a la venta. El precio baja más todavía, empiezan a saltar los stop loss y todo sigue bajando. Los gestores se asustan, los inversores se asustan y empiezan a poner órdenes de redención (es decir, a sacar su dinero de los fondos). Los fondos necesitan efectivo para poder devolver su dinero a los inversores y no pueden vender los paquetes de hipotecas porque nadie los quiere comprar, así que empiezan a vender cualquier otra cosa que tengan. De repente, todo el mundo vende todo lo que tiene, nadie compra nada, los precios de todo caen en picado y algunos empiezan a pedir créditos para poder hacer frente a las redenciones. A ver quién es el guapo que les presta dinero. Todo el mundo se asusta muchísimo y nadie presta un euro porque nadie se fía de nadie: "¿Quién me dice a mí que no quiebras mañana y no me devuelves el préstamo?".

6. Los bancos centrales al rescate.

Los bancos centrales inyectan liquidez. Esto quiere decir que, para salvar los muebles, los bancos centrales se dedicaron a prestar dinero casi a cualquiera que pasara por allí, lo que evitó que la espiral siguiera cerrándose. Goldman metió 3.000 millones para salvar uno de sus fondos. Es lo bueno que tiene ser "hijo" de una entidad grande. Si hubiese sido un fondo independiente se habría tenido que declarar en quiebra.

7. ¿Y ahora qué? Y a mi esto, ¿cómo me afecta?

No soy adivino, ni tengo bola de cristal ni nada parecido, pero *CREO* que la tormenta ya ha pasado. También *CREO* que esto se quedará en el sistema financiero y no se propagará a la economía real. En definitiva, que *CREO* que al barrapuntero medio toda esta movida ni le va, ni le viene. *CREO* que no le va a afectar casi nada. *CREO* que los titulares 'apocalípticos' responden más a intereses políticos e ideológicos de los medios de comunicación que a la realidad. Insisto en que no tengo bola de cristal ni soy economista, así que si mañana se arruinan todos, por favor, no me señalen con el dedo :P
Viernes, 31 de Agosto 2007

Gran incendio en Madrid, cerca de la Plaza de Colón

09:52h.
Bitácoras
Estoy viendo por la ventana de la oficina llamas y una gran columna de humo negro que sale de algún lugar situado a unos 200 metros al oeste de la Torre de Colón, en Madrid. Que mal rollo... :-(
Lunes, 20 de Agosto 2007

Ya no dimito, pero sí que me voy a Londres

09:32h.
Bitácoras
En mi entrada anterior comentaba que había dimitido para irme a Londres. En un giro inesperado de los acontecimientos ya no dimito, porque desde mi actual empresa me han hecho una oferta para trabajar en Londres con otra empresa del mismo grupo y la acabo de aceptar. Por lo tanto ya no dimito sino que soy trasladado.

Os agradezco a todos los que escribisteis comentarios en mi anterior entrada vuestras palabras de apoyo; ¡55 comentarios y (casi) ningún troll! Me es imposible contestar uno por uno así que intentaré contestarlo todo junto:

¿Por qué me voy?

Es una conjunción de varios motivos. El primero es personal; Queremos vivir fuera de España y este es el momento. Si dejamos pasar algo más de tiempo y tenemos un hijo entonces será mucho más difícil. Ahora es relativamente sencillo liarse la manta a la cabeza. Por otro lado, una gran empresa española de las de toda la vida y llena de 'españoleitors', ha comprado la empresa en la que trabajo. Llevo ya unos años trabajando en entornos anglosajones y volver a la cultura española de trabajo no me gusta nada. Por último, en guirilandia podré seguir creciendo como ingeniero y programador (al menos eso espero) mientras que en España la batalla para no ser jefe y seguir siendo técnico se va poniendo cada vez más difícil. No me apetece nada dejar la pizarra y el compilador para ponerme a manejar presupuestos, contratos y demás tareas 'gerentiles'.

¿Por qué a Londres?

Porque allí están la City y Canary Wharf. Las únicas ciudades comparables a Londres en el aspecto financiero son Nueva York y Tokio, y es mucho más fácil mudarse a un país de la Unión Europea que a uno de otro continente.

¿Seguiré por Barrapunto?

Sí, claro, seguiré editando noticias para la portada y seguiré escribiendo en la bitácora. Últimamente me prodigo poco porque he estado más liado que de costumbre, pero cuando estabilice mi vida un poco espero poder escribir más habitualmente.

Y nada más, sólo volver a agradeceros a todos vuestras palabras de ánimo :D
Lunes, 13 de Agosto 2007

Dimito y me voy a Londres

01:26h.
Bitácoras
Hoy me he incorporado al trabajo tras mi semanita de vacaciones, descanso y reflexión. Esta mañana he entregado mi carta de dimisión y en septiembre me voy a Londres con mi esposa.

No se qué haré con mi doctorado, si lo aparcaré a la espera de tiempos mejores o lo reconvertiré en un master para que me den un titulito que colgar en la pared :P Tampoco se qué haré con el piso. Quizá lo alquile o quizá no, pero lo que tengo claro es que nos vamos. A Londres. A ver qué pasa.
Lunes, 06 de Agosto 2007

De vacaciones, pensando en grids Java

02:39h.
Bitácoras
Aquí estoy, pasando una semanita de vacaciones cerca de las playas sureñas del Atlántico. Vacaciones que sirven para descansar, reflexionar y cómo no, actualizar la bitácora.

Escribo para darle un poco de bombo al lanzamiento de la versión 1.0 beta1 de JPPF. JPPF son las siglas de Java Parallel Processing Framework, que es un middleware grid a la vez potente y sencillo de usar. Lo he utilizado en mi último proyecto y me ha gustado mucho. Su mayor ventaja es un ClassLoader distribuido. Si colocas un .jar en el CLASSPATH del cliente, las clases y recursos que estén en él pueden ser leídas por cualquier nodo del grid.
Su mayor inconveniente es que las tareas que se envían al grid se ejecutan siguiendo un orden FIFO, sin tener en cuenta prioridades. Otro inconveniente muy importante es que hay un punto único de fallo. Sin entrar en detalles, hay una máquina concreta que si falla, hace que falle todo el grid :-(
En esta última versión va un poco de código escrito por mí, muy poquito, apenas unas líneas que arreglan un par de bugs, pero es suficiente para que me sienta feliz :D También en esta versión han pasado de utilizar log4j 'a pelo' a utilizarlo a través de commons-logging, lo que hace mucho más sencillo integrarlo en otro proyecto.

Y poco más, que me han llamado esta mañana de la oficina para decirme que un compañero ha dimitido.
Miércoles, 01 de Agosto 2007

Oír Gilipolleces

07:31h.
Bitácoras
Hoy he vivido un momento digno de aparecer en el ya clásico artículo Oír Gilipolleces, de Fuckowski:

Nuevo Director de IT: Ya he encontrado un recurso para el proyecto de XXX, nos cobra Z euros la hora.
Yo: Es muy barato, ¿me pasas el C.V.?
NDIT: Es un programador experto en Visual Basic.
Yo: ¿¡Visual Basic!? ¡No podemos hacer el proyecto en Visual Basic!
NDIT: Sí, en Visual Basic, así es mucho más fácil encontrar gente, lo que es difícil es encontrar uno con Java, Struts, Hibernate y todas esas cosas.
Yo: ¿¡Visual Basic!? No es tanto por el lenguaje sino por la gente, uno que cobra ese dinero y programa en VB no puede ser bueno, esto nos va a dar muchos problemas.
NDIT: Además, así nos ahorramos el mantenimiento.
Yo: ¿Cómo que nos ahorramos el mantenimiento?
NDIT: Sí, los de XXX ya saben programar en excel, así que si lo hacemos en Visual Basic luego lo pueden modificar ellos mismos y no tenemos que mantenerlo.
Yo: ...
Ha llegado la hora de hacer las maletas.
Martes, 24 de Julio 2007

Oferta: Analista/Programador en ámbito financiero

03:38h.
Bitácoras
Se busca analista / programador para trabajar en una compañía del ámbito financiero en Madrid. Su primer proyecto involucrará Java, Hibernate, Struts 2 y Spring. Sin embargo, futuros proyectos podrían realizarse en C# 1.1 o 2.0 sobre SQLServer o Java SE 1.5 sobre MySQL. Se valorará experiencia en mercados financieros pero no es estrictamente necesaria.

Hay varios puestos a cubrir por lo que se considerarán personas con muy distintos niveles de experiencia, desde completamente inexperto a muy experto. Lo que se busca, en definitiva, es una persona con capacidad para integrarse en un equipo dinámico y aprender rápidamente y de manera casi autónoma los aspectos tanto tecnológicos como financieros que requiera cada proyecto.

La relación contractual y el salario son negociables; se hará lo posible por satisfacer las demandas de la persona adecuada. Enviar C.V. a McPolu@gmail.com

Los nicks que suelen publicar bitácoras o comentarios expertos sobre programación en /. parten con un punto de ventaja :P
Viernes, 20 de Julio 2007

Ya tengo el ultimo de Harry Potter

11:19h.
Bitácoras
Pues eso, que ya esta, que ya lo tengo :P
Martes, 19 de Junio 2007

Cuando la política ahoga un proyecto

10:51h.
Bitácoras
Por fin podemos disfrutar de una nueva entrada en el blog de Steve Yegge: That Old Marshmallow Maze Spell . Trata de cómo un proyecto a todas luces prometedor se ve ahogado por la "política de oficina" y de cómo incluso los mejores y más experimentados desarrolladores sufren el efecto de "la rana que no salta de la olla de agua caliente porque el agua se va calentando poco a poco". A cualquiera que tenga la experiencia suficiente le resultará una historia familiar y a los que no, que les sirva como aviso a navegantes...