<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<feed xmlns="http://www.w3.org/2005/Atom">

	<title>Codemaniacs</title>
	<link rel="self" href="http://www.codemaniacs.com/atom.xml"/>
	<link href="http://www.codemaniacs.com/"/>
	<id>http://www.codemaniacs.com/atom.xml</id>
	<updated>2008-09-07T12:00:23+00:00</updated>
	<generator uri="http://www.planetplanet.org/">Planet/2.0 +http://www.planetplanet.org</generator>

	<entry xml:lang="en">
		<title type="html">ctypes</title>
		<link href="http://slack.codemaniacs.com/blog/2008/06/06/ctypes/"/>
		<id>http://slack.codemaniacs.com/blog/?p=24</id>
		<updated>2008-06-06T18:40:58+00:00</updated>
		<content type="html">&lt;p&gt;El otro día me encontré con un módulo interesante de python que no conocía: ctypes. Sirve para comunicarse con librerías en C: permite cargar librerías dinámicas y llamar a sus funciones, definir tipos equivalentes a los de C para pasarlos de un lado a otro e incluso especificar funciones python como callbacks de C. Vamos, que se pueden crear &lt;i&gt;bindings&lt;/i&gt; a librerías externas escribiendo únicamente código python.&lt;/p&gt;
&lt;p&gt;Ahi va un ejemplillo tonto usando la libavformat:&lt;/p&gt;
&lt;pre&gt;
#!/usr/bin/python
import sys
from ctypes import *
import ctypes.util

av = CDLL(ctypes.util.find_library(&quot;avformat&quot;))
filename = sys.argv[1]
# pFormatCtx deberia ser un puntero a AVFormatContext,
# pero esto es solo un ejemplo simple :)
pFormatCtx = c_void_p() 

av.av_register_all()
av.av_open_input_file(byref(pFormatCtx), filename, None, 0, None)
av.dump_format(pFormatCtx, 0, filename, 0)
&lt;/pre&gt;
&lt;p&gt;Por supuesto para hacer algo más serio habría que declarar en python las estructuras como AVFormatContext que se definen en las cabeceras correspondientes y cosas así, pero entonces el programa de ejemplo sería demasiado engorroso como para leerlo en un blog ;). El ejemplo muestra una salida como esta:&lt;/p&gt;
&lt;pre&gt;
$ ./av.py test.avi
Input #0, avi, from 'test.avi':
  Duration: N/A, bitrate: N/A
  Stream #0.0: Video: mpeg4, 512x420,   inf fps(c)
  Stream #0.1: Audio: vorbis, 22050 Hz, stereo, 24 kb/s
&lt;/pre&gt;
&lt;p&gt;Referencias:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://docs.python.org/lib/ctypes-ctypes-tutorial.html&quot;&gt;Tutorial de ctypes&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.inb.uni-luebeck.de/~boehme/using_libavcodec.html&quot;&gt;Using libavformat and libavcodec&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.inb.uni-luebeck.de/~boehme/libavcodec_update.html&quot;&gt;Using libavformat and libavcodec: An Update&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content>
		<author>
			<name>slack</name>
			<uri>http://slack.codemaniacs.com/blog</uri>
		</author>
		<source>
			<title type="html">Nightly build</title>
			<subtitle type="html">¡Oh, cielos! Ha vuelto a pasar...</subtitle>
			<link rel="self" href="http://slack.codemaniacs.com/blog/feed/atom/"/>
			<id>http://slack.codemaniacs.com/blog/feed/atom/</id>
			<updated>2008-09-07T08:00:16+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Real como la vida misma (II)</title>
		<link href="http://www.pplux.com/2008/05/30/real-como-la-vida-misma-ii/"/>
		<id>http://www.pplux.com/?p=170</id>
		<updated>2008-05-30T10:01:20+00:00</updated>
		<content type="html">&lt;p&gt;Ya he dicho más de una vez que los de &lt;a href=&quot;http://www.phdcomics.com&quot;&gt;PhD cómics&lt;/a&gt; me espían&amp;#8230;.&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;
&lt;a href=&quot;http://www.phdcomics.com/comics.php?f=1022&quot;&gt;&lt;img src=&quot;http://www.phdcomics.com/comics/archive/phd052808s.gif&quot; alt=&quot;PHD&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;p&gt;y también&amp;#8230; &lt;a href=&quot;http://www.pplux.com/2008/04/12/real-como-la-vida-misma/&quot;&gt;real como la vida misma I&lt;/a&gt; y &lt;a href=&quot;http://www.pplux.com/2008/04/12/extraordinariamente-real/&quot;&gt;extraordinariamente real&lt;/a&gt;.&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Solucionar problemas de audio en Hardy Heron</title>
		<link href="http://feeds.feedburner.com/~r/Biestado/~3/299220397/solucionar-problemas-de-audio-en-hardy-heron"/>
		<id>http://biestado.kraptor.com/?p=153</id>
		<updated>2008-05-27T17:27:02+00:00</updated>
		<content type="html">&lt;p&gt;Desde que tengo la última versión de &lt;a href=&quot;http://www.ubuntu.com/&quot;&gt;Ubuntu&lt;/a&gt; he tenido bastantes problemas con el audio.&lt;/p&gt;
&lt;p&gt;Resulta que han optado por utilizar &lt;a href=&quot;http://www.pulseaudio.org/&quot;&gt;PulseAudio&lt;/a&gt; como servidor de audio y esto ha traído algunas consecuencias: si estás viendo algún contenido con flash en el navegador y al mismo tiempo pretendes escuchar una canción en tu reproductor de audio favorito, sólo escuchas uno de los dos&amp;#8230; si tienes suerte. Hay veces que no funciona ninguno.&lt;/p&gt;
&lt;p&gt;Es importante decir que el problema no es de Ubuntu, sino de tener un sistema que ha pasado ya por dos actualizaciones (desde Feisty Fawn hasta Hardy Heron pasando por Gutsy Gibbon) y el plugin de flash privativo de Adobe, que no ha actualizado la versión 9 a estos cambios (parece que la beta de la versión 10 sí que funciona correctamente, pero no la he probado).&lt;/p&gt;
&lt;p&gt;Bien, entremos en materia.&lt;br /&gt;
&lt;span id=&quot;more-153&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;strong&gt;Explicación del problema&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Las aplicaciones de audio debería utilizar PulseAudio para reproducir sonido, y este se encargará de mezclarlo. El problema viene en aquellos casos en los que no se ha podido actualizar las aplicaciones o librerías. Para ello lo que se hizo fue un driver para &lt;a href=&quot;http://www.alsa-project.org/&quot;&gt;ALSA&lt;/a&gt; llamado &amp;#8220;pulse&amp;#8221; que redirecciona todas las llamadas a PulseAudio para aquellas aplicaciones que aún no lo soportan.&lt;/p&gt;
&lt;p&gt;El problema se da cuando hay aplicaciones que usan ALSA de manera especial, como por ejemplo el plugin de flash.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;¡A por la solución!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Para solucionar los problemas hay que redirigir toda salida de audio a PulseAudio. Quizá como mi equipo heredó una configuración de GNOME de hace dos versiones de Ubuntu, a mi no me ha actualizado correctamente. De todas formas, aquí va la solución para las aplicaciones de escritorio en general:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;ol&gt;
&lt;li&gt;Acceder al menú &amp;#8220;Sistema&amp;#8221; -&gt; &amp;#8220;Preferencias&amp;#8221; -&gt; &amp;#8220;Sonido&amp;#8221;&lt;/li&gt;
&lt;li&gt;En la pestaña &amp;#8220;Dispositivos&amp;#8221;, seleccionar &amp;#8220;PulseAudio Sound Server&amp;#8221; para todos los casos.&lt;/li&gt;
&lt;li&gt;En la pestaña &amp;#8220;Sonidos&amp;#8221; habilitar la opción &amp;#8220;Activar mezcla de sonidos por hardware (ESD)&amp;#8221;&lt;/li&gt;
&lt;/ol&gt;&lt;/blockquote&gt;
&lt;p&gt;Con esto nos aseguramos que todas las aplicaciones (excepto flash) sacan el audio a través de PulseAudio.&lt;/p&gt;
&lt;p&gt;Para solucionar los problemas con flash tenemos que instalar &lt;em&gt;libflashsupport&lt;/em&gt;:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;sudo apt-get install libflashsupport&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Finalmente hay que salir de la sesión y volver a entrar. Si sigues teniendo problemas, reinicia porque puede que PulseAudio no se haya iniciado correctamente&amp;#8230;&lt;/p&gt;
&lt;p&gt;&amp;#8230; o si no quieres reiniciar, &lt;strong&gt;antes de iniciar sesión&lt;/strong&gt; puedes abrir una consola (Ctrl+Alt+F1) y ejecutar:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;sudo /etc/init.d/pulseaudio restart&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;¡Y ahora a disfrutar!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Una nota final&lt;/strong&gt;: al instalar &lt;em&gt;libflashsupport&lt;/em&gt; se supone que la gente que tiene problemas con flash de otro tipo, como por ejemplo errores en la visualización o problemas con el navegador (dejarlo colgado o que se cierre inesperadamente) los soluciona. Aunque a mí no me pasaba, ¿alguien me lo puede confirmar? &lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=kS5Vah&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=kS5Vah&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=UQQzZH&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=UQQzZH&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=ZTsRyh&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=ZTsRyh&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=BFyljh&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=BFyljh&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/Biestado/~4/299220397&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</content>
		<author>
			<name>Kraptor</name>
			<uri>http://biestado.kraptor.com</uri>
		</author>
		<source>
			<title type="html">biestado</title>
			<subtitle type="html">Al fin y al cabo todo es cuestión de unos y ceros...</subtitle>
			<link rel="self" href="http://feeds.feedburner.com/Biestado"/>
			<id>http://feeds.feedburner.com/Biestado</id>
			<updated>2008-09-07T09:00:11+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Patinar no es delito</title>
		<link href="http://mescriva.codemaniacs.com/blog/2008/05/26/patinar-no-es-delito/"/>
		<id>http://mescriva.codemaniacs.com/blog/?p=56</id>
		<updated>2008-05-27T14:42:47+00:00</updated>
		<content type="html">&lt;p&gt;&lt;img class=&quot;alignleft size-medium wp-image-57&quot; title=&quot;patinar_no_es_delito&quot; src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/05/patinar_no_es_delito.png&quot; alt=&quot;&quot; width=&quot;220&quot; height=&quot;197&quot; /&gt;Me envia mi amigo Koso un texto que creo oportuno compartir con todos vosotros:&lt;br /&gt;
