<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Arragonán</title>
	
	<link>http://www.danilat.com/weblog</link>
	<description>Daniel Latorre - Desarrollador Freelance</description>
	<pubDate>Wed, 24 Jun 2009 00:51:44 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/danilat" type="application/rss+xml" /><item>
		<title>Acerca del Sun Open Communities Forum</title>
		<link>http://feedproxy.google.com/~r/danilat/~3/drDQvokpsXo/</link>
		<comments>http://www.danilat.com/weblog/2009/06/24/sun-open-communities-forum/#comments</comments>
		<pubDate>Wed, 24 Jun 2009 00:43:17 +0000</pubDate>
		<dc:creator>dani</dc:creator>
		
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://www.danilat.com/weblog/?p=414</guid>
		<description><![CDATA[Los pasados 18 y 19 de Junio, estuve en Madrid para asistir al Sun Open Communities Forum, mi opinión sobre el evento es que hubieron más oscuros que claros, aunque tampoco me sorprendió demasiado vista la web del evento y la agenda publicada.
Sobre las charlas, opino como Abel Mendivil, se pueden agrupar en fuera de [...]]]></description>
			<content:encoded><![CDATA[<p>Los pasados 18 y 19 de Junio, estuve en Madrid para asistir al <a href="http://sunopencommunitiesforum.es/">Sun Open Communities Forum</a>, mi opinión sobre el evento es que hubieron <a href="http://twitter.com/dani_latorre/status/2242735036">más oscuros que claros</a>, aunque tampoco me sorprendió demasiado vista la web del evento y la agenda publicada.</p>
<p>Sobre las charlas, opino <a href="http://vsbabylon.blogspot.com/2009/06/sun-open-communities-forum.html">como Abel Mendivil</a>, se pueden agrupar en <em>fuera de lugar</em>, <em>falta de profundidad</em> y <em>las que tenían fundamento</em>.</p>
<p>Como suele ser habitual en estos eventos, los patrocinadores tenían charlas y algunas eran paja en un evento para programadores, o lo parecían, ya que el segundo día no fuí a ninguna de las que tenían esa pinta: la mesa redonda sobre open source, la de redes sociales, madridonrails&#8230; al menos para mi no son productivas. Otras me resultaron aburridas, un tanto básicas, y sobre todo en las que eran en inglés, desconectaba con facilidad. Por lo que, como ya he dicho, me pegué parte del segundo día trabajando en unas mesas fuera de las salas, que en algunos momentos casi se quedaban hasta pequeñas.</p>
<p>Pero también hubieron charlas interesantes: </p>
<ul>
<li>Las de <a href="http://blogs.sun.com/jorgeSanchez/">Jorge Sánchez</a> sobre ESB, que por no haber trabajado mucho en integración me resultaron curiosas.</li>
<li>La -no- charla de <a href="http://www.peyrona.com/">Francisco Morero</a>, donde nos pedía a los asistentes que comentásemos aplicaciones <em>exóticas</em> desarrolladas con Java, y se acabó regalando un iPod como premio :).</li>
<li>La de <a href="http://formatinternet.wordpress.com/">Javier Ramírez</a> acerca de JRuby on Rails, que aunque para mi no dijo nada nuevo, me gustó el enfoque que le dió a su charla de pasar un poco por Ruby, luego por Rails y finalmente ver como integrar con Java usando JRuby.</li>
<li>La de Dave Currie acerca de escalabilidad con MySQL, donde tampoco se dijeron cosas especialmente novedosas que no haya escuchado ya en otros eventos, pero siempre es interesante ver las soluciones tomadas en un caso real concreto(también me resultó gracioso que usara el topicazo de que Ruby on Rails no escala XD).</li>
<li>Desarrollo y test de componentes Ajax de <a href="http://icoloma.blogspot.com/">Ignacio Coloma</a>, sobre todo la parte de testing es la que más me gustó, y junto a la charla que dió el año pasado, tengo muy claro que sabe mucho de desarrollo web.</li>
</ul>
<p>En cuanto a los talleres, el primer día asistí al de Spring 3.0 que impartía <a href="http://sergialmar.wordpress.com/">Sergi Almar</a>, donde hubieron problemas de espacio en la sala, no habían suficientes tomas de corriente y los usuarios de Mac no pudimos seguir el taller por un problema de última hora, una pena que ante tantos problemas nos quedáramos sin tiempo para ver finalizar el taller completo, tal y como pasó el año anterior :S. El segundo día, fuí al de Grails que impartían conjuntamente <a href="http://groovy.org.es/">Nacho Brito</a> y <a href="http://blogs.salenda.es/alvaro_sanchez/">Álvaro Sánchez-Mariscal</a>, donde de nuevo nos quedamos sin concluir el taller completo, realmente había mucho que decir y el tiempo se terminó consumiendo :S.</p>
<p><a href="http://www.flickr.com/photos/dlato/3654973217/" title="Desarrollo y test de componentes Ajax  por Dani Latorre, en Flickr"><img src="http://farm3.static.flickr.com/2483/3654973217_4f9645d863.jpg" width="500" height="375" alt="Desarrollo y test de componentes Ajax " /></a></p>
<p>Sobre el tema puramente organizativo, hubieron algunos detalles mejorables: Las salas estaban bien pero no habían enchufes, nada más llegar al campus Montepríncipe no había ningún cartel ni indicación, tampoco se nos dieron identificaciones a los asistentes y ponentes, la tarde del segundo días se cambió la sala de las charlas del track 1 y no se pudieron emitir por streaming&#8230;<br />
Pero lo que más eché en falta fué más tiempo para charlar/saludar/conocer a otros asistentes y ponentes, que hubiera sido fácilmente solucionable &#8220;convocando&#8221; a quien quisiera a quedar en algún lugar a tomar unas cervezas(lo que los modernos llaman <em>networking</em> :P), cosa que sí pude hacer con unos pocos y a otros no pude más que saludarlos y poco más :S.</p>
<p>Como podéis ver, un poco de todo en el evento. Veremos si Sun/Oracle siguen celebrando un evento de estas características en España, y si lo hacen, esperemos que intenten organizarlo para que resulte más interesante.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.danilat.com/weblog/2009/06/24/sun-open-communities-forum/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.danilat.com/weblog/2009/06/24/sun-open-communities-forum/</feedburner:origLink></item>
		<item>
		<title>Primeros días de Jobsket en abierto</title>
		<link>http://feedproxy.google.com/~r/danilat/~3/5xYWESmoop4/</link>
		<comments>http://www.danilat.com/weblog/2009/06/21/primeros-dias-de-jobsket-en-abierto/#comments</comments>
		<pubDate>Sun, 21 Jun 2009 18:55:04 +0000</pubDate>
		<dc:creator>dani</dc:creator>
		
		<category><![CDATA[Grails]]></category>

		<category><![CDATA[Jobsket]]></category>

		<guid isPermaLink="false">http://www.danilat.com/weblog/?p=401</guid>
		<description><![CDATA[Como supongo que ya sabréis los que os pasáis por aquí(o deberíais :P), hace un par de semanas que jobsket ha salido de la beta cerrada, durante este tiempo hemos recibido bastante feedback de los usuarios(muchas gracias a todos!).
Nos ilusiona mucho la repercusión que hemos visto por internet, y que incluso acabara nombrándose en la [...]]]></description>
			<content:encoded><![CDATA[<p>Como supongo que ya sabréis los que os pasáis por aquí(o deberíais :P), hace un par de semanas que <a href="http://www.jobsket.com/">jobsket</a> ha salido de la beta cerrada, durante este tiempo hemos recibido bastante <a href="http://jobsket.uservoice.com/">feedback de los usuarios</a>(muchas gracias a todos!).</p>
<p>Nos ilusiona mucho la repercusión <a href="http://blogsearch.google.es/blogsearch?hl=es&#038;ie=UTF-8&#038;q=jobsket&#038;lr=&#038;scoring=d">que hemos visto por internet</a>, y que incluso <a href="http://blogs.ccrtvi.com/espaiinternet.php?itemid=22338">acabara nombrándose</a> en la sección <em>Espai Internet</em> del <em>Telenotícies cap de setmana</em> de TV3(evidentemente, en catalán). Por otro lado, para los técnicos :), también me hizo <a href="http://groovy.org.es/home/story/entrevista-daniel-latorre-de-jobsket">una pequeña entrevista</a> Nacho Brito para <a href="http://groovy.org.es/">groovy.org.es</a> acerca de como usamos Groovy y Grails en Jobsket.</p>
<p>A seguir trabajando!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.danilat.com/weblog/2009/06/21/primeros-dias-de-jobsket-en-abierto/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.danilat.com/weblog/2009/06/21/primeros-dias-de-jobsket-en-abierto/</feedburner:origLink></item>
		<item>
		<title>Plugin de easyb para Grails 1.1</title>
		<link>http://feedproxy.google.com/~r/danilat/~3/Fxe_E7Vo668/</link>
		<comments>http://www.danilat.com/weblog/2009/06/10/plugin-de-easyb-para-grails-11/#comments</comments>
		<pubDate>Wed, 10 Jun 2009 00:38:55 +0000</pubDate>
		<dc:creator>dani</dc:creator>
		
		<category><![CDATA[Grails]]></category>

		<category><![CDATA[Groovy]]></category>

		<guid isPermaLink="false">http://www.danilat.com/weblog/?p=373</guid>
		<description><![CDATA[Hace unas semanas que me suscribí a la lista de correo de easyb, un framework de testing para la plataforma Java, más exactamente para realizar behavior driven development.
Pues resulta que hace unos días se anunció un plugin para integrar easyb con Grails 1.1. 
Sólo he hecho alguna pequeña prueba para ir conociendo easyb, pero por [...]]]></description>
			<content:encoded><![CDATA[<p>Hace unas semanas que me suscribí a la lista de correo de <a href="http://www.easyb.org/">easyb</a>, un framework de testing para la plataforma Java, más exactamente para realizar <a href="http://dannorth.net/introducing-bdd">behavior driven development</a>.</p>
<p>Pues resulta que hace unos días se anunció un plugin para integrar <a href="http://bitbucket.org/omadruga/grails-easyb/wiki/Home">easyb con Grails 1.1</a>. </p>
<p>Sólo he hecho alguna pequeña prueba para ir conociendo easyb, pero por lo que he leído en la lista parece que tienen la intención de que un futuro se puedan integrar el plugin de testing por defecto de Grails con easyb.</p>
<p>Ahora mismo, tras instalar el plugin, puedes crear tus Stories o Specifications con la sintaxis estándar de easyb, tenerlos en el mismo directorio que tus test unitarios o de integración(con el sufijo Story o Specification en vez de Tests) y al ejecutar los tests con el script de easyb se ejecutan los propios de easyb junto al resto de tests &#8220;legacy&#8221; que tengamos, por lo que nos podríamos ahorrar la <em>traducción</em> de los tests ya escritos. </p>
<p>La única pega ahora mismo, es que por dejecto no es amigable con los sistemas de integración continua, al ejecutar <strong>grails test-app</strong> se da a alegir a ejecutar entre dos scripts, el de por defecto y el del plugin, aunque se puede solucionar simplemente cambiando el de easyb a otro nombre(test-app-all, easyb-test&#8230;).</p>
<p>Y aquí viene un ejemplo chorras de test de integración <img src='http://www.danilat.com/weblog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> :</p>
<p><code>before "initialize", {<br />
	given "CountryController", {<br />
		controller = new CountryController()<br />
	}<br />
}<br />
scenario "countries list", {<br />
	given "a country", {<br />
		 country = new Country(name:"Spain")<br />
		 country.save(flush:true)<br />
	}<br />
	when "go to index", {<br />
		countries = controller.index().countries<br />
	}<br />
	then "should have one country", {<br />
		countries.size.shouldEqual 1<br />
	}<br />
}</code></p>
<p>Aunque creo que se entiende mejor el código XD: teniendo un controlador CountryController para todos los escenarios, con un escenario que es un listado de países, que tiene un país y cuando vamos a la acción index, entonces debería haber un país. </p>
]]></content:encoded>
			<wfw:commentRss>http://www.danilat.com/weblog/2009/06/10/plugin-de-easyb-para-grails-11/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.danilat.com/weblog/2009/06/10/plugin-de-easyb-para-grails-11/</feedburner:origLink></item>
		<item>
		<title>Las 25 mejores tiras cómicas de programación</title>
		<link>http://feedproxy.google.com/~r/danilat/~3/iFLYvvc4wSw/</link>
		<comments>http://www.danilat.com/weblog/2009/06/04/las-25-mejores-tiras-comicas-de-programacion/#comments</comments>
		<pubDate>Thu, 04 Jun 2009 01:21:46 +0000</pubDate>
		<dc:creator>dani</dc:creator>
		
		<category><![CDATA[Humor]]></category>

		<category><![CDATA[Programación]]></category>

		<guid isPermaLink="false">http://www.danilat.com/weblog/?p=375</guid>
		<description><![CDATA[Simplemente geniales XD: 25 Best Programmer WebComic Strips

Difference between a Bug &#038; Feature
Vía @ecamacho
]]></description>
			<content:encoded><![CDATA[<p>Simplemente geniales XD: <a href="http://slashweb.org/programming/25-best-programmer-webcomic-strips.html">25 Best Programmer WebComic Strips</a></p>
<p><img src="http://e1.simplecdn.net/slashw/bug-feature.jpg" alt="Difference between a Bug &#038; Feature" /><br />
<em>Difference between a Bug &#038; Feature</em></p>
<p>Vía <a href="http://twitter.com/ecamacho/status/2019277735">@ecamacho</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.danilat.com/weblog/2009/06/04/las-25-mejores-tiras-comicas-de-programacion/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.danilat.com/weblog/2009/06/04/las-25-mejores-tiras-comicas-de-programacion/</feedburner:origLink></item>
		<item>
		<title>“Manual de desarrollo web con Grails” en español</title>
		<link>http://feedproxy.google.com/~r/danilat/~3/_xoEWoFuEO0/</link>
		<comments>http://www.danilat.com/weblog/2009/06/01/manual-de-desarrollo-web-con-grails-en-espanol/#comments</comments>
		<pubDate>Sun, 31 May 2009 22:40:15 +0000</pubDate>
		<dc:creator>dani</dc:creator>
		
		<category><![CDATA[Grails]]></category>

		<guid isPermaLink="false">http://www.danilat.com/weblog/?p=362</guid>
		<description><![CDATA[El 28 de Mayo se puso a la venta el libro Manual de desarrollo web con Grails (en pdf) escrito por Nacho Brito, editor de groovy.org.es y uno de los pioneros de la comunidad hispana  en la adopción de Grails para los desarrollos desde su empresa ImaginaWorks.
Quizás sea casualidad, pero poco a poco voy [...]]]></description>
			<content:encoded><![CDATA[<p>El 28 de Mayo se puso a la venta el libro <a href="http://www.manual-de-grails.es/">Manual de desarrollo web con Grails</a> (en pdf) escrito por <a href="http://www.manual-de-grails.es/sobre-el-autor">Nacho Brito</a>, editor de <a href="http://groovy.org.es/">groovy.org.es</a> y uno de los pioneros de la comunidad hispana  en la adopción de Grails para los desarrollos desde su empresa <a href="http://www.imaginaworks.com/">ImaginaWorks</a>.</p>
<p>Quizás sea casualidad, pero poco a poco voy encontrando algunos programadores que están interesados en aprender o que ya están experimentando, me consta que alguna empresa lo ha empezado a utilizar en sus desarrollos y que en algunos proyectos de internet también se ha usado Grails (entre ellos <a href="http://www.jobsket.com/">Jobsket</a> :P). </p>
<p>En mi opinión, la publicación del libro es una muestra más(y otro empujoncito más), de que poco a poco la comunidad Grails hispana está creciendo.</p>
<p>Yo ya tengo mi copia <img src='http://www.danilat.com/weblog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><strong>Actualización 04/06/08:</strong> El libro ya está disponible <a href="http://www.bubok.es/libro/detalles/11318/Manual-de-desarrollo-web-con-Grails">en papel en bubok</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.danilat.com/weblog/2009/06/01/manual-de-desarrollo-web-con-grails-en-espanol/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.danilat.com/weblog/2009/06/01/manual-de-desarrollo-web-con-grails-en-espanol/</feedburner:origLink></item>
		<item>
		<title>Programación, usabilidad y el IV aniversario de Cadius Zaragoza</title>
		<link>http://feedproxy.google.com/~r/danilat/~3/fUvgQ6r_aJc/</link>
		<comments>http://www.danilat.com/weblog/2009/05/13/programacion-usabilidad-y-el-iv-aniversario-de-cadius-zaragoza/#comments</comments>
		<pubDate>Tue, 12 May 2009 22:58:18 +0000</pubDate>
		<dc:creator>dani</dc:creator>
		
		<category><![CDATA[Programación]]></category>

		<category><![CDATA[Usabilidad]]></category>

		<guid isPermaLink="false">http://www.danilat.com/weblog/?p=345</guid>
		<description><![CDATA[Como programador que soy, la parte del desarrollo de software que siempre me ha llamado más la atención es el trabajo dentro de las tripas: lenguajes, frameworks, librerías, arquitecturas, metodologías de trabajo&#8230; que permitan mejorar el rendimiento, la calidad, etc. de un desarrollo y por otro lado la productividad como desarrollador, como creo que a [...]]]></description>
			<content:encoded><![CDATA[<p>Como programador que soy, la parte del desarrollo de software que siempre me ha llamado más la atención es el trabajo dentro de <em>las tripas</em>: lenguajes, frameworks, librerías, arquitecturas, metodologías de trabajo&#8230; que permitan mejorar el rendimiento, la calidad, etc. de un desarrollo y por otro lado la productividad como desarrollador, como creo que a la mayoría de programadores(bueno&#8230; si no contamos a los muchos que sólo les importa la nómina y la comodidad de lo que ya saben). </p>
<p>Por otro lado, percibo como un pensamiento bastante generalizado entre programadores <em>nóveles</em>(y a veces no tan nóveles), que la interfaz de usuario no es importante porque será sólo el &#8220;cascarón&#8221; de una <em>super-mega-chachi-aplicación</em>. Nada más lejos de la realidad, es un elemento <strong>diferencial</strong> en la calidad de un desarrollo, como escribía Isaac Ruiz (alias RuGI ;)) esta misma semana: <a href="http://weblogs.javahispano.org/rugi/entry/1_de_97_para_el"><strong>Para el usuario final, la IU es el sistema</strong></a>. </p>
<p>Quien no ha pensado alguna vez al entrar por ejemplo a una web, que ha podido costar varios millones de euros y tenga mucho trabajo en <em>las tripas</em>, &#8220;menuda mierda&#8221; o &#8220;debo ser tonto&#8221;&#8230; ahora mismo me vienen a la mente unas cuantas&#8230;</p>
<p>Con esto no quiero decir que yo tenga grandes conocimientos de usabilidad, es una especialidad en la que me considero un aprendiz. Pero me interesa mucho y es algo sobre lo que procuro ir aprendiendo poco a poco a base de ver(o que me hagan ver) mis errores y los de otros, procurar leer a la gente que sabe sobre el tema, y desde hace un tiempo acudir habitualmente a las reuniones de <a href="http://www.cadius-zaragoza.org/">Cadius Zaragoza</a>.</p>
<p>Bueno, este post viene a cuento de que supongo que la mayoría de gente que pasa por aquí también seréis programadores y quizás, por un casual, aún hay que convenceros de que la usabilidad es importante :). Por esto, quería anunciar y animar a asistir al <a href="http://cadius-zaragoza.blogia.com/2009/051201-iv-aniversario-de-cadius-zaragoza.php">IV aniversario de Cadius Zaragoza</a> (auspiciado por <a href="http://www.hispalinux.es/">Hispalinux</a> y el <a href="http://www.zaragoza.es/">Ayuntamiento de Zaragoza</a>), que viendo el programa tiene muy buena pinta, con la presencia de Javier Cañada que es el fundador de la comunidad <a href="http://www.cadius.org/">Cadius</a>:</p>
<ul>
<li>19:00 horas. Acto de bienvenida, a cargo de <a href="http://www.torresburriel.com/weblog/">Daniel Torres Burriel</a>, coordinador de Cadius Zaragoza</li>
<li>19:10 horas. Ponencia: “Hispalinux y la defensa de los estándares abiertos”, a cargo de <a href="http://jorgefuertes.com/">Jorge Fuertes</a> (Hispalinux)</li>
<li>19:30 horas. Ponencia: “Lectura y prensa online: diseñando para el ratito del café”, a cargo de <a href="http://vostok.es/">Javier Cañada</a> (vostok.es)</li>
<li>20:15 horas. Debate</li>
<li>20:30 horas. Networking</li>
</ul>
<p>El aniversario se celebrará en el <a href="http://maps.google.es/maps/ms?ie=UTF8&#038;msa=0&#038;msid=107540841948806547541.000469b3e57ec4d456e00&#038;ll=41.665042,-0.904012&#038;spn=0.00941,0.018797&#038;z=16">Digital Water Pavilion</a>(al lado del Pabellón Puente en el margen del barrio de La Almozara) el jueves 21 de Mayo a partir de las 19:00. Si quieres confirmar tu presencia(que no es necesario para asistir), hay <a href="http://www.facebook.com/event.php?eid=177014350374">un evento en facebook</a>.</p>
<p>Yo iré, sin duda.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.danilat.com/weblog/2009/05/13/programacion-usabilidad-y-el-iv-aniversario-de-cadius-zaragoza/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.danilat.com/weblog/2009/05/13/programacion-usabilidad-y-el-iv-aniversario-de-cadius-zaragoza/</feedburner:origLink></item>
		<item>
		<title>Sobre el Innovate!Europe 2009</title>
		<link>http://feedproxy.google.com/~r/danilat/~3/ZvnoqN9i_Uw/</link>
		<comments>http://www.danilat.com/weblog/2009/05/07/sobre-el-innovateeurope-2009/#comments</comments>
		<pubDate>Thu, 07 May 2009 01:42:27 +0000</pubDate>
		<dc:creator>dani</dc:creator>
		
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.danilat.com/weblog/?p=334</guid>
		<description><![CDATA[Esta semana, del 4 al 6 de Mayo, se ha celebrado la final del Innovate!Europe en Zaragoza. Para quien no lo conozca, es una mezcla de mentorización y competición de startups tecnológicas europeas.
Las master classes eran todas cerradas, excepto la del 4 (junto a la inauguración) que era abierto al público. Ahí tuvimos la oportunidad [...]]]></description>
			<content:encoded><![CDATA[<p>Esta semana, del 4 al 6 de Mayo, se ha celebrado la final del <a href="http://www.innovate-events.com/">Innovate!Europe</a> en Zaragoza. Para quien no lo conozca, es una mezcla de <a href="http://www.innovate-events.com/speakers-and-mentors/">mentorización</a> y competición de <a href="http://www.innovate-events.com/finalists-applicants/">startups tecnológicas europeas</a>.</p>
<p>Las master classes eran todas cerradas, excepto la del 4 (junto a la inauguración) que era abierto al público. Ahí tuvimos la oportunidad de ver a David Sifry, Marten Mickos, Yoav Leitersdorf, Maximilian Niederhofer, Barak Berkowitz, Madeline Duva y Mike Rogers en una mesa redonda moderada por Ignacio de la Vega. </p>
<p>La verdad es que no dijeron nada que sonara especialmente nuevo para los que estamos emprendiendo y leemos sobre el tema (foco, pasión, no tener miedo al fracaso, pensar en monetizar y no en inversiones, estar un poco loco&#8230;); y sobre los nuevos negocios relacionados con innovación y tecnología, sólo llamó mi atención Marten Mickos cuando nombró <a href="http://en.wikipedia.org/wiki/Open_Data">Open Data</a> (ojalá llegue a poder hacerse negocio, pero el camino tiene pinta de que será muy largo), el resto era un poco &#8220;lo de siempre&#8221; Saas, Cloud computing, tecnologías limpias&#8230; De todas maneras, se notaba que los miembros de la mesa estaban muy acostumbrados a este tipo de eventos, se les veía muy profesionales <img src='http://www.danilat.com/weblog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Ayer también estaban abiertas al público las presentaciones de los <a href="http://www.innovate-events.com/2009/05/announcing-innovateeuropes-master-class-finalists/">últimos 10 finalistas</a>, dónde hubo quien nos convenció más y menos a los <a href="http://www.shakingbox.com/">que</a> <a href="http://www.debugmodeon.com/">intercambiamos</a> <a href="http://www.biotive.com/pensieve/">opiniones</a>, pero por algo estarían entre los 10 elegidos XD. Al final, tras una larga y un tanto fuera de lugar intervención de Juan Tomás Hernani (secretario general de Innovación), se anunció la startup ganadora que fué <a href="http://www.nomadesk.com/">Nomadesk</a>.</p>
<p>Es el primer año que he podido asistir a este evento y, aunque creo que la asistencia de público al evento era más bien baja y que se haya notado un poco que las elecciones europeas están cerca XD, lo he visto bastante interesante. Sobre todo que sea en Zaragoza y Aragón, donde se encuentran pocos eventos relacionados con tecnología e innovación, a excepción de los pequeños eventos que se mueven de forma <em>independiente</em>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.danilat.com/weblog/2009/05/07/sobre-el-innovateeurope-2009/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.danilat.com/weblog/2009/05/07/sobre-el-innovateeurope-2009/</feedburner:origLink></item>
		<item>
		<title>A remix Manifesto</title>
		<link>http://feedproxy.google.com/~r/danilat/~3/UG3ane13ryc/</link>
		<comments>http://www.danilat.com/weblog/2009/04/25/a-remix-manifesto/#comments</comments>
		<pubDate>Sat, 25 Apr 2009 03:55:43 +0000</pubDate>
		<dc:creator>dani</dc:creator>
		
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.danilat.com/weblog/?p=322</guid>
		<description><![CDATA[Vía un post de Ricardo Galli, me encuentro el documental A remix Manifesto (que es un proyecto open source), que se emitió en TV3 doblado al catalán. 
El documental habla sobre los actuales problemas que sufrimos gracias a las leyes de copyright, muy centrado en el caso de la creación de remixes o mashups a [...]]]></description>
			<content:encoded><![CDATA[<p>Vía un post de <a href="http://gallir.wordpress.com/2009/04/24/edans-no-tiene-razon/">Ricardo Galli</a>, me encuentro el documental <a href="http://www3.nfb.ca/webextension/rip-a-remix-manifesto/">A remix Manifesto</a> (que es un proyecto <strong><a href="http://www.opensourcecinema.org/node/5502">open source</a></strong>), que se emitió en <a href="http://www.tv3.cat/videos/1168159/Un-manifest-del-remix">TV3 doblado al catalán</a>. </p>
<p>El documental habla sobre los actuales problemas que sufrimos <em>gracias</em> a las leyes de copyright, muy centrado en el caso de la creación de remixes o mashups a partir de otras obras, aunque se muestra también el punto de vista de consumidor.</p>
<p><embed src="http://media1.nfb.ca/medias/flash/ONFflvplayer-gama.swf" width="516" height="337" width="518" height="325" allowscriptaccess="always" allowfullscreen="true" autostart="false" flashvars="mID=IDOBJ4131&#038;image=http://media1.nfb.ca/medias/nfb_tube/thumbs_large/2009/rip-1-tv-big.jpg&#038;width=516&#038;height=337&#038;autostart=false&#038;showWarningMessages=false&#038;streamNotFoundDelay=15&#038;lang=en&#038;getPlaylistOnEnd=true&#038;embeddedMode=true"></embed></p>
<p>Y seguirán tratando de ponerle puertas al mar&#8230;</p>
<p>Por cierto, no conocía <a href="http://www.myspace.com/girltalk">Girl Talk</a>, está bastante bien <img src='http://www.danilat.com/weblog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.danilat.com/weblog/2009/04/25/a-remix-manifesto/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.danilat.com/weblog/2009/04/25/a-remix-manifesto/</feedburner:origLink></item>
		<item>
		<title>Jobsket en el podcast de debug_mode=on</title>
		<link>http://feedproxy.google.com/~r/danilat/~3/5XxPqnXcGG4/</link>
		<comments>http://www.danilat.com/weblog/2009/04/22/jobsket-en-el-podcast-de-debug_modeon/#comments</comments>
		<pubDate>Wed, 22 Apr 2009 00:50:24 +0000</pubDate>
		<dc:creator>dani</dc:creator>
		
		<category><![CDATA[Grails]]></category>

		<category><![CDATA[Java]]></category>

		<category><![CDATA[Jobsket]]></category>

		<guid isPermaLink="false">http://www.danilat.com/weblog/?p=314</guid>
		<description><![CDATA[Han publicado ya en debug_mode=on, la entrevista que nos hicieron para su primer podcast a Jordi y a mi para hablar de Jobsket. 
Para grabar la charla-entrevista, aprovechamos que yo tenía previsto un viaje a Barcelona y lo grabamos en las oficinas del SeedRocket, que es donde está trabajando actualmente el equipo de debug_mode=on. El [...]]]></description>
			<content:encoded><![CDATA[<p>Han publicado ya en <a href="http://es.debugmodeon.com/">debug_mode=on</a>, <a href="http://es.debugmodeon.com/articulo/debug_mode-on-podcast-n-001-jobsket">la entrevista que nos hicieron para su primer podcast</a> a <a href="http://jmonne.blogspot.com/">Jordi</a> y a mi para hablar de <a href="http://www.jobsket.com/">Jobsket</a>. </p>
<p>Para grabar la charla-entrevista, aprovechamos que yo tenía previsto un viaje a Barcelona y lo grabamos en las oficinas del <a href="http://seedrocket.com/">SeedRocket</a>, que es donde está trabajando actualmente el equipo de debug_mode=on. El estar todos en la misma sala, excepto <a href="http://weblogs.javahispano.org/jh/entry/integrantes_de_javahispano_jorge_rubira">Jorge Rubira</a>, hizo que poco a poco fuera más distendida la grabación(creo que se nota que también había confianza :)).</p>
<p>Hablamos bastante de qué es Jobsket como proyecto, y mucho también de cuáles son nuestras herramientas de desarrollo: Java, Grails, Groovy, Lucene, Hudson, Eclipse&#8230; incluso un poco sobre <a href="http://microformats.org/">microformats</a> y, aunque fue muy por encima, hasta sobre Grails vs Ruby on Rails.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.danilat.com/weblog/2009/04/22/jobsket-en-el-podcast-de-debug_modeon/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.danilat.com/weblog/2009/04/22/jobsket-en-el-podcast-de-debug_modeon/</feedburner:origLink></item>
		<item>
		<title>SQLite, booleanos y buenas prácticas</title>
		<link>http://feedproxy.google.com/~r/danilat/~3/Css_pja092c/</link>
		<comments>http://www.danilat.com/weblog/2009/04/21/sqlite-booleanos-y-buenas-practicas/#comments</comments>
		<pubDate>Tue, 21 Apr 2009 10:31:02 +0000</pubDate>
		<dc:creator>dani</dc:creator>
		
		<category><![CDATA[Rails]]></category>

		<guid isPermaLink="false">http://www.danilat.com/weblog/?p=300</guid>
		<description><![CDATA[Hace unas semanas estuve implementando un sencillo sistema de votaciones con la ayuda del plugin acts_as_voteable, para un proyecto con Rails, donde me surgió un problemilla que gracias a los tests resultó menos doloroso.
Tras tener ya prácticamente escrita la acción para votar, implementé el test para el controlador con sus diferentes contextos(que sí, que TDD, [...]]]></description>
			<content:encoded><![CDATA[<p>Hace unas semanas estuve implementando un sencillo sistema de votaciones con la ayuda del plugin <a href="http://github.com/jaggederest/acts_as_voteable/tree/master">acts_as_voteable</a>, para un proyecto con Rails, donde me surgió un <em>problemilla</em> que gracias a los tests resultó menos <em>doloroso</em>.</p>
<p>Tras tener ya prácticamente escrita la acción para votar, implementé el test para el controlador con sus diferentes <a href="http://dev.thoughtbot.com/shoulda/classes/Shoulda/ClassMethods.html#M000028">contextos</a>(que sí, que <a href="http://es.wikipedia.org/wiki/TDD">TDD</a>, pero uno todavía está en la fase de acostumbrarse :P). Cuando ejecuté el test por primera vez, esperando que me diera algunos fallos en mi código, me llevé la sopresa de un error SQL con origen en el plugin, que no existía la columna TRUE ¿¿en el where vote = TRUE??. </p>
<p>Lo primero fue pensar que no era posible, con ActiveRecord de por medio eso era un poco raro, por lo que las sospechas fueron para SQLite, que era el gestor de bases de datos en el entorno de tests. Probando a ejecutar los tests con una base de datos MySQL, fallaba mi código y no el del plugin, se confirmó la sospecha.</p>
<p>Una vez implementada completamente la funcionalidad y los tests pasando, tocó perder unos minutos para ver qué estaba pasando y <a href="http://www.google.es/search?q=sqlite+boolean&#038;ie=utf-8&#038;oe=utf-8&#038;aq=t&#038;rls=org.mozilla:es-ES:official&#038;client=firefox-a">google contesta rápido</a>. Resulta que para utilizar booleanos en queries con SQLite debe utilizarse <a href="http://chriscraig.net/blog/sqlite-boolean-true-or-false/">&#8216;true&#8217; y &#8216;false&#8217;</a>, al mirar el código del plugin se confirmaba el problema:</p>
<p><code><br />
votes = Vote.find(:all, :conditions => [<br />
  "voteable_id = ? AND voteable_type = ? AND vote = TRUE",<br />
  id, self.type.name<br />
])<br />
</code></p>
<p>El valor de vote estaba <em>hardcoded</em>, pues como tocaba cambiar el código, aproveché a cambiar self.type que está deprecated, por self.class:</p>
<p><code><br />
votes = Vote.find(:all, :conditions => [<br />
  "voteable_id = ? AND voteable_type = ? AND vote = ?",<br />
  id, self.class.name, true<br />
])<br />
</code></p>
<p>Y al ejecutar los tests con SQLite, los pasó. Pero luego resulta que había alguien que ya había solucionado el problema, como era de esperar en la comunidad Rails, en el plugin <a href="http://github.com/peteonrails/vote_fu/tree/master">vote_fu</a> (llegando a combinar funcionalidades complementarias de tres plugins distintos).</p>
<p>Después de crear la migración para eliminar la tabla de acts_as_voteable y crear la de vote_fu, ejecuté los tests del controlador para ver si tocaba cambiar algo, pero pasaban correctamente.</p>
<p>Conclusiones, además de lo aprendido con los booleanos de SQLite:</p>
<ul>
<li>Aprovechar (en la medida de lo posible) la independencia de bases de datos que aportan ActiveRecord u otros ORMs, sobre todo si estamos desarrollando componentes reutilizables.</li>
<li>Y a procurar seguir mejorando en cuanto a la automatización de tests. Desde que empecé a escribir tests, hago commits con la conciencia más tranquila :).</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.danilat.com/weblog/2009/04/21/sqlite-booleanos-y-buenas-practicas/feed/</wfw:commentRss>
		<feedburner:origLink>http://www.danilat.com/weblog/2009/04/21/sqlite-booleanos-y-buenas-practicas/</feedburner:origLink></item>
	</channel>
</rss>
