Bizcocho del Convento de las Carmelitas de Sevilla
Este es el resultado de 10 días de cuidados, mimo, esperanza y mucho cariño:
Cada vez me caen mejor los pacientes de @AmaiaFisio. Hoy le han sorprendido con dos excelentes tabletas de chocolate de Cazenave, Bayonne.
Hace 10 días trajo a casa un tupper con un poco de masa madre de la que se necesita para hacer el famoso bizcocho. El proceso de preparación y elaboración es el siguiente:
- Día 1: Verter el contenido en un cuenco grande y añadir 1 vaso de azúcar y 1 vaso de harina. Dejar sin mezclar
- Día 2: Mezclar con cuchara de madera
- Día 3: No tocar. Solo cubrir con albal
- Día 4: Nada
- Día 5: Añadir 1 vaso de azúcar, 1 vaso de leche y 1 vaso de harina. Dejar sin mezclar
- Día 6: Mezclar con una cuchara de madera
- Días 7, 8 y 9: No tocar
- Día 10: Dividir en 3 partes iguales. Dos se entregan a otras personas con estas instrucciones.
A la tercera parte, se le añaden:
- 2 vasos de harina
- 1/2 vaso de aceite de girasol u oliva
- 1 vaso de azúcar
- 1 vaso de nueves picadas
- 1 vaso de leche
- 1 sobre de levadura
- 2 huevos
- 1 manzana pequeña troceada
- 1 puñado de pasas (de las que no tienen pepitas)
- 1 pizca de sal
- Canela en polvo
- Vainilla
Se entiende aquí como "vaso" el mismo volumen de masa que se recibió el primer día, de manera que todo se hace en proporción al mismo. Mezclar bien y hornear en un molde engrasado y enharinado durante 40 minutos a 180º. Lo de 40 minutos es aproximado, naturalmente. Recomiendo pinchar con un palillo hasta el centro de la masa para comprobar si sale húmedo (crudo) o no.
Cada minuto dedicado al cuidado y alimentación de la masa merece la pena, os lo aseguro. Os recomiendo que compréis una buena vaina de vainilla en vez de usar vainilla en polvo. Vale la pena pagar un poquito más y la vaina os servirá para aromatizar azúcar, por ejemplo (truco de David de Jorge).
Yo he multiplicado la masa como para conseguir 4 volúmenes holgados de manera que guardo un poco como para cometer futuras fechorías, además de la que he usado para el bizcocho y las dos partes que voy a distribuir. Una para mi madre y otra para @kiketuit.
Justo cuando he echado los huevos en la masa me he acordado de un truco para conseguir que los bizcochos salgan más mullidos. Consiste en separar la clara y llevarla a punto de nieve. Mezclar todos los ingredientes bien y añadir la clara al final pero sin mezclarla del todo, de manera que queden "grumos" de clara. A ver si me acuerdo a tiempo la próxima vez :)
Malditas direcciones – Los países, sus regiones y la madre que los parió a todos.
Mi relación amor-odio con las direcciones seguro que es muy parecida a la de cualquier desarrollador detallista que haya tenido que lidiar con ellas en alguna aplicación.
Las personas humanas, entre las cuales me incluyo depende del día, estamos repartidos en 203 estados soberanos distintos a lo largo y ancho del planeta. Os desafío a que encontréis dos con exactamente el mismo sistema postal.
El fenómeno de etiquetar y catalogar los lugares donde las personas viven o ejercen su profesión está justificado exclusivamente por la necesidad de comunicarse de manera distribuida. Si no, para rato le gustaría a la gente que los demás supieran dónde vive uno.

