<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Aldo.MX</title>
	<atom:link href="http://aldo.mx/feed" rel="self" type="application/rss+xml" />
	<link>http://aldo.mx</link>
	<description>Blog de Aldonio</description>
	<lastBuildDate>Tue, 15 May 2012 05:33:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Se buscan testers para nueva actualización de StepMania AMX</title>
		<link>http://aldo.mx/55</link>
		<comments>http://aldo.mx/55#comments</comments>
		<pubDate>Wed, 02 May 2012 14:51:45 +0000</pubDate>
		<dc:creator>Aldonio</dc:creator>
				<category><![CDATA[PIUSM]]></category>
		<category><![CDATA[StepMania AMX]]></category>

		<guid isPermaLink="false">http://aldo.mx/?p=55</guid>
		<description><![CDATA[A pesar del anuncio de que me pienso retirar del desarrollo de SMA al terminar &#8220;todos los pendientes y características prometidas&#8221;, jamás especifiqué qué tantos pendientes tenía, por lo que pueden estar seguros que habrá SMA para rato . La estrategia a corto plazo será pulir el motor lo mejor que se pueda y soltar <a href='http://aldo.mx/55' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>A pesar del anuncio de que me pienso retirar del desarrollo de SMA al terminar &#8220;todos los pendientes y características prometidas&#8221;, jamás especifiqué <a href="/stepmania/pendientes-sma.txt">qué tantos pendientes tenía</a>, por lo que pueden estar seguros que habrá SMA para rato <img src='http://aldo.mx/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>La estrategia a corto plazo será pulir el motor lo mejor que se pueda y soltar esta versión pulida (3.5) antes de comenzar a implementar características más sofisticadas como los Layers que he estado anunciando desde 2011. Las versiones 3.2 a 3.4 serán utilizadas para realizar beta testing en privado, debido a que el motor no es lo suficientemente estable para ser soltado en público.</p>
<p>Para esta primer beta privada estoy buscando StepMakers, ya que estuve leyendo <a href="http://www.amazon.com/gp/product/0465067107/ref=as_li_ss_tl?ie=UTF8&#038;tag=almx-20&#038;linkCode=as2&#038;camp=1789&#038;creative=390957&#038;creativeASIN=0465067107" target="_blank">algunos libros</a> de <a href="http://www.amazon.com/gp/product/0321344758/ref=as_li_ss_tl?ie=UTF8&#038;tag=almx-20&#038;linkCode=as2&#038;camp=1789&#038;creative=390957&#038;creativeASIN=0321344758" target="_blank">diseño cognitivo</a> y pienso aprovechar dicho conocimiento para rediseñar el editor para hacerlo más amigable (en la medida que el motor de StepMania lo permita).</p>
<p>Si te interesa participar en esta primer beta privada, <a href="http://piusm.net/index.php?action=register" target="_blank">regístrarte de favor en PIUSM</a>, y ya que te registraste, confirmaste tu registro y <a href="http://piusm.net/index.php?topic=2.0" target="_blank">leíste las reglas del foro</a>, puedes llenar tu solicitud en el siguiente <a href="http://piusm.net/index.php?topic=1143.0" target="_blank">tema</a>, como mencioné en un inicio, es importante que solamente StepMakers participen en esta primer etapa, ya que lo único que estaré cambiando es el editor, el resto del juego seguirá prácticamente igual.</p>
<p><s>La beta privada comienza el <b>14 de mayo</b>.</s></p>
<p><b>Aldo:</b> Se postpone la beta hasta el <b>1 de julio</b> debido a los concursos de StepMakers de <a href="https://www.facebook.com/piuinfinity/posts/311107315630781" nofollow="nofollow" target="_blank">Infinity</a> y <a href="https://www.facebook.com/events/266661633412793/" nofollow="nofollow" target="_blank">Fiesta Ex</a>. Estaré uniendo fuerzas con el equipo de SM5 para corregir algunos errores y detalles para el concurso de Infinity. Pueden estar seguros que SM5 podrá reproducir mejor que antes SMAs realizados con la Beta 2.7 (la última estable), siempre y cuando no utilicen 128avas (Tickcount 32), ni de 256avas en adelante (Tickcount 64 en adelante).</p>
<p>Por otro lado, también me daré un poco de tiempo para poder participar con lo mejor que pueda realizar en dichos concursos. Allá nos estaremos viendo ^^.</p>
]]></content:encoded>
			<wfw:commentRss>http://aldo.mx/55/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Planes para SMA</title>
		<link>http://aldo.mx/51</link>
		<comments>http://aldo.mx/51#comments</comments>
		<pubDate>Thu, 08 Mar 2012 05:35:50 +0000</pubDate>
		<dc:creator>Aldonio</dc:creator>
				<category><![CDATA[StepMania AMX]]></category>
		<category><![CDATA[SMA]]></category>

		<guid isPermaLink="false">http://aldo.mx/?p=51</guid>
		<description><![CDATA[Debido a la confusión que ha generado el mensaje sobre mi retiro, explico los planes respecto a SMA: 1.- Después de decidir cómo se guardarán las nuevas características documentaré la información necesaria (en Inglés y Español) para que desarrolladores de diferentes juegos puedan leer &#8220;bien&#8221; el formato SMA. 2.- El nuevo simulador (código clave: Xenesis) <a href='http://aldo.mx/51' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Debido a la confusión que ha generado el mensaje sobre mi retiro, explico los planes respecto a SMA:</p>
<p>1.- Después de decidir cómo se guardarán las nuevas características documentaré la información necesaria (en Inglés y Español) para que desarrolladores de diferentes juegos puedan leer &#8220;bien&#8221; el formato SMA.</p>
<p>2.- El nuevo simulador (código clave: <em>Xenesis</em>) podrá leer archivos SMA, pero no lo hará durante las primeras etapas (o sea, no durante sus primeros meses de vida), sin embargo, si soltaré un conversor de SMA a NX10 (que será el formato que leerá el nuevo simulador) en cuanto suelte los primeros prototipos de Xenesis, desafortunadamente, este conversor no podrá convertir algunas características de SMA, aunque si puedo prometer que serán muy pocas.</p>
<p>3.- Debido al camino que tomó SM5 para implementar características, y debido a que algunas características nuevas las diseñe con el propósito de que no pudieran recrearse fácilmente, varias características de SMA, especialmente las nuevas que verán en la última actualización, no funcionarán en SM5. (Pueden pasar cosas malas como <a href="http://aldo.mx/images/sm5crashed.jpg">esta</a>).</p>
<p>4.-  A pesar de que ya no siga desarrollando SMA, seguiré haciendo actualizaciones de mantenimiento, o sea, actualizaciones que mejoren la estabilidad y corrijan errores que reporten. Para evitar que tengan que estar al pendiente de cuándo lo haga, SMA se actualizará automáticamente de la misma manera que Google Chrome lo hace.</p>
<p>5.- El nuevo editor permitirá importar y exportar SMAs.</p>
<p>6.- Si llego a soltar el src de SMA lo haré en mi cuenta de <a href="http://github.com/AldoMX">GitHub</a>, en la que gustosamente aceptaré pull requests.</p>
<p>Espero que con esto se hayan aclarado sus dudas.</p>
]]></content:encoded>
			<wfw:commentRss>http://aldo.mx/51/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Adios MPM y SMA</title>
		<link>http://aldo.mx/49</link>
		<comments>http://aldo.mx/49#comments</comments>
		<pubDate>Sat, 03 Mar 2012 12:21:37 +0000</pubDate>
		<dc:creator>Aldonio</dc:creator>
				<category><![CDATA[Mexican Pumpers Mafia]]></category>
		<category><![CDATA[StepMania AMX]]></category>

		<guid isPermaLink="false">http://aldo.mx/?p=49</guid>
		<description><![CDATA[Ha llegado el momento de tomar decisiones importantes y significativas en mi vida. MPM llega a su fin este año, el foro seguirá online hasta diciembre, lamentablemente no he tenido el suficiente tiempo para cuidar la comunidad a tal grado que ya se ha convertido en un foro fantasma. No tiene caso mantenerlo online, de <a href='http://aldo.mx/49' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Ha llegado el momento de tomar decisiones importantes y significativas en mi vida.</p>
<p>MPM llega a su fin este año, el foro seguirá online hasta diciembre, lamentablemente no he tenido el suficiente tiempo para cuidar la comunidad a tal grado que ya se ha convertido en un foro fantasma. No tiene caso mantenerlo online, de ser un foro que llegó a tener hasta 2,000 impresiones diarias, en este mes de Febrero sólo se registraron 600&#8230; en todo el mes. Esta actividad casi nula puede vivir perfectamente en el grupo de Facebook, por lo que terminando este año se cerrará la última página que había sobrevivido desde que comenzó el auge de PIU en México.</p>
<p>Por otro lado también abandono SMA después de soltar la siguiente versión, sin embargo, sigue en pie mi promesa de soltar todas las características prometidas, y sigue en pie mi promesa de soltar el código fuente si Andamiro no saca los custom steps en Fiesta EX.</p>
<p>Lamentablemente con StepMania estoy atado de pies y manos, por un lado porque la licencia que tiene me impide tomar todo tipo de medidas legales para evitar que se utilice ilegalmente, mientras que por otro lado, el equipo de SM5 se enfocó a &#8220;tomar prestada&#8221; la jugabilidad yéndose por la tangente de su objetivo principal que era hacer un StepMania especializado para power-themers.</p>
<p>Sin embargo, no puedo quejarme mucho porque yo mismo fuí el que les pasó el código fuente de SMA, lo único que si me dolío fué que cuando le pasé un cpp a Wolfman, se apuró a implementarlo casi al instante y para colmo lo hizo mal y tuve que estarlo corrigiendo constantemente&#8230;</p>
<p>Peor aún, que llegaron 2 orangutanes que se hacían llamar &#8220;programadores del fork de NXA mas RiIiFfAaAadoOoOo&#8221; a tomar de la mesa servida en bandeja de plata la manera de leer SMAs, que aunque es algo trivial, claramente no tenían ni la más remota idea de como leerlos, a tal grado que se empezaron a sentir grandes presumiendo su trofeo robado.</p>
<p>Aunque tengo bien planeado y diseñado todo tipo de características que dejarían muy por detrás a SM5 en cuanto a jugabilidad (layer commands, custom notetypes, trigger areas, etc.), mi tiempo es casi nulo para aterrizarlas en algo jugable, y me tomaría meses si no es que años hacerlo porque, lamentablemente, StepMania se encuentra muy atado a sus raíces de DDR.</p>
<p>Es más factible hacer un juego nuevo que desenredar todas esas raíces, de esa manera también queda un poco más nivelada la balanza, porque si alguien quiere intentar implementarlas en cualquier SM le tomará demasiado esfuerzo.</p>
<p>Independientemente de lo que pase con los custom steps, si a algún desarrollador le interesa continuar con el proyecto de SMA, siempre y cuando no sea un orangután con Visual Studio, ni el tipico pumper que cree que hacer themes de las versiones actuales y tener todas las canciones de PIU es lo máximo en la vida, puede preguntarme por PM. Especialmente si es conocido en la scene y ha desarrollado proyectos reconocidos.</p>
<p>Por mi parte comenzaré tanto un simulador nuevo, como un editor de pasos nuevo que desarrollaré por etapas, de las cuales ya hablaré en un futuro, de momento dejo Spoilers de las 3 primeras:</p>
<p>Etapa 1.- Un simulador ligero que sea un reemplazo para KIU/DirectMove. El objetivo a corto plazo será imitar al 100% el motor de NX2, que es el que ya conozco al 100%.</p>
<p>Etapa 2.- Tomar mis ideas utilizadas en el editor de SMA como base para hacer un editor cuya interfaz será un híbrido entre la interfaz Macromedia y el selector de animaciones de Sony Vegas, utilizando el mismo motor que el simulador.</p>
<p>Etapa 3.- Realizar versiones tanto del simulador como del editor para Linux, Mac OS X, iOS, Android y WinRT.</p>
]]></content:encoded>
			<wfw:commentRss>http://aldo.mx/49/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Re: Test on real mobile devices without breaking the bank</title>
		<link>http://aldo.mx/47</link>
		<comments>http://aldo.mx/47#comments</comments>
		<pubDate>Fri, 06 Jan 2012 05:07:03 +0000</pubDate>
		<dc:creator>Aldonio</dc:creator>
				<category><![CDATA[Web Development]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://aldo.mx/?p=47</guid>
		<description><![CDATA[In reply to this blog post: Definitely is not possible with my salary, I prefer to stick with emulators and leave the final testing (when I&#8217;m pretty confident that everything will work) with friends &#038; colleagues. Obviously it’s not the same as having a test lab at your disposal, but you are leaving apart freelancers <a href='http://aldo.mx/47' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>In reply to <a href="http://bradfrostweb.com/blog/mobile/test-on-real-mobile-devices-without-breaking-the-bank/">this blog post</a>:</p>
<p>Definitely is not possible with my salary, I prefer to stick with emulators and leave the final testing (when I&#8217;m pretty confident that everything will work) with friends &#038; colleagues.</p>
<p>Obviously it’s not the same as having a test lab at your disposal, but you are leaving apart freelancers and low budget developers, plus, it’s as insane as asking a developer to test something with every browser, every possible OS, and many different PCs from an old Pentium MMX w/ 800&#215;600 CRT monitor to a brand new Core i7 Extreme w/ 2560&#215;1600 monitor.</p>
<p>We are in an era of cross-browser compatibility, where standards are here to make our lives easier and browser vendors are releasing updates more often than ever in both, desktop and mobile, and specially, trying to be as close as possible to recommended &#038; stable standards.</p>
<p>It’s a fact that standards are an utopia, there will always be a browser which will render something (or everything) wrong, there will always be a browser which will become unstable by no apparent reason, but that doesn&#8217;t mean you have to address all those issues, specially if they don&#8217;t belong to yourself, you can do it if you want, but it’s not really needed, especially if it’s an update-able platform which is likely to get an update for that specific browser, otherwise the IE6 Nightmare will never end.</p>
<p>I believe it’s better to combine bleeding edge with old techniques, such as having a content negotiator with a modern HTML5/CSS3 version + responsive design for whitelisted browsers, and a 90&#8242;s-like version with basic HTML, no JS and the most elementary CSS such as font-family &#038; font-size for the rest of browsers. Obviously with a way for users to switch between them, and a way to track all your pages in a single place which browsers register more version switches to help you whitelist newer compatible browsers. Sounds overkill? Testing in current + outdated phones &#038; the typical IE7-10 + FF 3.6 + FF + Chrome + Opera + Safari stack is even worse!</p>
<p>I know that user agent sniffing is blasphemy, but it’s also blasphemy to believe that standards will work by 100% in every known platform, that will never happen, so no matter if it sounds drastic, its way better to display a 90&#8242;s-like webpage to incompatible devices/browsers than a broken webpage or even worse, no webpage at all. On the other side, with a basic HTML version you make people&#8217;s life easier, because even the least expected to work browser will work.</p>
]]></content:encoded>
			<wfw:commentRss>http://aldo.mx/47/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Parse HTTP Headers with PHP including Request and Status lines</title>
		<link>http://aldo.mx/46</link>
		<comments>http://aldo.mx/46#comments</comments>
		<pubDate>Wed, 28 Dec 2011 20:06:07 +0000</pubDate>
		<dc:creator>Aldonio</dc:creator>
				<category><![CDATA[Web Development]]></category>
		<category><![CDATA[http_parse_headers]]></category>
		<category><![CDATA[http_parse_headers2]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://aldo.mx/?p=46</guid>
		<description><![CDATA[In the PHP documentation you can find http_parse_headers, which requires the PECL HTTP module. If you can&#8217;t install the PECL module you can find some alternatives to replace it in the comments within PHP documentation. I took one left by an Anonymous coder, fixed some bugs it had and extend it to also return parsed <a href='http://aldo.mx/46' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>In the PHP documentation you can find <b><a href="http://php.net/manual/en/function.http-parse-headers.php" target="_blank">http_parse_headers</a></b>, which requires the <a href="http://pecl.php.net/" target="_blank">PECL</a> <a href="http://pecl.php.net/package/pecl_http" target="_blank">HTTP module</a>.</p>
<p>If you can&#8217;t install the PECL module you can find some alternatives to replace it in the comments within PHP documentation. I took one left by an Anonymous coder, fixed some bugs it had and extend it to also return parsed Request and Status Lines using the field names defined under <a href="http://www.w3.org/Protocols/rfc2616/rfc2616.html" target="_blank">RFC2616</a>.</p>
<p>Hope you find it useful, since I&#8217;m really creative with names I called this baby <b>http_parse_headers2</b>, pretty original huh?</p>
<pre>
/**
 * Parses HTTP headers and request/status lines into an associative array.
 *
 * @author  Anonymous
 * @author  Aldo Fregoso C.
<public@aldo.mx>
 * @license Public Domain
 *
 * @param string $header string containing HTTP headers.
 *
 * @return array Parsed headers with request/status lines using RFC2616's field names.
 */
function http_parse_headers2( $header )
{
    $retVal = array ();
    $fields = explode( "\r\n", preg_replace( '/\x0D\x0A[\x09\x20]+/', ' ', $header ) );
    foreach ( $fields as $field )
    {
        if ( preg_match( '/([^:]+):(.+)/m', $field, $match ) )
        {
            $match[1] = preg_replace( '/(?<=^|[\x09\x20\x2D])./e', 'strtoupper("\0")', strtolower( trim( $match[1] ) ) );
            $match[2] = trim( $match[2] );

            if ( isset($retVal[$match[1]]) )
            {
                if ( is_array( $retVal[$match[1]] ) )
                {
                    $retVal[$match[1]][] = $match[2];
                }
                else
                {
                    $retVal[$match[1]] = array ( $retVal[$match[1]], $match[2] );
                }
            }
            else
            {
                $retVal[$match[1]] = $match[2];
            }
        }
        else if ( preg_match( '/([A-Za-z]+) (.*) HTTP\/([\d.]+)/', $field, $match ) )
        {
            $retVal["Request-Line"] = array (
                "Method"       => $match[1],
                "Request-URI"  => $match[2],
                "HTTP-Version" => $match[3]
            );
        }
        else if ( preg_match( '/HTTP\/([\d.]+) (\d+) (.*)/', $field, $match ) )
        {
            $retVal["Status-Line"] = array (
                "HTTP-Version"  => $match[1],
                "Status-Code"   => $match[2],
                "Reason-Phrase" => $match[3]
            );
        }
    }
    return $retVal;
}
</pre>
]]></content:encoded>
			<wfw:commentRss>http://aldo.mx/46/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>¿Qué es StepMania / Historia de StepMania AMX?</title>
		<link>http://aldo.mx/43</link>
		<comments>http://aldo.mx/43#comments</comments>
		<pubDate>Mon, 14 Nov 2011 04:19:14 +0000</pubDate>
		<dc:creator>Aldonio</dc:creator>
				<category><![CDATA[StepMania AMX]]></category>

		<guid isPermaLink="false">http://aldo.mx/?p=43</guid>
		<description><![CDATA[Aunque StepMania es un simulador de juegos musicales, la manera más correcta de describirlo es como un reproductor, ya que StepMania es solamente el programa para leer, jugar y hacer pasos para canciones. Esto es una gran diferencia frente a juegos como Dance Dance Revolution (DDR) o Pump It Up (PIU), ya que estos juegos <a href='http://aldo.mx/43' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Aunque StepMania es un simulador de juegos musicales, la manera más correcta de describirlo es como un reproductor, ya que StepMania es solamente el programa para leer, jugar y hacer pasos para canciones.</p>
<p>Esto es una gran diferencia frente a juegos como Dance Dance Revolution (DDR) o Pump It Up (PIU), ya que estos juegos incluyen una colección de canciones, mientras que StepMania no incluye una sola canción, tu debes hacer las canciones o descargarlas de Internet.</p>
<p>StepMania es un simulador de DDR que se hizo con el objetivo de mejorar a <a href="http://dwi.ddruk.com/">Dance With Intensity</a> (DWI), el proyecto fue creciendo hasta que descubrieron que podían utilizar el mismo motor para recrear diferentes juegos musicales, y paulatinamente se fueron agregando juegos como PIU, BeatMania, Pop n Music, TechnoMotion, etc.</p>
<p>Otra característica importante de StepMania es que tienes la posibilidad de cambiar la apariencia del juego a tal grado de poder recrear los juegos reales o incluso hacer juegos completamente nuevos. Gracias a esta característica StepMania se ha utilizado como base para realizar otros juegos, como In The Groove (ITG), Mungyodance, Pump It Up Pro (PIU PRO), etc., y este es el principal motivo por el que después de StepMania 3.9, donde la simulación de DDR es casi perfecta, el juego comenzó a enfocarse más en dar mayor poder a la parte gráfica, para asi beneficiar a desarrolladores de juegos nuevos. Características que desde 2003 hasta el día de hoy, finales de 2011, todavía no se finalizan con StepMania SSC, versión basada en StepMania 4.0 SVN que se convirtió posteriormente en la versión oficial, ahora StepMania 5.0. Debido a que StepMania 5.0 llevaba una ventaja abismal en cuanto a características y mejoras, StepMania 4.0 SVN se abandonó.</p>
<p>StepMania AMX (SMA) es el intento por hacer todo lo contrario a lo que se estaba haciendo con StepMania 4.0 SVN, en lugar de enfocarse en hacer un motor de gráficos poderoso, el objetivo principal de SMA es mejorar la jugabilidad.</p>
<p>Uno de los problemas principales de cualquier versión de StepMania es que es un simulador de DDR, y la compatibilidad con otros juegos, hasta la versión oficial 3.9, solo se limitaba a cambiar gráficos y, en el mejor de los casos, agregar unas pocas características propias de dichos juegos, por lo que aunque pudieras jugar PIU, en realidad estarías jugando DDR con 5 flechas. Sin embargo, esto no fue obstáculo para que StepMania comenzara a ganar adopción de comunidades de juegos diferentes de DDR.</p>
<p>SMA comenzó adaptando las reglas de versiones modernas de PIU al ecosistema de StepMania, motivo por el cual se califica erróneamente a SMA de ser una versión de StepMania enfocada únicamente a PIU. Muchas de las características nacidas en SMA han sido la base de inspiración para que StepMania 5.0 dejase de ser una versión enfocada a mejorar el motor gráfico, sin embargo, hasta el día de hoy, StepMania 5.0 solo ha conseguido recrear un porcentaje de todo lo que se puede hacer con SMA, razón por la que todavía SMA no queda obsoleto.</p>
<p>Sin embargo, debido a que el equipo de desarrollo de StepMania 5.0 se ha negado rotundamente a ofrecer retrocompatibilidad a todo el material creado para StepMania 3.9 (versión que desde 2003 hasta el día de hoy sigue siendo la más usada), SMA también presenta una alternativa para la gente que no quiere actualizarse y/o no se siente agusto con StepMania 5.0.</p>
]]></content:encoded>
			<wfw:commentRss>http://aldo.mx/43/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Contar bits en paralelo</title>
		<link>http://aldo.mx/19</link>
		<comments>http://aldo.mx/19#comments</comments>
		<pubDate>Mon, 07 Nov 2011 02:24:27 +0000</pubDate>
		<dc:creator>Aldonio</dc:creator>
				<category><![CDATA[StepMania AMX]]></category>
		<category><![CDATA[hamming weight]]></category>
		<category><![CDATA[notedata]]></category>

		<guid isPermaLink="false">http://aldo.mx/?p=19</guid>
		<description><![CDATA[Buscaba copypasta, encontré conocimiento. La entrada trata sobre mi experiencia personal, por lo que comparto link al documento de Stanford, para los que llegaron aquí buscando como hacerlo: http://graphics.stanford.edu/~seander/bithacks.html#CountBitsSetParallel // Peso de Hamming adaptado para StepMania AMX unsigned char GetNumSetCols() { unsigned short uTapNotes = uCols; uTapNotes = uTapNotes - ((uTapNotes &#62;&#62; 1) &#38; 0x5555); uTapNotes <a href='http://aldo.mx/19' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Buscaba copypasta, encontré conocimiento. La entrada trata sobre mi experiencia personal, por lo que comparto link al documento de Stanford, para los que llegaron aquí buscando como hacerlo: <a href="http://graphics.stanford.edu/~seander/bithacks.html#CountBitsSetParallel" target="_blank">http://graphics.stanford.edu/~seander/bithacks.html#CountBitsSetParallel</a></p>
<pre>// Peso de Hamming adaptado para StepMania AMX
unsigned char GetNumSetCols()
{
	unsigned short uTapNotes = uCols;
	uTapNotes = uTapNotes - ((uTapNotes &gt;&gt; 1) &amp; 0x5555);
	uTapNotes = (uTapNotes &amp; 0x3333) + ((uTapNotes &gt;&gt; 2) &amp; 0x3333);
	return (((uTapNotes + (uTapNotes &gt;&gt; 4)) &amp; 0x0F0F) * 0x0101) &gt;&gt; 8;
}</pre>
<p>En el proceso de reescribir el motor del StepMania AMX para utilizar la menor cantidad de recursos me topé ante una situación incómoda, no se me ocurría alguna forma que no utilizara muchos recursos para contar el número de bits establecidos en un byte, por ej. 5 en binario es 0101 y tiene 2 bits establecidos (o sea con 1), y en el caso específico del SMA, el byte que guarda la información de qué columnas se están utilizando. En mi búsqueda por una solución rápida, me encontré con los Teoremas de Hamming, mas específicamente hablando el peso de Hamming.</p>
<p>Cuando vi el código en <a href="http://stackoverflow.com/questions/109023/best-algorithm-to-count-the-number-of-set-bits-in-a-32-bit-integer/109025#109025" target="_blank">StackOverflow</a> me quedé con cara de WTF, especialmente porque en los comentarios decía &#8220;It&#8217;s write-only code. Just put a comment that you are not meant to understand or maintain this code, just worship the gods that revealed it to mankind.&#8221; y yo dije &#8220;como chingaos no debo entenderlo? ¬¬&#8221; y me puse a leer un poco sobre el tema.</p>
<p>En pocas palabras este algoritmo va moviendo los bits en segmentos de 1, 2, 4, 8, etc. bits hasta que quedan en un segmento que podemos interpretar como variable, en mi caso un unsigned char <img src='http://aldo.mx/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
]]></content:encoded>
			<wfw:commentRss>http://aldo.mx/19/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>La economía descalza</title>
		<link>http://aldo.mx/12</link>
		<comments>http://aldo.mx/12#comments</comments>
		<pubDate>Sun, 06 Nov 2011 22:54:07 +0000</pubDate>
		<dc:creator>Aldonio</dc:creator>
				<category><![CDATA[Otros]]></category>
		<category><![CDATA[economía]]></category>

		<guid isPermaLink="false">http://aldo.mx/?p=12</guid>
		<description><![CDATA[Buscaba memes, encontré cultura. Comparto link al artículo original: http://www.adbusters.org/magazine/94/barefoot-economics-spanish.html Vivo en el sur de Chile, en el sur profundo. Y esa área es conocida por su producción de leche. Puntera tecnológicamente y, se mire como se mire, la mejor que hay. Hace unos pocos meses me encontraba desayunando en un hotel, y había unos botecitos <a href='http://aldo.mx/12' class='excerpt-more'>[...]</a>]]></description>
			<content:encoded><![CDATA[<p>Buscaba memes, encontré cultura. Comparto link al artículo original: <a href="http://www.adbusters.org/magazine/94/barefoot-economics-spanish.html">http://www.adbusters.org/magazine/94/barefoot-economics-spanish.html</a></p>
<blockquote><p>Vivo en el sur de Chile, en el sur profundo. Y esa área es conocida por su producción de leche. Puntera tecnológicamente y, se mire como se mire, la mejor que hay. Hace unos pocos meses me encontraba desayunando en un hotel, y había unos botecitos de esos de mantequilla. Me quedé mirando uno de ellos. Era mantequilla de Nueva Zelanda. Y pensé, ¿no es una locura? ¿Cómo es posible? La respuesta es porque los economistas no saben calcular los costes reales. Para traer mantequilla desde 10.000 kilómetros a un lugar donde ya haces la mejor mantequilla bajo el argumento de que es más barata, es una estupidez colosal. Ellos no toman en consideración el impacto ambiental de 10.000 kilómetros de transporte. Y en parte la razón de que sea barata es que está subsidiada. Así que se trata claramente de un caso en el que los precios no dicen la verdad.</p></blockquote>
<p>No se necesita ser economista para abrir los ojos y ver todo lo que hay detrás de un precio bajo, impacto ambiental, denigración de la calidad de vida de las personas (como en el caso de artículos Made in China), desestabilización de la economía, etc. Mucha razón tiene el refrán &#8220;Lo barato sale caro&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://aldo.mx/12/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>¡Hola Mundo!</title>
		<link>http://aldo.mx/1</link>
		<comments>http://aldo.mx/1#comments</comments>
		<pubDate>Fri, 21 Oct 2011 05:00:00 +0000</pubDate>
		<dc:creator>Aldonio</dc:creator>
				<category><![CDATA[Otros]]></category>

		<guid isPermaLink="false">http://aldo.mx/wordpress/?p=1</guid>
		<description><![CDATA[Abrí wordpress porque muchas veces 140 caracteres de tuiter no alcanzan. Estaré escribiendo cosas de Desarrollo Web (HTML5 Principalmente), StepMania AMX, PIUHQ, MPM y PIUSM.]]></description>
			<content:encoded><![CDATA[<p>Abrí wordpress porque muchas veces 140 caracteres de tuiter no alcanzan.</p>
<p>Estaré escribiendo cosas de Desarrollo Web (HTML5 Principalmente), StepMania AMX, PIUHQ, MPM y PIUSM.</p>
]]></content:encoded>
			<wfw:commentRss>http://aldo.mx/1/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

