<rss version="2.0" 
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:content="http://purl.org/rss/1.0/modules/content/" 
>
<channel>
<title>mamuso.net</title>
<link>http://mamuso.net</link>
<description></description>
<language>es-es</language>



<image>
	<url>http://a4.lacoctelera.com/myfiles/mamuso/v2-200-thumb-10344-mamuso2-065x65.gif</url>
	<title>mamuso.net</title>
	<link>http://mamuso.net</link>
</image>
<generator>the-shaker v0.1. More on http://www.the-shaker.com</generator>


<item>
<title>Maquetar para desarrollo</title>
<link>http://mamuso.net/post/2008/08/25/maquetar-desarrollo</link>
<pubDate>2008-08-25T01:59:40+00:00</pubDate>
<category domain="http://mamuso.net">código</category>
<category domain="http://mamuso.net">web</category>
<content:encoded><![CDATA[<p>Desde hace meses he ido incorporando de manera bastante natural a mi rutina de maquetación pequeños detalles que ayudan a que el engranaje entre la maqueta y la implementación en un proyecto web sea un poquito más sencillo. La mayoría son obviedades, sentido común fácil de incorporar a nuestro día a día.</p>
<p>Muchos de estos "vicios" los heredé de <a href="http://www.furilo.com/">Álvaro</a> y <a href="http://limalimon.com.es/">María</a> y otros los he ido incorporando a base de trabajo y de integrar html en desarrollo, pero sobre todo a base de equivocarme mucho, que también es necesario.</p>
<p>Esto es lo que a mi me funciona, es más que probable que no descubras nada nuevo:</p>
<h3>Comentar y tabular:</h3>
<p>Un código bien tabulado siempre es más legible independientemente del lenguaje que estemos escribiendo. Si la maquetación se hace en equipo siempre está bien llegar a un acuerdo sobre el tipo de tabulación que se va a usar. Yo me encuentro cómodo con 4 espacios, pero es cuestión de gustos.</p>
<p>Es muy útil marcar con un comentario el final de los divs principales para siempre tener localizado dónde se cierra.</p>
<p><code>
<pre>      &lt;div id="content"&gt;          ...      &lt;/div&gt;&lt;!-- #content --&gt; </pre>
<p> </code></p>
<p>Tampoco está de más marcar con un comentario el comienzo y fin de bloques específicos, por ejemplo: &lt;!-- ultimos comentarios --&gt; o &lt;!-- listado de profesores --&gt;</p>
<p>Es la manera más fácil de no volvernos locos al abrir nuestro trabajo cuando ya no lo tengamos fresco.</p>
<h3>Primero el marcado, después el estilo:</h3>
<p>No hablo de escribirte todo el html de la página que vayas a maquetar, pero es muy fácil identificar los bloques que van a funcionar como unidad.</p>
<p>Pon el esfuerzo en escribir un html limpio y semántico en lugar de ir saltando entre la hoja de estilo y el html desde el principio. A mi esto me da muy buen resultado, pero hay quien prefiere ver una evolución más gradual mientras trabaja.</p>
<h3>Mantén limpio tu html y hereda:</h3>
<p>Todos hemos pasado una fase de 'classitis' :) Un uso correcto de la herencia nos evita este problema. Al integrar el html la mayoría de los desarrolladores son cuidadosos, pero un código limpio les facilita bastante las cosas, reduce el margen de error y es más sostenible. </p>
<p>Un ejemplo podría ser este: </p>
<p><code>
<pre>  	&lt;ul id=&quot;menu&quot;&gt; 	   &lt;li&gt;&lt;a href=&quot;#&quot;&gt;01&lt;/a&gt;&lt;/li&gt; 	   &lt;li class=&quot;active&quot;&gt;&lt;a href=&quot;#&quot;&gt;02&lt;/a&gt;&lt;/li&gt; 	   &lt;li&gt;&lt;a href=&quot;#&quot;&gt;03&lt;/a&gt;&lt;/li&gt; 	   &lt;li&gt;&lt;a href=&quot;#&quot;&gt;04&lt;/a&gt;&lt;/li&gt; 	   &lt;li&gt;&lt;a href=&quot;#&quot;&gt;05&lt;/a&gt;&lt;/li&gt; 	&lt;/ul&gt; </pre>
<p></code></p>
<p>Marcando la clase en el li en lugar de en el enlace podemos actuar sobre dos elementos para componer nuestro estilo 'active'.</p>
<h3>Menos no siempre es más:</h3>
<p>Se que mucha gente está a favor de poner únicamente el html necesario, ni más ni menos. Yo estoy totalmente de acuerdo siempre y cuando sepamos a ciencia cierta que un cambio en una estructura del html dentro de unos meses no va a generarnos más dolores de cabeza de los necesarios. </p>
<p>Con toda la cautela del mundo, a veces un div de más rodeando un bloque de contenido nos da el juego suficiente para cosas tan básicas como ajustar detalles entre distintos navegadores. Siempre es más fácil añadir un poquito más de CSS que destripar una aplicación en producción.</p>
<p>Aclaro que no hablo más que de <em>un poquito</em>, un elemento para ajustar padding, para dar un sobrefondo en un momento determinado, etc, no estoy justificando un chorro de <em>sobre-html</em> que se pega con la filosofía de mantener el código lo más limpio posible.</p>
<h3>Establece algún criterio de calidad:</h3>
<p>En todas las fases de un proyecto deberían de haber reglas de control que nos ayudasen a asegurar que nuestro trabajo sea lo suficientemente bueno. El criterio de calidad más usual en el caso de la maquetación es el de validar tanto html como CSS.</p>
<p>Que un código valide no significa que esté bien, pero sí que no se nos ha olvidado cerrar ninguna etiqueta.</p>
<p>Esto nos lleva a otro criterio más, que es probar nuestro trabajo en los navegadores que exija la ruta del proyecto, que por lo general suelen ser 4 - 5.</p>
<p>Yo además, siempre que es posible paso trozos complicados de código a compañeros de trabajo o de fatigas para tener siempre una segunda opinion, que normalmente no es objetiva, pero que nos aporta un punto crítico.</p>
<h3>Usa convenciones:</h3>
<p>Usar patrones en esquemas básicos que se repiten a lo largo de todo un site nos facilita el trabajo a nosotros y a los integradores. </p>
<p>El ejemplo más fácil de explicar sería el de marcar el elemento activo en un menú. Normalmente tenemos una navegación principal y una secundaria al menos. Pues podríamos convenir que los menús siempre son listas, y que el elemento activo se va a marcar en el li con una clase 'active'.</p>
<h3>Minimiza el impacto de los cambios:</h3>
<p>Quiérete a ti y a los que te rodean y utiliza todos los medios que tienes a tu alcance para no perder ni tu código ni tu tiempo. </p>
<p>Mete todo tu código en un control de versiones. Da igual el que sea, el que más fácil te resulte o el que menos infraestructura vaya a requerir. Los más famositos son subversion, csv y últimamente está muy e moda git. Dedicale un ratito a aprender los 4 comandos básicos y nunca vuelvas a perder un solo archivo.</p>
<p>Utiliza herramientas que te ayuden a hacer el trabajo mecánico. Todos hemos recibido un cambio en la cabecera en un proyecto en el que ya hay 50 maquetas ya hechas :) Si hacemos un reemplazo masivo corremos el riesgo de cambiar lo que no debemos. Si hacemos el cambio en una sola maqueta y avisamos de dónde está el cambio vía mail / viva voz / paloma mensajera corremos el riesgo totalmente innecesario de que el que finalmente va a trabajar con las maquetas no reciba el recado.</p>
<p>Cualquier método que nos permita trabajar con el concepto de 'include' nos puede valer, pero los más útiles son los que generan html estático. Una buena solución si no le tienes miedo a programar un poquito sería <a href="http://nanoc.stoneship.org/">nanoc</a>, que además está <a href="http://www.kekoponte.com/?p=36">bastante documentado</a>. </p>
<h3>Intercambia conocimientos:</h3>
<p>Habla con la gente que trabaja contigo, intercambia opiniones, trata de conocer sus problemas a la hora de afrontar lo que tú les vas a enviar porque es la mejor manera de que todo salga bien.</p>
<p>Discute con otra gente tus métodos. Hace unos días tuvimos una pequeña reunión varios compañeros para poner en común formas de trabajar y surgieron temas interesantísimos que no salen de ninguna otra manera.</p>
<p>Todos los puntos anteriores son matizables, incluso algunos totalmente prescindibles, pero son un buen comienzo :)
</p>
</p></p>]]></content:encoded>
<comments>
http://mamuso.net/post/2008/08/25/maquetar-desarrollo#comentarios
</comments>
</item>