Tras cinco leguas/ jinete y animal/ sufren por igual
Ante la imposibilidad que suponía que los correos (predecesores de los actuales carteros) supieran dónde vive cada persona en un contexto de ebullición humana a cascoporrillo por todo el globo, más de una mente pensante tuvo la misma idea de registrar los nombres de las calles y caminos y ponerlos en una lista.
Y los que no tuvieran nombre, pues se les ponía uno. Luego vinieron los números de calle, pisos, letras, manos y demás datos que ayudaron a especificar la ubicación del destinatario al que había que enviarle el edicto de embargo, la sentencia de muerte o la factura del móvil. Finalmente, con la llegada de mejoras tecnológicas y la mayor descentralización de los sistemas postales de cada país, se introdujeron los códigos postales para facilitar la gestión de cartas y paquetes pintiparados.
Este proceso genérico se ha ido produciendo en cada país, cada uno a su manera. A nadie le gustaba que llegara el Imperio Británico y les dijera cómo tenían que mandar las cartas. Es por ello por lo que, por ejemplo, no tenemos códigos postales en Hong Kong o por lo que en muchos países anglófonos usan dos líneas para la dirección y si les hablas de calle, número, piso, letra... se ponen ojipláticos, caen en barrena, entran en bucle y la palomita les hace *pop* en la cabeza. No sabrán de qué narices les estás hablando.
El territorio de las direcciones es el lejano oeste informático en pleno peregrinaje: un terreno basto, desigual e inhóspito, minado de dudas, peligros e inseguridades.
Desde el punto de vista del análisis de software y de la arquitectura de bases de datos, no hay estructura o modelo sencillo, elegante, completo, coherente y mantenible que represente toda la casuística posible. Si tenemos una estructura para cada país es completo pero no es coherente ni mantenible. Si optamos por una estructura con el mínimo común denominador será sencilla y elegante, pero estará muy lejos de ser completa (y seguramente solo se componga de una columna con un identificador entero autoincremental). Así ad-eternum.
Wait a moment! Seguro que alguien más listo que yo (y que tú) ya ha pensado cómo solucionar esto. Repite mil veces Design Patterns y luego usa un poco de Google antes de seguir. Resulta que hay esperanza, al menos para parte del problema.

