Artículos de febrero 2010

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.

Retweet
Publicado el : 18 febrero 2010
Categorías: Desarrollo
Etiquetas:
Comentarios: 3 comentarios

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

Retweet
Publicado el : 6 febrero 2010
Categorías: Gastronomía
Etiquetas: ,
Comentarios: 2 comentarios