<item>
<title>Tallercito de APIs OMF</title>
<link>http://mamuso.net/post/2008/07/02/tallercito-apis-omf</link>
<pubDate>2008-07-02T11:14:47+00:00</pubDate>
<content:encoded><![CDATA[<p>Mañana por la tarde nos vamos a reunir en el <a href="http://aulathecocktail.pbwiki.com/">aula de the cocktail</a> para hablar sobre web, móviles y APIs. La idea es hacer una breve introducción a las posibilidades que nos dan las APIs de <a href="http://open.movilforum.com/">open movilforum</a>, nada extenso, ver un poquito de código sobre unos ejemplos muy básicos para hacernos a una idea de que es fácil jugar.</p>
<p>Teniendo en cuenta que hay gente apuntada al curso que tiene que ya ha hecho cositas con estas y otras APIs creo que lo más enriquecedor sería abrir un debate entre todos los asistentes sobre modelos de interacción entre móvil y aplicaciones (web o no), patrones, qué es útil y qué no.</p>
<p>Y justo después... <a href="http://unvlog.com/html/party.html">fiesta unvlog!!</a></p>
<p>Todavía estás a tiempo de <a href="http://aulathecocktail.pbwiki.com/Taller-de-APIs-de-OpenMovilforum">apuntarte</a>.
</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2008/07/02/tallercito-apis-omf#comentarios
</comments>
</item>

<item>
<title>de viaje con iwannagothere.net</title>
<link>http://mamuso.net/post/2008/06/14/de-viaje-con-iwannagothere-net</link>
<pubDate>2008-06-14T01:29:50+00:00</pubDate>
<category domain="http://mamuso.net">web</category>
<content:encoded><![CDATA[<p><img src='http://www.lacoctelera.com/myfiles/mamuso/iwanna.png' width='200' height='65' class='imgIzq'/>Esta semana hemos abierto al público <a href="http://iwannagothere.net">iwannagothere.net</a>. Es un servicio pensando para viajeros desde el punto de vista activo y pasivo. Puedes compartir tus lugares y consejos sacados de tu experiencia viajera, o bien generar tu ruta a partir del contenido que ya hayan dado de alta otros viajeros.</p>
<p>La idea partió de <a href="">María</a>, y ella <a href="http://www.limalimon.com.es/2008/06/10/iwannagotherenet/">os explica</a> mejor que yo de dónde ha surgido la idea y cómo nos hemos metido en este lío. Es el primer desarrollo grande fuera de <a href="http://the-cocktail.com/">the cocktail</a> que hago con ella y ha sido tremendamente enriquecedor. </p>
<p>En la parte de desarrollo el que ha partido la pana ha sido <a href="http://www.inwebwetrust.net/">Blat</a>. Cualquier cosa que diga sobre él se queda corta.</p>
<p>En estos proyectos personales donde se barajan ilusiones pero no dinero es imprescindible poder ser totalmente transparente con tus compañeros para que puedan saltar de 'servilletas en los bares' a realidades más o menos ambiciosas.</p>
<p><strong>Lo que sabemos:</strong> El proyecto se nos ha ido haciendo muy grande durante el proceso de creación. De hecho ha sido largo y con miles de pequeñas batallas sobre cómo hacer esto o aquello.</p>
<p>Finalmente, sabiendo que no está todo hilado y que tenemos casi tanto camino por recorrer como el que ya hemos recorrido, hemos sacado una beta. Somos conscientes de que tiene miles de carencias a todos los niveles, pero es la única manera de empezar en este tipo de proyectos. Además las críticas del entorno, de la gente que escribe sobre el proyecto y de la que escribe <u>en</u> el proyecto son muy útiles unas veces para descubrir dónde te has equivocado y otras para confirmar lo que ya sabías.</p>
<p>Esto significa que durante los próximos meses iwanna se irá transformando y mejorando para hacer la experiencia de uso mucho más agradable.</p>
<p><strong>Lo que nos gustaría:</strong> Puestos a mirar alto nos gustaría llegar a ser una guía de viajes completa, muy completa.</p>
<p>El componente social se convierte en algo importante, pero tal vez no apto para los colonizadores de amigos en redes sociales. En iwanna no tiene sentido entrar, añadir y esperar. Para que la aplicación empiece a ser útil y se puedan crear rutas interesantes un buen puñado de usuarios tiene que haber contribuido con información.</p>
<p>Postear no es fácil si se busca aquella información que te hubiese gustado encontrarte en una guía, con toda la carga subjetiva que eso supone. </p>
<p>Sólo tras unos meses de rodaje y mucho trabajo sabremos si funciona o sólo ha sido una bonita experiencia.</p>
<p>A título totalmente personal. Sé que tenemos muchos puntos tangentes con otros proyectos y que las comparaciones son inevitables. Hemos querido construir por encima de todo una guía de viajes colaborativa, no un directorio de empresas, no un lugar donde la gente cuente sus viajes como una experiencia global. Nuestra primera tarea es resaltar nuestras diferencias y eso nos va a ayudar a evolucionar como servicio.</p>
<p>Esperamos veros por nuestra <a href="http://iwannagothere.net/">iwanna</a> :)</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2008/06/14/de-viaje-con-iwannagothere-net#comentarios
</comments>
</item>

<item>
<title>Fiesta unvlog!!</title>
<link>http://mamuso.net/post/2008/06/11/fiesta-unvlog</link>
<pubDate>2008-06-11T22:35:50+00:00</pubDate>
<content:encoded><![CDATA[<p>Peroperopero que requetebonico es que los usuarios de <a href="http://unvlog.com/">unvlog.com</a> nos hayan organizado una fiesta!!! Si me diesen un céntimo cada vez que digo en "sólo por esto ya ha merecido la pena hacer unvlog" sería un hombre rico, pero me conformo con ser un hombre feliz.</p>
<p>No sólo se han currado el organizar la fiesta, sino que además han hecho videoconvocatorias. Por aquí la de <a href="http://unvlog.com/isabl/">isabl</a> + <a href="http://unvlog.com/xurde/">xurde</a>:</p>
<object width="400" height="300">
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="movie" value="http://www.vimeo.com/moogaloop.swf?clip_id=1144454&amp;server=www.vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" />
<embed src="http://www.vimeo.com/moogaloop.swf?clip_id=1144454&amp;server=www.vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="300"></embed>
</object>
<p>Y por aquí el gran <a href="http://unvlog.com/gorriti/">gorriti</a>.</p>
<object width="400" height="225">
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="movie" value="http://www.vimeo.com/moogaloop.swf?clip_id=1123687&amp;server=www.vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" />
<embed src="http://www.vimeo.com/moogaloop.swf?clip_id=1123687&amp;server=www.vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="225"></embed>
</object>
<p><strong>Así que nos vemos el 3 de julio en  <a href="http://11870.com/pro/58526">Sideral Club</a>, en Madrid!</strong>
</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2008/06/11/fiesta-unvlog#comentarios
</comments>
</item>

<item>
<title>Taller sobre la API de 11870.com</title>
<link>http://mamuso.net/post/2008/04/23/taller-sobre-api-11870-com</link>
<pubDate>2008-04-23T12:16:34+00:00</pubDate>
<content:encoded><![CDATA[<p>Seguro que ya todos conocéis 11870 y que tienen una <a href="http://11870.com/api" title="http://11870.com/api" id=link_0>API fantástica</a> y llena de posibilidades. La <a href="http://groups.google.com/group/api-11870/web" title="http://groups.google.com/group/api-11870/web" id=link_1>documentación</a> lo pone todo MUY sencillito, pero seguro que te falta un empujón para ponerte a jugar.</p>
<p>La oportunidad de quitarte la pereza de encima viene en forma de <a href="http://11870.com/blog/taller-sobre-la-api-de-11870com/" title="http://11870.com/blog/taller-sobre-la-api-de-11870com/" id=link_2>taller</a> en sus <a href="http://11870.com/pro/11870">oficinas</a> (Virgen de los Peligros 3, 3º izquierda). Será mañana jueves 24 de abril a las 19:30.</p>
<p>Tienes que confimarles asistencia :) Nos vemos allí!</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2008/04/23/taller-sobre-api-11870-com#comentarios
</comments>
</item>

<item>
<title>unvlog.com</title>
<link>http://mamuso.net/post/2007/11/21/unvlog-com</link>
<pubDate>2007-11-21T00:37:13+00:00</pubDate>
<content:encoded><![CDATA[<p><img src="http://www.lacoctelera.com/myfiles/mamuso/uv1.png" id="img_1" class="imgcen" height="202" width="420"></p>
<p>Hoy es un día de esos en los que sueltas al mundo algo en lo que has puesto mucha ilusión, y la verdad estoy muy contento :)</p>
<p>Hace un puñao de meses <a href="http://denegro.com">alberto</a> puso <a href="http://twitter.com/denegro/statuses/92202372">este twitt</a>. En un par de días <a href="http://www.inwebwetrust.net/">blat</a>, alberto y yo estábamos en un bar (donde se forjan los proyectos de verdad) hablando de esto. Alberto tenía una idea, y nosotros podíamos construirla.</p>
<p>Y así al final cada uno hemos puesto nuestro pequeño granito de arena, pasando por épocas buenas, malas e incluso un agosto hemos ido haciendo <a href="http://unvlog.com">unvlog</a>. A todo este esfuerzo se han unido las ilustraciones de dos señores estupendos como son <a href="http://unvlog.com/sputnik">dani</a> (arriba) y <a href="http://www.kokekoko.com/">puño</a> (abajo). He de decir que todo el mundo flipa con las ilustraciones (<a href="http://twitter.com/szy/statuses/430272852">tweet</a>) y no es para menos.</p>
<p>Hace muy poquito empezamos con las cuentas para amiguitos, y fue cuando empezamos a notar que todo el cariño que se había puesto en el proyecto venía de vuelta cuando gente que te importa y a la que respetas <a href="http://twitter.com/furilo/statuses/380003372">habla</a> <a href="http://twitter.com/maguisso/statuses/430122712">maravillas</a> (me dejo tweets, lo se).</p>
<p>Como colofón a tanta felicidad el viernes presentamos a la criatura <a href="http://ponencias.conferenciarails.org/charlas/ver/39">en sociedad</a>. Esperemos que nos acojan con el mismo cariño que todos los que ya habitan vuestro <a href="http://unvlog.com">unvlog</a>.</p>
<p><img src="http://www.lacoctelera.com/myfiles/mamuso/uv2.png" id="img_0" class="imgcen" height="217" width="420"></p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/11/21/unvlog-com#comentarios
</comments>
</item>

<item>
<title>Youtube, dame el flv!! (con ruby)</title>
<link>http://mamuso.net/post/2007/10/13/youtube-dame-flv-con-ruby-</link>
<pubDate>2007-10-13T21:52:18+00:00</pubDate>
<category domain="http://mamuso.net">web</category>
<category domain="http://mamuso.net">Ruby on Rails</category>
<content:encoded><![CDATA[<p>Hola de nuevo! Vuelvo a la carga tras mi temporada de <em>barbecho digital bloguero</em> en la que he hecho en <a href="http://the-cocktail.com/">the cocktail</a> cosas tan divertidas y bonitas como la web de <a href="http://www.mtv.es/">mtv españa</a>. Qué voy a decir yo que no haya dicho <a href="http://www.furilo.com/archivos/nueva-mtves-on-rails/">álvaro</a>.</p>
<p>Ahora a divertirme. Jugando con la <a href="http://code.google.com/apis/youtube/overview.html">api de youtube</a> vemos que podemos conseguir lo básico para poder tirar de su información con nuestra aplicación. Tenemos una <a href="http://rubyforge.org/projects/youtube">gema</a> que nos hace la vida más fácil.</p>
<p>Lo único que no nos devuelve la api de youtube directamente es la url del flv que va a cargar su player. No es que nos valga para muchas cosas, pero en casos concretos nos puede interesar (nah, nada de detalles).</p>
<p>Pongamos el caso de la url <a href="http://www.youtube.com/watch?v=0xaX7ZfX054" id=link_0>este video</a>. La anatomía de la url (http://www.youtube.com/watch?v=0xaX7ZfX054) nos da la id del video, y incluso sin tirar de la gema sabremos que la url del player es http://www.youtube.com/v/0xaX7ZfX054.</p>
<p>La url directa al flv no es tan intuitiva de construir.</p>
<p>http://www.youtube.com/get_video.php?video_id=<strong>la sabemos</strong>&t=<strong>token de youtube a averiguar</strong></p>
<p>Así que con un poquito de ruby (y definiendo un método string.to_hash):</p>
<pre><code>require 'open-uri'  class String    def to_hash(seperation='&', assignment='=')      hash = Hash.new      self.split(seperation).each do |elemement|        pieces = elemement.split(assignment)        hash[pieces[0]] = pieces[1]      end      hash.delete_if { |key, value| value.nil? }    end end   def get_flv(url)   getparams = nil   open(url) {|f|       getparams = f.base_uri.request_uri.split("?")[1]   }   unless getparams.nil?     parameters = getparams.to_hash()     url = "http://www.youtube.com/get_video.php?video_id=#{parameters['video_id']}&t=#{parameters['t']}"   end     return url end</code></pre>
<p>Así con una simple llamada a <strong>get_flv('http://www.youtube.com/v/0xaX7ZfX054')</strong> nos devolverá la <a href="http://www.youtube.com/get_video.php?video_id=0xaX7ZfX054&t=OEgsToPDskJ_JHFl8zS1WwaXhao1aBaI">url al flv</a>.</p>
<p>A disfrutar!</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/10/13/youtube-dame-flv-con-ruby-#comentarios
</comments>
</item>

<item>
<title>Se busca!</title>
<link>http://mamuso.net/post/2007/07/17/se-busca-</link>
<pubDate>2007-07-17T19:17:23+00:00</pubDate>
<content:encoded><![CDATA[<p>En <a href="http://www.the-cocktail.com">the cocktail</a> estamos buscando programadores de rails. Estamos trabajando en proyectos realmente interesantes para nuestros clientes, y siempre tenemos proyectos propios, como esta nuestra <a href="http://www.lacoctelera.com">coctelera</a> :)</p>
<p>Echadle un vistazo a nuestra <a href="http://the-cocktail.com/empleo.html">página de empleo</a> y si tu perfil encaja (más o menos) con lo que pedimos ya estáis enviándonos el curriculum!! Y si no encaja envíalo igual, siempre estamos abiertos a conocer a personas interesantes.
</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/07/17/se-busca-#comentarios
</comments>
</item>

<item>
<title>Nunca es fácil matar a tu propio proyecto</title>
<link>http://mamuso.net/post/2007/07/15/nunca-es-facil-matar-tu-propio-proyecto</link>
<pubDate>2007-07-15T03:58:52+00:00</pubDate>
<category domain="http://mamuso.net">mamuso</category>
<category domain="http://mamuso.net">Ruby on Rails</category>
<content:encoded><![CDATA[<p>Hace MUCHO que comencé a andar con smupf, cuando todavía era una buena idea. Como toda buena idea pedía a gritos una ejecución rápida e imperfecta impulsada por una buena dosis de ilusión, pero fue a parar conmigo (uno no elige a sus padres) y se fué atascando en sucesivos bucles de refinado y reescritura.</p>
<p>El proyecto se basa (basaba más bien) en la creación de un interfaz para el blogueo de mapas tomando como base google maps y como público aquellos que nunca tocarán una línea de su api. He perdido muchas horas definiendo la interacción, y una cantidad vergonzosa de tiempo desarrollando adelante y atrás, empollando apis e incorporando ideas. </p>
<p>Y el perfeccionismo mató a la idea.</p>
<p>Ahora existe la opción de 'mis mapas', que lejos de quedarse en un pequeño servicio, va creciendo en funcionalidad a pasos agigantados, así que la posibilidad de bloguear un mapa desde el propio google es cuestión de tiempo, y es totalmente imbatible.</p>
<p>Duele un poquito decidir que quieres dejar de hacer una cosa a la que le has dedicado tantísimo tiempo y de la que has hablado a la gente que te importa, pero es necesario cerrar los viejos proyectos antes de afrontar los nuevos.</p>
<p>Esta decisión se me hace un poquito más dramática porque la he tomado mientras terminaba de crear una cuentas de prueba para los sospechosos habituales (esos que me importan) y que iban a ser convenientemente enviadas esta semana.</p>
<p>Acaba de subir la revisión 779 al repositorio, y ahí quedará para recordarme que la próxima vez debo de ser más rápido.</p>
<p>De todo esto queda una bonita experiencia, un camino de aprendizaje que no siempre ha sido fácil y un plugin para rails :)</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/07/15/nunca-es-facil-matar-tu-propio-proyecto#comentarios
</comments>
</item>

<item>
<title>Related Articles: Plugin para mephisto (beta)</title>
<link>http://mamuso.net/post/2007/05/06/related-articles-plugin-mephisto-beta-</link>
<pubDate>2007-05-06T20:35:16+00:00</pubDate>
<category domain="http://mamuso.net">código</category>
<category domain="http://mamuso.net">herramientas</category>
<content:encoded><![CDATA[<p>Ya le he dado algo de rodaje al plugin y creo que se puede sacar. Toda la explicación de qué es el plugin, para qué, y cómo funciona está en el <a href="http://www.lacoctelera.com/mamuso/post/2007/04/29/related_articles-plugin-mephisto-" title="http://www.lacoctelera.com/mamuso/post/2007/04/29/related_articles-plugin-mephisto-" id=link_0>post anterior</a>, así que no me repito.</p>
<p>Esta release (totalmente beta) la podeis instalar en vuestro <a href="http://mephistoblog.com/" title="http://mephistoblog.com/" id=link_1>mephisto</a>:</p>
<p>Si quereis curiosear código pasaos por <a href="http://www.mamuso.net/svn/" title="http://www.mamuso.net/svn/" id=link_2>este svn</a> (si dreamhost os deja).</p>
<p>Creo que no hace falta decirlo, pero cualquier feedbak será bienvenido.
</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/05/06/related-articles-plugin-mephisto-beta-#comentarios
</comments>
</item>

<item>
<title>Related_articles, un plugin para mephisto.</title>
<link>http://mamuso.net/post/2007/04/29/related_articles-plugin-mephisto-</link>
<pubDate>2007-04-29T13:52:00+00:00</pubDate>
<category domain="http://mamuso.net">código</category>
<content:encoded><![CDATA[<p>Bueno, aunque sólo sea para justificar el tiempo que llevo sin escribir por aquí, lo hago con algo más o menos consistente :)</p>
<p>He hecho un plugin para el sistema de blogs <a href="http://mephistoblog.com/">mephisto</a>. El plugin funciona poniendo en relación artículos por medio de sus tags. Esta funcionalidad (tontísima) es bastante útil si eres más o menos disciplinado con los tags de tu blog.</p>
<p>Por defecto saca los últimos 5 artículos que tengan 2 (o más) tags coincidentes, pero estos parámetros se pueden configurar. </p>
<p><img src="http://www.lacoctelera.com/myfiles/mamuso/mephistoplugin_1.png" id="img_0" class="imgcen"/></p>
<p>En próximos días lo pondré en un repositorio de plugins (o al menos público), pero para eso hacen falta pulir dos cositas:</p>
<ul>
<li>Hacer los tests de rigor (para lo que necesito engañar a <a href="http://inwebwetrust.net/">blat</a>)</li>
<li>Solucionar el caso en el que no hayan artículos relacionados.</li>
</ul>
<p>Mientras tanto lo podéis ver en acción en <a href="http://www.madeonvinyl.com/2007/3/25/el-flying-fortress-vuela-de-verdad">madeonvinyl</a>.</p>
<p>A pesar de todo, si alguien con mephisto lo quiere probar que me de un silbidito que se lo paso.</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/04/29/related_articles-plugin-mephisto-#comentarios
</comments>
</item>

<item>
<title>Creando mapas sobre Google Maps</title>
<link>http://mamuso.net/post/2007/04/08/creando-mapas-sobre-google-maps</link>
<pubDate>2007-04-08T18:19:16+00:00</pubDate>
<content:encoded><![CDATA[<p>Hoy me he dado cuenta que <a href="http://maps.google.es/" title="http://maps.google.es/" id="link_0">google maps</a>  ha incorporado la pestaña 'Mis mapas', y la verdad es que la aplicación está bastante bien (quién mejor que ellos).</p>
<p><img src="http://www.lacoctelera.com/myfiles/mamuso/gmapstu2.png" id="img_2" class="imgcen" height="323" width="320"></p>
<p>Se parece bastante a lo que pretendía ser el always procrastinated smupf (hijos, ahora volveré a tratar de centrarme y reconducirlo).</p>
<p>Que google permita hacer mapas con la <a href="http://www.google.com/apis/maps/" title="http://www.google.com/apis/maps/" id="link_0">pedazo de api</a>  que tiene por detrás, y con las posibilidades que nos permite aplicando un poquito de imaginación, no sorprende (pronto saldrá el experimentos que hicimos para el <a href="http://www.lacoctelera.com/mamuso/post/2007/03/14/taller-apis-the-cocktail" title="http://www.lacoctelera.com/mamuso/post/2007/03/14/taller-apis-the-cocktail" id="link_1">taller de apis</a>, vease imagen).</p>
<p><img src="http://www.lacoctelera.com/myfiles/mamuso/livemap.png" id="img_0" class="imgcen" height="196" width="436"> </p>
<p>Lo que me sorprende es que usen 'tu' en cursiva :)</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/04/08/creando-mapas-sobre-google-maps#comentarios
</comments>
</item>

<item>
<title>Raz&amp;oacute;n 3489 para plantearme comprar una moto</title>
<link>http://mamuso.net/post/2007/03/30/raz-n-3489-plantearme-comprar-moto</link>
<pubDate>2007-03-30T20:14:57+00:00</pubDate>
<content:encoded><![CDATA[<p>Si del punto A al punto B andando tardas X, el tiempo que tardas en metro deber&iacute;a de ser al menos sensiblemente inferior, sobre todo si es viernes por la tarde y hay 3 personas en el metro.</p>
<p>Posteado desde MarsEdit.
</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/03/30/raz-n-3489-plantearme-comprar-moto#comentarios
</comments>
</item>

<item>
<title>Fiesta, Fiesta, Fiesta!!!!</title>
<link>http://mamuso.net/post/2007/03/20/fiesta-fiesta-fiesta-</link>
<pubDate>2007-03-20T10:46:30+00:00</pubDate>
<content:encoded><![CDATA[<p><img src="http://www.lacoctelera.com/myfiles/mamuso/lacoctelera_chapa.png" id="img_0" style="border: medium none ;" class="imgizqda" height="200" width="200">Que sí, que sí, que nos vamos este jueves de fiesta y va a ser antológica!!!</p>
<p>El jueves en Madrid, en <a href="http://11870.com/pro/20768" title="http://11870.com/pro/20768" id="link_0">pleno centro</a>, los cocteleros celebramos la salida de la nueva coctelera, y no queremos que se lo pierda nadie, así que <a href="http://www.lacoctelera.com/fiesta" title="http://www.lacoctelera.com/fiesta" id="link_1">apúntate</a>, que vamos a ir todos.</p>
<p>Antonio Martinez le dijo a unos amigos que se apuntasen con él a la fiesta, que los cocteleros somos mu buena gente, y al día siguiente quedó encerrado con una sueca en el ascensor de su edificio, que desde entonces se ha convertido en la mujer de su vida.</p>
<p>Leonardo García pasó de la fiesta de <a href="http://www.lacoctelera.com/" title="http://www.lacoctelera.com/" id="link_2">la coctelera</a>  y al día siguiente pisó una caquita de perro, le rayaron el coche y cuando fue a almorzar como cada día NO QUEDABA TORTILLA DE PATATAS!!!</p>
<p>Tú mismo ¿no te apuntas?</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/03/20/fiesta-fiesta-fiesta-#comentarios
</comments>
</item>

<item>
<title>Taller de APIS en the cocktail</title>
<link>http://mamuso.net/post/2007/03/14/taller-apis-the-cocktail</link>
<pubDate>2007-03-14T17:51:44+00:00</pubDate>
<category domain="http://mamuso.net">mamuso</category>
<category domain="http://mamuso.net">código</category>
<content:encoded><![CDATA[<p>El próximo miércoles 28 de marzo a las 7 y media hay taller en el aula de la <a href="http://www.the-cocktail.com" title="http://www.the-cocktail.com" id="link_0">gran corporación</a>.</p>
<p>Si te interesa el tema de las APIS, no puedes faltar. El taller hablaremos:</p>
<ul>
<li>Carlos, de <a href="http://nvivo.es">nvivo.es</a>, que nos hablara de las apis de MusicBrainz, Last.fm/Audiscrobbler y MyStrands/OpenStrands.
 </li>
<li>María, mi gran compañera de mesa y maquetas, de <a href="http://limalimon.com.es">limalimon.com.es</a> y <a href="http://the-cocktail.com">the-cocktail.com</a>, que trabajará sobre la api de Flickr</li>
<li>Y yo mismo, <a href="http://the-cocktail.com">the-cocktail.com</a> proud member, que contaré cosas de la de GoogleMaps</li>
</ul>
<p>El taller es abierto (aunque el aforo limitado, apuntate!!).</p>
<p>Más información e inscripciones por <a href="http://aulathecocktail.pbwiki.com/Taller%20APIs" title="http://aulathecocktail.pbwiki.com/Taller%20APIs" id="link_1">aquí</a> .</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/03/14/taller-apis-the-cocktail#comentarios
</comments>
</item>

<item>
<title>Mephisto y gravatar</title>
<link>http://mamuso.net/post/2007/03/09/mephisto-y-gravatar</link>
<pubDate>2007-03-09T09:57:03+00:00</pubDate>
<category domain="http://mamuso.net">herramientas</category>
<content:encoded><![CDATA[<p>Si eres de los que usa mephisto y te has planteado poner <a href="http://site.gravatar.com/" title="http://site.gravatar.com/" id="link_0">gravatar</a>  en tus comentarios, resulta que la cosa es mucho más fácil de lo que parece.</p>
<p>La librería que liquid incorpora por defecto nos permite hacerlo de esta forma tan sencilla. Dentro del bucle de comentarios se pone:</p>
<pre> <code>{{ comment | gravatar:40,'avatarpordefecto.png' }}</code> </pre>
<p>Es una tontuna, pero es mucho más fácil que hacerlo desde cero (que es lo que me había planteado :) )</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/03/09/mephisto-y-gravatar#comentarios
</comments>
</item>

<item>
<title>Jugando con Hpricot</title>
<link>http://mamuso.net/post/2007/02/24/jugando-con-hpricot</link>
<pubDate>2007-02-24T00:13:40+00:00</pubDate>
<category domain="http://mamuso.net">código</category>
<category domain="http://mamuso.net">web</category>
<category domain="http://mamuso.net">Ruby on Rails</category>
<category domain="http://mamuso.net">herramientas</category>
<content:encoded><![CDATA[<p><img src="http://www.lacoctelera.com/myfiles/mamuso/hpricot-small.png" id="img_0" align="left" height="85" width="183">Si te gusta jugar con rails y nunca has probado <a href="http://code.whytheluckystiff.net/hpricot/" title="http://code.whytheluckystiff.net/hpricot/" id="link_0">hpricot</a> (del siempre genial y bizarro <a href="http://www.whytheluckystiff.net/" title="http://www.whytheluckystiff.net/" id="link_1">whytheluckystiff</a>) te lo recomiendo. En mi caso lo había probado un par de veces, pero para funciones muy básicas.</p>
<p>En este caso vamos a jugar con la opción que tiene para 'arreglar' inputs de html que vengan un poco escacharraillos ¿quién no se ha dejado un div sin cerrar? Pues esta gema nos va a ayudar a dejar el código limpito de verdad.</p>
<p>No descubro nada que no esté en la documentación, pero es que me ha parecido genial. </p>
<p>Cojamos el código a parsear, bien desde un archivo:</p>
<pre><code>doc = Hpricot(open("tudocumento.html")) </code></pre>
<p>Bien desde una variable:</p>
<pre><code>doc = Hpricot(param[:mivariable]) </code></pre>
<p>Tenemos dos opciones. No toques mi código, sólo cierra lo que esté abierto:</p>
<pre><code>doc = Hpricot(mivariable_o_documento) { |f| Hpricot f, :fixup_tags => true } </code></pre>
<p>O bien cierra todo lo que esté abierto, y además convierte mi código en xhtml estricto:</p>
<pre><code>doc = Hpricot(mivariable_o_documento) { |f| Hpricot f, :xhtml_strict => true } </code></pre>
<p>Problemas, los hay. Cuando te enfrentas a un código (pegado desde word, por ejemplo) con 300 niveles de anidación no es capaz de decir más que 'too much stack levels'. Evidentemente no es el ejemplo más común, para código normal hecho por gente normal y con unos niveles de errores incluso algo bestia funciona.</p>
<p>Me queda comprobar cuánto consume realmente. Es mucho más ligero que otros parsers de html para rails, pero cuando da el 'stack levels' se come tu máquina y la del vecino. Imagino que se podrá controlar pero todavía no se como.</p>
<p>Ahora, para trabajos sencillo es ideal.</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/02/24/jugando-con-hpricot#comentarios
</comments>
</item>

<item>
<title>El 11870 y technorati</title>
<link>http://mamuso.net/post/2007/02/23/el-11870-y-technorati</link>
<pubDate>2007-02-23T23:45:09+00:00</pubDate>
<category domain="http://mamuso.net">web</category>
<content:encoded><![CDATA[<p>Cielos, el <a href="http://11870.com/" title="http://11870.com/" id="link_0">11870</a>  el número 1 en la búsquedas de <a href="http://www.technorati.com/" title="http://www.technorati.com/" id="link_1">technorati</a>.</p>
<p>Ni Britney Spears rapada, ni youtube, ni myspace ni narices. </p>
<p><img src="http://www.lacoctelera.com/myfiles/mamuso/11870_technorati.png" id="img_0" class="imgcen" height="342" width="246"></p>
<p>De verdad que me alegro mucho de que el proyecto esté funcionando<br />
tan bien hasta ahora en estos poquitos días que lleva en funcionamiento.</p>
<p>Enhorabuena!!
</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/02/23/el-11870-y-technorati#comentarios
</comments>
</item>

<item>
<title>Otro blog... pero de muñequitos</title>
<link>http://mamuso.net/post/2007/02/20/otro-blog-pero-munequitos</link>
<pubDate>2007-02-20T17:24:21+00:00</pubDate>
<category domain="http://mamuso.net">mamuso</category>
<category domain="http://mamuso.net">web</category>
<category domain="http://mamuso.net">el mundo es un pañuelo</category>
<category domain="http://mamuso.net">blogs</category>
<category domain="http://mamuso.net">toys</category>
<content:encoded><![CDATA[<p>Como hablar de muñequitos por estos lares me parece cuando menos raro, pues me he hecho otro blog específicamente para eso.</p>
<p>El caso es que <a href="http://www.madeonvinyl.com/2007/2/19/bienvenidos" title="http://www.madeonvinyl.com/2007/2/19/bienvenidos" id=link_0>una larga historia</a> ha hecho que salga sin diseño y sin otras muchas cosas. Pero como lo importante es poder escribir, iremos posteando y arreglando lo demás al mismo tiempo.</p>
<p>Nos vemos en <a href="http://www.madeonvinyl.com/" title="http://www.madeonvinyl.com/" id=link_0>madeonvinyl.com</a> para estas cosas. Pero antes... no me resisto a postear mi última imagen de vinilos aquí.</p>
<p><img src='http://www.lacoctelera.com/myfiles/mamuso/ObeyDunny_b.jpg' id='img_0' height='270' width='450' align='middle'/></p>
<p>Esta mañana he recogido el dunny que ha <del>hecho</del> ejecutado <a href="http://www.obeygiant.com/" title="http://www.obeygiant.com/">obey</a>, y que no puedo dejar en la oficina porque <a href="http://www.lacoctelera.com/maggie" title="http://www.lacoctelera.com/maggie">maggie</a> tendría pesadillas.
</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/02/20/otro-blog-pero-munequitos#comentarios
</comments>
</item>

<item>
<title>Nueva coctelera... habrá que celebrarlo!</title>
<link>http://mamuso.net/post/2007/02/18/nueva-coctelera-habra-celebrarlo-</link>
<pubDate>2007-02-18T11:12:15+00:00</pubDate>
<category domain="http://mamuso.net">mamuso</category>
<category domain="http://mamuso.net">herramientas</category>
<content:encoded><![CDATA[<p>Ya anunciamos que venía, y ya está aquí. Mis compis han publicado ya a <a href="http://www.inwebwetrust.net/inwebwetrust/post/2007/02/16/coctelera-nueva-y-poco-humor" title="http://www.inwebwetrust.net/inwebwetrust/post/2007/02/16/coctelera-nueva-y-poco-humor" id="link_0">nivel técnico</a> y a <a href="http://www.lacoctelera.com/porras/post/2007/02/16/video-del-viernes" title="http://www.lacoctelera.com/porras/post/2007/02/16/video-del-viernes" id="link_1">nivel... humorístico</a>. </p>
<p>Y vamos, creo que ya está todo dicho menos que los errores 500 han desaparecido prácticamente por completo. </p>
<p>Ahora, mi todolist para este blog:</p>
<ul>
<li>Volver a postear con normalidad</li>
<li>Añadir a mi listita de cocteleros a <a href="http://sobrerailes.com/" title="http://sobrerailes.com/" id="link_2">mr lupión</a>, que lo tengo abandonado</li>
<li>Arreglar la css de una vez :D
</li>
</ul>
<p>Disfruten usándola tanto como nosotros haciéndola.</p>
]]></content:encoded>
<comments>
http://mamuso.net/post/2007/02/18/nueva-coctelera-habra-celebrarlo-#comentarios
</comments>
</item>
 
</channel>
</rss>