Como el logo de la ISO está protegido con copyright, pongo uno de Dharma, que mola más
ISO: International Standards Organization
Lo que más les gusta hacer a los señores de la ISO es catalogar y codificar cosas. Si le echáis un ojo a las ISO-3166-1 e ISO-3166-2, veréis que en los últimos (casi) 40 años se han dedicado a mantener y codificar un listado de países y sus subdivisiones. Existen 3 tipos de codificaciones para los países: la ISO-3166-1 alpha 2, la ISO-3166-1 alpha3 y la ISO-3166-1 numeric. España, por ejemplo es "ES", "ESP" y 724 a la vez, depende del sabor de la ISO elijas.
Actualmente la ISO-3166-1 alpha 2 se distribuye gratuitamente en la web de la ISO. Sin embargo, la ISO-3166-2 solo se puede conseguir pasando por caja y os aseguro que es la que queréis conseguir para un sistema de direcciones. Al fin y al cabo, no queremos que nuestros usuarios escriban en los campos "localidad" o "provincia" lo que les dé la gana, porque terminaremos con una preciosa base de datos llena de cosas como: "sebiya", "cebilla", "seviya" y "sevilla".
Los de la ISO son unos suizos cachondos donde los haya porque, a parte de cobrarte por una información que debería ser pública y gratuita, los jodíos no se encargan de mandarte actualizaciones de la base de datos cuando introducen cambios, sino que te envía un boletín de cambios para que tú, si eso, los apliques en tu base de datos. Por no hablar del formato de la base de datos, que es Microsoft Access (eso es otro cantar).
Así que si decides pasar por caja (las dos ISOs cuestan 366 francos suizos), no solo tendrás que importar una base de datos Access, sino que además tendrás que estar al loro de los boletines de cambios para mantener tus datos al día. Ouch!
Por lo menos te dan los nombres traducidos al inglés y al francés...
Alternativa: Geonames.org
No se puede describir con palabras el esfuerzo monumental que supone este proyecto. Para empezar todo lo publicado en geonames.org tiene licencia Creative Commons Attribution 3.0 License. Se trata de una base de datos mucho más completa que las ISO mencionadas ya que incluye *todo tipo* de topónimos relevantes como accidentes geográficos, monumentos, etc. y, por si no fuera poco, ponen un API de consulta a disposición del que la quiera utilizar. Os animo a echar un buen vistazo.
La pega (y la ventaja) de geonames.org es que depende del esfuerzo colectivo de su red de colaboradores y la base de datos no avanza al mismo ritmo en todas sus áreas. Por ejemplo, aún no se han corregido los datos a nivel de subdivisiones territoriales en España del último boletín de la ISO. El proyecto necesita todos los colaboradores que pueda conseguir, entre los cuales, tenemos algunos muy relevantes como Luistxo de Tagzania.
Otra pega que viene con Geonames es que nos podemos encontrar códigos ISO junto con otros estándares como el FIPS o símplemente creados ad-hoc. Sencillamente, es más importante el geoposicionamiento que la aplicación de estos estándares, muchas veces incompletos para determinadas regiones.
Además, si decidimos importar la base de datos de geonames, tendremos que filtrar mucha paja para quedarnos solo con los lugares poblados y las divisiones administrativas. Supone curro, pero no es descabellado. De lo que no te libras es de estar pendiente de los cambios publicados en los boletines de las ISO (y, de paso, les mandas los cambios a geonames para que actualicen la info).
Lo que haría Chuck Norris
Realmente Chuck Norris no necesita buscar direcciones porque se las sabe todas de memoria, pero si no fuera así, lo que haría es recorrer la Wikipedia e importar la información en su base de datos y completarla con los boletines de la ISO u otras fuentes. Es frustrante ver que la información está ahí, al alcance de las manos, pero no tenerla en un formato exportable/explotable.
Lo que yo haría
Esta es la parte menos importante del artículo, ya que eres tú quien debe decidir cómo implementar direcciones en tu aplicación. En mi caso, me haría las siguientes preguntas:
- ¿Es importante para mi aplicación normalizar estas cosas?
- ¿Supone una ventaja normalizar estas cosas en mi aplicación?
- En caso de responder Sí en las dos, ¿Mi aplicación debe (por cuestiones legales o por interactuar con otras) usar códigos standard?
- En caso de responder Sí buscaría una manera de conseguir datos de la ISO
- En caso de responder No en cualquiera de las preguntas, seguramente usaría la base de datos de geonames o sus APIs para aligerar mi aplicación
Cabos sueltos
Hasta ahora solo hemos hablado de países, regiones y localidades. Aun hay que resolver cómo manipular las demás partes que pueden conformar una dirección. Vista la envergadura de este artículo, dejo el apasionante mucho de las calles, números, códigos postales, bloques, y demás salsas para el siguiente de esta serie.
Proyecto pan – Consolidado
Ya he cogido velocidad de crucero y he hecho 3 panes más. Dispongo de un par de masas que funcionan cada vez mejor y le voy pillando el truco a la fermentación. Poco a poco y con paso firme.
El primer pan que he hecho ha sido el lustroso pan 100% de centeno integral que encabeza este artículo. La verdad es que la masa madre de centeno nunca falla. Voy mejorando la miga en este tipo de panes y cada vez va quedando más esponjosa. Ahora lo que más me preocupa en estos panes con sabor tan intenso es controlar de alguna manera el nivel de acidez que adquieren. El segundo pan ha sido un pequeño experimento que he hecho:
Me traje de Almazán un bote de unos 150g de miel con nueces y decidí echarlo en la masa antes de fermentar. La verdad es que ha sido un suplicio domar la masa porque quedaba completamente pegajosa e intratable. El resultado no ha sido todo lo bueno que me esperaba ya que no he podido fermentarlo como es debido y he tenido que añadirle bastante harina en el amasado (era imposible de manejar). Buscaré trucos para ver cómo amasar este tipo de panes. Aunque la miga ha quedado prieta y húmeda de sabor estaba super rico. Nada empalagoso y con las nueces esparcidas por todo el pan. Como el pan de lembas élfico, un pequeño trocito para desayunar te tiene en marcha todo el día :D
El tercer pan, del cual no tengo ninguna foto, es del que más orgulloso me siento hasta la fecha. Se trata de un pan de algo más de 1 kilo y cuarto de peso. Lo he hecho con mi masa madre de harina de trigo y con harina de espelta integral. Como aun no tengo los cestos ni las telas de lino para darles forma a las hogazas como es debido, lo puse en la bandeja directamente con forma de "torta" con los cortes en cuadrado como los "colones" madrileños. Lo horneé el pasado lunes para una una comida que hicimos en casa para 8 personas y me enorgullece enormemente decir que lo devoramos ávidamente solo y untado de salmorejo. Todo el mundo comentó que le supo muy rico así que no puedo estar más contento. Lamentablemente no tengo foto porque se la saqué sin la tarjeta de memoria en la cámara (doh!). Tenía un aspecto excelente: dorado, crujiente y, aunque no levantó mucho, conseguí una miga esponjosa y llena de burbujitas (por primera vez!).
Ahora mismo mis masas madre siguen creciendo y volveré a hacer panes este fin de semana. Visto el éxito, uno de espelta caerá fijo para ir cogiéndole el tranquillo y asegurar buenos resultados siempre. Pronto es mi cumple y ya me he pedido esto, esto y esto :) Como siempre, os animo a que os déis una vuelta por la web de Iban Yarza y por su nuevo foro sobre panificación.
Desarrollando aplicaciones sobre Twitter
Quién me lo iba a decir a mi cuando me di de alta en 2007. Twitter en aquella época no tenía ningún sentido para mi. Apenas tenía amigos que lo usaran y no le vi ninguna utilidad.
De hecho, hace bien poco publiqué un artículo poniéndolo a parir, pero como dijo aquel: rectificar es de sabios. Hoy en día me comunico más por Twitter que por cualquier otro medio online. Lo que más me gusta es la capacidad que tiene de descubrirte gente cercana con intereses afines. Gracias a Twitter he podido descubrir la gran red de profesionales de mi sector en el País Vasco que hace 1 año ni me imaginaba que existiera.
Hasta la fecha no he necesitado hacer ningún desarrollo relacionado con Twitter pero, en este momento, tanto en mi trabajo como en Trastos de Guerra, el fansite oficial de World of Warcraft que mantengo junto con Aitor y Juantxo, se están planteando desarrollos vinculados de algún modo con Twitter.
Bajo mi punto de vista, al margen de la potencia que tiene como red social, Twitter aporta una gran ventaja para cualquier desarrollo que implique gestión de usuarios. Sin ninguna duda, esto es cada vez un mayor problema en Internet (para los usuarios, no para nosotros, los desarrolladores). Yo ya no sé cuántas veces me he dado de alta en páginas web y llevar un control minucioso de las distintas credenciales de acceso es prácticamente imposible.
Twitter implementa un sistema de autenticación de usuarios mediante OAuth, cosa que nos puede solucionar la papeleta del registro y login de usuarios en nuestras aplicaciones. Por otro lado, el hecho de autenticar los usuarios de nuestras aplicaciones mediante sus cuentas de Twitter las convierte automáticamente en potencialmente "socializables". Existen otras buenas alternativas como OpenId pero, llegado al caso de obligar a alguien a que se registre en un sistema externo, en este momento prefiero mandarle a Twitter que a OpenId porque ofrece más funcionalidades.
El problema que me he encontrado de cara a implementar algo de Twitter en mis desarrollos es la heterogeneidad de las librerías que hay disponibles para PHP. Como norma derivada de los Design Patterns, siempre conviene reutilizar el trabajo de otros pero en este caso no hay una librería que reuna todas las condiciones mínimas como para resolver cualquier problema.
Las que implementan OAuth no implementan toda la API de Twitter, las que implementan la API de Twitter no están orientadas a objetos, las que están orientadas a objetos están obsoletas o no reciben mantenimiento y ninguna plantea soluciones a nivel de cacheo o modularidad.
Así que, remangado, me he puesto a trabajar en una librería modular orientada a objetos según los últimos estándares de PHP5.2 con los siguientes objetivos (copio y traduzco de la Wiki de GitHub donde la he albergado):
- (Casi) Soporte completo de la API de Twitter
- Estructura de 2 capas:
- Capa inferior: Implementa el DAO para interaccionar con Twitter
- Capa superior: Implementa Operaciones Abstractas e Interacciones entre Objetos
- Cache de llamadas al API de Twitter (casi lista)
- Sistema de Autenticación Modular (sistema standard básico ya implementado, obviamente)
- No reinventar la rueda
- Buena documentación
- Test unitarios con PHPUnit
Hay temas que estoy procrastinando deliberadamente:
- Optimización de código y estructura de herencia, clases, etc.
- Definición funcional de la capa superior.
Quiero esperar que alguien empiece a usar la librería para que me eche una mano con estos temas.
La librería se llama TwiPHPr (tuífer), está publicada bajo licencia MIT y podéis probar ya la versión 0.1 que está subida a GitHub junto con las páginas del Wiki de detallan cuestiones de diseño, funcionalidades y demás historias.
Necesito ayuda en muchos campos así que estaré encantado de charlar con todo aquel que se sienta motivado y quiera aportar.
Proyecto pan – Día 4
Vaya, no ha salido como esperaba, pero aun no tiro la toalla.
La razón por la que no he publicado los días 2 y 3 ha sido porque la masa madre no ha respondido como esperaba. En ningún momento ha estado "burbujeante" duplicando su volumen, sino que ha producido bastante suero casi inoloro con poca burbuja. Durante estos días he estado alimentando la masa con buena harina refinada para darles comida a los bichitos que viven dentro pero aun no lo he conseguido.
Creo que algo que ha podido fallar ha sido la circulación de aire. Al fin y al cabo, parte de las bacterias que nos interesa capturar en la masa vienen del aire que hay a su alrededor, por lo que voy a cambiar de bote y volver a probar. En este momento, tengo dos masas madre creciendo y consolidándose:
- La masa madre original, de harina de trigo integral. En este momento está siendo alimentada con buena harina refinada para ver si mejora su salud y toma fuerza.
- Hoy he empezado a cultivar una masa madre de centeno integral, con lo que en 3 ó 4 días la tendré lista.
He tomado una decisión trascendental al respecto de las masas madres y es que, al contrario que con la primera con la que hice mis primeras pruebas, no las voy a tirar por muy mal que se pongan. Según leo en la web de Iban Yarza y en el nuevo foro que ha publicado esta semana, una gran parte de las masas que tira la gente son recuperables. Todo indica que lo que interesa es tener masas madre activas de muchas generaciones de edad ya que son éstas las que producen los mejores resultados.
Para que no fueran todo penas, hoy he confeccionado un pan con la masa madre que tenía para valorar la viabilidad de masas en su estado. Lo he hecho con harina de fuerza y el resultado tiene buen aspecto:
Uno de los primeros defectos que le he encontrado incluso antes de sacarlo del horno, ha sido que he dejado la masa demasiado seca. Esto ha provocado que la masa no se haya "consolidado" después de los "strech-and-fold" que le he aplicado dos veces durante las dos primeras horas de fermentación. En las siguientes dos fotos podéis ver las consecuencias:
Supongo que cuando lo abra (mañana) veré consecuencias ha tenido esto en la miga. Otro problema que he observado es el ligerísimo crecimiento de la masa durante el resto de la fermentación. Se lo achaco a la falta de humedad y al estado de la masa madre. Creo que para el próximo pan voy a preparar una de esas masas blandurrias y pegajosas con tanta humedad que se ven en los vídeos para darme el gustazo. Ya veremos :)
Termino este post insistiendo en que si este tema os gusta os paséis por la web de Iban Yarza y por su foro, que es un pozo sin fondo de sabiduría "paneril". En mi próximo artículo sobre panes espero poder enseñaros una foto de mis masas madre rebosando por fuera del bote :)
Proyecto pan – Día 1
Estoy muy contento porque todo va viento en popa.
Sin embargo, la masa madre me puso ojitos a las 12 horas así que le tuve que darle de comer pasando por alto una de las decisiones que había tomado al comienzo del proyecto: respetar los horarios de la guía.
Gracias a dios, parece que ha sido una buena decisión teniendo en cuenta la temperatura media de mi casa, que es bastante elevada y provoca que los tiempos de cultivo se reduzcan.
A continuación os enseño cómo ha evolucionado la masa cada 12 horas:
Mañana a las 7:00 am me sentiré como el Emperador dándole una sorpresita a Luke Skywalker:
... Now witness the firepower of this fully armed and operational battle station! ...
Porque tendré una masa madre en pefecto estado operativo. Como no me dará tiempo a completar el proceso para dejarla la masa madre en letargo en el frigorífico, lo que haré es añadir un 5º proceso de alimentación para completarlo por la tarde a la vuelta del trabajo. ¡Mañana más!
Proyecto pan – Día 0
¡Hola amiguitos!
Llevo más o menos un mes y medio aprendiendo a hacer pan gracias a las maravillosas y estupentásticas guías de Iban Yarza (@ibancito, por si queréis seguirle en Twitter). Os animo a todos a intentarlo ya que es una actvidad divertida, interesante y casi tan antigua como el propio ser humano.
Hasta ahora he horneado 3 panes y aunque no me han salido del todo aceptables estoy muy satisfecho por que veo que ha habido una progresión a mejor (aunque poca, la ha habido, oye). Durante este mes y pico he aprendido que en el mundo del horneado amateur de panes caseros hay un par de lecciones que hay que dominar. El nivel cero, vaya:
- Cultivar y cuidar la masa madre
- La técnica de amasado y fermentación
Lo que es el horneado en sí parece más fácil de llevar a cabo. Como el resto del proceso, se trata de una tarea que hay que controlar y vigilar de cerca pero llegado a ese punto las únicas variables son la temperatura del horno y tu capacidad de percibir cómo se va cociendo el pan.
Los panes que hice rondaban los tres cuartos de kilo y fueron de centeno integral y de harina refinada de trigo para repostería. Mis principales problemas han sido los siguientes:
- No he consegido mantener en buen estado la masa madre. Entre el 2º y el 3º pan la masa madre estuvo aletargada casi un mes en el frigo y secretó un líquido con un fuerte olor a acetona. A pesar de ser algo normal y que no suele plantear ningún problema corregir, yo no lo he conseguido. Lo achaco a mi poca experiencia y a no tener el material (harinas) adecuado.
- No he conseguido panes con miga esponjosa. Eran más bien panes "matapatos" como dice mi padre. A pesar de todo, el tercero sí que me salió bastante más esponjoso que los anteriores, por lo que lo achaco principalmente a la harina, que era de centeno integral. También pienso que se puede deber a que no he sabido identificar el estado correcto de la masa madre para la confección de la masa de pan.
- Todavía no le he pillado el punto al sabor del pan: la sal y el sabor a levadura es algo que aun no sé equilibrar. En cuanto a la sal, es cuestión de pillarle el punto. En cuanto al sabor a levadura, aunque no es algo desagradable, ni mucho menos, creo que debería ser menor para tener un sabor "redondo". En cuanto le pille el truco probaré a fermentar masas con 1 volumen de masa madre y dos de harina para ver el resultado.
No todo va a ser negativo. Por ejemplo, estoy muy orgulloso de la corteza del tercer pan. Creo que me ha quedado perfecta: dura pero crujiente, lisa pero con aspecto rústico. Esto me demuestra que es crucial dejar la masa fermentando en el frigo toda la noche. La diferencia es tremenda.
Estos temas que menciono están perfectamente explicados en las guías de Iban Yarza, por lo que os animo a que los leáis directamente de su web si tenéis curiosidad. Este artículo, en realidad, trata de ser un registro para acordarme con precisión de cómo voy a abordar una segunda intentona en este tema y aprender de mis errores.
También os recomiendo mucho los cursos de confección de pan que organiza ya que sé de buena tinta que son estupendos. Amigos confiesan que es un privilegio que alguien como Iban Yarza, a quien le corre masa madre por las venas, te desvele cara a cara los misterios de este arte. Yo aun tengo pendiente ir a uno de estos cursos. Pronto, muy pronto... :)
Al final la introducción ha ocupado más que el artículo en sí. Al turrón: voy a cultivar masa madre de nuevo, pero esta vez lo voy a hacer by the book:
La masa madre - día 0
En mi primera intentona la hice con centeno integral. Hoy la haré con trigo integral.
Armado con mi vasito rojo, un vaso medidor para mezclar y el bote con tapón-with-a-hole, he mezclado 1 volumen de harina de trigo y otro de agua. El agua estaba reposada y la he tomado de una jarra de esas con filtro de carbón activo que anuncia la del programa del corazón en la tele. Al final he obtenido unos 300ml de masa madre, lo que me dará para hacer panes de algo más de 1 Kg, en cuanto la masa madre esté lista.
Observación: Creo que me ha quedado demasiado líquida y con el centeno no me ocurrió lo mismo. Parece que el centeno puede absorber más agua que el trigo.
He puesto el bote en un lugar tranquilo de la cocina, en una esquinita. En mi casa suele hacer más calor de lo habitual porque hay mucha gente mayor en el edificio y la calefacción está a toda mecha todo el día. En mi intentona anterior vi que los ciclos de alimentación se redujeron a la mitad aproximadamente. A pesar de que sé que esta vez va a ocurrir lo mismo, pretendo respetar los ciclos de 24 horas. Esto significa que mañana a las 7am volveré a alimentar al bicho. Ya os contaré :D
La preocupante situación del atún rojo
En respuesta al comentario de @Ioneklafh de mi artículo Crisis nipona en Gipuzkoa, he investigado un poco y lo que he descubierto sobre el atún rojo es realmente preocupante. Precisamente hoy comienza una convención en Doha, Qatar, para promover la prohibición del comercio internacional del atún rojo.
Mi hermana, Miren Gutiérrez, es directora de comunicación de la Fundación MarViva, que es una organización no gubernamental dedicada a la conservación y a la promoción del uso sostenible de los recursos marinos. Recientemente MarViva ha desplegado una red de blogs para cubrir los avances de su actividad y ha creado un par de ellos para dar cobertura a los eventos de la Convención de Qatar (en inglés y español), por lo que me parece muy adecuado darles un poco de publicidad en este espacio.
También tienen una página en Facebook y una cuenta de Twitter (@marviva) para el que quiera seguirles. Os animo a pasar por allí y leer un poco sobre la batalla que están librando fundaciones como MarViva, Oceana o Greenpeace junto con gobiernos mundiales y grandes corporaciones pesqueras.
Primer vistazo a Symfony2
El resto del año hasta la liberación de la primera versión de Symfony2 promete ser muy entretenida. Hoy hemos podido saborear la primera entrega de una versión de previsualización y es hora de ver diferencias y opinar.