&lt;strong&gt;LOS PATINADORES, COMO LOS CICLISTAS, UTILIZAN UN MEDIO DE TRANSPORTE LIMPIO, RESPETUOSO CON EL MEDIO AMBIENTE Y QUE NO OCUPA PLAZAS DE GARAJE.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;EN VALENCIA SIN EMBARGO, DENTRO DE POCO PASARÁN A SER DELINCUENTES.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Hacer el esfuerzo para leer esto te puede dar una idea, si no la tienes ya, de como desde hace unos años se está transformando poco a poco la ciudad de &lt;a href=&quot;http://es.wikipedia.org/wiki/Valencia_(ciudad)&quot;&gt;Valencia&lt;/a&gt; en un monstruo de asfalto diseñado y construido por y para los coches y otros vehículos a motor, en contra de otros medios de transporte más ecológicos y más respetuosos con el medio, tanto por lo que respecta a gases, como a ruidos y a la convivencia de los ciudadanos que la habitan.&lt;/p&gt;
&lt;p&gt;Es más, seguramente aunque no seas de Valencia, puede que ya estés viviendo una situación similar en tu propia ciudad, o que el precedente que se está sentando aquí se aplique en ella de seguir la cosa así.&lt;/p&gt;
&lt;p&gt;Si &lt;a href=&quot;http://es.wikipedia.org/wiki/Patinar&quot;&gt;patinas&lt;/a&gt;, o simplemente te gustaría aprender a patinar algún día, esto te interesa como patinador.&lt;br /&gt;
Si no patinas ni te interesa para nada patinar, esto te interesa como peatón, quizás también como ciclista, y en cualquier caso, como ciudadano.&lt;/p&gt;
&lt;p&gt;Si no quieres leerlo o no tienes tiempo, aquí tienes un pequeño resumen de lo que el ayuntamiento de Valencia pretende para que sepas la razón de este escrito:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;El Ayuntamiento de Valencia pretende aprobar la modificación de la Ordenanza de Circulación que prohibirá a patines, patinetes y monopatines que circulen por las aceras y zonas peatonales de la ciudad, las únicas por las que pueden circular en la actualidad (imponiéndoles una sanción de hasta 500 euros por la infracción de esta norma). Para los que no lo sepan, la circulación por el carril bici también les está negada. Cuando la modificación entre en vigor, sólo se les permitirá patinar &amp;#8216;&lt;em&gt;en las zonas destinadas a tal efecto&lt;/em&gt;&amp;#8216; (&lt;a href=&quot;http://www.levante-emv.com/secciones/noticia.jsp?pRef=2008041800_16_434812__Valencia-Multas-euros-circular-patines-aceras-Valencia&quot;&gt;Levante&lt;/a&gt;).&lt;a href=&quot;http://www.levante-emv.com/secciones/noticia.jsp?pRef=2008041800_16_434812__Valencia-Multas-euros-circular-patines-aceras-Valencia&quot;&gt;&lt;br /&gt;
&lt;/a&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;http://www.adn.es/local/valencia/20080428/NWS-0338-Prohibidos-patines-bicis.html&quot;&gt;Aquí&lt;/a&gt; algunas de las razones de sentido común por las que dicha ordenanza no resulta razonable. Y &lt;a href=&quot;http://www.petitiononline.com/65390131/petition.html&quot;&gt;aquí&lt;/a&gt; puedes consultar una modificación propuesta de la ordenanza y firmar a su favor, para permitir los desplazamientos con patines o la habilitación de zonas y/o vías donde se pueda patinar, que actualmente apenas existen.&lt;a href=&quot;http://www.petitiononline.com/65390131/petition.html&quot;&gt;&lt;br /&gt;
&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;LA CALLE ES PARA LA GENTE, NO PARA LOS COCHES.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Más sobre el tema: &lt;a href=&quot;http://www.valenciapatina.com/&quot;&gt;Asociación de patinadores Valencia Patina &lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Noticias relacionadas con la ordenanza: &lt;a href=&quot;http://www.levante-emv.com/secciones/noticia.jsp?pRef=2008041800_16_434812__Valencia-Multas-euros-circular-patines-aceras-Valencia&quot;&gt;Levante&lt;/a&gt;, &lt;a href=&quot;http://www.lasprovincias.es/valencia/20080428/deportes/mas-deporte/personas-patinada-valencia-reivindicativa-20080428.html&quot;&gt;Las Provincias&lt;/a&gt; y otra del &lt;a href=&quot;http://www.levante-emv.com/secciones/noticia.jsp?pRef=2008042800_16_438830__VALENCIA-patinadores-rebelan&quot;&gt;Levante&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Manifiesto por la modificación de la ordenanza (en &lt;a href=&quot;http://personales.alumno.upv.es/marcamal/patinar/Mobilitat.pdf&quot;&gt;Valenciano&lt;/a&gt; y &lt;a href=&quot;http://personales.alumno.upv.es/marcamal/patinar/Movilidad.pdf&quot;&gt;Castellano&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Algunas razones más por las que no es de sentido común semejante ordenanza, explicadas con más detalle:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Los patinadores y otros usuarios de vehículos sin motor se encuentran, según el código de circulación, en una especie de vacío legal por el cual se consideran dentro de la categoría de peatones. Por esta razón deben utilizar para sus desplazamientos la acera y circular por ella a paso de peatón y en ningún caso se les permitirá desplazarse por la calzada. Si esta ordenanza se aprueba, los patinadores directamente &lt;em&gt;NO&lt;/em&gt; podrán circular por ningún sitio.  En otras palabras, esta ordenanza hace de los patines un mero instrumento de recreo, en lugar de potenciar su uso por ser un medio de transporte alternativo, respetuoso con el medio ambiente, que además favorece la práctica del deporte y la actividad física y que en la actualidad es usado por distintos colectivos aún a pesar de las dificultades que se presentan para ello en la ciudad por la falta de acondicionamiento de ésta para el uso de medios de transporte distintos del coche.&lt;/li&gt;
&lt;li&gt;En la ciudad de Valencia existen un número muy reducido de zonas habilitadas para el uso exclusivo de patines, que serían incapaces de albergar a la totalidad de personas que practican este DEPORTE, ya dejando de considerarlo como un posible medio de transporte. Por otro lado, estas zonas se componen de dos tipos de instalación:
&lt;ul&gt;
&lt;li&gt;Por una parte están las zonas conocidas como &amp;#8220;peceras&amp;#8221; entre los patinadores. De éstas hay pocas (existen a lo sumo 4 o 5 en Valencia), y debido a su tamaño (que en el mejor caso tienen las dimensiones de una pista de fútbol sala) no permiten la práctica del patinaje a menos que haya muy pocas personas en ellas (piensa que el moverse de una punta a otra de una pista de ese tamaño, es cuestión de pocos segundos a una velocidad relativamente lenta con patines). Si además se intenta aglutinar a todos los patinadores de Valencia en ellas, el resultado se asemeja más a un intento de batir el récord Guinness que a la práctica de cualquier deporte.&lt;/li&gt;
&lt;li&gt;Por otra parte, también encontramos en Valencia unas pocas zonas con rampas para realizar algunos tipos de trucos más avanzados, lo que comúnmente se conoce como &amp;#8220;skateparks&amp;#8221;. En este caso se encuentra el mismo problema que con las peceras : hay poco espacio para albergar a los usuarios. Por otro lado, por utilizarse estas instalaciones para trucos con mayor  dificultad y riesgo de lesiones para el patinador, se hace necesario que la instalación reciba un cierto mantenimiento. No hace falta más que darse una vuelta por los  pocos skateparks de Valencia para darse cuenta del mal estado en que se encuentran. Por si fuera poco, estas instalaciones dejan de ser utilizables a partir de ciertas horas en que suelen ser lugar de encuentro de gente que no va allí precisamente a patinar y cuya compañía resulta poco recomendable.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Estos dos hechos hacen que la proposición de que los patinadores utilicen para la práctica de esta actividad dichas zonas, resulta poco menos que descabellada en el caso en que no se pretenda como fin último la erradicación del patinaje de la ciudad.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;En resumen&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;El ayuntamiento pretende que todos los patinadores se apiñen en una zona en la que se estorben unos a otros y no puedan patinar?&lt;/p&gt;
&lt;p&gt;Acaso pretende que gente a la que le interesa moverse por Valencia sin contaminar, ni ocupar plazas de garaje, sin producir humos ni ruidos, utilizando un medio de transporte alternativo y saludable, y que pueden utilizar personas de todas las edades, no lo pueda hacer?&lt;/p&gt;
&lt;p&gt;Quieren que los patinadores practiquen el patinaje en el pasillo de su casa?&lt;br /&gt;
O que para iniciarte en el mundo de los patines tengas que lanzarte por una rampa más alta que tú y no matarte en el intento?&lt;br /&gt;
Desde luego alquien que la primera vez que se pone patines o usa un monopatín se lanza por una rampa y no se va al suelo o se mata debe ser un campeón. Aparte de un loco.&lt;/p&gt;
&lt;p&gt;Que será lo próximo, ¿prohibir la circulación en bicicleta? Aunque con las bicicletas quizás lo que esperan  es que simplemente los ciclistas se vayan matando solos o se acobarden, ya que se ven obligados a circular por la calzada en multitud de ocasiones debido a la falta de carriles destinados a las bicicletas, entre conductores agresivos que no respetan a otros vehículos más pequeños que los que ellos conducen.&lt;/p&gt;
&lt;p&gt;¿Se puede saber a dónde quieren llegar? Es muy triste que el ayuntamiento promueva el que la ciudad se convierta cada día más en un lugar menos apto para vivir. Y por si fuera poco, lo hacen de manera que no nos podamos quejar.  Si eres ciudadano de Valencia, probablemente ya te hayas encontrado con alguna de las ordenanzas municipales que el ayuntamiento aprueba sin que la gran mayoría de sus ciudadanos tenga conocimiento alguno hasta que son aprobadas, cuando ya no pueden ser recurridas ni modificadas, o de las que los ciudadanos se enteran cuando son multados por incumplirlas o perjudicados por ellas, cuando ni siquiera tenían conocimiento sobre su existencia.&lt;/p&gt;</content>
		<author>
			<name>Miguel</name>
			<uri>http://mescriva.codemaniacs.com/blog</uri>
		</author>
		<source>
			<title type="html">El blog autoestereoscópico</title>
			<subtitle type="html">Porque en estereo se ve mejor</subtitle>
			<link rel="self" href="http://mescriva.codemaniacs.com/blog/feed/atom/"/>
			<id>http://mescriva.codemaniacs.com/blog/feed/atom/</id>
			<updated>2008-09-07T06:00:19+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Aventura sobre ruedas</title>
		<link href="http://mescriva.codemaniacs.com/blog/2008/05/17/aventura-sobre-ruedas/"/>
		<id>http://mescriva.codemaniacs.com/blog/?p=51</id>
		<updated>2008-05-17T09:59:13+00:00</updated>
		<content type="html">&lt;p&gt;&lt;img class=&quot;alignleft&quot; src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/05/rb-astro60-297x300.jpg&quot; alt=&quot;&quot; width=&quot;120&quot; height=&quot;122&quot; /&gt;La semana pasada me decidi a comprar unos &lt;a title=&quot;Patín en línea&quot; href=&quot;http://es.wikipedia.org/wiki/Pat%C3%ADn_en_l%C3%ADnea&quot; target=&quot;_blank&quot;&gt;patines en linea&lt;/a&gt;. Y la verdad es que aguantar el equilibrio es más fácil de lo que creía. No os voy a engañar, ¡me he caido un par de veces!, sobretodo al aprender a frenar. Hasta ahora soy capaz de ir recto, girar y frenar con el freno. Esta próxima semana voy a intentar &lt;a href=&quot;http://cincinato.org/rollers/frenar-en-t-con-patines.php&quot; target=&quot;_blank&quot;&gt;frenar en T&lt;/a&gt; y bajar la rampa que hay en la &lt;a title=&quot;Playa de la Patacona en Google Maps&quot; href=&quot;http://maps.google.es/maps?f=q&amp;amp;hl=es&amp;amp;geocode=&amp;amp;q=patacona,+valencia&amp;amp;sll=40.396764,-3.713379&amp;amp;sspn=13.44862,41.088867&amp;amp;ie=UTF8&amp;amp;ll=39.491092,-0.323904&amp;amp;spn=0.026628,0.080252&amp;amp;z=14&quot; target=&quot;_blank&quot;&gt;playa de la Patacona&lt;/a&gt; (lugar al que suelo ir a practicar).&lt;/p&gt;
&lt;p&gt;Que&amp;#8230; ¿Por qué me ha dado ahora por patinar? os preguntareis. Pues un poco por probar cosas nuevas y porque me parece un hobby que me obligará a salir un poco más al aire libre, hacer un poco de ejercicio y olvidarme del ordenador por un tiempo. La verdad es que ya hace tiempo que queria aprender, pero no conocía a nadie que patinara, y la verdad, hacerlo solo&amp;#8230;&lt;/p&gt;
&lt;p&gt;Pues todo empezó cuando me enteré que un amigo sabia patinar y solía ir todas las semanas al &lt;a href=&quot;http://maps.google.es/maps?f=q&amp;amp;hl=es&amp;amp;geocode=&amp;amp;q=palacio+de+la+m%C3%BAsica,+valencia&amp;amp;sll=39.467856,-0.359974&amp;amp;sspn=0.006659,0.020063&amp;amp;ie=UTF8&amp;amp;ll=39.467856,-0.359974&amp;amp;spn=0.006659,0.020063&amp;amp;z=16&amp;amp;iwloc=addr&quot; target=&quot;_blank&quot;&gt;Palau de la música&lt;/a&gt; de Valencia a patinar. Le pregunté si me enseñaba y me dijo que sí. La verdad es que a raiz de esto, se ha unido más gente a nuestro peculiar grupo. Ahora mismo somos cinco personas las que estamos aprendiendo y hay más gente que nos ha preguntado si también podrían venir. Por supuesto, todos los que querais aprender a patinar os podéis pasar por la playa de la Patacona los martes, que la gente de &lt;a href=&quot;http://groups.msn.com/pataconainline&quot; target=&quot;_blank&quot;&gt;Patacona inline&lt;/a&gt; estará dispuesta a ayudaros.&lt;/p&gt;
&lt;p&gt;El siguiente vídeo es un pequeño tutorial para empezar a patinar. Está en alemán, pero no hace falta el sonido para entender lo que te quieren enseñar.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Bueno, y ahora un vídeo para que veais lo que pasa la primera vez que te pones unos patines:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;La verdad es que patinar es una actividad mas dura de lo que pueda parecer a simple vista. De hecho, después de un buen rato patinando uno suele acabar bastante cansado en comparación con la sensación de esfuerzo realizado. Debo decir que esto lo notas al quitarte los patines, mientras los llevas puestos no parece que hayas hecho un esfuerzo tan grande. Pero cuando te los quitas, notas el cansancio, además que todo se mueve más despacio &lt;img src=&quot;http://mescriva.codemaniacs.com/blog/wp-includes/images/smilies/icon_biggrin.gif&quot; alt=&quot;:D&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;He encontrado esta comparación en internet:&lt;br /&gt;
En media hora de bicicleta se queman unas 150 calorías, en media hora de aeróbic unas 180 y media hora patinando consumen aproximadamente unas 300 calorías. Es decir, el doble que en bicicleta.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Y para terminar unas fotos de nuestros primeros días:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/05/07052008.jpg&quot;&gt;&lt;img class=&quot;alignnone size-thumbnail wp-image-53&quot; title=&quot;07052008&quot; src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/05/07052008-150x150.jpg&quot; alt=&quot;&quot; width=&quot;150&quot; height=&quot;150&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/05/dsc00003.jpg&quot;&gt;&lt;img class=&quot;alignnone size-thumbnail wp-image-54&quot; title=&quot;dsc00003&quot; src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/05/dsc00003-150x150.jpg&quot; alt=&quot;&quot; width=&quot;150&quot; height=&quot;150&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/05/dsc00007.jpg&quot;&gt;&lt;img class=&quot;alignnone size-thumbnail wp-image-55&quot; title=&quot;dsc00007&quot; src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/05/dsc00007-150x150.jpg&quot; alt=&quot;&quot; width=&quot;150&quot; height=&quot;150&quot; /&gt;&lt;/a&gt;&lt;/p&gt;</content>
		<author>
			<name>Miguel</name>
			<uri>http://mescriva.codemaniacs.com/blog</uri>
		</author>
		<source>
			<title type="html">El blog autoestereoscópico</title>
			<subtitle type="html">Porque en estereo se ve mejor</subtitle>
			<link rel="self" href="http://mescriva.codemaniacs.com/blog/feed/atom/"/>
			<id>http://mescriva.codemaniacs.com/blog/feed/atom/</id>
			<updated>2008-09-07T06:00:19+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">gpu gems 2: online !</title>
		<link href="http://www.pplux.com/2008/05/13/gpu-gems-2-online/"/>
		<id>http://www.pplux.com/?p=169</id>
		<updated>2008-05-13T08:50:22+00:00</updated>
		<content type="html">&lt;p&gt;No sé para qué me gasto el dinero, pero me alegro de que Nvidia esté &lt;a href=&quot;http://news.developer.nvidia.com/2008/05/gpu-gems-2---on.html&quot;&gt;&amp;#8220;liberando&amp;#8221; los gpu gems&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;No están todos, cada semana tres capítulos nuevos, así nadie se atraganta &lt;img src=&quot;http://www.pplux.com/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;
&lt;p&gt;Relacionadas: &lt;a href=&quot;http://www.pplux.com/2008/03/26/gpu-gems-publicado-online/&quot;&gt;gpu gems online&lt;/a&gt;&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">¿Qué sistema de ficheros usas?</title>
		<link href="http://www.pplux.com/2008/04/29/que-sistema-de-ficheros-usas/"/>
		<id>http://www.pplux.com/?p=166</id>
		<updated>2008-04-30T06:55:35+00:00</updated>
		<content type="html">&lt;blockquote&gt;&lt;p&gt;Yo&amp;#8230; resierfs, sí el del tipo aquel que han &lt;a href=&quot;http://barrapunto.com/articles/08/04/29/0940241.shtml&quot;&gt;condenado&lt;/a&gt; por matar a su mujer rusa que conoció por internet, &amp;#8230; esa que se lió con su mejor amigo, que resultó ser un asesino en serie que mato a 8 personas, pero que afirma que no tuvo nada que ver con la muerte de la rusa&amp;#8230; bueno, ese que dice que la rusa está en rusia y que todo es un complot.
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Ni que decir que &lt;a href=&quot;http://en.wikipedia.org/wiki/ReiserFS&quot;&gt;reiserFS&lt;/a&gt; es un sistema de ficheros interesante, no? Yo en casa uso &lt;a href=&quot;http://en.wikipedia.org/wiki/Zfs&quot;&gt;ZFS&lt;/a&gt; bajo &lt;a href=&quot;http://opensolaris.org/os/&quot;&gt;Solaris&lt;/a&gt;&amp;#8230; a ver si algún día hay tiempo para explicar las ventajas de esto frente a un linux+raid+LVM+ext3/reiserfs/&amp;#8230;&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Trabajar en consola: Terminator &amp;#038; screen</title>
		<link href="http://www.pplux.com/2008/04/29/trabajar-en-consola-terminator-screen/"/>
		<id>http://www.pplux.com/?p=165</id>
		<updated>2008-04-29T10:43:00+00:00</updated>
		<content type="html">&lt;div class=&quot;floatRight&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/terminator-logo.png&quot; alt=&quot;Terminator logo&quot; /&gt;&lt;/div&gt;
&lt;p&gt;¿Quién dijo que la consola estaba muerta? no śe vosotros, pero personalmente es de lo primero que arranco cada mañana para trabajar. ¿Por qué? pues sencillamente por ser invariante en el tiempo, gnome cambia, kde cambia, mac os X cambia, cada vez las interfaces son mejores, pero mi consola responde igual desde el primer día que empecé a usarla. Más aun, te sirve para trabajar remotamente y muchas otras veces es la única opción para arreglar catástrofes (vamos, que no está de más aprender a usarla).&lt;/p&gt;
&lt;p&gt;Pese a que a día de hoy hay aplicaciones gráficas para bajar ficheros, torrents, mover/copiar/pegar directorios, conectarse a unidades samba, etc&amp;#8230; personalmente, en la mayoría de los casos, sigo prefiriendo arrancar una consola y hacerlo a mano, wget, cp/rm/mv/rsync, smbclient, smbfs, &amp;#8230; ¿ya sabes, no?&lt;/p&gt;
&lt;p&gt;Y si, como yo, eres un adicto a la terminal, conocerás &lt;a href=&quot;http://www.gnu.org/software/screen/&quot;&gt;screen&lt;/a&gt; el multiplexador-de-terminales (si no, o si quieres aprender a usarlo, prueba &lt;a href=&quot;http://www.kuro5hin.org/story/2004/3/9/16838/14935&quot;&gt;aquí&lt;/a&gt; ) multiplataforma, super funcional, y con la maravillosa opción de poder &lt;em&gt;detachear&lt;/em&gt; y &lt;em&gt;atachear&lt;/em&gt; sesiones.&lt;/p&gt;
&lt;p&gt;Y qué hacer con las pantallas de hoy día, son grandes, muy grandes, caben muchas consolas, o una a pantalla completa con screen (que permite dividir la consola en varias regiones)&amp;#8230; pues mejor que eso podemos usar &lt;a href=&quot;https://launchpad.net/terminator&quot;&gt;terminator&lt;/a&gt;, del que ya podemos disfrutar en hoary. Terminator permite arrancar una terminal y, en vez de usar tabs, podemos dividir horizontal y verticalmente la consola las veces como queramos, sacando partido de verdad a los nuevos tamaños de pantalla que tenemos ahora.&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;
&lt;a href=&quot;https://launchpad.net/terminator&quot;&gt;Terminator&lt;/a&gt;  is a program that allows users to set up flexible arrangements of GNOME terminals. It is aimed at those who normally arrange lots of  terminals near each other, but don’t want to use a frame based window manager.
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Gracias a que usa gnome-terminals se integra muy bien con las preferencias de gnome-terminal (toma los colores que use este, el tipo de letra, control+, control-, etc..) y tiene atajos de teclado para cambiar de región (&lt;em&gt;$man terminator&lt;/em&gt;).&lt;/p&gt;
&lt;p&gt;¡ Un placer !&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Enjuto también usa ubuntu!</title>
		<link href="http://www.pplux.com/2008/04/24/enjuto-tambien-usa-ubuntu/"/>
		<id>http://www.pplux.com/?p=164</id>
		<updated>2008-04-24T11:47:53+00:00</updated>
		<content type="html">&lt;p&gt;Justo hoy, que estamos ya apunto con la nueva &lt;a href=&quot;http://www.ubuntu.com/&quot;&gt;ubuntu 8.04&lt;/a&gt;&lt;/p&gt;, me pasan esto:
