<?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>FayerWayer &#187; Python</title>
	<atom:link href="http://www.fayerwayer.com/tag/python/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.fayerwayer.com</link>
	<description>Dosis diarias de tecnología en español.™</description>
	<lastBuildDate>Thu, 26 Nov 2009 01:01:16 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Python, C y otros lenguajes se integran en Android</title>
		<link>http://www.fayerwayer.com/2009/06/python-c-y-otros-lenguajes-se-integran-en-android/</link>
		<comments>http://www.fayerwayer.com/2009/06/python-c-y-otros-lenguajes-se-integran-en-android/#comments</comments>
		<pubDate>Mon, 29 Jun 2009 19:27:15 +0000</pubDate>
		<dc:creator>Franco Catrin</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.fayerwayer.com/?p=30289</guid>
		<description><![CDATA[La plataforma de aplicaciones de Android es una máquina virtual de Java propia de Google, llamada Dalvik, por lo tanto las aplicaciones que corren en esta plataforma se deben escribir en el lenguaje Java de Sun Microsystems.
Para la mayoría de la situaciones, un lenguaje de alto nivel y portable como Java es suficiente, pero hay [...]<p><!-- Here is the Open AdStream NX Code  for the x46 position -->
<A HREF="http://98.129.43.145/RealMedia/ads/click_nx.ads/fayerwayer.com/Home@x46!x46" TARGET="_blank"><IMG SRC="http://98.129.43.145/RealMedia/ads/adstream_nx.ads/fayerwayer.com/Home@x46!x46" BORDER="0"></a>
<!-- Here is the Open AdStream NX Code  for the x46 position --></p>
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.fayerwayer.com/up/2007/11/oha_main_rgb.jpg"><img class="alignright size-medium wp-image-4482" title="Android OHA" src="http://www.fayerwayer.com/up/2007/11/oha_main_rgb.jpg" alt="" width="300" height="300" /></a>La plataforma de aplicaciones de Android es una <a href="http://es.wikipedia.org/wiki/M%C3%A1quina_virtual_Java">máquina virtual de Java</a> propia de Google, llamada <a href="http://es.wikipedia.org/wiki/Dalvik">Dalvik</a>, por lo tanto las aplicaciones que corren en esta plataforma se deben escribir en el lenguaje Java de Sun Microsystems.</p>
<p>Para la mayoría de la situaciones, un lenguaje de alto nivel y portable como Java es suficiente, pero hay casos en los que no estaría mal tener la opción de ejecutar código nativo del procesador para implementar funcionalidades muy específicas sin pasar por la máquina virtual.</p>
<p>Este mes, Google ha anunciado el <a href="http://android-developers.blogspot.com/2009/06/introducing-android-15-ndk-release-1.html">primer release de Android Native Development Kit (NDK)</a>. Se trata de un kit de desarrollo para Android que permite usar los lenguajes C y C++ desde aplicaciones en Java.</p>
<p>Android NDK provee:</p>
<ul>
<li>Un conjunto de herramientas para generar bibliotecas que corren en forma nativa a partir de código fuente en C y C++.</li>
<li>Una forma de integrar las bibliotecas nativas en paquetes distribuibles para dispositivos Android (.apks).</li>
<li>Un conjunto de bibliotecas que serán soportadas en todos los siguientes releases de Android, comenzando por la versión 1.5.</li>
</ul>
<p><span id="more-30289"></span></p>
<p>En este primer release del NDK se da soporte para compilar en código de máquina para ARMv5TE, y se incluyen las siguientes bibliotecas:</p>
<ul>
<li>La interfaz JNI para usar el código nativo desde Java (<a href="http://es.wikipedia.org/wiki/Java_Native_Interface">Java Native Interface</a>)</li>
<li>libc : Biblioteca estándar de C</li>
<li>libm : Biblioteca estándar para operaciones matemáticas</li>
<li>libz : Biblioteca de compresión Zlib</li>
<li>liblog : Acceso al subsistema de registro (logging)</li>
</ul>
<p>El NDK no está pensado para construir aplicaciones completas en C/C++, sino que para escribir aplicaciones en Java como es usual y en casos muy específicos usar bibliotecas en C/C++ que se ejecutan en código de máquina nativo de <a href="http://www.fayerwayerl.com/tag/arm">ARM</a>.</p>
<p>Hay que considerar que no se puede acceder a las API&#8217;s de Android a través de código nativo, por lo tanto estas bibliotecas pueden ser usadas para implementar funcionalidades que realizan una función muy acotada.  Además que hay un sacrificio respecto a la portabilidad de las aplicaciones, ya que en el caso de Java el código compilado es portable, no así el caso de C/C++.</p>
<p>Por ejemplo, situaciones que ameritan el uso de código nativo son las de procesamiento intensivo de datos como : Simulación de física y procesamiento de señales (<a href="http://es.wikipedia.org/wiki/Procesador_digital_de_se%C3%B1al">DSP</a>), entre otros.</p>
<h2>Bonus Track : Soporte de lenguajes interpretados</h2>
<p>Por si esto fuera poco, también se anunció la disponibilidad de <a href="http://google-opensource.blogspot.com/2009/06/introducing-android-scripting.html">Android Scripting Environment o ASE</a>.  Se trata de un mecanismo que proveerá la plataforma necesaria para usar la API de Android desde lenguajes interpretados como Python.</p>
<p>La idea de proveer ASE es permitir a los desarrolladores usar lenguajes sencillos y bastante conocidos para crear aplicaciones o servicios que corren en background.  Mediante la API de Android se puede por ejemplo:</p>
<ul>
<li>Iniciar actividades.</li>
<li>Enviar mensajes de texto.</li>
<li>Usar la información de los sensores o de ubicación.</li>
<li>Usar text-to-speech, etc.</li>
</ul>
<p>En el código publicado hay soporte para <a href="http://es.wikipedia.org/wiki/Python">Python</a>, <a href="http://es.wikipedia.org/wiki/Lua">Lua</a> y <a href="http://www.beanshell.org/">BeanShell</a>.  Próximamente habrá soporte para <a href="http://es.wikipedia.org/wiki/Ruby">Ruby</a> y <a href="http://es.wikipedia.org/wiki/JavaScript">JavaScript</a>.</p>
<p>Estos lenguajes no corren necesariamente sobre Dalvik, por ejemplo el soporte de Python no es a través de <a href="http://es.wikipedia.org/wiki/Jython">Jython</a>, sino que el interprete ha sido compilado a código nativo.  En el caso de BeanShell se han publicado los servicios de Android a través de una clase que actúa como fachada (<a href="http://es.wikipedia.org/wiki/Facade_(patr%C3%B3n_de_dise%C3%B1o)">Patrón Facade</a>).</p>
<p>Para los lenguajes que no tienen acceso a clases Java como es el caso de Python y Lua se creó una proxy que publica los servicios de la fachada a través de <a href="http://wwww.json.org">JSON</a>, por lo tanto esto abre la puerta para se vayan integrando nuevos lenguajes con facilidad.</p>
<p>En el anuncio se incluyeron un par de ejemplos que demuestran la facilidad con que se pueden implementar servicios para Android con ASE.  El primero que es de sólo 17 líneas de código Lua, desactiva el sonido del teléfono cuando alguien llama si éste se apunta hacia abajo.  El segundo es de sólo 32 líneas de código Python que se conecta al servicio de chat para convertir a texto hablado los mensajes que van llegando.</p>
<p><strong>Links:</strong><br />
- <a href="http://android-developers.blogspot.com/2009/06/introducing-android-15-ndk-release-1.html">Introducing Android 1.5 NDK, Release 1</a> <em>(Android Developers blog)</em><br />
- <a href="http://google-opensource.blogspot.com/2009/06/introducing-android-scripting.html">Introducing Android Scripting Environment</a> <em>(Open Source at Google blog)</em></p>
<p><!-- Here is the Open AdStream NX Code  for the x46 position -->
<A HREF="http://98.129.43.145/RealMedia/ads/click_nx.ads/fayerwayer.com/Home@x46!x46" TARGET="_blank"><IMG SRC="http://98.129.43.145/RealMedia/ads/adstream_nx.ads/fayerwayer.com/Home@x46!x46" BORDER="0"></a>
<!-- Here is the Open AdStream NX Code  for the x46 position --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.fayerwayer.com/2009/06/python-c-y-otros-lenguajes-se-integran-en-android/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>Google App Engine ahora soporta Java</title>
		<link>http://www.fayerwayer.com/2009/04/google-app-engine-ahora-soporta-java/</link>
		<comments>http://www.fayerwayer.com/2009/04/google-app-engine-ahora-soporta-java/#comments</comments>
		<pubDate>Fri, 10 Apr 2009 12:00:21 +0000</pubDate>
		<dc:creator>ZooTV</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Google App Engine]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.fayerwayer.com/?p=23541</guid>
		<description><![CDATA[Hace casi un año que Google presentó Google App Engine, un servicio que permite a los desarrolladores de aplicaciones web utilizar los servidores de Google para subirlas.
Desde el principio el servicio sólo operaba con aplicaciones programadas con Python, pero en Noviembre del año pasado anunciaron que el servicio también soportaría Java como lenguaje de programación.
Dicho [...]<p><!-- Here is the Open AdStream NX Code  for the x46 position -->
<A HREF="http://98.129.43.145/RealMedia/ads/click_nx.ads/fayerwayer.com/Home@x46!x46" TARGET="_blank"><IMG SRC="http://98.129.43.145/RealMedia/ads/adstream_nx.ads/fayerwayer.com/Home@x46!x46" BORDER="0"></a>
<!-- Here is the Open AdStream NX Code  for the x46 position --></p>
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.fayerwayer.com/2009/04/google-app-engine-ahora-soporta-java/"><em>Click here to view the embedded video.</em></a></p>
<p>Hace casi un año que <a href="http://www.fayerwayer.com/2008/04/google-anuncia-google-app-engine/" target="_blank">Google presentó Google App Engine</a>, un servicio que permite a los desarrolladores de aplicaciones web utilizar los servidores de Google para subirlas.</p>
<p>Desde el principio el servicio sólo operaba con aplicaciones programadas con <a href="http://www.fayerwayer.com/?s=python" target="_blank">Python</a>, pero en Noviembre del año pasado anunciaron que el servicio también <a href="http://www.fayerwayer.com/2008/10/futurologia-google-app-engine-soportara-java/" target="_blank">soportaría Java</a> como lenguaje de programación.</p>
<p>Dicho y hecho porque desde hace un par de días que se realizó el anuncio oficial sobre el soporte de <a href="http://www.fayerwayer.com/?s=java" target="_blank">Java</a> en <a href="http://www.fayerwayer.com/?s=Google+App+Engine" target="_blank">Google App Engine</a>, con lo que a partir de esta fecha los desarrolladores podrán utilizar todos los estándares de Java. Incluso se puede descargar un plugin para <a href="http://www.eclipse.org/" target="_blank">Eclipse</a>, como para hacer aún más fácil la pega de los sufridos desarrolladores.</p>
<p>Si deseas hacer uso de este servicio, te recomendamos leer la <a href="http://code.google.com/appengine/docs/java/gettingstarted/" target="_blank">documentación respectiva</a>.</p>
<p><strong>Link:</strong> <a href="http://googleappengine.blogspot.com/2009/04/seriously-this-time-new-language-on-app.html" target="_blank">Seriously this time, the new language on App Engine: Java™</a> <em>(Google App Engine Blog)</em></p>
<p><!-- Here is the Open AdStream NX Code  for the x46 position -->
<A HREF="http://98.129.43.145/RealMedia/ads/click_nx.ads/fayerwayer.com/Home@x46!x46" TARGET="_blank"><IMG SRC="http://98.129.43.145/RealMedia/ads/adstream_nx.ads/fayerwayer.com/Home@x46!x46" BORDER="0"></a>
<!-- Here is the Open AdStream NX Code  for the x46 position --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.fayerwayer.com/2009/04/google-app-engine-ahora-soporta-java/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Futurología: Google App Engine soportará Java</title>
		<link>http://www.fayerwayer.com/2008/10/futurologia-google-app-engine-soportara-java/</link>
		<comments>http://www.fayerwayer.com/2008/10/futurologia-google-app-engine-soportara-java/#comments</comments>
		<pubDate>Thu, 23 Oct 2008 18:00:08 +0000</pubDate>
		<dc:creator>Felipe Lang</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[AppEngine]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://www.fayerwayer.com/2008/10/futurologia-google-app-engine-soportara-java/</guid>
		<description><![CDATA[Unos meses atrás Google presentó App Engine, una plataforma donde los usuarios pueden correr sus propias aplicaciones web utilizando la infraestructura de Google.
Desde su lanzamiento, las aplicaciones para poder utilizar este servicio debían estar desarrolladas en Python, ya que era y aún es el único lenguaje soportado. Sin embargo en el Google Developers Day, celebrado [...]<p><!-- Here is the Open AdStream NX Code  for the x46 position -->
<A HREF="http://98.129.43.145/RealMedia/ads/click_nx.ads/fayerwayer.com/Home@x46!x46" TARGET="_blank"><IMG SRC="http://98.129.43.145/RealMedia/ads/adstream_nx.ads/fayerwayer.com/Home@x46!x46" BORDER="0"></a>
<!-- Here is the Open AdStream NX Code  for the x46 position --></p>
]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.fayerwayer.com/up/2008/10/java-coffee.jpg" alt="Java" align="right" />Unos meses atrás <a href="http://www.fayerwayer.com/2008/04/google-anuncia-google-app-engine/">Google presentó App Engine</a>, una plataforma donde los usuarios pueden correr sus propias aplicaciones web utilizando la infraestructura de Google.</p>
<p>Desde su lanzamiento, las aplicaciones para poder utilizar este servicio debían estar desarrolladas en Python, ya que era y aún es el único lenguaje soportado. Sin embargo en el Google Developers Day, celebrado el 18 de octubre pasado en Bangalore, India, la empresa anunció que el App Engine pronto tendrá soporte para Java.</p>
<p>Además de haber escuchado las peticiones de los desarrolladores, se cree que el principal motivo por el que se agregará pronto soporte para Java, está relacionado con la plataforma Android, la cual corre en una JVM propia de Google llamada Dalvik. De esta forma, se busca fomentar el desarrollo de aplicaciones para Android brindándole a los programadores un entorno donde probar sus aplicaciones de manera sencilla.</p>
<p>Parece que mientras <a href="http://www.fayerwayer.com/2008/10/futurologia-yahoo-anunicara-posibles-despidos-y-ajustes-de-gastos/">otros se caen a pedazos</a>, la G se agranda cada vez más.</p>
<p><strong>Link:</strong> <a href="http://www.thestandard.com/news/2008/10/21/google-tells-bangalore-developers-java-appengine-coming-soon">Google tells Bangalore developers Java on AppEngine coming soon</a> <em>(The Industry Standard)</em></p>
<p><!-- Here is the Open AdStream NX Code  for the x46 position -->
<A HREF="http://98.129.43.145/RealMedia/ads/click_nx.ads/fayerwayer.com/Home@x46!x46" TARGET="_blank"><IMG SRC="http://98.129.43.145/RealMedia/ads/adstream_nx.ads/fayerwayer.com/Home@x46!x46" BORDER="0"></a>
<!-- Here is the Open AdStream NX Code  for the x46 position --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.fayerwayer.com/2008/10/futurologia-google-app-engine-soportara-java/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>Frets On Fire: Guitar Hero sin gastar un peso</title>
		<link>http://www.fayerwayer.com/2008/10/frets-on-fire-guitar-hero-sin-gastar-un-peso/</link>
		<comments>http://www.fayerwayer.com/2008/10/frets-on-fire-guitar-hero-sin-gastar-un-peso/#comments</comments>
		<pubDate>Mon, 13 Oct 2008 23:00:31 +0000</pubDate>
		<dc:creator>ZooTV</dc:creator>
				<category><![CDATA[Destacados]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Descarga]]></category>
		<category><![CDATA[Frets On Fire]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Software Libre]]></category>
		<category><![CDATA[Videojuego]]></category>

		<guid isPermaLink="false">http://www.fayerwayer.com/2008/10/frets-on-fire-guitar-hero-sin-gastar-un-peso/</guid>
		<description><![CDATA[
Guitar Hero debe ser uno de los juegos más populares en la actualidad. El poder tocar la guitarra como los Ramones o White Zombie, entre otros, atrae a cualquiera que guste de la música.
Pero desde hace tiempo que existe una alternativa libre de este juego y se llama Frets On Fire.
FOF (Frets On Fire) fue [...]<p><!-- Here is the Open AdStream NX Code  for the x46 position -->
<A HREF="http://98.129.43.145/RealMedia/ads/click_nx.ads/fayerwayer.com/Home@x46!x46" TARGET="_blank"><IMG SRC="http://98.129.43.145/RealMedia/ads/adstream_nx.ads/fayerwayer.com/Home@x46!x46" BORDER="0"></a>
<!-- Here is the Open AdStream NX Code  for the x46 position --></p>
]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.fayerwayer.com/up/2008/10/fretsonfire1.jpg" alt="fretsonfire1.jpg" /></p>
<p>Guitar Hero debe ser uno de los juegos más populares en la actualidad. El poder tocar la guitarra como los Ramones o White Zombie, entre otros, atrae a cualquiera que guste de la música.</p>
<p>Pero desde hace tiempo que existe una alternativa libre de este juego y se llama <a target="_blank" href="http://fretsonfire.sourceforge.net/">Frets On Fire</a>.</p>
<p>FOF (Frets On Fire) fue el ganador de la competencia de desarrollo de videojuegos <a target="_blank" href="http://en.wikipedia.org/wiki/Assembly_(demo_party)">Assembly demo party</a> de 2006. Está programado en <a target="_blank" href="http://www.pyhon.org">Python</a> y utiliza la librería Amanith para el manejo de vectores gráficos 2D y 3D.</p>
<p>La verdad es que la gráfica del juego no es de las mejores ni tampoco encontrarás música de artistas tan conocidos como en la versión de pago, pero nunca está de más tener una alternativa cuando no tienes ni para comprar una flauta.</p>
<p>Puedes ver un video con el juego en ejecución luego del salto.</p>
<p><span id="more-10792"></span></p>
<p><a href="http://www.fayerwayer.com/2008/10/frets-on-fire-guitar-hero-sin-gastar-un-peso/"><em>Click here to view the embedded video.</em></a></p>
<p><strong>Link:</strong> <a target="_blank" href="http://fretsonfire.sourceforge.net/">Frets On Fire</a> (<em>Gracias Thomas</em>)</p>
<p><!-- Here is the Open AdStream NX Code  for the x46 position -->
<A HREF="http://98.129.43.145/RealMedia/ads/click_nx.ads/fayerwayer.com/Home@x46!x46" TARGET="_blank"><IMG SRC="http://98.129.43.145/RealMedia/ads/adstream_nx.ads/fayerwayer.com/Home@x46!x46" BORDER="0"></a>
<!-- Here is the Open AdStream NX Code  for the x46 position --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.fayerwayer.com/2008/10/frets-on-fire-guitar-hero-sin-gastar-un-peso/feed/</wfw:commentRss>
		<slash:comments>67</slash:comments>
		</item>
	</channel>
</rss>