Git vs Subversion
Symfony quiere dar carpetazo a Subversion para pasarse a Git, un sistema de control de versiones distribuido mucho más adecuado para proyectos en los que interviene una infinitud de desarrolladores.
Siendo un subversion-boy, este tema me escuece especialmente, porque he adaptado mi manera de trabajar al excelente duo Subversion-Trac pero he de reconocer que el cambio es completamente coherente y que va a facilitar que más y más gente intervenga y aporte código a Symfony. Solo espero que surjan herramientas como Trac que permitan a las organizaciones a montar su mini-reino de control de desarrollos Git lo antes posible.
Retrocompatibilidad
Adios con la manita. Piénsate muy bien cómo vas a desarrollar todos los proyectos a lo largo de este año, porque cuando quieras migrar a Symfony2 vas a tener que picar mucho. Aplicar buenas costumbres de programación orientada a objetos es más importante que nunca. Un buen punto de partida sería desarrollar los módulos de tus aplicaciones Symfony 1.x como plugins directamente. De este modo, la transición te dolerá menos (aunque me parece una locura).
Doctrine vs Propel vs Doctrine2
Aunque me considero más que solvente en Propel, soy un novatillo en Doctrine, por lo que no puedo entrar a valorar en profundidad sus bondades. Sin entrar en lo técnico, Propel va más con mi estilo de programación y me siento un poco "sucio" cuando hago algo en Doctrine. Supongo que se pasará con el tiempo...
Lo que no se puede discutir es que Doctrine es el camino a seguir, te guste o no. La historia de Propel y Doctrine es una historia muy triste: un ejemplo de las dificultades que un projecto OpenSource se puede encontrar en su vida. Si Propel hubiese tenido una evolución más sostenida seguramente hoy estaría en igualdad de oportunidades frente a Doctrine pero, lamentablemente, el frenazo de la versión 1.2 le ha costado el nacimiento de un serio competidor que además tiene el apoyo motriz de los propios creadores de Symfony.
Lo que no entiendo es que se quiera potenciar Doctrine cuando Propel gana en los benchmarks de rendimiento. Uno de los principales objetivos de Symfony2 es mejorar la eficiencia y el rendimiento del framework, por lo que apoyar Propel parecería lo adecuado. Mucho tiene que mejorar Doctrine2, creo yo.
Algo que me gustaría es dejar de depender de los drivers PDO y empezar a usar drivers nativos para aprovechar un poquito más las características particulares de cada motor de bases de datos. Según he leido, parece que se podrá con esta nueva versión :)
Symfony vs Symfony2
En cuanto al framework en sí, la nueva versión parece mucho más estructurada y de nivel más bajo que la actual. Es muy recomendable leerse la QuickTour para entrar en detalles, pero grosso-modo:
- La organización del código se hace a través de los namespaces de PHP 5.3.
- Las configuraciones se pueden hacer en PHP, YAML, XML o INI. Se recomienda XML.
- Se implementa un paradigma MVC más convencional. El Controlador, la Vista y el Modelo son muchos más presentes.
- Los plugins y los módulos se fusionan en los bundles. Cada bundle tiene la estructura de una app actual: librerías, plantillas, javascript, css, etc.
- Los bundles están diseñados para encapsular una determinada funcionalidad y para ser intercambiado entre desarolladores y proyectos.
- La distinción entre acciones y componentes se diluye. Es como si las acciones se vistieran de componentes y su integración en las vistas es mucho más flexible.
- El sistema de enrutado es muy parecido al actual, pero parte se delega en los bundles para dar mayor flexibilidad.
- Ahora las variables entran en las acciones desde el sistema de enrutado.
- Los helpers vuelven para quedarse. El concepto ha sido rediseñado y ahora son objetos que amplían la funcionalidad de la vista.
- Mayor coherencia en torno a las clases responsables de las peticiones, respuestas, cabeceras, sesiones... Pocos cambios al respecto.
A partir de aquí el territorio es completamente nuevo para los que venimos de Symfony. El sistema de directorios es completamente distinto y se basa principalmente en los bundles, el proceso de bootstraping del controlador es nuevo también... La QuickTour es de obligada lectura definitivamente. También es recomendable ver la presentación de Fabien Potencier sobre Symfony2.
Resumen
Como digo al principio de este artículo, va a ser un año movidito. Hay que ponerse las pilas. Personalmente, tengo que suplir el handicap de no tener soltura con Doctrine, pero todo se andará. Me gusta mucho la dirección en la que se está moviendo el proyecto Symfony, aunque lo de Doctrine me resulta difícil de aceptar.
A Symfony2 le falta mucho para estar listo. Por ejemplo, no tiene un framework de formularios, generador de CRUDs, framework de testeo y Doctrine solo está integrado parcialmente. Espero que tengamos pronto una versión alfa para hincarle el diente y volver a repetir la historia que viví cuando le metí mano por primera vez al alfa 0.6 de Symfony allá por el 2006.
Restaurante Robata
Anoche disfrutamos de una cena de 5 estrellas en el restaurante japonés Robata, en Madrid. Entre otras cosas, resulta que su cheff, Takeshi Ikino, que acumula un sinfín de méritos gastronómicos, os puede cocinar Fugu (pez globo) si os apetece.
Nosotros optamos por un menú bastante más conservador que incluyó:
- Sopa miso y ensalada de algas finas
- Hígado de rape marinado
- Nigiris de toro (ventresca de atún), negitoro gunkan (picadillo de ventresca de atún con puerro) y tobiko gunkan (huevas de pez volador)
- Makis de unagi (anguila) y ebi (langostino) tempura invertido.
- Bakalao marinado en miso a la plancha
- Postre: mini-mochis rellenos de helado (vainilla, té y alubias dulces) y un sorbete de licor de cereza
La sopa y algas finas cumplieron las expectativas y el hígado nos sorprendió muchísimo. En primer lugar porque fue convite de la casa y en segundo porque estaba sencillamente delicioso. Sabía totalmente a mar, aunque moderadamente por lo que no abrumaba. Su textura es como de la del tofu y el marinado me recordó a la salsa para tempura, bastante suave.
En muchos restaurantes con carta japonesa se puede encontrar toro pero ayer descubrí que lo que hasta ahora nos habían servido no es precisamente lo que probamos anoche. La carne que nos presentaron era tierna, con una textura más blanda y agradable que la carne de atún normal y tenía unas vetas de deliciosa grasa muy marcadas y que recuerdan verdaderamente a la ventresca.
Ahora entiendo porqué en el restaurante Naomi (también madrileño) siempre nos decían "hoy no toro!" cuando preguntábamos. Servir otras partes del atún como toro debería estar penado con prisión.
Aunque el negitoro gunkan pasó más bien sin pena ni gloria, el tobiko gunkan fue excelente. Los makis muy buenos también, aunque el de ebi tempura era más bien cuadrado, cosa que perdonamos en el mismo instante que nos metimos una porción en la boca.
El bakalao fue una auténtica delicia. Como plato es tan simple como redondo. El lomo de bakalao, de ración y marinado en miso había sido pasado por la plancha lo justo para caramelizar parte del marinado creando una textura ligeramente crujiente y dulce en las esquinas de la pieza de pescado.
Para terminar preguntamos por los mochis, pero no tenían así que pedimos los sorbetes. Sin embargo, junto con ellos nos trajeron en un platito cuatro mini-mochis rellenos de helado para que los probáramos.
En lo referente al local y al servicio no se puede decir nada malo. Es muy espacioso y se nota que a la hora de disponer las mesas ha primado la comodidad de los clientes frente al aforo. El restaurante tiene habitaciones con tatami para cenas con mayor privacidad y sushi bar. Solo puedo reprochar que en el sushi bar no parecía que se tuvieran buenas vistas al trabajo de los cocineros.
No vimos ningún oriental formando parte del servicio cosa que, a pesar de quitarle un poco de encanto, puede ser una ventaja a la hora de pedir alguna explicación. En cualquier caso, todos fueron más que atentos y el detalle de invitarnos al hígado de rape o sacar los mini-mochis en los postres fueron el colofón de una cena que ya iba bien encaminada desde que entramos allí.
Aunque está feo hablar de dineros, creo que no sería una review completa sin tocar este tema. Se trata de un restaurante de precio alto. No puedo decir que sea caro de una manera absoluta, pero sí que puede resultar un poco más caro que otros restaurantes de ese rango. Pagamos por la cena 95€ muy satisfechos y seguramente lo volveremos a hacer en el futuro.
Restaurante Robata
Calle de la Reina 31 (Madrid)
Teléfono para reservas: 915218528