&lt;div class=&quot;alignCenter&quot;&gt;
&lt;/div&gt;
&lt;blockquote&gt;&lt;p&gt;&amp;#8220;os podéis ir a zurrir mierdas con un látigo&amp;#8221;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Juas Juas Juas Juas&lt;/p&gt;
&lt;p&gt;Visto en: &lt;a href=&quot;http://www.jesusda.com/blog/index.php?id=221&amp;#038;commented=1#c000958&quot;&gt;Bitácora de JEsuSdA&lt;/a&gt;&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">lua API, introducción</title>
		<link href="http://www.pplux.com/2008/04/16/lua-api-introduccion/"/>
		<id>http://www.pplux.com/2008/04/16/lua-api-introduccion/</id>
		<updated>2008-04-16T14:36:01+00:00</updated>
		<content type="html">&lt;p&gt;Haciendo honor al nombre del blog, y aprovechando que recientemente me han comentado que el API de lua es un poco rara, vamos a hincarle el diente directamente al problema. Este post es sólo para programadores, no trata del léxico/sintaxis de lua, sólo de una parte muy particular del API, concretamente, la que más problema da al programador que se está iniciando en esto de lua.&lt;/p&gt;
&lt;p&gt;Veamos en primer lugar que es eso de un &lt;strong&gt;lua_State*&lt;/strong&gt;, es fácil crearlo (luaL_newstate), y destruirlo (lua_close) y representa un estado completo de lua. A efectos prácticos es como si con cada lua_State fuera una máquina virtual independiente, por lo que podemos tener tantos como queramos (uno por thread, uno por efecto, uno por agente, etc, etc&amp;#8230;).&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/lua101_lua_State.png&quot; alt=&quot;state basics&quot; /&gt;&lt;/div&gt;
&lt;p&gt;&lt;span id=&quot;more-163&quot;&gt;&lt;/span&gt;&lt;br /&gt;
En la imagen vemos que un estado de lua ofrece básicamente  un &lt;strong&gt;stack&lt;/strong&gt;(pila) para trabajar con el estado. Esto es lo más complicado de entender del API, pero una vez se ve en el contexto, es una forma super eficiente de trabajar. No voy a explicar hoy qué razón se oculta tras la pila, asumamos que es así y que hay que aprender a usarla.&lt;/p&gt;
&lt;p&gt;También está representado en la imagen los tipos básicos de lua: strings, números, booleanos, funciones, tablas&amp;#8230; y poco más. La estructura clave aquí es la tabla que es el único contenedor que tiene lua y se trata de un map de pares clave-valor. La clave puede ser cualquier tipo de lua y el valor, por supuesto, también.&lt;/p&gt;
&lt;p&gt;Las funciones en lua también son tipos de primer orden, esto quiere decir que las funciones son un valor más que se puede copiar, asignar, devolver como resultado de otra función, etc. Como hemos dicho antes, las tablas incluso pueden usar funciones como claves, nada lo impide.&lt;/p&gt;
&lt;p&gt;La linea de puntos de la imagen que separa el stack de la tabla global es para resaltar que no accedemos directamente a la tabla de valores globales. Para poder manejar la tabla de valores globales, u otra tabla, usaremos operaciones que apilarán o consumirán valores del stack. En resumidas cuentas &lt;strong&gt;siempre trabajamos con el stack&lt;/strong&gt;&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/lua101_stack.png&quot; alt=&quot;stak&quot; /&gt;&lt;/div&gt;
&lt;p&gt;El stack se accede por índice, en lua los índices numéricos empiezan siempre en 1, en contraposición con lo típico en C/C++ de empezar todo en 0. También hay razones tras este acto de maldad, pero como somos programadores serios y profesionales, esto no es más que un detalle, y nos da igual.&lt;/p&gt;
&lt;p&gt;Los índices pueden ser positivos, o negativos. Si son positivos contamos desde la base del stack y si son negativos desde el &lt;em&gt;top&lt;/em&gt; del stack. Para saber el top actual, usamos lua_gettop(L). La mayor parte de las funciones, por no decir todas ellas, utilizan los valores cercanos al top&amp;#8230; y lo divertido de esto, si has cursado alguna asignatura de compiladores, es que se parece mucho a la forma de trabajar en ensamblador para llamar a funciones &lt;img src=&quot;http://www.pplux.com/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;
&lt;p&gt;Bueno, para ilustrar todo lo anterior, y explicar con detalle un ejemplo del manual, vamos a ver paso a paso la ejecución del código equivalente a esta expresión de lua:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;&lt;br /&gt;
a = f(&quot;how&quot;, t.x, 14)&lt;br /&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;según el manual se traduce en las siguientes instrucciones del API de lua:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;&lt;br /&gt;
     lua_getfield(L, LUA_GLOBALSINDEX, &quot;f&quot;); /* function to be called */&lt;br /&gt;
     lua_pushstring(L, &quot;how&quot;);                        /* 1st argument */&lt;br /&gt;
     lua_getfield(L, LUA_GLOBALSINDEX, &quot;t&quot;);   /* table to be indexed */&lt;br /&gt;
     lua_getfield(L, -1, &quot;x&quot;);        /* push result of t.x (2nd arg) */&lt;br /&gt;
     lua_remove(L, -2);                  /* remove 't' from the stack */&lt;br /&gt;
     lua_pushinteger(L, 14);                          /* 3rd argument */&lt;br /&gt;
     lua_call(L, 3, 1);     /* call 'f' with 3 arguments and 1 result */&lt;br /&gt;
     lua_setfield(L, LUA_GLOBALSINDEX, &quot;a&quot;);        /* set global 'a' */&lt;br /&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Las instrucciones del API del &lt;a href=&quot;http://www.lua.org/manual/5.1/manual.html&quot;&gt;manual&lt;/a&gt; van acompañadas de una etiqueta de la forma  [&lt;strong&gt;-o&lt;/strong&gt;, &lt;strong&gt;+p&lt;/strong&gt;, x] :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; &lt;strong&gt;-o&lt;/strong&gt;: número de elementos que consume del stack (pops from the stack) &lt;/li&gt;
&lt;li&gt; &lt;strong&gt;+p&lt;/strong&gt;: número de elementos que apila en el stack&lt;/li&gt;
&lt;li&gt; x: tipos de errores que pueden saltar&amp;#8230; esto es para otro día (así que como si no estuviera)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Es fácil deducirlo pero las funciones de lua pueden devolver varios elementos, y por supuesto, consumir otros tantos. Las etiquetas vienen bien para saber de un vistazo de qué forma van a operar con el stack.&lt;/p&gt;
&lt;p&gt;Volviendo al ejemplo anterior, supongamos que ahora mismo el stack está vacío, y veamos paso a paso cada una de las instrucciones. &lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/lua101_a.png&quot; alt=&quot;step_1&quot; /&gt;&lt;/div&gt;
&lt;blockquote class=&quot;go&quot;&gt;&lt;p&gt;
void &lt;a href=&quot;http://www.lua.org/manual/5.1/manual.html#lua_getfield&quot;&gt;lua_getfield&lt;/a&gt; (lua_State *L, int index, const char *k) [-0, +1, e]
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Por la etiqueta sabemos que esta función no va a consumir nada del stack y siempre va a hacer push de un elemento. Esta función concretamente busca el elemento &lt;em&gt;key&lt;/em&gt; de la tabla que está en el índice &lt;em&gt;index&lt;/em&gt; y lo devuelve en el stack. Si el elemento no existe hará un push de &amp;#8220;nil&amp;#8221; que es otro tipo de datos, usado para indicar, precisamente, la ausencia de tipo de datos &lt;img src=&quot;http://www.pplux.com/wp-includes/images/smilies/icon_biggrin.gif&quot; alt=&quot;:D&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;
&lt;p&gt;LUA_GLOBALSINDEX es un pseudo-índice, en el stack no hay ninguna posición que permita acceder a la tabla de valores globales, así que hay una serie de pseudo-índices para acceder a ciertas tablas especiales (como la de los valores globales en concreto). Puedes imaginar ese índice de la forma que más te apetezca, a efectos prácticos es equivalente a poner un 1,2,&amp;#8230; -1,-128, etc&amp;#8230; en unos pasos veremos un getfield sobre una tabla en el stack para compensar. &lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/lua101_b.png&quot; alt=&quot;step_2&quot; /&gt;&lt;/div&gt;
&lt;blockquote class=&quot;go&quot;&gt;&lt;p&gt;
void &lt;a href=&quot;http://www.lua.org/manual/5.1/manual.html#lua_pushstring&quot;&gt;lua_pushstring&lt;/a&gt; (lua_State *L, const char *s) [-0, +1, m]&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Lua tiene unas cuantas funciones para meter y sacar elementos del stack, esta es una de tantas, y sirve para apilar un string. [Nota mental: &lt;em&gt;hablar de los strings de lua en otro post...&lt;/em&gt;]&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/lua101_c.png&quot; alt=&quot;step_3&quot; /&gt;&lt;/div&gt;
&lt;p&gt;Otro acceso a la tabla global, en este caso tras el &lt;em&gt;key&lt;/em&gt; &amp;#8220;t&amp;#8221; se esconde una tabla, por lo que se apila una tabla. Lo he dibujado con otro color como alarde de creatividad, pero no es más que otro valor [booleano, string, funcion, tabla, numero....] metido en la tabla. &lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/lua101_d.png&quot; alt=&quot;step_4&quot; /&gt;&lt;/div&gt;
&lt;p&gt;Esta es más interesante, aunque la función es conocida. Se trata de un getfield de un elemento en la propia tabla, por lo que usamos un índice numérico para indicar de qué tabla queremos buscar la clave. Como el índice es &lt;strong&gt;-1&lt;/strong&gt;, estamos haciendo referencia al top actual del stack, donde &lt;em&gt;voilà&lt;/em&gt; está justo la tabla que acabábamos de apilar. &lt;/p&gt;
&lt;blockquote class=&quot;exclamation&quot;&gt;&lt;p&gt;&lt;strong&gt;&lt;em&gt;¿Podíamos haber usado 3 cómo índice para acceder a la tabla?&lt;/em&gt;&lt;/strong&gt;&lt;br /&gt;
sí, &amp;#8230; pero mejor no te acostumbres. El &amp;#8220;3&amp;#8243; depende de todas las acciones que hayamos hecho antes, mientras que el -1 depende sólo de las últimas acciones sobre la pila. Así que&amp;#8230; en general, es mejor usar índices negativos para este tipo de acciones puntuales.&lt;/p&gt;
&lt;p&gt;En este caso queremos acceder al elemento &amp;#8220;t.x&amp;#8221; para hacer ejecutar &amp;#8220;a = f(&amp;#8221;how&amp;#8221;, t.x, 14)&amp;#8221;, si por ejemplo fuese &amp;#8220;a = f(1,2,3,&amp;#8221;how&amp;#8221;, t.x, 14) ya no podríamos usar el índice 3 (usaríamos 6, al haber 3 elementos más en la pila), pero sí que podríamos seguir usando el -1.
&lt;/p&gt;&lt;/blockquote&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/lua101_e.png&quot; alt=&quot;step_5&quot; /&gt;&lt;/div&gt;
&lt;blockquote class=&quot;go&quot;&gt;&lt;p&gt;void &lt;a href=&quot;http://www.lua.org/manual/5.1/manual.html#lua_remove&quot;&gt;lua_remove&lt;/a&gt; (lua_State *L, int index);         [-1, +0, -]&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Esta función, si miras la etiqueta, elimina un elemento del stack y no añade nada. Hay poco que explicar aquí, nos cargamos lo que esté en la posición apuntada por &lt;em&gt;index&lt;/em&gt;. Al margen de la función, hemos conseguido obtener el elemento &amp;#8220;t.x&amp;#8221; para la llamada &amp;#8220;a = f(&amp;#8221;how&amp;#8221;,&lt;strong&gt;t.x&lt;/strong&gt;,14)&amp;#8221; (bieeeen!)&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/lua101_f.png&quot; alt=&quot;step_6&quot; /&gt;&lt;/div&gt;
&lt;blockquote class=&quot;go&quot;&gt;&lt;p&gt;
void &lt;a href=&quot;http://www.lua.org/manual/5.1/manual.html#lua_pushinteger&quot;&gt;lua_pushinteger&lt;/a&gt; (lua_State *L, lua_Integer n)         [-0, +1, m]&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&amp;#8230; No hace falta dar detalles, ¿no? otro &amp;#8220;lua_pushxxxx&amp;#8221;&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/lua101_g.png&quot; alt=&quot;step_7&quot; /&gt;&lt;/div&gt;
&lt;blockquote class=&quot;go&quot;&gt;&lt;p&gt;
void &lt;a href=&quot;http://www.lua.org/manual/5.1/manual.html#lua_call &quot;&gt;lua_call&lt;/a&gt; (lua_State *L, int nargs, int nresults);          [-(nargs + 1), +nresults, e]
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Ahora vamos a realizar una &amp;#8220;llamada a función&amp;#8221; (un &lt;em&gt;call&lt;/em&gt;) de &lt;em&gt;nargs&lt;/em&gt; argumentos de entrada y esperando obtener &lt;em&gt;nresults&lt;/em&gt; elementos de salida. Si miráis la etiqueta de la función pone que se consumen del stack nargs+1 elementos: n argumentos + 1 función. &lt;/p&gt;
&lt;p&gt;El órden es el que podéis ver en el stack, primero la función apilada, después cada argumento en orden y llamamos a lua_call. Con esto ejecutamos la función tal y como se ve en la figura.&lt;/p&gt;
&lt;p&gt;No sabemos el tipo del resultado devuelto, pero por la forma de llamar a call sabemos que siempre tendremos un elemento en la pila. Aquí lua realiza un proceso de ajuste: si la función devolvió 600 elementos, al poner nosotros lua_call(&amp;#8230;, 1);  se queda con el primero y descarta los otros 599, si la función no devolvía nada (0 elementos) y nosotros queríamos 1, rellenará el espacio con nil&amp;#8217;s , finalmente si queremos que la función devuelva todos los elementos que quiera, en vez de poner un numero en &lt;em&gt;nresults&lt;/em&gt;, usamos la constante LUA_MULTRET ( y con ello se evita el proceso de ajuste ).&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/lua101_h.png&quot; alt=&quot;step_8&quot; /&gt;&lt;/div&gt;
&lt;blockquote class=&quot;go&quot;&gt;&lt;p&gt;
void &lt;a href=&quot;http://www.lua.org/manual/5.1/manual.html#lua_setfield&quot;&gt;lua_setfield&lt;/a&gt; (lua_State *L,  int index, const char *k);          [-1, +0, e]
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Para acabar, asignamos el resultado de la operación a la variable global &amp;#8220;a&amp;#8221;, usando lua_setfield (análogo a lua_getfield). La etiqueta nos dice que va a consumir un elemento y que no va a apilar nada. Con esto tenemos ejecutada toda la secuencia de &amp;#8221; a = f(&amp;#8221;how&amp;#8221;, t.x, 14)&amp;#8221;.&lt;/p&gt;
&lt;p&gt;Nota:el call lo hicimos con lua_call(&amp;#8230;,1) precisamente porque la intención era guardar el resultado en &lt;strong&gt;una&lt;/strong&gt; variable ( gracias al ajuste nos da igual lo que haya devuelto la función ).&lt;/p&gt;
&lt;p&gt;
Y hasta aquí el primer tutorial sobre el API de lua&amp;#8230; para las dudas y aclaraciones, ahí tenéis los comentarios &lt;img src=&quot;http://www.pplux.com/wp-includes/images/smilies/icon_biggrin.gif&quot; alt=&quot;:D&quot; class=&quot;wp-smiley&quot; /&gt;&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">¿Cómo cambiar el tamaño de letra de vim?</title>
		<link href="http://feeds.feedburner.com/~r/Biestado/~3/270129443/%c2%bfcomo-cambiar-el-tamano-de-letra-de-vim"/>
		<id>http://biestado.kraptor.com/2008/04/14/%c2%bfcomo-cambiar-el-tamano-de-letra-de-vim</id>
		<updated>2008-04-14T17:18:29+00:00</updated>
		<content type="html">&lt;p&gt;Ya que Pplux se ha animado a compartir con nosotros &lt;a href=&quot;http://www.pplux.com/2008/04/11/color-de-auto-completado-del-vim/&quot;&gt;cómo cambiar el color del menú de autocompletado de vim&lt;/a&gt; (ya era hora!), vamos con otra receta, en este caso para GVim.&lt;/p&gt;
&lt;p&gt;En sistemas Unix:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;font&gt;&lt;br /&gt;
  &lt;b&gt;nnoremap&lt;/b&gt; &amp;nbsp; &amp;lt;C-Up&amp;gt; &amp;nbsp; :silent! let &amp;amp;guifont = substitute(&lt;br /&gt;
&amp;nbsp;&amp;nbsp;\ &amp;amp;guifont, &amp;#8216; \zs\d\+&amp;#8217;, &amp;#8216;\=eval(submatch(0)+1)&amp;#8217;,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;\ &amp;#8221;)&amp;lt;CR&amp;gt;&amp;lt;Esc&amp;gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;nnoremap&lt;/b&gt;&amp;nbsp;&amp;lt;C-Down&amp;gt;&amp;nbsp;:silent! let &amp;amp;guifont = substitute(&lt;br /&gt;
&amp;nbsp;&amp;nbsp;\ &amp;amp;guifont, &amp;#8216; \zs\d\+&amp;#8217;, &amp;#8216;\=eval(submatch(0)-1)&amp;#8217;,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;\ &amp;#8221;)&amp;lt;CR&amp;gt;&amp;lt;Esc&amp;gt;&lt;br /&gt;
&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;En sistemas Windows:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;
&lt;font&gt;&lt;br /&gt;
&lt;b&gt;nnoremap&lt;/b&gt;&amp;nbsp;&amp;lt;C-Up&amp;gt;&amp;nbsp;:silent! let &amp;amp;guifont = substitute(&lt;br /&gt;
&amp;nbsp;&amp;nbsp;\ &amp;amp;guifont, &amp;#8216;:h\zs\d\+&amp;#8217;, &amp;#8216;\=eval(submatch(0)+1)&amp;#8217;,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;\ &amp;#8221;)&amp;lt;CR&amp;gt;&amp;lt;Esc&amp;gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;nnoremap&lt;/b&gt;&amp;nbsp;&amp;lt;C-Down&amp;gt;&amp;nbsp;:silent! let &amp;amp;guifont = substitute(&lt;br /&gt;
&amp;nbsp;&amp;nbsp;\ &amp;amp;guifont, &amp;#8216;:h\zs\d\+&amp;#8217;, &amp;#8216;\=eval(submatch(0)-1)&amp;#8217;,&lt;br /&gt;
&amp;nbsp;&amp;nbsp;\ &amp;#8221;)&amp;lt;CR&amp;gt;&amp;lt;Esc&amp;gt;&lt;br /&gt;
&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Si añadimos esas dos líneas en nuestro .vimrc, con Control+&amp;uarr; y Control+&amp;darr; podemos cambiar el tamaño de la letra aumentándolo y disminuyendo cuando no estemos en modo inserción o visual. Muy útil para editar tranquilamente ficheros a pantalla completa en un TFT de 22&amp;#8242;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Es importante&lt;/strong&gt; definir el tamaño de la fuente en nuestro .vimrc de forma correcta para que funcione lo de arriba:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Si usamos linux podemos utilizar &lt;code&gt;set guifont=FreeMono\ 10&lt;/code&gt;, para indicar que queremos usar la fuente FreeMono a tamaño 10px.&lt;/li&gt;
&lt;li&gt;Si usamos windows podemos utilizar &lt;code&gt;set guifont=Courier\ New:h10&lt;/code&gt;, para indicar que queremos la fuente Courier New a tamaño 10px.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Si no especificamos un tamaño por defecto para la fuente, en este caso 10 píxeles, no funcionará la receta, ya que como podéis ver en el snippet, realiza una sustitución.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://vim.wikia.com/wiki/VimTip414&quot;&gt;Gracias al primer comentario del Vim Tip (NO OFICIAL) 414&lt;/a&gt;&lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=iO0ZBzg&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=iO0ZBzg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=1G7QJ2G&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=1G7QJ2G&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=x1tb9Pg&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=x1tb9Pg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=bhgnOQg&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=bhgnOQg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/Biestado/~4/270129443&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</content>
		<author>
			<name>Kraptor</name>
			<uri>http://biestado.kraptor.com</uri>
		</author>
		<source>
			<title type="html">biestado</title>
			<subtitle type="html">Al fin y al cabo todo es cuestión de unos y ceros...</subtitle>
			<link rel="self" href="http://feeds.feedburner.com/Biestado"/>
			<id>http://feeds.feedburner.com/Biestado</id>
			<updated>2008-09-07T09:00:11+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">disléxicos del mundo unisors!!!</title>
		<link href="http://www.pplux.com/2008/04/13/dislexicos-del-mundo-unisors/"/>
		<id>http://www.pplux.com/2008/04/13/dislexicos-del-mundo-unisors/</id>
		<updated>2008-04-13T17:49:06+00:00</updated>
		<content type="html">&lt;p&gt;Después del &lt;a href=&quot;http://soledadpenades.com/2008/04/08/mental-note-about-ifndefs/&quot;&gt;primer mandamiento&lt;/a&gt;, viene el de &amp;#8220;evitarás la disléxia&amp;#8221;:&lt;/p&gt;
&lt;blockquote class=&quot;exclamation&quot;&gt;
&lt;pre&gt;
#ifndef __RESOURCE__
#define __RESORUCE__
...
#endif
&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;Sabía cual era el fallo, sabía que era un define mal puesto, sabía incluso en qué fichero estaba dando problemas&amp;#8230; y aun así no veía el problema XD&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">extraordinariamente real</title>
		<link href="http://www.pplux.com/2008/04/12/extraordinariamente-real/"/>
		<id>http://www.pplux.com/2008/04/12/extraordinariamente-real/</id>
		<updated>2008-04-12T19:10:47+00:00</updated>
		<content type="html">&lt;p&gt;Más aun!!&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;
&lt;a href=&quot;http://www.phdcomics.com/comics/archive.php?comicid=1011&quot;&gt;&lt;br /&gt;
&lt;img src=&quot;http://www.phdcomics.com/comics/archive/phd041108s.gif&quot; alt=&quot;PHD&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;p&gt;&lt;div class=&quot;alignCenter&quot;&gt;
&lt;img src=&quot;http://www.pplux.com/files/build-slb.png&quot; alt=&quot;slb builds!&quot; /&gt;
&lt;/div&gt;
&lt;/p&gt;
&lt;p&gt;Para los que me han tenido que soportar esta semana de &lt;strike&gt;&amp;#8220;bugs&amp;#8221;&lt;/strike&gt; &amp;#8220;features&amp;#8221; &lt;img src=&quot;http://www.pplux.com/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Intel: QuickPath Interconnect</title>
		<link href="http://plutontech.losplutonianos.net/2008/04/12/intel-quickpath-interconnect/"/>
		<id>http://plutontech.losplutonianos.net/2008/04/12/intel-quickpath-interconnect/</id>
		<updated>2008-04-12T18:18:33+00:00</updated>
		<content type="html">&lt;p&gt;Van a llegar mil y una entradas en los logs del planeta acerca de la nueva característica QuickPath Interconnect de Intel y lo que &amp;#8220;seguramente&amp;#8221; representará.&lt;/p&gt;
&lt;p&gt;Sin embargo, tengo que recalcar la relacion entre el concepto &amp;#8220;nueva caracteristica&amp;#8221; y la marca &amp;#8220;Intel&amp;#8221;.  El concepto no es nuevo mas alla de esa relación, ADM y sus Opteron llevan implementandolo ya algún año. Ellos lo llaman &amp;#8220;Direct connect&amp;#8221; y profesionalmente era/es uno de los mejores argumentos que tanto yo (la burra delante), como Sun, como AMD tenían a la hora de afrontar ventas de equipos con este procesador. El ratio wattio/rendimiento es el otro, pero no se valora mas alla de entornos de datacenter.&lt;/p&gt;
&lt;p&gt;Como decía, todos mis clientes que no conocían esta característica de los Opteron abrían la boca ante tal ingenio en favor de la pura coherencia. Por reducirlo al absurdo venia a decir algo como que: &lt;em&gt;&amp;#8220;si el FSB es el embudo, lo quito y meto todos los controladores que necesito (en este caso memoria) en el propio nucleo. Con esto garantizo el maximo de apertura del bus al resto de elementos&amp;#8221;&lt;/em&gt;. Juego, set y partido.&lt;/p&gt;
&lt;p&gt;Intel mientras tanto se volvia loco añadiendo transistores en favor de cache y mas cache. Pero ermm&amp;#8230; es que entonces esto no tiene fin oiga.&lt;/p&gt;
&lt;p&gt;Parece ser que, ante la necesidad de añadir mas caracteristicas al procesador y su poco espacio disponible, se han dado cuenta del problema, años despues, y van a lanzar el susodicho QuickPath Interconnet en el diseño del Nehalem. Que por cierto, aseguran, que tambien ayudará a la mejora del otro gran argumento (potencia/rendimiento).&lt;/p&gt;
&lt;p&gt;Evidentemente esto tiene lecturas mas alla de las propias ventajas del invento. Por ejemplo, Intel gana mas espacio para integrar lo que sea: controladores, chips graficos?&amp;#8230; yo que se.&lt;/p&gt;
&lt;p&gt;Para mas info esta &lt;a href=&quot;http://arstechnica.com/news.ars/post/20070904-abrief-look-at-intels-new-common-systems-interconnect-csi.html&quot; target=&quot;_blank&quot;&gt;este enlace de Ars Technica (en ingles)&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Si alguno se esta preguntando cual va a ser el nuevo mi nuevo argumento de venta, la respuesta ahora es aun sencilla: ninguno. Hasta que salga el bichito el argumento es el mismo, en espera de un pequeña mejora que pueda hacer AMD para seguir conservando su nicho en el mercado de servidores para calculo.&lt;/p&gt;
&lt;h6&gt;* A modo de curiosidad, el &lt;a href=&quot;http://http://www.marca.com/edicion/marca/motor/formula1/es/desarrollo/1109288.html&quot; target=&quot;_blank&quot;&gt;mastodonte que se ha comprado Renault&lt;/a&gt; para sus simulaciones, un &lt;a href=&quot;http://www.appro.com/product/server_xtremex2_opteron.asp&quot; target=&quot;_blank&quot;&gt;Appro Xtreme-X2&lt;/a&gt;, esta montado con Opteron prueba de que el modelo de AMD se afianza en ese sector de calculo. &lt;a href=&quot;http://www.appro.com/press/view.asp?Num=152&quot; target=&quot;_blank&quot;&gt;Nota de prensa de Appro&lt;/a&gt;.&lt;/h6&gt;</content>
		<author>
			<name>QuasaR</name>
			<uri>http://plutontech.losplutonianos.net</uri>
		</author>
		<source>
			<title type="html">Pluton Technologies</title>
			<subtitle type="html">Sistemas Centrales de los Plutonianos</subtitle>
			<link rel="self" href="http://plutontech.losplutonianos.net/feed/atom/"/>
			<id>http://plutontech.losplutonianos.net/feed/atom/</id>
			<updated>2008-09-07T03:00:13+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Infojobs Trends Salarios</title>
		<link href="http://plutontech.losplutonianos.net/2008/04/11/infojobs-trends-salarios/"/>
		<id>http://plutontech.losplutonianos.net/2008/04/11/infojobs-trends-salarios/</id>
		<updated>2008-04-11T20:08:07+00:00</updated>
		<content type="html">&lt;p&gt;Me lo estoy pasando pipa.&lt;/p&gt;
&lt;p&gt;Probad probad!. Un ejemplo:&lt;/p&gt;
&lt;p&gt;Perfiles &lt;strong&gt;windows&lt;/strong&gt; frente a perfiles &lt;strong&gt;linux&lt;/strong&gt;&amp;#8230;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://salarios.infojobs.net/resultados.cfm?o_clave=linux%2C+windows&amp;amp;o_id=3&quot;&gt;&lt;img src=&quot;http://salarios.infojobs.net/servlet/ChartServlet?keys=linux%2Cwindows&amp;amp;width=700&amp;amp;height=440&amp;amp;o_id=3&quot; align=&quot;middle&quot; height=&quot;376&quot; width=&quot;600&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;MUAHAHAHA&amp;#8230;.Habia una vez, un cirrrcooooo que&amp;#8230;.&lt;/p&gt;
&lt;p&gt;:O&lt;/p&gt;</content>
		<author>
			<name>QuasaR</name>
			<uri>http://plutontech.losplutonianos.net</uri>
		</author>
		<source>
			<title type="html">Pluton Technologies</title>
			<subtitle type="html">Sistemas Centrales de los Plutonianos</subtitle>
			<link rel="self" href="http://plutontech.losplutonianos.net/feed/atom/"/>
			<id>http://plutontech.losplutonianos.net/feed/atom/</id>
			<updated>2008-09-07T03:00:13+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Seminarios de la Breakpoint&amp;#8217;08</title>
		<link href="http://www.pplux.com/2008/04/11/seminarios-de-la-breakpoint08/"/>
		<id>http://www.pplux.com/2008/04/11/seminarios-de-la-breakpoint08/</id>
		<updated>2008-04-11T10:38:21+00:00</updated>
		<content type="html">&lt;p&gt;Las &lt;a href=&quot;http://breakpoint.untergrund.net/&quot;&gt;Breakpoint&amp;#8217;s&lt;/a&gt; siempre dejan &lt;a href=&quot;http://www.pouet.net/party.php?which=450&amp;#038;when=2008&quot;&gt;demos&lt;/a&gt; espectaculares pero, personalmente, lo que más me fascina de la party son la calidad de algunos de sus &lt;a href=&quot;http://breakpoint.untergrund.net/seminars.php&quot;&gt;seminarios&lt;/a&gt;. Se molestan en organizarlos, grabarlos y dejarlos &lt;a href=&quot;http://breakpoint.untergrund.net/seminars.php&quot;&gt;online&lt;/a&gt; para disfrute de todo el mundo.&lt;/p&gt;
&lt;p&gt;A mi me han gustado especialmente, sin ningún orden específico:&lt;br /&gt;
&lt;span id=&quot;more-159&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;a href=&quot;http://breakpoint.untergrund.net/download.php?dir=2008/seminars/&amp;#038;file=BP08_Seminar_Aaron_Coday.mp4&quot;&gt;&lt;strong&gt;Multi-threading made easier through Open-Source Threading Building Blocks&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/BP08-tbb.png&quot; alt=&quot;BreakPoint'08 TBB&quot; /&gt;&lt;/div&gt;
&lt;blockquote&gt;&lt;p&gt;Task stealing: cuando un core real se queda sin tareas &amp;#8220;roba&amp;#8221; a otro una tarea para maximizar el &lt;a href=&quot;http://es.wikipedia.org/wiki/Throughput&quot;&gt;throughput&lt;/a&gt; &lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Después de hacer una extensa introducción sobre paralelismo, paralelismo sobre datos, paralelismo funcional, etc&amp;#8230; muy orientado a videojuegos (bien!) nos presenta &lt;a href=&quot;http://threadingbuildingblocks.org/&quot;&gt;Threading Building Blocks&lt;/a&gt;(TBB), una librería brutal, open-source y multiplataforma,  de la mano de intel. &lt;/p&gt;
&lt;p&gt;La parte novedosa de usar TBB es que está orientado a tareas (task patterns), no a programar threads (hilos) como tal. Programar tareas hace que, teóricamente, el diseño escale automáticamente según el número de cores que tenga nuestro procesador. TBB es para C++, y está hecho para C++, por lo que usa plantillas para definir concurrent-containers (hash, queue, vector, ..), algoritmos paralelos (sort, for, while, reduce, &amp;#8230;), tiene también un patrón &amp;#8220;pipeline&amp;#8221; para poder encadenar tareas, scalable-memory-allocators (para evitar sincronizaciones entre tareas al reservar memoria), etc.&lt;/p&gt;
&lt;p&gt;Otra razón para usar tareas es que es fácil debuggear, ya que por diseño, puedes limitar todo a un single thread y depurar, una vez todo funciona puedes lanzarlo en multithread con casi todas las garantías de que va a funcionar.&lt;/p&gt;
&lt;p&gt;En general TBB está &lt;strong&gt;muy&lt;/strong&gt; bien montado. No se si se nota las ganas que tengo de usarlo &lt;img src=&quot;http://www.pplux.com/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://breakpoint.untergrund.net/download.php?dir=2008/seminars/&amp;#038;file=BP08_Seminar_Bonzaj.mp4&quot;&gt;&lt;br /&gt;
&lt;strong&gt;To hardcode or not - considerations about an ultimate demotool&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/BP08-plastic.png&quot; alt=&quot;BreakPoint'08 Plastic&quot; /&gt;&lt;/div&gt;
&lt;blockquote&gt;&lt;p&gt; Motor de render picoEngine, integrado dentro de Maya como plugin. Escena de la última demo de &lt;a href=&quot;http://www.plastic-demo.org/&quot;&gt;plastic&lt;/a&gt;: &lt;a href=&quot;http://www.pouet.net/prod.php?which=50170&quot;&gt;Linger in Shadows&lt;/a&gt;  &lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;¿ hardcodear demos ó demotools ? Evolución de &lt;a href=&quot;http://www.plastic-demo.org/&quot;&gt;plastic&lt;/a&gt; desde sus primeras demos hardcodeadas a los plugins y editores que ahora usan para diseñar demos. Por lo visto tienen su motor de render  (picoEngine) integrado como un plugin del editor que usen (Maya en este caso), y un editor de escenas para ajustar timelines, velocidad, etc. &lt;/p&gt;
&lt;p&gt;Definitivamente para plastic el enfoque está muy cerca del artista, aunque reconocen que cierta funcionalidad es más cómoda de implementar en código que diseñarla con un editor.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://breakpoint.untergrund.net/download.php?dir=2008/seminars/&amp;#038;file=BP08_Seminar_Navis.mp4&quot;&gt;&lt;br /&gt;
&lt;strong&gt;Tonite let&amp;#8217;s all make demo in Bingen&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/BP08-asd.png&quot; alt=&quot;BreakPoint'08 ASD&quot; /&gt;&lt;/div&gt;
&lt;blockquote&gt;&lt;p&gt; La demo cuenta una historia, tiene un flujo y los efectos de transición, no son tales, si no que se integran en ese flujo conectando una escena con la siguiente, suavemente. &lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Vemos la otra cara de la moneda, para &lt;a href=&quot;http://www.asd.gr/&quot;&gt;ASD&lt;/a&gt; lo principal es el código como herramienta y defienden que muchos de los efectos y transiciones no se podrían hacer con comodidad en un demoeditor. Por otro lado, como con plastic, no todo es blanco o negro.&lt;/p&gt;
&lt;p&gt;Empieza con las razones por las que no hacemos demos ( me ha gustado eso de : &amp;#8220;19% estamos intimidados por Farbrausch&amp;#8221; ) y cómo las hacen en ASD. Básicamente: librería sencillita en C++, soporte básico para manejo de shaders y texturas, sin engine para animaciones, sistemas de partículas adecuados, scripting para los eventos y funciones de cámara imaginativas.&lt;/p&gt;
&lt;p&gt;Desmitifican el &amp;#8220;hacer una hardcoded demo es más difícil&amp;#8221; y explican paso a paso como organizan sus demos. Detallan cómo organizan las escenas, efectos y las transiciones (aunque las transiciones de ASD son para dar de comer aparte).&lt;/p&gt;
&lt;p&gt;Del motor de partículas destacan que es una pérdida de tiempo el típico bucle de actualización de partícula por frame, ya que en el 95% de los casos, las partículas se comportan de forma determinista por lo que se puede calcular su path previamente.&lt;/p&gt;
&lt;p&gt;También es interesante cómo ajustan los detalles de las escenas, utilizando rands, y semillas asociadas a eventos de teclado y ratón para encontrar algún estado que quede bien en la demo (mola!!!).&lt;/p&gt;
&lt;p&gt;Las cámaras tienen solo un par de movimientos, elípticos y lineales, interpolados con &lt;a href=&quot;http://en.wikipedia.org/wiki/Sigmoid_function&quot;&gt;s-curves&lt;/a&gt;, simple y controlable.&lt;/p&gt;
&lt;p&gt;El resto es filosofía de diseño, muy, muy interesante.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://breakpoint.untergrund.net/download.php?dir=2008/seminars/&amp;#038;file=BP08_Seminar_Yury_Uralsky_Smoke.mp4&quot;&gt;&lt;strong&gt;When there&amp;#8217;s smoke there&amp;#8217;s fire&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/BP08-nvidia.png&quot; alt=&quot;BreakPoint'08 Nvidia&quot; /&gt;&lt;/div&gt;
&lt;blockquote&gt;&lt;p&gt; ¡¡ Ruido, y más ruido !!  &lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Una presentación de nvidia muy asequible para el público en general sobre generación procedural y cálculo en la GPU. Explica con muchísimo detalle &lt;a href=&quot;http://www.pplux.com/2008/04/11/seminarios-de-la-breakpoint08/ http://en.wikipedia.org/wiki/Perlin_noise&quot;&gt;perlin noise&lt;/a&gt; para modelado de partículas, al margen del uso que hagan la explicación por si sola ya merece la pena.&lt;/p&gt;
&lt;p&gt;Después continúa con la evolución del perlin noise hacia el &lt;a href=&quot;http://en.wikipedia.org/wiki/Simplex_noise&quot;&gt;Simplex noise&lt;/a&gt; y cómo usarlo, acabando con notas sobre el sampleado del ruido para conseguir los mejores resultados.&lt;/p&gt;
&lt;p&gt;La segunda parte de la charla trata sobre cómo renderizar humo. Empieza por la composición del humo en la escena (esta es la parte fácil y similar con la primera parte de la charla). Después comenta cómo calcular la simulación de fluidos en la GPU y añade cómo  detectar las colisiones con geometría de la escena (pasándola a un volumen).&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Color de auto-completado del vim</title>
		<link href="http://www.pplux.com/2008/04/11/color-de-auto-completado-del-vim/"/>
		<id>http://www.pplux.com/2008/04/11/color-de-auto-completado-del-vim/</id>
		<updated>2008-04-11T07:40:44+00:00</updated>
		<content type="html">&lt;p&gt;No sé qué razón se oculta tras la configuración por defecto de mi vim/gvim que el auto-completado se ve de pena. Tenía un color rosa de fondo con letras blancas, con tan poco contraste que molesta. Para cambiar esta opción y que nuestro vim deje de tener pluma, podemos hacer lo siguiente:&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/vim-completion-color.png&quot; alt=&quot;Completado del vim, resultado&quot; /&gt;&lt;/div&gt;
&lt;blockquote class=&quot;go&quot;&gt;&lt;p&gt;
highlight Pmenu guibg=blue guifg=white ctermbg=blue ctermfg=white&lt;br /&gt;
highlight PmenuSel guibg=white guifg=blue ctermbg=white ctermfg=blue
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Esto en el ~/.vimrc y problema resuelto.&lt;/p&gt;
&lt;p&gt;Gracias al &lt;a href=&quot;http://www.vim.org/tips/tip.php?tip_id=1486&quot;&gt;vim-tip-1486&lt;/a&gt;&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">La publicidad y los traductores automáticos</title>
		<link href="http://feeds.feedburner.com/~r/Biestado/~3/267095997/la-publicidad-y-los-traductores-automaticos"/>
		<id>http://biestado.kraptor.com/2008/04/09/la-publicidad-y-los-traductores-automaticos</id>
		<updated>2008-04-09T15:53:04+00:00</updated>
		<content type="html">&lt;p&gt;Los traductores automáticos a distintos lenguajes no son, hoy por hoy, una maravilla. Eso lo sabe todo el mundo&amp;#8230; o casi todo el mundo. Es evidente que los que diseñaron este &lt;em&gt;banner&lt;/em&gt; publicitario que me he encontrado en &lt;a href=&quot;http://www.terra.es&quot;&gt;Terra&lt;/a&gt; ni siquiera se lo han planteado y claro, pasa lo que pasa.&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;a href=&quot;http://biestado.kraptor.com/wp-content/uploads/files/2008/04/pantallazo-terracom-noticias-entretenimiento-musica-deportes-moda-y-salud-para-latinos-en-terra-mozilla-firefox-3-beta-5.png&quot; title=&quot;Ads, YOU FAIL!&quot;&gt;&lt;img src=&quot;http://biestado.kraptor.com/wp-content/uploads/files/2008/04/pantallazo-terracom-noticias-entretenimiento-musica-deportes-moda-y-salud-para-latinos-en-terra-mozilla-firefox-3-beta-5.png&quot; alt=&quot;Ads, YOU FAIL!&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;A mí lo que me preocupa es, sobre todo, que el tiempo funciona hacia afuera.. ¡qué cosas!&lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=8wI64Zg&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=8wI64Zg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=xlQOBKG&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=xlQOBKG&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=3v1l2Ig&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=3v1l2Ig&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=wLEdW8g&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=wLEdW8g&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/Biestado/~4/267095997&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</content>
		<author>
			<name>Kraptor</name>
			<uri>http://biestado.kraptor.com</uri>
		</author>
		<source>
			<title type="html">biestado</title>
			<subtitle type="html">Al fin y al cabo todo es cuestión de unos y ceros...</subtitle>
			<link rel="self" href="http://feeds.feedburner.com/Biestado"/>
			<id>http://feeds.feedburner.com/Biestado</id>
			<updated>2008-09-07T09:00:11+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Entrevistas</title>
		<link href="http://plutontech.losplutonianos.net/2008/04/03/entrevistas/"/>
		<id>http://plutontech.losplutonianos.net/2008/04/03/entrevistas/</id>
		<updated>2008-04-03T21:54:07+00:00</updated>
		<content type="html">&lt;p&gt;Siempre he tenido dudas a la hora de asignar un orden secuencial sobre los requerimientos mínimos a cumplir a la hora de realizar una entrevista de trabajo: buena presencia, confianza, blablabla&amp;#8230; después de lo visto, tengo un punto clarisimo y es el mas importante indudablemente. Seré breve.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Queridos y queridas lectores y lectoras, por favor, es un consejo de amigo, de compañero, de persona; NO VAYAIS A UNA ENTREVISTA DE TRABAJO FUMADOS HASTA LAS OREJAS. Se nota y mucho.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Haceros un favor: quereros!. Quereros vosotros mismos. No os desprecieis así en una entrevista. Ni cambio generacional, ni juventud, ni leches!. Se trata de vuestro futuro. Gracias.&lt;/p&gt;
&lt;p&gt;Manda huevos.&lt;/p&gt;
&lt;p&gt;:S&lt;/p&gt;</content>
		<author>
			<name>QuasaR</name>
			<uri>http://plutontech.losplutonianos.net</uri>
		</author>
		<source>
			<title type="html">Pluton Technologies</title>
			<subtitle type="html">Sistemas Centrales de los Plutonianos</subtitle>
			<link rel="self" href="http://plutontech.losplutonianos.net/feed/atom/"/>
			<id>http://plutontech.losplutonianos.net/feed/atom/</id>
			<updated>2008-09-07T03:00:13+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">El desarrollo del kernel Linux en números</title>
		<link href="http://feeds.feedburner.com/~r/Biestado/~3/263182145/el-desarrollo-del-kernel-linux-en-numeros"/>
		<id>http://biestado.kraptor.com/2008/04/03/el-desarrollo-del-kernel-linux-en-numeros</id>
		<updated>2008-04-03T08:04:09+00:00</updated>
		<content type="html">&lt;p&gt;Acabo de &lt;a href=&quot;https://www.linux-foundation.org/publications/linuxkerneldevelopment.php&quot;&gt; leerme un estudio &lt;/a&gt;realizado por &lt;a href=&quot;http://www.kroah.com/&quot;&gt;Greg Kroah-Hartman&lt;/a&gt;, Jonathan Corbet y Amanda McPherson. Podemos ver cómo es el desarrollo del núcleo, la manera en la que se realizan las &lt;em&gt;releases&lt;/em&gt;, cómo se distribuye el trabajo entre los participantes y quién está detrás del núcleo. Por supuesto, con unas bonitas gráficas como esta:&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://biestado.kraptor.com/wp-content/uploads/files/2008/04/kernel-lines-of-code.gif&quot; alt=&quot;Líneas de código frente a días transcurridos en el kernel de linux&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Es impresionante ver cómo se han doblado la cantidad de líneas de código en 3 años. Un artículo que merece la pena leer.&lt;/p&gt;
&lt;p&gt;Vía &lt;a href=&quot;http://www.gnome.org/~michael/activity.html#2008-04-02&quot;&gt;Michael Meeks&lt;/a&gt;, por fin leo algo interesante de él que no sea &amp;#8220;hoy he desayunado y he llevado los críos al colegio&amp;#8221;. ¡Es que hay algunos que lo de bitácora se lo toman de una forma tan literal!&lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=6OApQCg&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=6OApQCg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=PB0df7G&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=PB0df7G&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=x4xQskg&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=x4xQskg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=CBDu1Mg&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=CBDu1Mg&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/Biestado/~4/263182145&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</content>
		<author>
			<name>Kraptor</name>
			<uri>http://biestado.kraptor.com</uri>
		</author>
		<source>
			<title type="html">biestado</title>
			<subtitle type="html">Al fin y al cabo todo es cuestión de unos y ceros...</subtitle>
			<link rel="self" href="http://feeds.feedburner.com/Biestado"/>
			<id>http://feeds.feedburner.com/Biestado</id>
			<updated>2008-09-07T09:00:11+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">vim: Completando nombres de ficheros</title>
		<link href="http://www.pplux.com/2008/04/01/vim-completando-nombres-de-ficheros/"/>
		<id>http://www.pplux.com/2008/04/01/vim-completando-nombres-de-ficheros/</id>
		<updated>2008-04-01T13:31:10+00:00</updated>
		<content type="html">&lt;p&gt;Estoy demasiado acostumbrado a como completa bash los nombres de ficheros, escribes un cacho le das a TAB y esperas a que complete hasta donde pueda&amp;#8230; si insistes te saca una lista de opciones y vas completando hasta llegar al destino. Vim, cuando estás en modo comando, tiene la fea costumbre de completar todo el nombre con cada TAB&amp;#8230; en un directorio con varios ficheros suele ser un suplicio llegar al que toca. Pero afortunadamente todo en vim es configurable, en este caso la opción se llama &lt;strong&gt;wildmode&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Para tener un comportamiento similar al bash, puedes poner esto en tu ~/.vimrc:&lt;/p&gt;
&lt;blockquote class=&quot;go&quot;&gt;&lt;p&gt;set wildmode=longest,list:longest&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;&lt;em&gt;wildmode&lt;/em&gt; tiene hasta dos parámetros separados por &amp;#8216;,&amp;#8217; el primero es lo que ocurre justo después del primer TAB, el segundo cuando el TAB se vuelve a pulsar. En este caso le estamos pidiendo que haga un match con la entrada común más larga posible (por defecto es &lt;em&gt;full&lt;/em&gt;, que viene a decir un match completo), y si vuelves a presionar TAB mostará una lista y seguirá haciendo match con la entrada común más larga.&lt;/p&gt;
&lt;p&gt;Para más info &amp;#8216;:h wildmode&amp;#8217;&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Zemanta</title>
		<link href="http://mescriva.codemaniacs.com/blog/2008/03/31/zemanta/"/>
		<id>http://mescriva.codemaniacs.com/blog/2008/03/31/zemanta/</id>
		<updated>2008-04-01T07:17:27+00:00</updated>
		<content type="html">&lt;p&gt;&lt;span class=&quot;zemanta-img&quot;&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Image:Firefox-logo.svg&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://upload.wikimedia.org/wikipedia/en/thumb/e/e3/Firefox-logo.svg/202px-Firefox-logo.svg.png&quot; alt=&quot;Mozilla Firefox&quot; width=&quot;120&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Today I want to speak about a &lt;a href=&quot;http://en.wikipedia.org/wiki/List_of_Firefox_extensions&quot; title=&quot;List of Firefox extensions&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; class=&quot;zem_slink&quot;&gt;Firefox plugin&lt;/a&gt; I discovered recently. It&amp;#8217;s called &lt;a href=&quot;http://www.zemanta.com&quot; title=&quot;Zemanta ltd.&quot; rel=&quot;homepage&quot; target=&quot;_blank&quot; class=&quot;zem_slink&quot;&gt;Zemanta&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Zemanta is a &lt;a href=&quot;http://en.wikipedia.org/wiki/Mozilla_Firefox&quot; title=&quot;Mozilla Firefox&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; class=&quot;zem_slink&quot;&gt;Firefox&lt;/a&gt; &lt;a href=&quot;http://en.wikipedia.org/wiki/Add-on&quot; title=&quot;Add-on&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; class=&quot;zem_slink&quot;&gt;add-on&lt;/a&gt; that adds new functionality to your blog. It&amp;#8217;s not for your users, it&amp;#8217;s for you! It adds a new tab in the edit/add post internal weblog. It works in blogger, wordpress.com or wordpress.org.&lt;/p&gt;
&lt;p&gt;Zemanta inspects what you are writting and suggests you to add links in relevant words you wrote. Also searches for pictures and articles in &lt;a href=&quot;http://en.wikipedia.org/wiki/World_Wide_Web&quot; title=&quot;World Wide Web&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; class=&quot;zem_slink&quot;&gt;the web&lt;/a&gt; that are related to your post.&lt;/p&gt;
&lt;p&gt;For example, all links in this post and the Firefox logo image were suggested by Zemanta!&lt;/p&gt;
&lt;p&gt;A drawback I see in Zemanta is that it only search for content in &lt;a href=&quot;http://en.wikipedia.org/wiki/English_language&quot; title=&quot;English language&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; class=&quot;zem_slink&quot;&gt;English.&lt;/a&gt; It would be a good idea if Zemanta added an option to search for content in other languages.&lt;/p&gt;
&lt;p&gt;Here a video showing what Zemanta can do for you:&lt;/p&gt;
&lt;p&gt; 
&lt;/p&gt;
&lt;p&gt;Finally, some related posts that Zemanta found for me:&lt;br /&gt;
&lt;fieldset class=&quot;zemanta-related&quot;&gt;&lt;legend class=&quot;zemanta-title&quot;&gt;Related articles&lt;/legend&gt;
&lt;ul class=&quot;zemanta-article-ul&quot;&gt;
&lt;li class=&quot;zemanta-article&quot;&gt;&lt;a title=&quot;Open in new window&quot; target=&quot;_blank&quot; href=&quot;http://www.zemanta.com/blog/experimental-wordpress-25-support/&quot;&gt;Experimental Wordpress 2.5 support&lt;/a&gt; [via&amp;nbsp;Zemanta]&lt;/li&gt;
&lt;li class=&quot;zemanta-article&quot;&gt;&lt;a title=&quot;Open in new window&quot; target=&quot;_blank&quot; href=&quot;http://blog.semantic-web.at/?p=80&quot;&gt;Rich blog content at the click of a button - Zemanta has gone live!&lt;/a&gt; [via&amp;nbsp;Zemanta]&lt;/li&gt;
&lt;li class=&quot;zemanta-article&quot;&gt;&lt;a title=&quot;Open in new window&quot; target=&quot;_blank&quot; href=&quot;http://www.techcrunch.com/2008/03/27/a-content-suggestion-engine-for-blogging-that-could-work/&quot;&gt;A content suggestion engine for blogging? That could work&amp;#8230;&lt;/a&gt; [via&amp;nbsp;Zemanta]&lt;/li&gt;
&lt;li class=&quot;zemanta-article&quot;&gt;&lt;a title=&quot;Open in new window&quot; target=&quot;_blank&quot; href=&quot;http://www.readwriteweb.com/archives/zementa_brings_a_semantic_layer_to_blogs.php&quot;&gt;Zementa Brings a Semantic Layer to Your Blog&lt;/a&gt; [via&amp;nbsp;Zemanta]&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;/p&gt;&lt;/fieldset&gt;
&lt;div id=&quot;zemanta-pixie&quot;&gt;&lt;a id=&quot;zemanta-pixie-a&quot; href=&quot;http://www.zemanta.com/&quot; title=&quot;Zemified by Zemanta&quot;&gt;&lt;img id=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/pixie.png?x-id=9498b279-b08d-4381-8e3a-dc91db615c76&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/p&gt;</content>
		<author>
			<name>Miguel</name>
			<uri>http://mescriva.codemaniacs.com/blog</uri>
		</author>
		<source>
			<title type="html">El blog autoestereoscópico</title>
			<subtitle type="html">Porque en estereo se ve mejor</subtitle>
			<link rel="self" href="http://mescriva.codemaniacs.com/blog/feed/atom/"/>
			<id>http://mescriva.codemaniacs.com/blog/feed/atom/</id>
			<updated>2008-09-07T06:00:19+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">La caga uno, la pagamos todos&amp;#8230;</title>
		<link href="http://plutontech.losplutonianos.net/2008/04/01/la-caga-uno-la-pagamos-todos/"/>
		<id>http://plutontech.losplutonianos.net/2008/04/01/la-caga-uno-la-pagamos-todos/</id>
		<updated>2008-04-01T01:22:08+00:00</updated>
		<content type="html">&lt;p&gt;No suelo hacer comentarios mas allá de la empresa que me da de comer. Ni soy el mas corporativo ni el mas judas simplemente tengo claro quien me pone el plato en la mesa.&lt;/p&gt;
&lt;p&gt;Entre las diferentes variables que mueven una empresa hay una de difícil gestión, lo llamamos el ENTORNO. Uno puede hacer un trabajo de leones para la empresa que le da de comer y encontrarse con un escenario que condiciona absolutamente ese esfuerzo personal.&lt;/p&gt;
&lt;p&gt;Me he encontrado hoy con un problema de esos, un problema de ENTORNO.&lt;/p&gt;
&lt;p&gt;Por la razón que sea, me da exactamente igual, este fin de semana han habido problemas de conectividad (o eso dicen) de ciertos datacenters de la zona de levante. Y tal vez por comunicado oficial, por excusas o porque Choni la charcutera se ha levantado con el pie izquierdo, la linea de actuación ha sido generalizarlo a TODO levante.&lt;/p&gt;
&lt;p&gt;El caso es que internet es infinito y el mundo un pañuelo y me ha empezado a sonar el teléfono preguntando acerca de este problema ajeno a la empresa que me da de comer.&lt;/p&gt;
&lt;p&gt;Pues bien, a nosotros no nos ha pasado nada. Ni nos afecta. Ni tenemos ningún problema relacionado.&lt;/p&gt;
&lt;p&gt;Me he puesto a investigar un pelin por internet y he encontrado ciertas entradas que hay que coger con pinzas. Por favor, se trata de casos concretos y si por algo estoy en contra de generalizar es porque casi nunca se cubren todos los casos.&lt;/p&gt;
&lt;p&gt;Ni la empresa que me da de comer es la que se nombra en algunos casos, ni el problema es general de valencia. Leñe!&lt;/p&gt;</content>
		<author>
			<name>QuasaR</name>
			<uri>http://plutontech.losplutonianos.net</uri>
		</author>
		<source>
			<title type="html">Pluton Technologies</title>
			<subtitle type="html">Sistemas Centrales de los Plutonianos</subtitle>
			<link rel="self" href="http://plutontech.losplutonianos.net/feed/atom/"/>
			<id>http://plutontech.losplutonianos.net/feed/atom/</id>
			<updated>2008-09-07T03:00:13+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">WiiFit con el Wii FreeLoader de Datel</title>
		<link href="http://mescriva.codemaniacs.com/blog/2008/03/28/wiifit-con-el-wii-freeloader-de-datel/"/>
		<id>http://mescriva.codemaniacs.com/blog/2008/03/28/wiifit-con-el-wii-freeloader-de-datel/</id>
		<updated>2008-03-31T13:17:29+00:00</updated>
		<content type="html">&lt;p&gt;&lt;img src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/03/wii-freeloader.thumbnail.jpg&quot; alt=&quot;Wii Freeloader&quot; class=&quot;left&quot; /&gt;El mes de diciembre estuve de viaje por &lt;a href=&quot;http://es.wikipedia.org/wiki/Tokio&quot;&gt;Tokio&lt;/a&gt; (&lt;a href=&quot;http://es.wikipedia.org/wiki/Japon&quot;&gt;Japón&lt;/a&gt;) con mis amigos &lt;a href=&quot;http://www.pplux.com&quot;&gt;Pplux&lt;/a&gt; y &lt;a href=&quot;http://biestado.kraptor.com/&quot;&gt;Kraptor&lt;/a&gt;, y allí me hice con un &lt;a href=&quot;http://es.wikipedia.org/wiki/Wii_Fit&quot;&gt;WiiFit&lt;/a&gt; para mi querida &lt;a href=&quot;http://es.wikipedia.org/wiki/Wii&quot;&gt;Wii&lt;/a&gt; de &lt;a href=&quot;http://www.nintendo.es/&quot;&gt;Nindendo&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;El problema lo tuve al llegar a &lt;a href=&quot;http://es.wikipedia.org/wiki/Espa%C3%B1a&quot;&gt;España&lt;/a&gt;, que el juego no funcionaba. Pero ahora gracias a &lt;a href=&quot;http://en.wikipedia.org/wiki/Datel&quot;&gt;Datel&lt;/a&gt; que ha sacado un FreeLoader para la Wii, ya puedo disfrutar del juego.&lt;/p&gt;
&lt;div align=&quot;center&quot;&gt;
&lt;img src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/03/wiifit.jpg&quot; alt=&quot;WiiFit&quot; /&gt;
&lt;/div&gt;
&lt;p&gt;Por cierto el juego en Japón me costo la mitad de lo que se rumorea que saldrá aquí.&lt;/p&gt;</content>
		<author>
			<name>Miguel</name>
			<uri>http://mescriva.codemaniacs.com/blog</uri>
		</author>
		<source>
			<title type="html">El blog autoestereoscópico</title>
			<subtitle type="html">Porque en estereo se ve mejor</subtitle>
			<link rel="self" href="http://mescriva.codemaniacs.com/blog/feed/atom/"/>
			<id>http://mescriva.codemaniacs.com/blog/feed/atom/</id>
			<updated>2008-09-07T06:00:19+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Deadlock II</title>
		<link href="http://mescriva.codemaniacs.com/blog/2008/03/28/deadlock-ii/"/>
		<id>http://mescriva.codemaniacs.com/blog/2008/03/28/deadlock-ii/</id>
		<updated>2008-03-30T09:06:06+00:00</updated>
		<content type="html">&lt;p&gt;This is my first post in &lt;a href=&quot;http://en.wikipedia.org/wiki/English_language&quot; title=&quot;English language&quot; rel=&quot;wikipedia&quot; target=&quot;_blank&quot; class=&quot;zem_slink&quot;&gt;English.&lt;/a&gt; I will try to write more posts in english to improve it. This post is a response to &lt;a href=&quot;http://www.pplux.com/2008/02/26/inanicion/&quot;&gt;another one&lt;/a&gt; written by my friend Pplux.&lt;/p&gt;
&lt;p&gt;In that post, pplux writes about an intersecion full or cars. He describes that like a &lt;a href=&quot;http://en.wikipedia.org/wiki/Deadlock&quot;&gt;deadlock&lt;/a&gt;. Today, I found some similar pictures I want to share with us.&lt;/p&gt;
&lt;p&gt;&lt;span id=&quot;more-41&quot;&gt;&lt;/span&gt;&lt;/p&gt;
&lt;div align=&quot;center&quot;&gt;
&lt;img src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/03/atasco6.jpg&quot; alt=&quot;Atasco 6&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
&lt;img src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/03/atasco5.jpg&quot; alt=&quot;Atasco 5&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
&lt;img src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/03/atasco3.jpg&quot; alt=&quot;Atasco 3&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
&lt;img src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/03/atasco7.jpg&quot; alt=&quot;Atasco 7&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
&lt;img src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/03/atasco4.jpg&quot; alt=&quot;Atasco 4&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
&lt;img src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/03/atasco2.jpg&quot; alt=&quot;Atasco 2&quot; width=&quot;500&quot; /&gt;&lt;br /&gt;
&lt;img src=&quot;http://mescriva.codemaniacs.com/blog/wp-content/uploads/2008/03/atasco1.jpg&quot; alt=&quot;Atasco 1&quot; width=&quot;500&quot; /&gt;&lt;/div&gt;

&lt;p&gt;Those pictures come from:  &lt;a href=&quot;http://www.darkroastedblend.com/2008/03/worlds-worst-intersections-traffic-jams.html&quot;&gt;World&amp;#8217;s Worst Intersections &amp;amp; Traffic Jams&lt;/a&gt;
&lt;div id=&quot;zemanta-pixie&quot;&gt;&lt;a id=&quot;zemanta-pixie-a&quot; href=&quot;http://www.zemanta.com/&quot; title=&quot;Zemified by Zemanta&quot;&gt;&lt;img id=&quot;zemanta-pixie-img&quot; src=&quot;http://img.zemanta.com/pixie.png?x-id=27676b29-4da7-4d46-b4b1-e6e8712d792b&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/p&gt;</content>
		<author>
			<name>Miguel</name>
			<uri>http://mescriva.codemaniacs.com/blog</uri>
		</author>
		<source>
			<title type="html">El blog autoestereoscópico</title>
			<subtitle type="html">Porque en estereo se ve mejor</subtitle>
			<link rel="self" href="http://mescriva.codemaniacs.com/blog/feed/atom/"/>
			<id>http://mescriva.codemaniacs.com/blog/feed/atom/</id>
			<updated>2008-09-07T06:00:19+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Vale, ahora sí!</title>
		<link href="http://www.pplux.com/2008/03/27/vale-ahora-si/"/>
		<id>http://www.pplux.com/2008/03/27/vale-ahora-si/</id>
		<updated>2008-03-27T16:30:54+00:00</updated>
		<content type="html">&lt;p&gt;Conversación entre ingenieros, uno puramente de gráficos ( o eso dice ), orgulloso tras cazar un bug:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;
&lt;font color=&quot;#9999DD&quot;&gt;- oh si&lt;br /&gt;
- arreglaooo&lt;/font&gt;&lt;br /&gt;
&lt;font color=&quot;#DD9999&quot;&gt;- qué era?&lt;/font&gt;&lt;br /&gt;
&lt;font color=&quot;#9999DD&quot;&gt;- pues que se liberaba un shader cuando ya no habia contexto de render pq no se hacia un &amp;#8220;clear&amp;#8221; de los stateBlocks en el destroy de State&lt;/font&gt;&lt;br /&gt;
&lt;font color=&quot;#DD9999&quot;&gt;- pues que el motor de fluzo generaba una compresión espacio-temporal en la indeterminación producida por los hadrones&lt;br /&gt;
- vale vale, me lo creo&lt;/font&gt;&lt;br /&gt;
&lt;font color=&quot;#9999DD&quot;&gt;- XDDDD&lt;br /&gt;
- en nvidia el driver debe decir&amp;#8230; &amp;#8220;paso de ti&amp;#8230;&amp;#8221;&lt;br /&gt;
- en ati dice..&amp;#8221; diosssssss que haceeees!!!??&amp;#8221;&lt;/font&gt;&lt;br /&gt;
&lt;font color=&quot;#DD9999&quot;&gt;- ya te digo, lo mismito que espeta el inyector de fluzo en el cableado de interconexión cutáneo&amp;#8230; mira que están mal diseñados esos drivers&lt;/font&gt;&lt;br /&gt;
&lt;font color=&quot;#9999DD&quot;&gt;- basicamente , glDeleteShader(id) cuando contexto de render no existir, poder pasar dos cosas:&lt;br /&gt;
- si nvidia, no pasar nada&lt;br /&gt;
- si ati, driver cagarse en tu p%&amp;#038;$·@ madre&lt;br /&gt;
- XDDD&lt;/font&gt;&lt;br /&gt;
&lt;font color=&quot;#DD9999&quot;&gt;- ah vale, ahora sí&lt;br /&gt;
- xDDDDDD&lt;br /&gt;
&lt;/font&gt;
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Maravillas de ATI vs Nvidia &lt;img src=&quot;http://www.pplux.com/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; &lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Recodificar video y subtítulos para el iphone/ipod-touch</title>
		<link href="http://www.pplux.com/2008/03/27/recodificar-video-y-subtitulos-para-el-iphoneipod-touch/"/>
		<id>http://www.pplux.com/2008/03/27/recodificar-video-y-subtitulos-para-el-iphoneipod-touch/</id>
		<updated>2008-03-27T15:06:21+00:00</updated>
		<content type="html">&lt;p&gt;Se me había olvidado que tenía hecho desde hace tiempo un script para pasar un video al formato del iphone (básicamente genera un mpeg4 con el tamaño adecuado para ahorrar espacio) y que &lt;strong&gt;además empotra los subtítulos si los encuentra&lt;/strong&gt;. Todo ello usando mencoder y ffmpeg. &lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt; &lt;a href=&quot;http://svn.pplux.com/lab/scripts/iphone-video.sh&quot;&gt;iphone-video.sh&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;De alguna parte saqué las opciones pero ya no me acuerdo, el caso es que funciona &lt;img src=&quot;http://www.pplux.com/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; (en linux por lo menos)&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">GPU gems, publicado online.</title>
		<link href="http://www.pplux.com/2008/03/26/gpu-gems-publicado-online/"/>
		<id>http://www.pplux.com/2008/03/26/gpu-gems-publicado-online/</id>
		<updated>2008-03-27T14:00:55+00:00</updated>
		<content type="html">&lt;p&gt;&lt;img class=&quot;floatRight&quot; src=&quot;http://www.pplux.com/files/gpu_gems_cover.png&quot; alt=&quot;GPU gems cover&quot; /&gt;&lt;br /&gt;
&lt;a href=&quot;http://news.developer.nvidia.com/2008/03/gpu-gems---now.html&quot;&gt;Nvidia&lt;/a&gt; ha dejado disponible online la primera entrega del &lt;a href=&quot;http://developer.download.nvidia.com/books/HTML/gpugems/gpugems_part01.html&quot;&gt;GPU gems&lt;/a&gt;.Un gesto nada despreciable teniendo en cuenta lo caros que llegan a ser este tipo de libros.&lt;/p&gt;
&lt;p&gt;La serie GPU gems se compone de artículos independientes que analizan problemas muy particulares. Son amenos de leer y no se centran únicamente en los gráficos, también exploran otros usos de la GPU o cuestiones de diseño muy prácticas para los programadores que estén trasteando con motores de render .&lt;/p&gt;
&lt;p&gt;En esta entrega encontraremos:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.download.nvidia.com/books/HTML/gpugems/gpugems_part01.html&quot;&gt;Efectos naturales&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.download.nvidia.com/books/HTML/gpugems/gpugems_part02.html&quot;&gt;Iluminación y sombras&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.download.nvidia.com/books/HTML/gpugems/gpugems_part03.html&quot;&gt;Materiales&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.download.nvidia.com/books/HTML/gpugems/gpugems_part04.html&quot;&gt;Procesado de Imágenes&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.download.nvidia.com/books/HTML/gpugems/gpugems_part05.html&quot;&gt;Rendimiento y Diseño&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://developer.download.nvidia.com/books/HTML/gpugems/gpugems_part06.html&quot;&gt;Cálculo general en la GPU&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Jordi en “El Ciberpaís”</title>
		<link href="http://feeds.feedburner.com/~r/Biestado/~3/258870040/jordi-en-el-ciberpais"/>
		<id>http://biestado.kraptor.com/2008/03/27/jordi-en-el-ciberpais</id>
		<updated>2008-03-27T09:49:34+00:00</updated>
		<content type="html">&lt;p&gt;Me comentan por aquí que a &lt;a href=&quot;http://oskuro.net&quot;&gt;Jordi&lt;/a&gt;, un compañero de trabajo, le hicieron una &lt;a href=&quot;http://www.elpais.com/articulo/semana/extravagancia/negocio/elpeputeccib/20080327elpciblse_6/Tes/&quot;&gt;entrevista en el Ciberpaís&lt;/a&gt; que acaba de ser publicada.&lt;/p&gt;
&lt;p&gt;¡Enhorabuena Jordi!&lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=MCLJHof&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=MCLJHof&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=ojMaqOF&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=ojMaqOF&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=qvfmEdf&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=qvfmEdf&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=LzHVrHf&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=LzHVrHf&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/Biestado/~4/258870040&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</content>
		<author>
			<name>Kraptor</name>
			<uri>http://biestado.kraptor.com</uri>
		</author>
		<source>
			<title type="html">biestado</title>
			<subtitle type="html">Al fin y al cabo todo es cuestión de unos y ceros...</subtitle>
			<link rel="self" href="http://feeds.feedburner.com/Biestado"/>
			<id>http://feeds.feedburner.com/Biestado</id>
			<updated>2008-09-07T09:00:11+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">EULA estúpida de Apple en Safari para Windows</title>
		<link href="http://feeds.feedburner.com/~r/Biestado/~3/258860526/eula-estupida-de-apple-en-safari-para-windows"/>
		<id>http://biestado.kraptor.com/2008/03/27/eula-estupida-de-apple-en-safari-para-windows</id>
		<updated>2008-03-27T09:27:38+00:00</updated>
		<content type="html">&lt;p&gt;Cuando una empresa de software se pone a restringir, pasa lo que pasa, que utilizan la misma licencia de uso (&lt;a href=&quot;http://es.wikipedia.org/wiki/EULA&quot;&gt;EULA&lt;/a&gt;) en distintas aplicaciones.&lt;/p&gt;
&lt;p&gt;En este caso, claramente han copiado la licencia de algún otro producto de Apple en Safari para Windows. En esta licencia especifica:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;This License allows you to install and use one copy of the Apple Software on a single Apple-labeled computer at a time.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Vamos, que si quieres instalar Safari para Windows, o tienes un Mac en el que ejecutas Windows o no puedes instalar el software (el &lt;a href=&quot;http://www.theregister.co.uk/2008/03/26/apple_safari_eula_paradox/&quot;&gt;titular de The Register&lt;/a&gt; en este caso es erróneo, ya que existe un caso particular en que sí se puede instalar el software).&lt;/p&gt;
&lt;p&gt;Lo curioso es que lo ofrecen como actualización en Apple Update para todos los equipos Windows que tienen instalado iTunes&amp;#8230; ¡&lt;a href=&quot;http://es.wikipedia.org/wiki/Ob%C3%A9lix&quot;&gt;están locos estos romanos&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;Visto en el &lt;a href=&quot;http://blogs.gnome.org/calum/&quot;&gt;blog de Calum&lt;/a&gt;.&lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=9EONMHf&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=9EONMHf&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=pDLl0vF&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=pDLl0vF&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=wSxANKf&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=wSxANKf&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=VXzxOxf&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=VXzxOxf&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/Biestado/~4/258860526&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</content>
		<author>
			<name>Kraptor</name>
			<uri>http://biestado.kraptor.com</uri>
		</author>
		<source>
			<title type="html">biestado</title>
			<subtitle type="html">Al fin y al cabo todo es cuestión de unos y ceros...</subtitle>
			<link rel="self" href="http://feeds.feedburner.com/Biestado"/>
			<id>http://feeds.feedburner.com/Biestado</id>
			<updated>2008-09-07T09:00:11+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">D-Bus causa dolor…</title>
		<link href="http://feeds.feedburner.com/~r/Biestado/~3/258370873/d-bus-causa-dolor"/>
		<id>http://biestado.kraptor.com/2008/03/26/d-bus-causa-dolor</id>
		<updated>2008-03-26T15:18:42+00:00</updated>
		<content type="html">&lt;p&gt;&amp;#8230;o al menos eso dicen la &lt;a href=&quot;http://dbus.freedesktop.org/doc/api/html/index.html&quot;&gt;documentación&lt;/a&gt; de &lt;a href=&quot;http://www.freedesktop.org/wiki/Software/dbus&quot;&gt;D-Bus&lt;/a&gt;:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;This manual documents the low-level D-Bus C API. If you use this low-level API directly, you&amp;#8217;re signing up for some pain.&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Claro, con ese aviso, a uno se le quitan las ganas de seguir leyendo&amp;#8230;&lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=hQTt91f&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=hQTt91f&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=XrBiO6F&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=XrBiO6F&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=Fi2InIf&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=Fi2InIf&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=P9F0XXf&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=P9F0XXf&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/Biestado/~4/258370873&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</content>
		<author>
			<name>Kraptor</name>
			<uri>http://biestado.kraptor.com</uri>
		</author>
		<source>
			<title type="html">biestado</title>
			<subtitle type="html">Al fin y al cabo todo es cuestión de unos y ceros...</subtitle>
			<link rel="self" href="http://feeds.feedburner.com/Biestado"/>
			<id>http://feeds.feedburner.com/Biestado</id>
			<updated>2008-09-07T09:00:11+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Ubuntu Hardy</title>
		<link href="http://www.pplux.com/2008/03/25/ubuntu-hardy/"/>
		<id>http://www.pplux.com/2008/03/25/ubuntu-hardy/</id>
		<updated>2008-03-26T09:26:04+00:00</updated>
		<content type="html">&lt;p&gt;Espectacular gracias a &lt;a href=&quot;http://biestado.kraptor.com/&quot;&gt;kraptor&lt;/a&gt;:&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;
&lt;div class=&quot;flvPlayer&quot;&gt;				&lt;/div&gt;&lt;/div&gt;



					&lt;br /&gt;
				

&lt;p&gt;Esto es lo que pasa cuando alguien habla por el pidgin usando &lt;a href=&quot;http://code.google.com/p/avant-window-navigator/&quot;&gt;avant-window-navigator&lt;/a&gt; &lt;img src=&quot;http://www.pplux.com/wp-includes/images/smilies/icon_smile.gif&quot; alt=&quot;:)&quot; class=&quot;wp-smiley&quot; /&gt; .&lt;br /&gt;
También interesante el &lt;a href=&quot;http://do.davebsd.com/&quot;&gt;gnome-do&lt;/a&gt;:&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;
&lt;img src=&quot;http://www.pplux.com/files/gnome-do-kraptor.png&quot; alt=&quot;gnome-do &quot; /&gt;
&lt;/div&gt;
&lt;p&gt;Poco a poco esto ya parece un mac! Todas estas &amp;#8220;novedades&amp;#8221; por cortesía de &lt;a href=&quot;http://biestado.kraptor.com&quot;&gt;kraptor&lt;/a&gt;.&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">ver videos de Youtube en HD</title>
		<link href="http://www.pplux.com/2008/03/24/ver-videos-de-youtube-en-hd/"/>
		<id>http://www.pplux.com/2008/03/24/ver-videos-de-youtube-en-hd/</id>
		<updated>2008-03-24T17:43:08+00:00</updated>
		<content type="html">&lt;p&gt;Buscando el último trailer de wall-e por youtube me encuentro con esto:&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;



&lt;/div&gt;
&lt;p&gt;El autor pone &amp;#8220;HD&amp;#8221; por ahí pero se ve bastante mal. Haciendo scroll encuentro un &lt;em&gt;tipet&lt;/em&gt; que dice:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;añade &lt;strong&gt;&amp;#038;fmt=18&lt;/strong&gt; a cualquier url de youtube y se verá en alta resolución&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;así que probé:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://youtube.com/watch?v=pC96tIhLDN0&quot;&gt;http://youtube.com/watch?v=pC96tIhLDN0&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://youtube.com/watch?v=pC96tIhLDN0&amp;#038;fmt=18&quot;&gt;http://youtube.com/watch?v=pC96tIhLDN0&amp;#038;fmt=18&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;y algo hace! El truco no es nuevo pero yo no tenía ni idea, por si algún despistado tampoco lo sabía&amp;#8230; ahí queda.&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Coloreado de Sintaxis en Vim</title>
		<link href="http://mescriva.codemaniacs.com/blog/2008/03/07/coloreado-de-sintaxis-en-vim/"/>
		<id>http://mescriva.codemaniacs.com/blog/2008/03/07/coloreado-de-sintaxis-en-vim/</id>
		<updated>2008-03-08T13:49:33+00:00</updated>
		<content type="html">&lt;p&gt;A la hora de realizar mis programas suelo elegir, en el caso de que me dejen, realizarlo en &lt;a href=&quot;http://es.wikipedia.org/wiki/Linux&quot;&gt;Linux&lt;/a&gt; y utilizo &lt;a href=&quot;http://www.vim.org/&quot;&gt;Vim&lt;/a&gt; como editor y &lt;a href=&quot;http://www.cmake.org&quot;&gt;cmake&lt;/a&gt; como herramienta de building. Para sacar mejor provecho de estas herramientas, se pueden seguir los consejos de mi amigo &lt;a href=&quot;http://www.pplux.com&quot;&gt;pplux&lt;/a&gt; que blogueó &lt;a href=&quot;http://www.pplux.com/2007/11/06/cmake-productivo/&quot;&gt;aquí&lt;/a&gt; y &lt;a href=&quot;http://www.pplux.com/2007/11/08/cmake-productivo-ii-vim-quickfix/&quot;&gt;aquí&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Pero yo os quiero hablar del coloreado de sintaxis en Vim. Como ya sabréis, para activar el coloreado de sintaxis en vim basta con añadir &lt;strong&gt;&lt;em&gt;syntax on&lt;/em&gt;&lt;/strong&gt; a tu fichero &lt;em&gt;.vimrc&lt;/em&gt;. El problema lo tengo cuando uso alguna librería donde los ficheros de inclusión no tiene ninguna extensión, por lo que Vim no activará el coloreado de sintaxis automáticamente. Algún ejemplo de libraría que no usa ninguna extensión para los ficheros de inclusión, y la que uso normalmente, es &lt;a href=&quot;http://www.openscenegraph.org&quot;&gt;OpenSceneGraph&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;He estado buscando y al final he encontrado la solución. En el caso de OpenSceneGraph, los ficheros de inclusión contienen en la primera linea la cadena &lt;strong&gt;-*-c++-*-&lt;/strong&gt;, por lo que la solución pasa por buscar esa cadena y si la encontramos activar el coloreado de sintaxis para el tipo C/C++. Puedes añadir las siguientes lineas a tu &lt;em&gt;.vimrc&lt;/em&gt; para activar esta funcionalidad:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;
au BufNewFile,BufRead * if getline(1) =~ &amp;#8216;-*-c++-*-&amp;#8217;&lt;br /&gt;
au BufNewFile,BufRead *    set filetype=cpp&lt;br /&gt;
au BufNewFile,BufRead * endif
&lt;/p&gt;&lt;/blockquote&gt;</content>
		<author>
			<name>Miguel</name>
			<uri>http://mescriva.codemaniacs.com/blog</uri>
		</author>
		<source>
			<title type="html">El blog autoestereoscópico</title>
			<subtitle type="html">Porque en estereo se ve mejor</subtitle>
			<link rel="self" href="http://mescriva.codemaniacs.com/blog/feed/atom/"/>
			<id>http://mescriva.codemaniacs.com/blog/feed/atom/</id>
			<updated>2008-09-07T06:00:19+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Emprendeurismo: Ahora vas y la cascas&amp;#8230;</title>
		<link href="http://plutontech.losplutonianos.net/2008/03/06/emprendeurismo-ahora-vas-y-la-cascas/"/>
		<id>http://plutontech.losplutonianos.net/2008/03/06/emprendeurismo-ahora-vas-y-la-cascas/</id>
		<updated>2008-03-06T02:28:03+00:00</updated>
		<content type="html">&lt;p&gt;Llego tarde, lo se, pero cuando algo me llama la atención, sea para bien o para mal, yo me la apunto. Así que por  regla de tres&amp;#8230; Varsavsky en estado puro. Yo lo titularia: &amp;#8220;Ahora vas y cascas&amp;#8230;&amp;#8221;:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;</content>
		<author>
			<name>QuasaR</name>
			<uri>http://plutontech.losplutonianos.net</uri>
		</author>
		<source>
			<title type="html">Pluton Technologies</title>
			<subtitle type="html">Sistemas Centrales de los Plutonianos</subtitle>
			<link rel="self" href="http://plutontech.losplutonianos.net/feed/atom/"/>
			<id>http://plutontech.losplutonianos.net/feed/atom/</id>
			<updated>2008-09-07T03:00:13+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Solucionando bugs en drivers propietarios II</title>
		<link href="http://feeds.feedburner.com/~r/Biestado/~3/246019867/solucionando-bugs-en-drivers-propietarios-ii"/>
		<id>http://biestado.kraptor.com/2008/03/05/solucionando-bugs-en-drivers-propietarios-ii</id>
		<updated>2008-03-05T09:27:38+00:00</updated>
		<content type="html">&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://biestado.kraptor.com/wp-content/uploads/files/2008/03/nvidia_logo.jpg&quot; alt=&quot;Logo de Nvidia&quot; /&gt;&lt;/p&gt;
&lt;p&gt;En el post &lt;a href=&quot;http://biestado.kraptor.com/2008/02/08/solucionando-bugs-en-drivers-propietarios-mas-bien-intentandolo&quot;&gt;Solucionando bugs en drivers propietarios (más bien intentándolo)&lt;/a&gt; me quejaba del desamparo de Nvidia por NO dar una solución a un bug que llevaba mucho tiempo circulando.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://bugs.launchpad.net/ubuntu/+source/linux-restricted-modules-2.6.22/+bug/164589&quot;&gt;La intentona de solucionar dicho bug&lt;/a&gt; dio sus frutos.&lt;/p&gt;
&lt;p&gt;El caso es que ya ha superado la fase de &lt;em&gt;triage&lt;/em&gt; y ha sido confirmado y evaluado.&lt;/p&gt;
&lt;p&gt;Con un poco de suerte, para &lt;a href=&quot;https://wiki.ubuntu.com/HardyReleaseSchedule&quot;&gt;Ubuntu Hardy Heron&lt;/a&gt; no habrá que cambiar la configuración &amp;#8220;a mano&amp;#8221;.&lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=MtPRQaf&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=MtPRQaf&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=bYv09TF&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=bYv09TF&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=0tbvP1f&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=0tbvP1f&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=vxEEmUf&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=vxEEmUf&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/Biestado/~4/246019867&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</content>
		<author>
			<name>Kraptor</name>
			<uri>http://biestado.kraptor.com</uri>
		</author>
		<source>
			<title type="html">biestado</title>
			<subtitle type="html">Al fin y al cabo todo es cuestión de unos y ceros...</subtitle>
			<link rel="self" href="http://feeds.feedburner.com/Biestado"/>
			<id>http://feeds.feedburner.com/Biestado</id>
			<updated>2008-09-07T09:00:11+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">Subversion y las versiones anteriores: usando merge, revert y diff</title>
		<link href="http://feeds.feedburner.com/~r/Biestado/~3/245569369/subversion-y-las-versiones-anteriores-usando-merge-revert-y-diff"/>
		<id>http://biestado.kraptor.com/2008/03/04/subversion-y-las-versiones-anteriores-usando-merge-revert-y-diff</id>
		<updated>2008-03-04T16:31:26+00:00</updated>
		<content type="html">&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://biestado.kraptor.com/wp-content/uploads/files/2008/03/subversion_logo_hor-237x32.png&quot; alt=&quot;Subversion&quot; /&gt;&lt;/p&gt;
&lt;p&gt;En un proyecto en el que estoy trabajando me he encontrado que, tras usar una rama experimental de &lt;a href=&quot;http://www.djangoproject.com/&quot;&gt;Django&lt;/a&gt; (lo siento &lt;a href=&quot;http://www.inwebwetrust.net/&quot;&gt;Maestro&lt;/a&gt; &lt;a href=&quot;http://www.lacoctelera.com/blat&quot;&gt;Fer&lt;/a&gt;, hijo de &lt;a href=&quot;http://es.wikipedia.org/wiki/Ruby&quot;&gt;Ruby&lt;/a&gt;, conocido como &amp;#8220;el que navega a hombros de &lt;a href=&quot;http://www.rubyonrails.org/&quot;&gt;Rails&lt;/a&gt;&amp;#8221; [1] y [2]) habíamos cambiado nuestro modelo de datos de forma tan drástica que teníamos que volver atrás, depués de nuestro desagradable paso por las ramas experimentales.&lt;/p&gt;
&lt;p&gt;Vamos, que teníamos que devolver un fichero al estado de una revisión anterior. Para ello, simplemente hacemos:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&lt;code&gt;$ svn merge -rHEAD:543 models.py&lt;br /&gt;
U    models.py&lt;/code&gt;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Como vemos es muy sencillo y se trata exactamente igual que si fuera un &lt;code&gt;merge&lt;/code&gt; de otra rama. &lt;code&gt;HEAD&lt;/code&gt; es la versión (rama) actual de desarrollo y 543 el número de revisión (rama) al que queremos volver. Evidentemente, hay que hacer &lt;em&gt;commit&lt;/em&gt; para que estos cambios queden reflejados en el repositorio.&lt;/p&gt;
&lt;p&gt; &lt;a href=&quot;http://biestado.kraptor.com/2008/03/04/subversion-y-las-versiones-anteriores-usando-merge-revert-y-diff#more-140&quot; class=&quot;more-link&quot;&gt;(more&amp;#8230;)&lt;/a&gt;&lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=nwx6J6f&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=nwx6J6f&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=xAC30MF&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=xAC30MF&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=CopMLaf&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=CopMLaf&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=N727Vbf&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=N727Vbf&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/Biestado/~4/245569369&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</content>
		<author>
			<name>Kraptor</name>
			<uri>http://biestado.kraptor.com</uri>
		</author>
		<source>
			<title type="html">biestado</title>
			<subtitle type="html">Al fin y al cabo todo es cuestión de unos y ceros...</subtitle>
			<link rel="self" href="http://feeds.feedburner.com/Biestado"/>
			<id>http://feeds.feedburner.com/Biestado</id>
			<updated>2008-09-07T09:00:11+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">¿Que protocolo habla Sr Windows?</title>
		<link href="http://plutontech.losplutonianos.net/2008/03/03/%c2%bfque-protocolo-habla-sr-windows/"/>
		<id>http://plutontech.losplutonianos.net/2008/03/03/%c2%bfque-protocolo-habla-sr-windows/</id>
		<updated>2008-03-02T22:14:19+00:00</updated>
		<content type="html">&lt;p&gt;La pregunta del titulo de esta entrada aunque absurda para el resto de protocolos del planeta Tierra (veanse los RFCs) alcanza un grado importante dentro del mundo de los sistemas propietarios porque desde siempre han  utilizado el protocolo que les ha salido de las narices.&lt;/p&gt;
&lt;p&gt;Pues bien, pasito adelante de Microsoft que ha decidido ir contestando a la susodicha pregunta. Internet, que es de todo menos tonta, se ha hecho eco como la polvora hasta que me he topado yo con el enlace. ¿Que protocolo habla usted Sr Windows?&lt;/p&gt;
&lt;p&gt;- Todos estos que te cuento con detalle: &lt;a href=&quot;http://msdn2.microsoft.com/en-us/library/cc216513.aspx&quot; target=&quot;_blank&quot;&gt;http://msdn2.microsoft.com/en-us/library/cc216513.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;¡Buena respuesta!&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://msdn2.microsoft.com/en-us/library/cc216513.aspx&quot; target=&quot;_blank&quot;&gt;&lt;/a&gt;&lt;/p&gt;</content>
		<author>
			<name>QuasaR</name>
			<uri>http://plutontech.losplutonianos.net</uri>
		</author>
		<source>
			<title type="html">Pluton Technologies</title>
			<subtitle type="html">Sistemas Centrales de los Plutonianos</subtitle>
			<link rel="self" href="http://plutontech.losplutonianos.net/feed/atom/"/>
			<id>http://plutontech.losplutonianos.net/feed/atom/</id>
			<updated>2008-09-07T03:00:13+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">ADOdb y la memoria de su autor</title>
		<link href="http://feeds.feedburner.com/~r/Biestado/~3/242783554/adodb-y-la-memoria-de-su-autor"/>
		<id>http://biestado.kraptor.com/2008/02/28/adodb-y-la-memoria-de-su-autor</id>
		<updated>2008-02-28T15:58:43+00:00</updated>
		<content type="html">&lt;p&gt;Estaba yo depurando el código de una aplicación PHP que casca (lo siento, mi NDA no me permite divulgar datos del proyecto) y mirando el código de &lt;a href=&quot;http://adodb.sourceforge.net/&quot;&gt;ADOdb&lt;/a&gt;, cuando me he encontrado este WTF!:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;&lt;br /&gt;
/**&lt;br /&gt;
* synonym for ADONewConnection for people like me&lt;br /&gt;
* who cannot remember the correct name&lt;br /&gt;
*/&lt;br /&gt;
function &amp;amp;NewADOConnection($db='')&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;$tmp = &amp;amp;ADONewConnection($db);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;return $tmp;&lt;br /&gt;
}&lt;br /&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=lNmTN5e&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=lNmTN5e&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=XkEBXGE&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=XkEBXGE&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=6zoaZ9e&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=6zoaZ9e&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=OyVjJFe&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=OyVjJFe&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/Biestado/~4/242783554&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</content>
		<author>
			<name>Kraptor</name>
			<uri>http://biestado.kraptor.com</uri>
		</author>
		<source>
			<title type="html">biestado</title>
			<subtitle type="html">Al fin y al cabo todo es cuestión de unos y ceros...</subtitle>
			<link rel="self" href="http://feeds.feedburner.com/Biestado"/>
			<id>http://feeds.feedburner.com/Biestado</id>
			<updated>2008-09-07T09:00:11+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">inanición</title>
		<link href="http://www.pplux.com/2008/02/26/inanicion/"/>
		<id>http://www.pplux.com/2008/02/26/inanicion/</id>
		<updated>2008-02-26T11:33:01+00:00</updated>
		<content type="html">&lt;p&gt;A mi me lo explicaron como inanición, aunque realmente igual es un &lt;a href=&quot;http://en.wikipedia.org/wiki/Deadlock&quot;&gt;deadlock&lt;/a&gt;. En cualquier caso, el ejemplo de &amp;#8220;imaginad la hipotética situación de un cruce, con todos los coches queriendo pasar y que llegado el momento todo se quede bloqueado&amp;#8221;&amp;#8230; jamás pensé que pudiera ser real:&lt;/p&gt;
&lt;div class=&quot;alignCenter&quot;&gt;&lt;img src=&quot;http://www.pplux.com/files/inanicion.jpg&quot; alt=&quot;Deadlock!&quot; /&gt;&lt;/div&gt;
&lt;p&gt;Para los no-informáticos: fijaros en que si los coches pretenden seguir la dirección que tienen actualmente, es &lt;b&gt;imposible&lt;/b&gt; solucionar el problema. &lt;img src=&quot;http://www.pplux.com/wp-includes/images/smilies/icon_biggrin.gif&quot; alt=&quot;:D&quot; class=&quot;wp-smiley&quot; /&gt;  &lt;/p&gt;
&lt;p&gt;visto en: &lt;a href=&quot;http://thedailywtf.com/Articles/The-Comcast-Bill,-A-Buggy-Traffic-Light,-and-More.aspx&quot;&gt;The daily WTF!&lt;/a&gt;&lt;/p&gt;</content>
		<author>
			<name>PpluX</name>
			<uri>http://www.pplux.com</uri>
		</author>
		<source>
			<title type="html">Luanatic con features</title>
			<subtitle type="html">el blog de PpluX</subtitle>
			<link rel="self" href="http://www.pplux.com/feed/atom/"/>
			<id>http://www.pplux.com/feed/atom/</id>
			<updated>2008-07-11T08:00:09+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<title type="html">De camino al FOSDEM 2008</title>
		<link href="http://feeds.feedburner.com/~r/Biestado/~3/238846915/de-camino-al-fosdem-2008"/>
		<id>http://biestado.kraptor.com/2008/02/21/de-camino-al-fosdem-2008</id>
		<updated>2008-02-21T15:13:43+00:00</updated>
		<content type="html">&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://biestado.kraptor.com/wp-content/uploads/files/2008/02/going-to-fosdem.png&quot; alt=&quot;Going to Fosdem&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Este fin de semana me voy al &lt;a href=&quot;http://www.fosdem.org/2008/&quot;&gt;FOSDEM 2008&lt;/a&gt;, a tragarme todas las conferencias sobre software libre que pueda (y a intentar hacer amigos, claro). Ya os iré contando poco a poco lo que me encuentro por allí y lo que va pasando.&lt;/p&gt;
&lt;p&gt;De todas formas, si no os lo queréis perder tendréis &lt;a href=&quot;http://www.fosdem.org/2008/node/136&quot;&gt;acceso a través de streaming&lt;/a&gt; a todas las conferencias, así como al material.&lt;/p&gt;
&lt;div class=&quot;feedflare&quot;&gt;
&lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=qMMdGfe&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=qMMdGfe&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=81OfARE&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=81OfARE&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=WIT2zae&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=WIT2zae&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/~f/Biestado?a=RkSD09e&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/~f/Biestado?i=RkSD09e&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src=&quot;http://feeds.feedburner.com/~r/Biestado/~4/238846915&quot; height=&quot;1&quot; width=&quot;1&quot; /&gt;</content>
		<author>
			<name>Kraptor</name>
			<uri>http://biestado.kraptor.com</uri>
		</author>
		<source>
			<title type="html">biestado</title>
			<subtitle type="html">Al fin y al cabo todo es cuestión de unos y ceros...</subtitle>
			<link rel="self" href="http://feeds.feedburner.com/Biestado"/>
			<id>http://feeds.feedburner.com/Biestado</id>
			<updated>2008-09-07T09:00:11+00:00</updated>
		</source>
	</entry>

	<entry xml:lang="en">
		<t