<?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/"
>

<channel>
	<title>Planeta Código</title>
	<link>http://www.planetacodigo.com</link>
	<description>Planeta Código</description>
	<pubDate>Thu, 18 Mar 2010 09:46:59 +0000</pubDate>
	<language>es</language>

		<item>
		<title>Bitácora de Javier Gutiérrez Chamorro (Guti): Técnicas víricas: Introducción</title>
		<link>http://guti.bitacoras.com/index.php?entry=entry100318-104659</link>
		<pubDate>Thu, 18 Mar 2010 09:46:59 +0000</pubDate>
		<dc:creator>Bitácora de Javier Gutiérrez Chamorro (Guti)</dc:creator>
		
	<category>Informática, Programación, Software</category>
		<guid>http://guti.bitacoras.com/index.php?entry=entry100318-104659</guid>
		<description><![CDATA[Desde hace bastante tiempo que me planteaba explicar con palabras inteligibles y códigos de ejemplo, las técnicas más utilizadas por virus y malware.<br /><br />Hablando con un amigo, surgió el reto de desarrollarlo en VBScript, un lenguaje sencillo, fácil de entender, y dónde además había cierta complicación técnica al aplicar los conocimientos, pero que al mismo tiempo evitaba tener que lidiar con juegos de instrucciones y formatos de ejecutables.<br /><br />Me pareció prudente atacarlo también en VBS, pues hay mucho desalmado inconsciente que le entusiasma el copiar y pegar, de manera que los ejemplos que veamos en esta serie de artículos, serán funcionales unitariamente, aunque no conjuntamente como malware.<br /><br />Vamos a hablar de polimorfismo y los motores de mutación; ocultación o técnicas stealth; y también de propagación. Todo ello, con ejemplos prácticos que demuestren cada uno de los conceptos.<br /><br />No os perdáis la siguiente entrega de <b>Técnicas víricas: Polimorfismo</b>.]]></description>
			<content:encoded><![CDATA[Desde hace bastante tiempo que me planteaba explicar con palabras inteligibles y códigos de ejemplo, las técnicas más utilizadas por virus y malware.<br /><br />Hablando con un amigo, surgió el reto de desarrollarlo en VBScript, un lenguaje sencillo, fácil de entender, y dónde además había cierta complicación técnica al aplicar los conocimientos, pero que al mismo tiempo evitaba tener que lidiar con juegos de instrucciones y formatos de ejecutables.<br /><br />Me pareció prudente atacarlo también en VBS, pues hay mucho desalmado inconsciente que le entusiasma el copiar y pegar, de manera que los ejemplos que veamos en esta serie de artículos, serán funcionales unitariamente, aunque no conjuntamente como malware.<br /><br />Vamos a hablar de polimorfismo y los motores de mutación; ocultación o técnicas stealth; y también de propagación. Todo ello, con ejemplos prácticos que demuestren cada uno de los conceptos.<br /><br />No os perdáis la siguiente entrega de <b>Técnicas víricas: Polimorfismo</b>.]]></content:encoded>
		</item>
		<item>
		<title>Ingenieria de Software / Software Engineering: Ten Step y Líder de Proyecto</title>
		<link>http://ingsoftware.blogspot.com/2010/03/ten-step-y-lider-de-proyecto.html</link>
		<pubDate>Thu, 18 Mar 2010 02:04:00 +0000</pubDate>
		<dc:creator>JorgeBec</dc:creator>
		
	<category>Administración de Proyectos</category>
		<guid>http://ingsoftware.blogspot.com/2010/03/ten-step-y-lider-de-proyecto.html</guid>
		<description><![CDATA[Sin duda alguna 2 fuentes importantes de artículos de Project Management Son Ten Step y Líder de Proyecto, recientemente publican:  Ten Step, Los multiples roles del líder de proyecto donde se sugiere lo siguiente:     · A full-time role on a large...]]></description>
			<content:encoded><![CDATA[<p>Sin duda alguna 2 fuentes importantes de artículos de Project Management Son Ten Step y Líder de Proyecto, recientemente publican:</p>  <p><strong>Ten Step</strong>, Los multiples roles del líder de proyecto donde se sugiere lo siguiente:</p>  <blockquote>   <p>· A full-time role on a large project.</p>    <p>· Project management responsibilities for multiple projects, each of which is less than full time, but the combination of which adds up to a full-time role. </p>    <p>· Multiple roles on the same project, each of which requires a certain level of skill and responsibility. On one project, for instance, he may be both a project manager and an analyst.</p> </blockquote>  <p><strong>Líder de Proyecto</strong>, <a href="http://www.liderdeproyecto.com/articulos/green_project_management.html">Green Project Management</a>, muy bueno quien pensaría que lo Green abarca la Administración de proyectos, pero analizandolo esta en el día a día por el ejemplo el hacer reuniones virtuales evita que los miembros se tengan que trasladar a un lugar y contaminar el ambiente otro ejemplo es la revisión de documentos electrónicamente, o bien revisarlo en una máquina sin prender las demas para el ahorro de energía</p>  <div class="blogger-post-footer"><img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/9995896-7906011508698709408?l=ingsoftware.blogspot.com" alt=""></img></div>]]></content:encoded>
		</item>
		<item>
		<title>MadeInFlex: Fx4 IX. Ciclo de vida de un componente spark</title>
		<link>http://www.madeinflex.com/2010/03/15/fx4-ix-ciclo-de-vida-de-un-componente-spark/</link>
		<pubDate>Mon, 15 Mar 2010 14:12:05 +0000</pubDate>
		<dc:creator>Sergi Dote Teixidor</dc:creator>
		
	<category>Artículos</category>
	<category>Flex 4</category>
		<guid>http://www.madeinflex.com/2010/03/15/fx4-ix-ciclo-de-vida-de-un-componente-spark/</guid>
		<description><![CDATA[<!-- matched  --><!-- final 0 -->Al desarrollar aplicaciones, y en nuestro caso, con tecnología Flex/AS3, debemos conocer el ciclo de vida de los componentes del framework para así entender la interacción y como sacarles el máximo provecho. Conocer bien el ciclo de vida de los componentes nos servirá para evitar errores al trabajar con ellos.

En este artículo veremos como funciona [...]]]></description>
			<content:encoded><![CDATA[<!-- matched  --><!-- final 0 --><p>Al desarrollar aplicaciones, y en nuestro caso, con tecnología Flex/AS3, debemos conocer el ciclo de vida de los componentes del framework para así entender la interacción y como sacarles el máximo provecho. Conocer bien el ciclo de vida de los componentes nos servirá para evitar errores al trabajar con ellos.<br />
<span id="more-1203"></span></p>
<p>En este artículo veremos como funciona el ciclo de vida en los spark components. Estos componentes siguen un ciclo de vida parecido a los Halo components, pero con algunas diferencias. Antes de ver estas diferencias, creo necesario hacer un repaso al ciclo de vida de los Halo components.</p>
<h2 id="toc-porque-necesitamos-que-los-componentes-tengan-un-ciclo-de-vida"><strong>¿Porqué necesitamos que los componentes tengan un ciclo de vida?</strong></h2>
<p>El Flash player funciona con una secuencia de frames. Cada frame tiene la siguiente forma:</p>
<p><img src="http://www.madeinflex.com/wp-content/uploads/2010/03/Captura-de-pantalla-2010-03-10-a-las-08.00.37.png" alt="Captura de pantalla 2010-03-10 a las 08.00.37" title="Captura de pantalla 2010-03-10 a las 08.00.37" width="400" height="136" class="aligncenter size-full wp-image-1221" /></p>
<p>En nuestra aplicación hay mucho código que no necesita renderización, como cálculos, iteraciones por colecciones, etc.<br />
En cambio hay código que requiere la actualización del componente, pongamos un ejemplo:<br />
Si cambiamos el width de un container, queremos que este se actualize y de paso que actualize el tamaño de sus hijos. El ciclo de vida hará que estos cambios se apliquen, debido al flujo de etapas que él mismo define.</p>
<h2 id="toc-el-ciclo-de-vida-de-los-halo-components"><strong>El ciclo de vida de los Halo components</strong></h2>
<p>Los Halo components tienen un ciclo de vida compuesto de tres etapas:</p>
<h2 id="toc-etapa-de-creacion">Etapa de creación</h2>
<p>Consta de cuatro fases que se ejecutan en el orden en que se explican a continuación:</p>
<ul>
<li>Fase de construcción: Fase en la que creamos el objeto llamando a su constructor.</li>
<li>Fase de configuración: Durante esta etapa, los valores asignados a las propiedades del componente, se guardan internamente para referenciarlos posteriormente.</li>
<li>Fase de inclusión (attachment): Se activa cuando el componente es añadido a la display list mediante addChild() o addChildAt() o mxml. Define el componente padre, ya que estamos añadiendo un componente a la display list.</li>
<li>Fase de inialización:Lanza preinitialize event. Luego ejecuta createChildren() para crear sus hijos y finalmente lanza initialize event.</li>
</ul>
<h2 id="toc-etapa-de-la-vida-del-componente">Etapa de la vida del componente</h2>
<p>A partir de los cambios que recibe el componente, éste pasa por diferentes fases:</p>
<p><img src="http://www.madeinflex.com/wp-content/uploads/2010/03/vida.png" alt="vida" title="vida" width="279" height="206" class="aligncenter size-full wp-image-1212" /></p>
<h4 id="toc-proceso-de-invalidacion">Proceso de invalidación</h4>
<p>Los cambios hechos en las propiedades, estilos y subcomponentes son marcados para que sean actualizados.<br />
Hay tres métodos para la invalidación:</p>
<ul>
<li>invalidatePorperties(): marca las propiedades del componente que han cambiado.</li>
<li>invalidatesSize(): marca los componentes que necesitan ser redimensionados de acuerdo con un valor cambiado.</li>
<li>invalidateDisplayList(): marca el componente cuando éste recibe  algún cambio visual.</li>
</ul>
<h4 id="toc-proceso-de-validacion">Proceso de validación</h4>
<p>Es la respuesta al proceso de invalidation. Renderiza los cambios marcados en la etapa de invalidation.</p>
<p>Métodos para la validación:</p>
<ul>
<li>commitProperties(): para actualizar los cambios en las propiedades. Es la respuesta al método invalidateProperties(). La primera instrucción debe ser super.commitProperties().</li>
<li>measure(): para actualizar las dimensiones del componente. La primera instrucción debe ser super.measure().</li>
<li>updateDisplayList(): es el punto final en el proceso de validación. Se ejecuta como resultado a la petición de invalidateDisplayList(). Hace el layout del contenido del componente y realiza cualquier actualización en la renderización.</li>
</ul>
<p>La validación ejecutará la etapa de actualización del componente de manera que los cambios que se han producido, sean renderizados.</p>
<p>La relación entre los métodos de cada una de las etapas es la siguiente:<br />
<img src="http://www.madeinflex.com/wp-content/uploads/2010/03/validation.png" alt="validation" title="validation" width="400" height="186" class="aligncenter size-full wp-image-1216" /></p>
<h2 id="toc-etapa-de-destruccion-del-componente">Etapa de destrucción del componente</h2>
<p>Ocurre cuando el componente se elimina de la displaylist. Luego se llama al garbage collector para eliminar los elementos no referenciados.</p>
<h2 id="toc-que-ha-cambiado-en-flex-4"><strong>¿Qué ha cambiado en Flex 4?</strong></h2>
<p>La verdad es que, en cuanto a ciclo de vida, no ha cambiado mucho. Spark se ha construido encima de Halo. </p>
<p>La mayor diferencia es que Spark separa la skin del propio componente, pero existe un contrato entre ambos, un contrato que obliga al componente a definir los datos, partes y estados que tendrá su skin. como muestra tenemos a SkinnableComponent, que extiende de UIComponent, por lo tanto tiene el mismo ciclo de vida, pero tiene una skin que sigue su propio ciclo de vida. </p>
<h2 id="toc-ciclo-de-vida-de-la-skin">Ciclo de vida de la skin</h2>
<p>Una skin puede tener partes estáticas y partes dinámicas. Cuando se ejecuta el createChildren() de un SkinnableComponent, este invoca a validateSkinState(), que a la vez invoca a attachSkin(). La función attachSkin() crea la skin con las partes declaradas y la añade como un hijo del componente. </p>
<p>Cuando muere el componente, se van quitando las partes de la skin y finalmente se destruye la skin. Así se da fin al ciclo de vida de la skin.</p>
<h2 id="toc-conclusion"><strong>Conclusión</strong></h2>
<p>Se ha dado un paso a vista de pájaro de lo que es el ciclo de vida en los spark components. Respecto al ciclo de vida de un SkinnableComponent, para entenderlo con claridad es mejor ver y codificar ejemplos. A continuación os dejo unos links que espero que os sirvan.</p>
<p><a href="http://www.developmentarc.com/site/wp-content/uploads/pdfs/understanding_the_flex_3_lifecycle_v1.0.pdf">http://www.developmentarc.com/site/wp-content/uploads/pdfs/understanding_the_flex_3_lifecycle_v1.0.pdf</a><br />
<a href="http://www.flex888.com/1219/flex-4-components-life-cycle.html">http://www.flex888.com/1219/flex-4-components-life-cycle.html</a><br />
<a href="http://www.artima.com/articles/flex_spark.html">http://www.artima.com/articles/flex_spark.html</a><br />
<a href="http://opensource.adobe.com/wiki/display/flexsdk/Gumbo+Skinning">http://opensource.adobe.com/wiki/display/flexsdk/Gumbo+Skinning</a><br />
<a href="http://www.adobe.com/devnet/flex/articles/flex4_skinning.html">http://www.adobe.com/devnet/flex/articles/flex4_skinning.html</a><br />
<a href="http://miti.pricope.com/2009/08/16/skinning-a-list-in-flex-4-magnifier-effect/">http://miti.pricope.com/2009/08/16/skinning-a-list-in-flex-4-magnifier-effect/</a></p>]]></content:encoded>
		</item>
		<item>
		<title>Ingenieria de Software / Software Engineering: Estimator Tool en Sure Step 2010</title>
		<link>http://ingsoftware.blogspot.com/2010/03/estimator-tool-en-sure-step-2010_13.html</link>
		<pubDate>Sun, 14 Mar 2010 04:26:00 +0000</pubDate>
		<dc:creator>JorgeBec</dc:creator>
		
	<category>metodologías</category>
		<guid>http://ingsoftware.blogspot.com/2010/03/estimator-tool-en-sure-step-2010_13.html</guid>
		<description><![CDATA[Como varios sabran en el mundo de la Ingeniería de Software existen varios métodos para estimar, tal ves el mas conocido es Function Points normado por el IFPUG y otro que tiene su fama es Use Case Points (checar este buen artículo de Methods and to...]]></description>
			<content:encoded><![CDATA[<p>Como varios sabran en el mundo de la Ingeniería de Software existen varios métodos para estimar, tal ves el mas conocido es Function Points normado por el <a href="http://www.ifpug.org/">IFPUG</a> y otro que tiene su fama es Use Case Points (checar <a href="http://www.methodsandtools.com/archive/archive.php?id=25">este buen artículo de Methods and tools</a> )&#160; pero en el mundo de las aplicaciones empresariales no existía uno hasta ahora que en Sure Step 2010 se integra el Estimator Tool a la cual mis respetos!!! se ve que Microsoft le esta invirtiendo mucho al aspecto metodológico y no solo al técnico. Estimator Tool se define a través del siguiente cuadro:</p>  <p><a href="http://lh3.ggpht.com/_Erhag9p88XY/S5xjUdHZ8bI/AAAAAAAAAIQ/UxqGl0_bn_Y/s1600-h/EstimatorTool%5B2%5D.png"><img  title="EstimatorTool" border="0" alt="EstimatorTool" src="http://lh6.ggpht.com/_Erhag9p88XY/S5xjU0QKDtI/AAAAAAAAAIU/8QNk1onfYKg/EstimatorTool_thumb.png?imgmax=800" width="244" height="158"></img></a> </p>  <p>Como se puede apreciar existe una muy robusta área de datos de entrada a través de la cual se genera toda la información de salida como es hrs por etapa e incluso por actividad en base a un WBS (Work Breakdown Structure) y por si esto fuera poco los parámetros base para el cálculo pueden ser ajustados en base a la experiencia del equipo de implementación, en fin una excelente herramienta!!!, en siguientes entradas entraremos mas a detalle.</p>  <div class="blogger-post-footer"><img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/9995896-4284938482508240841?l=ingsoftware.blogspot.com" alt=""></img></div>]]></content:encoded>
		</item>
		<item>
		<title>Fetishcode...Thinking in objects: SQL Developer: Ver multiples tablas</title>
		<link>http://fetishcode.wordpress.com/2010/03/12/sql-developer-ver-multiples-tablas/</link>
		<pubDate>Fri, 12 Mar 2010 22:23:49 +0000</pubDate>
		<dc:creator>fetishcode</dc:creator>
		
	<category>Desarrollo</category>
	<category>BBDD</category>
	<category>SQL Developer</category>
		<guid>http://fetishcode.wordpress.com/2010/03/12/sql-developer-ver-multiples-tablas/</guid>
		<description><![CDATA[Hace poco que Oracle lanzo una nueva versión de su producto para manejar bases de datos, Oracle SQL Developer
La verdad es que es un producto que esta bastante bien. Yo que no manejo mucho la bbdd, sino que simplemente lanzo algunas consultas y poco mas, pues cubre mis necesidades con creces.Y ademas es gratuito.
Pero una [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=fetishcode.wordpress.com&#038;blog=742058&#038;post=745&#038;subd=fetishcode&#038;ref=&#038;feed=1" />]]></description>
			<content:encoded><![CDATA[A]]></content:encoded>
		</item>
		<item>
		<title>Picando Código: Disponible Revista Linux+ Marzo 2010</title>
		<link>http://feedproxy.google.com/~r/picandocodigo/~3/93aQ9oiAn2k/</link>
		<pubDate>Fri, 12 Mar 2010 16:13:22 +0000</pubDate>
		<dc:creator>fernando</dc:creator>
		
	<category>GNU/Linux</category>
	<category>revista linux+</category>
		<guid>http://feedproxy.google.com/~r/picandocodigo/~3/93aQ9oiAn2k/</guid>
		<description><![CDATA[El número de marzo de Linux+ para libre descarga disponible aquí:
http://lpmagazine.org/es/magazine/1019-airbase-y-karmetasploit-3-2010-62
En este número:

Un router BGP sobre GNU/linux
DBAN: Elimina de forma segura toda la información de tu disco duro
Recolección de datos en GNU/Linux para propósitos forenses
Airbase y KARMetasploit: Despliegue de puntos de acceso ilícitos (Rogue AP)
Iniciación a MySQL avanzado
WEKA y jTwitter: Gestiona Twitter de manera inteligente
Go: [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_3138" class="wp-caption aligncenter" ><a href="http://picandocodigo.net/wp-content/uploads/2010/03/linux-dvd-marzo-2010.jpg"><img class="size-full wp-image-3138" title="Revista Linux+ Marzo 2010" src="http://picandocodigo.net/wp-content/uploads/2010/03/linux-dvd-marzo-2010.jpg" alt="Revista Linux+ Marzo 2010" width="300" height="425" /></a><p class="wp-caption-text">Revista Linux+ Marzo 2010</p></div>
<p>El número de marzo de Linux+ para libre descarga disponible aquí:</p>
<p><a href="http://lpmagazine.org/es/magazine/1019-airbase-y-karmetasploit-3-2010-62">http://lpmagazine.org/es/magazine/1019-airbase-y-karmetasploit-3-2010-62</a></p>
<p>En este número:</p>
<ul>
<li>Un router BGP sobre GNU/linux</li>
<li>DBAN: Elimina de forma segura toda la información de tu disco duro</li>
<li>Recolección de datos en GNU/Linux para propósitos forenses</li>
<li>Airbase y KARMetasploit: Despliegue de puntos de acceso ilícitos (Rogue AP)</li>
<li>Iniciación a MySQL avanzado</li>
<li>WEKA y jTwitter: Gestiona Twitter de manera inteligente</li>
<li>Go: el nuevo lenguaje de programación de Google</li>
<li>Comunicación entre procesos: En busca del eslabón perdido</li>
<li>Automatización de tareas con ShellScripts</li>
<li>Linux y la seguridad “digital”</li>
</ul>
<p>¡Buena lectura!</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/picandocodigo?a=93aQ9oiAn2k:Nz9jrehfT3Q:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/picandocodigo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/picandocodigo?a=93aQ9oiAn2k:Nz9jrehfT3Q:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/picandocodigo?i=93aQ9oiAn2k:Nz9jrehfT3Q:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/picandocodigo?a=93aQ9oiAn2k:Nz9jrehfT3Q:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/picandocodigo?i=93aQ9oiAn2k:Nz9jrehfT3Q:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/picandocodigo/~4/93aQ9oiAn2k" height="1" width="1"/>]]></content:encoded>
		</item>
		<item>
		<title>MadeInFlex: Air &#038; JasperReports</title>
		<link>http://www.madeinflex.com/2010/03/10/air-jasperreports/</link>
		<pubDate>Wed, 10 Mar 2010 12:02:52 +0000</pubDate>
		<dc:creator>David Junyent</dc:creator>
		
	<category>Casos de uso</category>
		<guid>http://www.madeinflex.com/2010/03/10/air-jasperreports/</guid>
		<description><![CDATA[<!-- matched  --><!-- final 0 -->Este es un ejemplo para lanzar un reporte JasperReports con una aplicación Air utilizando el proyecto Merapi (AIR&#8217;s Java Bridge).
Encontrareis el ejemplo en este link, en el  .zip  encontrareis los dos proyectos, para probar-lo solo hay que ejecutar el airReports.java y el aiReports.mxml.]]></description>
			<content:encoded><![CDATA[<!-- matched  --><!-- final 0 --><p>Este es un ejemplo para lanzar un reporte JasperReports con una aplicación Air utilizando el proyecto Merapi (<a href="http://code.google.com/p/merapi/">AIR&#8217;s Java Bridge</a>).</p>
<p>Encontrareis el ejemplo en este <a href="http://sourceforge.net/projects/airreports/">link</a>, en el  .zip  encontrareis los dos proyectos, para probar-lo solo hay que ejecutar el airReports.java y el aiReports.mxml.</p>]]></content:encoded>
		</item>
		<item>
		<title>4 bits blog: Detectar fugas de memoria en Visual Studio</title>
		<link>http://blog.4bits.es/detectar-fugas-de-memoria-en-visual-studio/</link>
		<pubDate>Wed, 10 Mar 2010 11:58:51 +0000</pubDate>
		<dc:creator>Fran</dc:creator>
		
	<category>windows</category>
	<category>C/C++</category>
		<guid>http://blog.4bits.es/detectar-fugas-de-memoria-en-visual-studio/</guid>
		<description><![CDATA[Para los que programen en C con Visual Studio y sientan añoranza de valgrind, aquí están los pasos sobre cómo detectar fugas de memoria (memory leaks) en Visual Studio:

Añadir la macro _CRTDBG_MAP_ALLOC del preprocesador, ya sea definiéndola en algún archivo del proyecto o en las opciones de compilación del proyecto.
Incluir en el siguiente orden stdlib.h [...]]]></description>
			<content:encoded><![CDATA[<p>Para los que programen en C con Visual Studio y sientan añoranza de <a href="http://valgrind.org/">valgrind</a>, aquí están los pasos sobre <strong>cómo detectar fugas de memoria (<em>memory leaks</em>) en Visual Studio</strong>:</p>
<ul>
<li>Añadir la macro <code>_CRTDBG_MAP_ALLOC</code> del preprocesador, ya sea definiéndola en algún archivo del proyecto o en las opciones de compilación del proyecto.</li>
<li>Incluir en el siguiente orden <code>stdlib.h</code> y <code>crtdbg.h</code> en los archivos dónde se busquen las fugas de memoria. El archivo <code>crtdgb.h</code> sustituye las funciones <code>malloc</code> y <code>free</code> por unas propias que registran la memoria reservada y liberada.</li>
<li>Añadir la función <code>_CrtDumpMemoryLeaks ()</code> al final del programa en el que se buscan las fugas de memoria. Esta función muestra por la salida de depuración las fugas de memoria detectadas.</li>
</ul>
<p>Todo <strong>esto sólo funcionará cuando el proyecto se compile con la macro <code>_DEBUG</code> definida</strong>, es decir, en lo que debería ser para todos la versión de depuración del programa.</p>
<p>La macro <code>_CRTDBG_MAP_ALLOC</code> sirve para que la función <code>_CrtDumpMemoryLeaks ()</code> muestre información sobre el archivo y la línea en la que se produjo la fuga de memoria.</p>
<p>Un pequeño ejemplo de cómo quedaría todo:</p>
<pre class="brush:c">#define _CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>

int
main (int argc, char *argv[])
{
    /* Código del programa */

    _CrtDumpMemoryLeaks ();

    return 0;
}</pre>
<p>Si este programa tuviera alguna fuga de memoria, al compilarlo en modo depuración y ejecutar el depurador de Visual Studio, se obtendría en la salida de éste un listado con las fugas de memoria del programa.</p>
<p>Para más información, leed el artículo <a href="http://msdn.microsoft.com/en-us/library/e5ewb1h3(v=VS.80).aspx">Enabling Memory Leak Detection</a> de la MSDN.</p>
<img src="http://feeds.feedburner.com/~r/4BitsBlog/~4/cEPNhJKYxd0" height="1" width="1"/>]]></content:encoded>
		</item>
		<item>
		<title>Ingenieria de Software / Software Engineering: El sector de la construcción y la informática</title>
		<link>http://ingsoftware.blogspot.com/2010/03/el-sector-de-la-construccion-y-la.html</link>
		<pubDate>Wed, 10 Mar 2010 04:55:00 +0000</pubDate>
		<dc:creator>JorgeBec</dc:creator>
		
	<category>Arquitectura</category>
		<guid>http://ingsoftware.blogspot.com/2010/03/el-sector-de-la-construccion-y-la.html</guid>
		<description><![CDATA[Cualquier parecido con la coincidencia es mera realidad!!!  http://consultordynamics.wordpress.com/2010/02/18/el-sector-de-la-construccion-y-la-informatica/  ]]></description>
			<content:encoded><![CDATA[<p>Cualquier parecido con la coincidencia es mera realidad!!!</p>  <p><a title="http://consultordynamics.wordpress.com/2010/02/18/el-sector-de-la-construccion-y-la-informatica/" href="http://consultordynamics.wordpress.com/2010/02/18/el-sector-de-la-construccion-y-la-informatica/">http://consultordynamics.wordpress.com/2010/02/18/el-sector-de-la-construccion-y-la-informatica/</a></p>  <div class="blogger-post-footer"><img width="1" height="1" src="https://blogger.googleusercontent.com/tracker/9995896-1061117810588321272?l=ingsoftware.blogspot.com" alt=""></img></div>]]></content:encoded>
		</item>
		<item>
		<title>avemundi, blog de un micro-isv » Desarrollo de software: lis.to un gestor de tareas donde hay mucho que aprender</title>
		<link>http://www.avemundi.com/?p=560</link>
		<pubDate>Sat, 06 Mar 2010 16:48:31 +0000</pubDate>
		<dc:creator>José Luis Sánchez</dc:creator>
		
	<category>Software que uso</category>
	<category>Java</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>JAVA</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>JAVA</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>JAVA</category>
	<category>DESARROLLO DE SOFTWARE</category>
	<category>DESARROLLO DE SOFTWARE</category>
		<guid>http://www.avemundi.com/?p=560</guid>
		<description><![CDATA[Desde hace unos días vengo probando lis.to. Es un gestor de tareas sencillo, que permite crear tareas y organizarlas por carpeta que pueden ser de proyectos, contextos, o lo que quieras. A cada tarea le puedes asignar una fecha y una hora de finalización y poner un recordatorio de manera que te avise antes de [...]]]></description>
			<content:encoded><![CDATA[<p>Desde hace unos días vengo probando <a href="http://lis.to/">lis.to</a>. Es un gestor de tareas sencillo, que permite crear tareas y organizarlas por carpeta que pueden ser de proyectos, contextos, o lo que quieras. A cada tarea le puedes asignar una fecha y una hora de finalización y poner un recordatorio de manera que te avise antes de la finalización. </p>
<p><a href="http://www.avemundi.com/wordpress/wp-content/listo1.png"><img src="http://www.avemundi.com/wordpress/wp-content/listo1.png" alt="listo1" title="listo1" width="544" height="384" class="aligncenter size-full wp-image-562" /></a></p>
<p>Cuando se edita una tarea se puede rellenar toda la información en una &#8216;entrada rápida&#8217;, indicando la fecha de finalización y la carpeta mediante los símbolos = y @. Además se puede añadir un texto libre a la tarea y el programa lo resalta con un icono en la lista de tareas. </p>
<p><a href="http://www.avemundi.com/wordpress/wp-content/listo21.png"><img src="http://www.avemundi.com/wordpress/wp-content/listo21.png" alt="listo21" title="listo21" width="357" height="281" class="aligncenter size-full wp-image-566" /></a></p>
<p>No es una aplicación compleja, sino que te haces con ella en cinco minutos, pero que más allá de su uso me ha llamado la atención la manera en que está hecho. En primer lugar lis.to está hecha con Java y el interfaz gráfico con Swing. Es multiplataforma y funciona perfectamente en Windows y en Mac. En Windows la interfaz parece más nativa que en Mac, sobre todo por dos cosas: la barra de iconos deja bastante que desear y el panel lateral tipo iTunes tampoco está muy logrado. Sin embargo hay otras muchas cosas muy bien hechas y que quiero aprender cómo están hechas. La primera es que las tareas no se guardan en ninguna base de datos, sino en un archivo XML. También me ha gustado la manera de hacer el autocompletado cuando se asigna una carpeta en la entrada rápida. Lo último que me ha llamado la atención es la manera de desplegar/replegar parte del formulario de edición de tareas cuando se pulsan los triángulos azules. Como se puede descargar un jar y se puede descomprimir, se puede curiosear las clases que se han usado el programa y, con un poco de suerte y un mucho de google, encontrarlas y estudiarlas.</p>
<p><strong>Actualización 15/Mar/2010</strong>: Lis.to está alojado en Google code y se puede descargar su código en este enlace: <a href="http://code.google.com/p/listo/">http://code.google.com/p/listo/</a>. Pulsando el la pestaña código y haciendo checkout con un cliente subversion podemos descargar todo el código fuente.</p>
]]></content:encoded>
		</item>
		<item>
		<title>4 bits blog: El extraño bug del Calendar</title>
		<link>http://blog.4bits.es/el-extrano-bug-del-calendar/</link>
		<pubDate>Thu, 04 Mar 2010 19:15:05 +0000</pubDate>
		<dc:creator>Lek</dc:creator>
		
	<category>Java</category>
	<category>JAVA</category>
	<category>JAVA</category>
	<category>JAVA</category>
		<guid>http://blog.4bits.es/el-extrano-bug-del-calendar/</guid>
		<description><![CDATA[Cuando empezaba a programar con C y C++ recuerdo los quebraderos de cabeza para comprobar que los valores &#8220;entraban&#8221; dentro de las variables y evitar desbordamientos problemáticos. Java solucionó esto haciendo que, si el valor se pasaba del rango de la variable, se reiniciaba el contador. Es decir, que si queremos poner el valor 212 [...]]]></description>
			<content:encoded><![CDATA[<p>Cuando empezaba a programar con C y C++ recuerdo los quebraderos de cabeza para comprobar que los valores &#8220;entraban&#8221; dentro de las variables y evitar desbordamientos problemáticos. Java solucionó esto haciendo que, si el valor se pasaba del rango de la variable, se reiniciaba el contador. Es decir, que si queremos poner el valor 212 a un fichero byte (-128 a 127), Java nos muestra en realidad -44.</p>
<p>Esto, que en principio puede parecer un gran avance porque evita problemas de seguridad en los programas (uno de los motivos por los que en Java no se pueden manejar punteros), al final se demuestra que es un nido de bugs. Porque <strong>212 no son -44</strong>. Y esto puede ser un auténtico problema en algo tan visible como una fecha.</p>
<p>El mes de marzo es un mes muy especial. Su mes anterior es de longitud variable (28 ó 29 días) y el siguiente es de 30, siendo el propio marzo de 31. Ved el siguiente código:</p>
<pre class="brush:java">Calendar cal = new GregorianCalendar();
cal.set (Calendar.DAY_OF_MONTH, 30);
cal.set (Calendar.MONTH, 2);
System.out.println (cal.getTime ());
System.out.println (cal.getActualMaximum (Calendar.DAY_OF_MONTH));
cal.set (Calendar.MONTH, cal.get(Calendar.MONTH) -1);
System.out.println (cal.getActualMaximum (Calendar.DAY_OF_MONTH));</pre>
<p>Esencialmente, lo que hace es ponernos en 30 de marzo de este año y sacar por pantalla los siguientes datos:</p>
<ul>
<li>Fecha actual</li>
<li>Número de días del mes de marzo</li>
<li>Número de días del mes de&#8230; ¿febrero?</li>
</ul>
<p>Java, en su excelsa sabiduría, <strong>ha decidido que en este caso que 2-1=2</strong>. Porque al restar uno al mes nos quedamos en 30 de febrero o, lo que es lo mismo, 2 de marzo. Esta chorrada (obviamente en un código más complejo) nos tuvo en el trabajo una mañana entretenidos porque el número de días de los meses siempre eran 30 ó 31, incluído un <strong>inexistente febrero</strong>.</p>
<p>En parte fue una suerte que estuviéramos a 30 de marzo y no en 2 de abril, en cuyo caso nos daríamos cuenta del problema casi un año después de sacar el proyecto a producción. A veces Java es realmente odioso con su &#8220;<em>deja que la JVM piense por ti</em>&#8220;.</p>
<img src="http://feeds.feedburner.com/~r/4BitsBlog/~4/XG_QIU0FWDk" height="1" width="1"/>]]></content:encoded>
		</item>
		<item>
		<title>Picando Código: @ FING</title>
		<link>http://feedproxy.google.com/~r/picandocodigo/~3/B-I8aWsDEYI/</link>
		<pubDate>Thu, 04 Mar 2010 16:18:18 +0000</pubDate>
		<dc:creator>fernando</dc:creator>
		
	<category>Picando Código</category>
	<category>Facultad de Ingeniería</category>
		<guid>http://feedproxy.google.com/~r/picandocodigo/~3/B-I8aWsDEYI/</guid>
		<description><![CDATA[Retomé las clases en Facultad de Ingeniería, lo que justifica todo lo que no postee en los próximos tiempos  
Nos vemos ahí, visiten Foro Fing&#8230;
]]></description>
			<content:encoded><![CDATA[<div id="attachment_3134" class="wp-caption aligncenter" ><a href="http://picandocodigo.net/wp-content/uploads/2010/03/fing.jpg"><img class="size-full wp-image-3134" title="Facultad de Ingeniería" src="http://picandocodigo.net/wp-content/uploads/2010/03/fing.jpg" alt="Facultad de Ingeniería" width="600" height="450" /></a><p class="wp-caption-text">Facultad de Ingeniería</p></div>
<p>Retomé las clases en Facultad de Ingeniería, lo que justifica todo lo que no postee en los próximos tiempos <img src='http://picandocodigo.net/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
<p>Nos vemos ahí, visiten <a href="http://forofing.com"><strong>Foro Fing</strong></a>&#8230;</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/picandocodigo?a=B-I8aWsDEYI:z5u4yG0lsrE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/picandocodigo?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/picandocodigo?a=B-I8aWsDEYI:z5u4yG0lsrE:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/picandocodigo?i=B-I8aWsDEYI:z5u4yG0lsrE:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/picandocodigo?a=B-I8aWsDEYI:z5u4yG0lsrE:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/picandocodigo?i=B-I8aWsDEYI:z5u4yG0lsrE:F7zBnMyn0Lo" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/picandocodigo/~4/B-I8aWsDEYI" height="1" width="1"/>]]></content:encoded>
		</item>
		<item>
		<title>Sergio Guerrero | Desarrollo web y Tiendas virtuales: Magento – No aparecen los atributos en el Frontend</title>
		<link>http://www.sergioguerrero.es/tiendas-virtuales/magento-problema-atributos-frontend/</link>
		<pubDate>Wed, 03 Mar 2010 22:41:04 +0000</pubDate>
		<dc:creator>Sergio Guerrero</dc:creator>
		
	<category>Tiendas virtuales</category>
	<category>Experto Magento</category>
	<category>Freelance Magento</category>
	<category>Magento</category>
		<guid>http://www.sergioguerrero.es/tiendas-virtuales/magento-problema-atributos-frontend/</guid>
		<description><![CDATA[En algunas ocasiones, cuando hemos intentado crear Productos Configurables en Magento, nos hemos encontrado con problemas en el frontend de la tienda por culpa de algunas extensiones. 
Despu&#233;s de haber realizado correctamente todos los pasos para configurar los atributos, los productos configurables y sus asociados como atributos, nos encontramos que en la parte frontal de [...]]]></description>
			<content:encoded><![CDATA[<p><span ><img alt="Atributos de Magento" class="alignnone size-medium wp-image-1008" height="139" src="http://www.sergioguerrero.es/wp-content/uploads/2010/03/atributos_magento-300x139.jpg" title="Problema en los atributos de Magento" width="300" /></span>En algunas ocasiones, cuando hemos intentado crear <strong>Productos Configurables en Magento</strong>, nos hemos encontrado con problemas en el frontend de la tienda por culpa de algunas extensiones. </p>
<p>Despu&eacute;s de haber realizado correctamente todos los pasos para configurar los atributos, los productos configurables y sus asociados como atributos, nos encontramos que en la parte frontal de la tienda aparece el selector de atributos, pero &eacute;ste aparece sin opciones. Lo m&aacute;s t&iacute;pico ante esta situaci&oacute;n es revisar la configuraci&oacute;n de los atributos, la visibilidad de los productos simples, etc, pero no debemos olvidar las comprobaciones sobre los errores javascript que puedan aparecer en la parte frontal. </p>
<p>Los errores Javascript producidos por algunas extensiones como JqZoom, pueden alterar el funcionamiento normal de la tienda y nos pueden hacer perder mucho tiempo intentando encontrar un fallo que puede ser f&aacute;cilmente detectado mediante herramientas como <a href="https://addons.mozilla.org/es-ES/firefox/addon/1843" title="Firebug">firebug</a>.</p>
<h3  class="related_post_title">Entradas relacionadas</h3><ul class="related_post"><li><a href="http://www.sergioguerrero.es/tiendas-virtuales/magento-1-4-0-1-cambios-correcciones/" title="Magento 1.4.0.1 &#8211; Cambios y Correcciones"><img src="http://www.sergioguerrero.es/tiendas-virtuales/magento-problema-atributos-frontend/" alt="Magento 1.4.0.1 &#8211; Cambios y Correcciones" /></a></li><li><a href="http://www.sergioguerrero.es/tiendas-virtuales/actualizar-magento/" title="Cómo actualizar Magento"><img src="http://www.sergioguerrero.es/tiendas-virtuales/magento-problema-atributos-frontend/" alt="Cómo actualizar Magento" /></a></li><li><a href="http://www.sergioguerrero.es/tiendas-virtuales/magento-1-4-community-edition-estable/" title="Magento 1.4 CE Estable"><img src="http://www.sergioguerrero.es/tiendas-virtuales/magento-problema-atributos-frontend/" alt="Magento 1.4 CE Estable" /></a></li><li><a href="http://www.sergioguerrero.es/tiendas-virtuales/webinar-desarrollo-magento/" title="Webinar sobre Desarrollo en Magento"><img src="http://www.sergioguerrero.es/tiendas-virtuales/magento-problema-atributos-frontend/" alt="Webinar sobre Desarrollo en Magento" /></a></li><li><a href="http://www.sergioguerrero.es/seo/guia-seo-magento/" title="SEO Magento &#8211; Guía SEO para Magento"><img src="http://www.sergioguerrero.es/tiendas-virtuales/magento-problema-atributos-frontend/" alt="SEO Magento &#8211; Guía SEO para Magento" /></a></li></ul>]]></content:encoded>
		</item>
		<item>
		<title>PROGRAMANDO EN .NET: T-SQL: SET ROWCOUNT vs. SELECT TOP</title>
		<link>http://programandoenpuntonet.blogspot.com/2010/03/t-sql-set-rowcount-vs-select-top.html</link>
		<pubDate>Tue, 02 Mar 2010 16:25:00 +0000</pubDate>
		<dc:creator>Pablo Bouzada</dc:creator>
		
	<category>Trucos</category>
	<category>Tips</category>
	<category>T-SQL</category>
		<guid>http://programandoenpuntonet.blogspot.com/2010/03/t-sql-set-rowcount-vs-select-top.html</guid>
		<description><![CDATA[“Si hay 2 formas de hacer lo mismo, una seguro que da problemas.” No sé si esta es una de las Leyes de Murphy, pero debería serlo :P SET ROWCOUNT es uno de esos settings “con trampa” que tiene T-SQL y que si no sabes usarlos adecuadamente te puede provocar muchos quebraderos de cabeza.Según MSDN: Hace que SQL Server detenga el procesamiento de la consulta una vez que se han devuelto las filas ]]></description>
			<content:encoded><![CDATA[“Si hay 2 formas de hacer lo mismo, una seguro que da problemas.” No sé si esta es una de las Leyes de Murphy, pero debería serlo :P SET ROWCOUNT es uno de esos settings “con trampa” que tiene T-SQL y que si no sabes usarlos adecuadamente te puede provocar muchos quebraderos de cabeza.Según MSDN: Hace que SQL Server detenga el procesamiento de la consulta una vez que se han devuelto las filas ]]></content:encoded>
		</item>
		<item>
		<title>Cerebro en la Sombra » Técnico: Aumenta tu productividad integrando el sistema de incidencias en el entorno de desarrollo: Eclipse + Mylyn + Jira + Subversion</title>
		<link>http://blog.osusnet.com/2010/03/02/aumenta-tu-productividad-integrando-el-sistema-de-incidencias-en-el-entorno-de-desarrollo-eclipse-mylyn-jira/</link>
		<pubDate>Tue, 02 Mar 2010 07:00:33 +0000</pubDate>
		<dc:creator>Osus</dc:creator>
		
	<category>Técnico</category>
	<category>Programación</category>
	<category></category>
	<category>eclipse</category>
	<category>jira</category>
	<category>mylyn</category>
	<category>productividad</category>
	<category>Eclipse</category>
		<guid>http://blog.osusnet.com/2010/03/02/aumenta-tu-productividad-integrando-el-sistema-de-incidencias-en-el-entorno-de-desarrollo-eclipse-mylyn-jira/</guid>
		<description><![CDATA[Hoy voy a hablaros de algo que ha revolucionado mi entorno de trabajo. Hasta ahora tenía por un lado el entorno de desarrollo con Eclipse y por el otro el sistema de incidencias web con Jira (también sirven Trac o Bugzilla). La verdad es que me resultaba muy pesado ir cambiando de uno a otro [...]]]></description>
			<content:encoded><![CDATA[<p>Hoy voy a hablaros de algo que ha revolucionado mi entorno de trabajo. Hasta ahora tenía por un lado el entorno de desarrollo con <a href="http://www.eclipse.org/">Eclipse</a> y por el otro el sistema de incidencias web con <a href="http://www.google.es/url?sa=t&amp;source=web&amp;ct=res&amp;cd=1&amp;ved=0CAwQFjAA&amp;url=http%3A%2F%2Fwww.atlassian.com%2Fsoftware%2Fjira%2F&amp;ei=uPOLS-OYNKLSmgOTtpy1BA&amp;usg=AFQjCNGx2m653qgbdvjNB8XxITgsQAI6eg&amp;sig2=UNmW8xlI7X6lCT0UgiBcZA">Jira</a> (también sirven <a href="http://trac.edgewall.org/">Trac</a> o <a href="http://www.bugzilla.org/">Bugzilla</a>). La verdad es que me resultaba muy pesado ir cambiando de uno a otro para revisar las incidencias y más aún para cambiar los archivos necesarios para revisar las distintas incidencias. Cuando digo que me resultaba pesado me refiero a que entonces no me daba cuenta del tiempo que perdía, pero ahora sí.</p>
<p>Para comenzar veremos cómo podemos acceder a las incidencias desde el propio <strong>Eclipse</strong> sin necesidad de cambiar de aplicación. La magia viene aportada por <a href="http://www.eclipse.org/mylyn/">Mylyn</a>.</p>
<p>Para instalar el <em>plugin</em> necesario para <strong>Jira</strong> debemos añadir el repositorio donde se encuentra desde</p>
<div class="dean_ch" >
<ol>
<li class="li1">
<div class="de1">Help->Install new software -> Available sites -> Add</div>
</li>
</ol>
</div>
<p>con la url:</p>
<div class="dean_ch" >
<ol>
<li class="li1">
<div class="de1">http://update.atlassian.com/atlassian-eclipse-plugin/e3<span class="nu0">.4</span></div>
</li>
</ol>
</div>
<p>Desde este nuevo repositorio seleccionamos los componentes a instalar, probablemente <strong>Mylyn</strong> ya lo tengas instalado. Esto es lo que debes escoger:</p>
<p ><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/0-install.gif"><img class="aligncenter" title="0-install" src="http://blog.osusnet.com/wp-content/uploads/2010/01/0-install.gif" alt="" width="455" height="480" /></a></p>
<p>Si en vez de Jira usas Trac o Bugzilla, utiliza el conector adecuado.</p>
<p>Una vez reiniciado Eclipse mostraremos la pestaña de incidencias desde</p>
<div class="dean_ch" >
<ol>
<li class="li1">
<div class="de1">Window->Show view->Task list</div>
</li>
</ol>
</div>
<p>Desde el primer icono de la pestaña vamos a &#8220;<em>Add Repository</em>&#8220;.</p>
<p><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/addrepo.gif"><img class="aligncenter size-full wp-image-3871" title="addrepo" src="http://blog.osusnet.com/wp-content/uploads/2010/01/addrepo.gif" alt="" width="384" height="219" /></a></p>
<p>Seleccionas el tipo de repositorio de incidencias que vas a crear.</p>
<p ><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/1-addrepo.gif"><img class="aligncenter" title="1-addrepo" src="http://blog.osusnet.com/wp-content/uploads/2010/01/1-addrepo.gif" alt="" width="470" height="418" /></a></p>
<p>Y añades los datos de acceso al mismo.</p>
<p ><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/2-addrepo2.gif"><img class="aligncenter" title="2-addrepo2" src="http://blog.osusnet.com/wp-content/uploads/2010/01/2-addrepo2.gif" alt="" width="466" height="418" /></a></p>
<p>Si todo ha ido bien verás una pantalla similar a ésta donde puedes crear tu primera consulta de incidencias o seleccionar una previamente guardada en el servidor ya que importa tus filtros existentes.</p>
<p ><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/3-query11.gif"><img class="aligncenter size-full wp-image-3880" title="3-query1" src="http://blog.osusnet.com/wp-content/uploads/2010/01/3-query11.gif" alt="" width="438" height="307" /></a></p>
<p>Si decides crear una consulta nueva tienes un formulario con todas las opciones a tu disposición. Por ejemplo, yo he creado una que me lista todas las incidencias reportadas por mi.</p>
<p ><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/4-query2.gif"><img class="aligncenter" title="4-query2" src="http://blog.osusnet.com/wp-content/uploads/2010/01/4-query2.gif" alt="" width="470" height="573" /></a></p>
<p>Automáticamente irá recuperando del servidor las incidencias que cumplan los requisitos especificados en los filtros.</p>
<p ><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/6-tasklist1.gif"><img class="aligncenter size-full wp-image-3872" title="6-tasklist" src="http://blog.osusnet.com/wp-content/uploads/2010/01/6-tasklist1.gif" alt="" width="320" height="398" /></a></p>
<p>Haciendo doble click en una incidencia se abre el detalle de la misma con todas sus opciones que podremos modificar a nuestro antojo, añadir comentarios nuevos, adjuntar archivos, etc.</p>
<p><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/7-task-tarea1.gif"><img class="aligncenter size-full wp-image-3873" title="7-task-tarea" src="http://blog.osusnet.com/wp-content/uploads/2010/01/7-task-tarea1.gif" alt="" width="470" height="583" /></a></p>
<p><strong>Mylyn</strong> aporta al sistema funcionalidades extra, una de ellas es la de programarnos las incidencias en función de nuestra carga de trabajo y tener una previsión de lo que vamos a hacer y cuando. Esta información no se guarda en el servidor, es interna.</p>
<p ><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/8-task5-calendario1.gif"><img class="aligncenter size-full wp-image-3874" title="8-task5-calendario" src="http://blog.osusnet.com/wp-content/uploads/2010/01/8-task5-calendario1.gif" alt="" width="470" height="461" /></a></p>
<p>A la hora de adjuntar archivos, además de seleccionar los que tengamos en nuestro equipo podremos hacer directamente desde <strong>Eclipse</strong> una captura de pantalla, recortar el trozo que nos interesa y enviarlo a <strong>Jira</strong>, todo en uno y sin salir de nuestro entorno de desarrollo.</p>
<p ><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/9-task6-upload.gif"><img class="aligncenter" title="9-task6-upload" src="http://blog.osusnet.com/wp-content/uploads/2010/01/9-task6-upload.gif" alt="" width="408" height="90" /></a></p>
<p>Llegamos a una de las opciones que realmente hacen que ahorremos muchísimo tiempo, el <strong>contexto</strong>. Cada incidencia tiene un circulito a su izquierda que permite <em><strong>activar</strong></em> esa tarea. Al activar una tarea el sistema asume que todos los archivos que vayas abriendo mientras la tengas activada están asociados a la resolución de la misma.</p>
<p ><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/10-task2-contexto.gif"><img class="aligncenter" title="10-task2-contexto" src="http://blog.osusnet.com/wp-content/uploads/2010/01/10-task2-contexto.gif" alt="" width="470" height="343" /></a></p>
<p>Abre algunos archivos de ejemplo y en la pestaña &#8220;Context&#8221; de la incidencia verás cómo va asociándolos. Si ahora, en vez de cerrar la incidencia en la &#8220;X&#8221; la <em><strong>desactivas</strong></em> de nuevo en el circulito, verás como automáticamente se cierran también todos los archivos asociados. Y aquí viene lo bueno, si vuelves a activarla se abren automáticamente todos los archivos sobre los que estabas trabajando. Este sistema te permite cambiar rápidamente el entorno de trabajo de una incidencia a otra sin tener que buscar de nuevo todos los fuentes uno a uno.</p>
<p ><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/11-task3-context-conarchivos.gif"><img class="aligncenter" title="11-task3-context-conarchivos" src="http://blog.osusnet.com/wp-content/uploads/2010/01/11-task3-context-conarchivos.gif" alt="" width="470" height="314" /></a></p>
<p>Hay una opción más para trabajar con los <strong>contextos</strong> que permite que distintos usuarios los compartan y consiste en subirlos al propio servidor de <strong>Jira</strong>. Se suben como archivos zip como si fuese un archivo adjunto a la incidencia normal y corriente, pero <strong>Mylyn</strong> sabe lo que tiene que hacer con ellos cuando se recuperan.</p>
<p ><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/12-context.gif"><img class="aligncenter" title="12-context" src="http://blog.osusnet.com/wp-content/uploads/2010/01/12-context.gif" alt="" width="327" height="324" /></a></p>
<p>Finalmente otra opción interesante es la integración con <a href="http://subversion.tigris.org/">Subversion</a>. Teniendo una incidencia <em><strong>activada</strong></em>, cada vez que hagamos <em>commit</em> al repositorio nos adjuntará automáticamente en el comentario del <strong>svn</strong> información acerca de la incidencia que se resuelve, eso que nunca hacemos <img src='http://blog.osusnet.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> .</p>
<p><a href="http://blog.osusnet.com/wp-content/uploads/2010/01/13-svn.gif"><img class="aligncenter" title="13-svn" src="http://blog.osusnet.com/wp-content/uploads/2010/01/13-svn.gif" alt="" width="470" height="724" /></a>Como veis tenemos el desarrollo junto a las incidencias y la resolución de las mismas en <strong>Subversión</strong> completamente integrado en una sola aplicación. Cuando os comentaba al principio del artículo sobre que no me daba cuenta de lo pesado que era hacerlo en tres pasos, ahora veis a qué me refería, es una de esas cosas que hasta que las tienes no sabes lo que vale.</p>
]]></content:encoded>
		</item>
		<item>
		<title>Arragonán: El Real Zaragoza, twitter y Gaelyk(Groovy + AppEngine)</title>
		<link>http://feedproxy.google.com/~r/danilat/~3/F7IJ2zotrfc/</link>
		<pubDate>Tue, 02 Mar 2010 01:24:41 +0000</pubDate>
		<dc:creator>Dani</dc:creator>
		
	<category>Proyectos</category>
	<category>Groovy</category>
		<guid>http://feedproxy.google.com/~r/danilat/~3/F7IJ2zotrfc/</guid>
		<description><![CDATA[Este viernes noche después de cenar me puse a programar(o a jugar) uno de esos mini-pet-projects, lo suficientemente pequeño para no comprometerme a dedicarle más tiempo fuera del fin de semana y lo suficientemente grande para que sea algo más que un hello world. Y salvo a que tenga algún momento de aburrimiento en el [...]]]></description>
			<content:encoded><![CDATA[<p>Este viernes noche después de cenar me puse a programar(o a jugar) uno de esos mini-pet-projects, lo suficientemente pequeño para no comprometerme a dedicarle más tiempo fuera del fin de semana y lo suficientemente grande para que sea algo más que un <strong>hello world</strong>. Y salvo a que tenga algún momento de aburrimiento en el que me de por mejorar o añadir alguna cosilla, así se va a quedar.</p>
<p>El proyecto es un agregador de <a href="http://real-zaragoza.appspot.com/"><em>twitts</em> que hablan del Real Zaragoza</a>(o #realzaragoza <img src='http://www.danilat.com/weblog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ). Y como uno no quiere hacerse de oro, no lo hace ni del Madrid ni del Barça <img src='http://www.danilat.com/weblog/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> .</p>
<p ><a href="http://real-zaragoza.appspot.com/"><img class="aligncenter" src="http://real-zaragoza.appspot.com/images/escudo.jpg" alt="Real Zaragoza" /></a></p>
<p>Hablando ya desde el punto de vista puramente técnico, es una aplicación muy sencillita que corre en <em>la nube</em> de Google, osea en <a href="http://code.google.com/appengine/">App Engine</a> (aquí voy a ahorrarme varios comentarios de lo que mola la nube, además de confundirlo con internet&#8230; No voy a dar nombres&#8230; <img src='http://www.danilat.com/weblog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> )</p>
<p>He utilizado un framework web ligero, hecho expresamente para correr en App Engine y muy sencillo llamado <a href="http://gaelyk.appspot.com/">gaelyk</a>, donde el código que escribimos es Groovy. </p>
<p>Gaelyk permite separar las vistas(<a href="http://groovy.codehaus.org/Groovy+Templates">Groovy Tempaltes</a>) de las acciones(<a href="http://groovy.codehaus.org/Groovlets">Groovlets</a>). Inyecta en las acciones los elementos del SDK de GAE(datastore, memcache, mail, images&#8230;), y algunas variables para facilitar la vida y tener un código más escueto.</p>
<p>En mi caso he dejado la <em>lógica de negocio</em> en los mismos scripts de los Groovlets. Tan sólo hay tres: la home, la vista de un usuario(ej: <a href="http://real-zaragoza.appspot.com/user.groovy?user=dani_latorre">@dani_latorre</a>) y otro que es llamado cada 10 min para hacer una búsqueda en twitter e insertar los twitts nuevos.</p>
<p>Para la búsqueda de twitts, se hacen tan sólo dos peticiones cada 10 min y se parsea la respuesta atom de la búsqueda con XmlSlurper, se comprueba si no está duplicado y se crea y guarda una nueva <a href="http://code.google.com/intl/es/appengine/docs/java/javadoc/com/google/appengine/api/datastore/Entity.html">Entity de GAE</a> (gaelyk facilita su uso, para que sea más <em>a la groovy</em>).</p>
<p>Para recuperar lo que hemos persistido, por el momento no aporta novedades, a partir del datastore lanzaremos las queries. En el futuro es posible que surjan novedades en este apartado.</p>
<p>Para quien le interese conocer más detalles de gaelyk, le recomendaría pegarle una ojeada <a href="http://gaelyk.appspot.com/tutorial">al tutorial</a>.</p>
<p>Ver una <a href="http://www.slideshare.net/glaforge/google-app-engine-java-groovy-baby">presentación de Guillaume Laforge y Patrick Chanezon</a>.</p>
<div  id="__ss_2540031"><strong ><a href="http://www.slideshare.net/glaforge/google-app-engine-java-groovy-baby" title="Google App Engine Java, Groovy and Gaelyk">Google App Engine Java, Groovy and Gaelyk</a></strong><object width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=gaej-groovy-gaelyk-091119150835-phpapp02&#038;stripped_title=google-app-engine-java-groovy-baby" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=gaej-groovy-gaelyk-091119150835-phpapp02&#038;stripped_title=google-app-engine-java-groovy-baby" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div >View more <a href="http://www.slideshare.net/">presentations</a> from <a href="http://www.slideshare.net/glaforge">Guillaume Laforge</a>.</div>
</div>
<p>O un <a href="http://www.vimeo.com/6844104">screencast de Pratik Patel</a>(ojo, que a los elementos de GAE inyectados ya no se les llama <em>loqueseaService</em>, sólo <em>loquesea</em>)<br />
<object width="400" height="225"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=6844104&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed src="http://vimeo.com/moogaloop.swf?clip_id=6844104&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="always" width="400" height="225"></embed></object>
<p><a href="http://vimeo.com/6844104">Gaelyk &#038; Groovy &#038; Google App Engine &#8211; ATL2G</a> from <a href="http://vimeo.com/user2380601">Pratik Patel</a> on <a href="http://vimeo.com">Vimeo</a>.</p>
<p>Y aunque este año nos toca sufrir, <strong>aupa Zaragoza!</strong> XD</p>
]]></content:encoded>
		</item>
		<item>
		<title>xailer.info (esp): Curso avanzado de programación en Xailer</title>
		<link>http://xailer.info/esp/?p=240</link>
		<pubDate>Mon, 01 Mar 2010 17:17:59 +0000</pubDate>
		<dc:creator>Ignacio OZ</dc:creator>
		
	<category>Noticias</category>
		<guid>http://xailer.info/esp/?p=240</guid>
		<description><![CDATA[Los días 11 y 12 de Marzo se celebrarán en Madrid (Tres cantos) dos cursos avanzados de programación con Xailer:

El jueves 11 se impartirá por Ignacio Ortiz de Zúñiga un curso avanzado de nuevas técnicas de programación adaptadas a Xailer utilizando el  Modelo Vista Controlador (MVC) sobre bases de datos SQL, en el cual [...]]]></description>
			<content:encoded><![CDATA[<p><P>Los días 11 y 12 de Marzo se celebrarán en Madrid (Tres cantos) dos cursos avanzados de programación con Xailer:</P></p>
<ul>
<li>El jueves 11 se impartirá por <b>Ignacio Ortiz de Zúñiga</b> un curso avanzado de nuevas técnicas de programación adaptadas a Xailer utilizando el <a href="http://es.wikipedia.org/wiki/Modelo_Vista_Controlador" > Modelo Vista Controlador (MVC)</a> sobre bases de datos SQL, en el cual el usuario aprenderá a realizar aplicaciones que con suma facilidad podrá cambiar completamente su diseño visual o el servidor de bases de datos. Se mostrará igualmente a como exportar todos los servicios que incluye el &#8216;controlador&#8217; hacia a otras aplicaciones. Y todo ello, utilizando la tecnología de DataControls que incluye Xailer 2. Se requiere un nivel medio-alto de programación en Xailer y xHarbour.
<p><P>Se entregará con el curso el esqueleto de una pequeña gestión de facturación que el usuario podrá utilizar como guía para sus futuros proyectos.</P></p>
<li>El viernes 12 se impartirá por <b>Bingen Ugaldebere</b> de BiSoft un curso avanzado de programación utilizando <b>Fast Report</b>, en el cual se mostrará la potencia y sencillez de este generador de informes. Para ello se hará primeramente una pequeña introducción sobre su instalación y manejo desde Xailer, para a continuación pasar directamente a la creación de informes desde el más sencillo al más complicado, entregando ejemplos de todos ellos. Se pretende exprimir al máximo toda la potencia de Fast Report. Es una oportunidad única de conocer esta fantástica herramienta.
</ul>
<p><P>El precio de cada uno de los cursos es de 200 euros. Los usuarios que acudan a ambos cursos tendrán un  descuento total de 100 euros. Se exige un depósito de 50 euros para la reserva de plaza.</P></p>
<p><P><B>Plazas limitadas.</B></P></p>
<p>Duración y horario de los cursos:<br />
  <P></p>
<table  border="0" cellpadding="5" cellspacing="2" width="100%" CLASS="cuerpo" BGCOLOR="white">
<tr>
<td align="left" width="25%" BGCOLOR="#28D8F7"><B>Jueves 11</B></td>
<td align="left" BGCOLOR="#28D8F7">9 horas</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">09:00-11:00</td>
<td align="left" BGCOLOR="#28D8F7">Diseño del esqueleto de nuevas aplicaciones</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">11:00-11:30</td>
<td align="left" BGCOLOR="#28D8F7">Coffee-break</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">11:30-14:30</td>
<td align="left" BGCOLOR="#28D8F7">Introducción al modelo vista-controlador</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">14:30-16:00</td>
<td align="left" BGCOLOR="#28D8F7">Comida</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">16:00-18:00</td>
<td align="left" BGCOLOR="#28D8F7">Diseño visual con DataControls sobre el modelo vista-controlador</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">18:00-18:30</td>
<td align="left" BGCOLOR="#28D8F7">Coffee-break</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">18:30-20:30</td>
<td align="left" BGCOLOR="#28D8F7">Diseño del controlador y su publicación para otros proyectos</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">20:30-23:00</td>
<td align="left" BGCOLOR="#28D8F7">Cena organizada para todos los asistentes que lo deseen</td>
</tr>
<tr>
<td align="left" BGCOLOR="#28D8F7"><B>Viernes 12</B></td>
<td align="left" BGCOLOR="#28D8F7">8 horas</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">09:00-11:00</td>
<td align="left" BGCOLOR="#28D8F7">Introducción a Fast Report, instalación y puesta en marcha</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">11:00-11:30</td>
<td align="left" BGCOLOR="#28D8F7">Coffee-break</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">11:30-14:30</td>
<td align="left" BGCOLOR="#28D8F7">Diseño de informes básicos</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">14:30-16:00</td>
<td align="left" BGCOLOR="#28D8F7">Comida</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">16:00-17:00</td>
<td align="left" BGCOLOR="#28D8F7">Traspaso de información bidireccional entre Xailer y Fast Report</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">17:00-18:00</td>
<td align="left" BGCOLOR="#28D8F7">Integración de Fast Report en sus propias aplicaciones</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">18:00-18:30</td>
<td align="left" BGCOLOR="#28D8F7">Coffee-break</td>
</tr>
<tr>
<td align="right" BGCOLOR="#28D8F7">18:30-19:30</td>
<td align="left" BGCOLOR="#28D8F7">Informes complejos con Fast Report</td>
</tr>
</table>
<p>	</P></p>
<p>Consulte el área de eventos en <a href="http://xailer.info/esp/www.xailder.com">www.xailer.com</a> para más información.
</p>
]]></content:encoded>
		</item>
		<item>
		<title>4 bits blog: mini, una biblioteca para procesar archivos INI</title>
		<link>http://blog.4bits.es/mini-una-biblioteca-para-procesar-archivos-ini/</link>
		<pubDate>Sun, 28 Feb 2010 19:17:35 +0000</pubDate>
		<dc:creator>Fran</dc:creator>
		
	<category>Proyectos</category>
	<category>C/C++</category>
		<guid>http://blog.4bits.es/mini-una-biblioteca-para-procesar-archivos-ini/</guid>
		<description><![CDATA[Hace ya bastante tiempo en el trabajo me tocó lidiar con un programa (en C) que debía procesar la configuración de un archivo INI, para quién no lo sepa es un archivo de texto con un formato similar a este:
;Archivo INI

[sección]
clave1=valor1
clave2=valor2
En estos casos lo mejor es no reinventar la rueda, así que hice un par [...]]]></description>
			<content:encoded><![CDATA[<p>Hace ya bastante tiempo en el trabajo me tocó lidiar con <strong>un programa (en C) que debía procesar la configuración de un archivo INI</strong>, para quién no lo sepa es un archivo de texto con un formato similar a este:</p>
<pre class="brush:text">;Archivo INI

[sección]
clave1=valor1
clave2=valor2</pre>
<p>En estos casos lo mejor es no reinventar la rueda, así que hice un par de búsquedas por internet, pero lo que encontré no me gustó, así que ni corto ni perezoso realicé mi propio <em>cutre-parser</em> que funcionaba bien para lo que quería, archivos INI creados a mano, pero no para todos los casos que podría tener un archivo INI.</p>
<p>Así que gracias a un poco de tiempo libre me he puesto las pilas un poco y he ido modificando aquel <em>cutre-parser</em> hasta algo más decente, aunque todavía le quiero dar un par de vueltas para dejarlo bien. De todos modos, el código que hay ahora mismo funciona bastante bien, así que he creado un <a href="http://github.com/franchukelly/mini">repositorio para mini en github</a> (por cierto, git mola mil), así no tenéis excusa para probarlo.</p>
<img src="http://feeds.feedburner.com/~r/4BitsBlog/~4/r44RHu8rP8w" height="1" width="1"/>]]></content:encoded>
		</item>
		<item>
		<title>PROGRAMANDO EN .NET: Otro test de agudeza visual: ¿qué código es peor?</title>
		<link>http://programandoenpuntonet.blogspot.com/2010/02/otro-test-de-agudeza-visual-que-codigo.html</link>
		<pubDate>Fri, 26 Feb 2010 16:28:00 +0000</pubDate>
		<dc:creator>Pablo Bouzada</dc:creator>
		
	<category>.NET</category>
	<category>Trucos</category>
	<category>Tips</category>
	<category>VB.NET</category>
	<category>la vida del currito-picacódigo</category>
		<guid>http://programandoenpuntonet.blogspot.com/2010/02/otro-test-de-agudeza-visual-que-codigo.html</guid>
		<description><![CDATA[Opción 1: Dim intVariable as Integer Try  intVariable = LlamadaaMetodoQuePuedeDevolverNothing() Catch ex as Exception  intVariable = 0 End  TryOpción 2: Dim intVariable as Integer = 0 Try  intVariable = LlamadaaMetodoQuePuedeDevolverNothing() Catch ex as Exception End  TryRespuesta: la opción 2, que provoca un precioso "agujero negro de excepciones".PD: los 2 ejemplos están basados en hechos ]]></description>
			<content:encoded><![CDATA[Opción 1: Dim intVariable as Integer Try  intVariable = LlamadaaMetodoQuePuedeDevolverNothing() Catch ex as Exception  intVariable = 0 End  TryOpción 2: Dim intVariable as Integer = 0 Try  intVariable = LlamadaaMetodoQuePuedeDevolverNothing() Catch ex as Exception End  TryRespuesta: la opción 2, que provoca un precioso "agujero negro de excepciones".PD: los 2 ejemplos están basados en hechos ]]></content:encoded>
		</item>
		<item>
		<title>Mal Código: The Scourge Project en Steam</title>
		<link>http://malcodigo.blogspot.com/2010/02/scourge-project-en-steam.html</link>
		<pubDate>Fri, 26 Feb 2010 11:19:00 +0000</pubDate>
		<dc:creator>Luis Cabellos</dc:creator>
		
	<category>Uncategorized</category>
		<guid>http://malcodigo.blogspot.com/2010/02/scourge-project-en-steam.html</guid>
		<description><![CDATA[El videojuego "The Sourge Project" estara disponible a partir de marzo en Steam.Me alegro mucho por los ex-compañeros de TragnarionYa estoy deseando jugarlo.via: Pocs esments]]></description>
			<content:encoded><![CDATA[El videojuego "The Sourge Project" estara disponible a partir de marzo en Steam.Me alegro mucho por los ex-compañeros de TragnarionYa estoy deseando jugarlo.via: Pocs esments]]></content:encoded>
		</item>
		<item>
		<title>carlosrovira.com: FlashDay, nuevo evento inspiracional</title>
		<link>http://www.carlosrovira.com/blog/2010/02/flashday-nuevo-evento-inspiracional/</link>
		<pubDate>Fri, 26 Feb 2010 10:38:34 +0000</pubDate>
		<dc:creator>Carlos Rovira</dc:creator>
		
	<category>Flash</category>
		<guid>http://www.carlosrovira.com/blog/2010/02/flashday-nuevo-evento-inspiracional/</guid>
		<description><![CDATA[El próximo 4 de marzo se celebra un evento ineludible. Se trata de FlashDay, un evento inspiracional, donde muchas de las grandes figuras del panorama español participan para ofrecer su visión y experiencia en todo lo relacionado con la Plataforma Flash.

El evento es idea de Xavi Beumala, de sobra conocido por todos y referencia internacional [...]]]></description>
			<content:encoded><![CDATA[<p>El próximo 4 de marzo se celebra un evento ineludible. Se trata de <a href="http://www.flashday.eu/">FlashDay</a>, un evento inspiracional, donde muchas de las grandes figuras del panorama español participan para ofrecer su visión y experiencia en todo lo relacionado con la Plataforma Flash.</p>
<p><a href="http://www.flashday.eu/"><img src="http://www.carlosrovira.com/blog/wp-content/uploads/2010/02/flashday.jpg" alt="flashday" title="flashday" width="400" height="251" class="aligncenter size-full wp-image-725" /></a></p>
<p>El evento es idea de <a href="http://www.rialvalue.com/blog/">Xavi Beumala</a>, de sobra conocido por todos y referencia internacional dentro de la Plataforma Flash, actualmente trabajando en <a href="http://www.adobe.com">Adobe</a>. Otras muchas colaboraciones importantes como la de <a href="http://www.sidedev.net/blog/">Joseba Alonso</a> de <a href="http://www.refr3sh.es/">Refr3sh</a>, <a href="http://www.duvos.com/">Enrique Duvos</a> Adobe Evangelist o<a href="http://www.joangarnet.com/blog/"> Joan Garnet</a> de <a href="http://www.codeoscopic.com">Codeoscopic</a>, por nombrar algunos nombres, estarán ofreciendo sendas charlas inspiracionales ese día.</p>
<p>Por mi parte solo puedo morderme el labio y maldecir por tener obligaciones en Madrid que me impedirán el poder asistir. Si vosotros no tenéis ese problema, no os lo perdáis!! <img src='http://www.carlosrovira.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>Del propio sitio:</p>
<blockquote><p>FlashDay es un evento con carácter 100% inspiracional y participativo alrededor de la plataforma Flash.</p>
<p>Y qué entendemos por inspiracional? pues bien, mostrar aquellos proyectos, pruebas de concepto, labs e ideas que todos tenemos en mente y que han arrancado woows a usuarios, amigos, compañeros y clientes, proyectos que por su naturaleza apasionan. Cosas que Flash como plataforma permite hacer y que tanto nos gusta y divierte.</p>
<p>FlashDay es un entorno para entrar en contacto con gente con las mismas inquietudes, un entorno en el que compartir y mostrar todos esos proyectos en los que andas trabajando, un entorno en el que inspirarte y participar. Un entorno para creativos, desarrolladores, diseñadores, un entorno para todos.</p>
<p>A qué proyectos nos referimos? A todos aquellos proyectos en los que hayas trabajado, estés trabajando o vayas a trabajar; Visualizaciones creativas, Instalaciones, 3D, Audio, Aplicaciones RIA, Publicidad y campañas, Formación, Flash en dispositivos mobiles, Entornos colaborativos, Animaciones y Ilustraciones, Realidad aumentada, etc&#8230;</p>
<p>Y tienen que ser proyectos Flash? Sí, pero entendiendo Flash como una Plataforma que incluye Flash, Flex y AIR.</p></blockquote>]]></content:encoded>
		</item>
		<item>
		<title>Joan Garnet :: Arquitectura y desarrollo RIA: FlashDay: evento inspiracional</title>
		<link>http://www.joangarnet.com/blog/?p=1213</link>
		<pubDate>Fri, 26 Feb 2010 09:27:16 +0000</pubDate>
		<dc:creator>Joan | Garnet</dc:creator>
		
	<category></category>
	<category>ActionScript 3.0</category>
	<category>Eventos Plataforma Flash</category>
	<category>AIR</category>
		<guid>http://www.joangarnet.com/blog/?p=1213</guid>
		<description><![CDATA[El próximo día 4 de Marzo tendrá lugar la primera edición del FlashDay, evento concebido y organizado por Xavi Beumala y Enrique Duvós como iniciativa personal fuera del ámbito de Adobe.
El evento tiene como objetivo ofrecer un entorno de encuentro en el que se pueda mostrar lo que la plataforma Flash permite hacer a nivel [...]]]></description>
			<content:encoded><![CDATA[<p>El próximo día 4 de Marzo tendrá lugar la primera edición del <a href="http://flashday.eu/">FlashDay</a>, evento concebido y organizado por <a href="http://www.rialvalue.com/blog/">Xavi Beumala</a> y <a href="http://www.duvos.com/">Enrique Duvós</a> como iniciativa personal fuera del ámbito de Adobe.<br />
El evento tiene como objetivo ofrecer un entorno de encuentro en el que se pueda mostrar lo que la plataforma Flash permite hacer a nivel experimental o conceptual.<br />
No se pretende mostrar código sino qué hace el código, además con la premisa de que lo que se muestre sea innovador e inspirador. Esto hace que sea un evento válido, no solo para programadores sino para cualquiera persona que esté interesada en la tecnología Flash como herramienta creativa.</p>
<p><center><a href="http://flashday.eu"><img src="http://www.joangarnet.com/blog/wp-content/uploads/2010/02/flashday.png" alt="" title="FlashDay" width="400" height="251" class="alignnone size-full wp-image-1267" border="0" /></a></center><br/><br />
Por mi parte he sido invitado para formar parte del grupo <em>fijo</em> de ponentes.<br />
Si os fijáis en la Agenda del evento veréis que hay un tal Joan Llenas, ese soy yo. En esta ocasión dejaré el disfraz de Joan Garnet en el armario&#8230; :)<br />
En mis 30 minutos de gloria voy a mostrar algunos ejemplos de lo que se puede hacer con las nuevas funcionalidades de generación dinámica de audio (a.k.a síntesis de audio) del Flash Player, un campo apasionante dentro del mundo de la programación del que desde hace bien poquito podemos sacar partido gracias a las nuevas APIs introducidas en el Flash Player 10.</p>
<p>Si estas por Barcelona el día 4 de Marzo no dejes de reservarte 5 horitas (de de 14 a 19h) para asistir al evento.<br />
Y recuerda esto: <strong>No sirve de nada que te lo expliquen, tienes que venir!</strong></p>
]]></content:encoded>
		</item>
		<item>
		<title>Najaraba.com: Software libre, metodologías ágiles y más.: Conferencia Agile-Spain 2010 (CAS2010)</title>
		<link>http://najaraba.blogspot.com/2010/02/conferencia-agile-spain-2010-cas2010.html</link>
		<pubDate>Thu, 25 Feb 2010 21:13:00 +0000</pubDate>
		<dc:creator>Joserra</dc:creator>
		
	<category>Planeta Codigo</category>
	<category>metodologías</category>
	<category>ágil</category>
	<category>agile-spain</category>
		<guid>http://najaraba.blogspot.com/2010/02/conferencia-agile-spain-2010-cas2010.html</guid>
		<description><![CDATA[Hoy tengo una gran noticia. Ya se ha dado el pistoletazo de salida para la primera conferencia sobre Ágiles en España. En Agile-Spain la estamos organizando: CAS2010.En la web podeis encontrar toda la información necesaria. En estos momentos están abiertos los procesos para la selección de sesiones, contribuiciones y talleres. Cualquier planteamiento relacionado con las prácticas y metodologías ]]></description>
			<content:encoded><![CDATA[Hoy tengo una gran noticia. Ya se ha dado el pistoletazo de salida para la primera conferencia sobre Ágiles en España. En Agile-Spain la estamos organizando: CAS2010.En la web podeis encontrar toda la información necesaria. En estos momentos están abiertos los procesos para la selección de sesiones, contribuiciones y talleres. Cualquier planteamiento relacionado con las prácticas y metodologías ]]></content:encoded>
		</item>
		<item>
		<title>Arragonán: Historia de los frameworks web</title>
		<link>http://feedproxy.google.com/~r/danilat/~3/bbODC464alw/</link>
		<pubDate>Wed, 24 Feb 2010 01:38:03 +0000</pubDate>
		<dc:creator>Dani</dc:creator>
		
	<category>JavaScript</category>
	<category>PHP</category>
	<category>Java</category>
	<category>rails</category>
	<category>JAVA</category>
	<category>PHP</category>
	<category>PHP</category>
	<category>PHP</category>
	<category>PHP</category>
	<category>JAVA</category>
	<category>JAVA</category>
	<category>PHP</category>
		<guid>http://feedproxy.google.com/~r/danilat/~3/bbODC464alw/</guid>
		<description><![CDATA[
By @mraible
]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/mraible/4378559350/"><img src="http://farm5.static.flickr.com/4067/4378559350_d12ac7a766_b.jpg" alt="" /></a><br />
By <a href="http://twitter.com/mraible">@mraible</a></p>
]]></content:encoded>
		</item>
		<item>
		<title>Bitácora de Javier Gutiérrez Chamorro (Guti): Flash, no tan rápido</title>
		<link>http://guti.bitacoras.com/index.php?entry=entry100223-090838</link>
		<pubDate>Tue, 23 Feb 2010 08:08:38 +0000</pubDate>
		<dc:creator>Bitácora de Javier Gutiérrez Chamorro (Guti)</dc:creator>
		
	<category>Informática, Internet, Programación</category>
		<guid>http://guti.bitacoras.com/index.php?entry=entry100223-090838</guid>
		<description><![CDATA[Como sabéis, la máquina virtual que usa Adobe Flash para el código ActionScript 3, está basada en el proyecto <a href="http://www.mozilla.org/projects/tamarin" target="_blank" >Tamarin</a> de la Fundación Mozilla. Esto quiere decir, que aunque AS3 sea un superconjunto de Javascript, comparte gran parte de la base de código utilizada en <a href="https://wiki.mozilla.org/JavaScript:TraceMonkey" target="_blank" >TraceMonkey</a>, que a su vez se usa por ejemplo en Firefox, para la ejecución de Javascript.<br /><br />En <a href="index.php?entry=entry041109-223856" target="_blank" >Rendimiento Javascript vs VBScript</a>, analizaba las diferencias de rendimiento que había bajo Internet Explorer a la hora de ejecutar el mismo código en VBScript y Javascript. Luego en <a href="index.php?entry=entry050131-204451" target="_blank" >Benchmark de CPU/FPU en Flash</a>, hacía un análisis del rendimiento en lo que a cálculos se refiere desde Flash. Sin embargo quedaba un tema pendiente...<br /><br />Dado que según se ha visto, la ejecución de código en la VM, es bastante común en Firefox y Flash, cabría pensar que a nivel de rendimiento fueran muy parejos. No obstante, también podríamos pensar que como históricamente Flash ha generado aplicaciones más complejas que Javascript, el equipo de FutureSplash/Macromedia/Adobe, hubiera realizado trabajos especiales en su optimización.<br /><br />He aprovechado (otra vez), el código de cálculo de números primos en Javascript, VBScript, y ActionScript 3, y lo he ejecutado en diferentes entornos. Estos han sido los resultados:<br /><br />- Javascript (Safari 4.0.4): 1044 ms.<br />- Javascript (Iron 4.0.280): 1906 ms.<br />- Javascript (Opera 10.50.3236): 2038 ms.<br />- Javascript (Firefox 3.7a1 20100121 x64): 2148 ms.<br />- Javascript (Firefox 3.7a1 20100121 x86): 2192 ms.<br /><b>- Actionscript (Flash 10): 3586 ms.</b><br />- VBScript (Internet Explorer 8.0.7600.16385 x64): 5810  ms.<br />- VBScript (Internet Explorer 8.0.7600.16385 x86): 8080  ms.<br />- Javascript (Internet Explorer 8.0.7600.16385 x64): 8140 ms.<br />- Javascript (Internet Explorer 8.0.7600.16385 x86): 9230 ms.<br /><br />Observamos, que el rendimiento, no es en absoluto parejo, y Flash 10 se muestra alrededor de 2 veces más lento que Firefox en cuanto a desempeño. Personalmente una gran sorpresa para mi, que he vivido en mis propias carnes las grandes mejoras de velocidad con la VM de AS3 comparada con la anterior de AS2.<br /><br />Debemos aclarar que como cualquier benchmark sintético, puede no ser representativo de la realidad, aunque si que debe dar una idea clara de la velocidad a la que uno y otro pueden realizar cálculos puros. Ello no quiere decir que otras funcionalidades, en particular dibujo en pantalla, etc, puedan ser más eficientes en ActionScript 3 que en Javascript, aunque en todo caso, eso sería parte de un futuro artículo.<br /><br />Puedes probarlo tu mismo descargando todostodos los fuentes <a href="images/10/02/flash_no_tan_rapido.zip" target="_blank" >aquí (6 Kb. en formato ZIP)</a>.]]></description>
			<content:encoded><![CDATA[Como sabéis, la máquina virtual que usa Adobe Flash para el código ActionScript 3, está basada en el proyecto <a href="http://www.mozilla.org/projects/tamarin"  >Tamarin</a> de la Fundación Mozilla. Esto quiere decir, que aunque AS3 sea un superconjunto de Javascript, comparte gran parte de la base de código utilizada en <a href="https://wiki.mozilla.org/JavaScript:TraceMonkey"  >TraceMonkey</a>, que a su vez se usa por ejemplo en Firefox, para la ejecución de Javascript.<br /><br />En <a href="http://guti.bitacoras.com/index.php?entry=entry041109-223856"  >Rendimiento Javascript vs VBScript</a>, analizaba las diferencias de rendimiento que había bajo Internet Explorer a la hora de ejecutar el mismo código en VBScript y Javascript. Luego en <a href="http://guti.bitacoras.com/index.php?entry=entry050131-204451"  >Benchmark de CPU/FPU en Flash</a>, hacía un análisis del rendimiento en lo que a cálculos se refiere desde Flash. Sin embargo quedaba un tema pendiente...<br /><br />Dado que según se ha visto, la ejecución de código en la VM, es bastante común en Firefox y Flash, cabría pensar que a nivel de rendimiento fueran muy parejos. No obstante, también podríamos pensar que como históricamente Flash ha generado aplicaciones más complejas que Javascript, el equipo de FutureSplash/Macromedia/Adobe, hubiera realizado trabajos especiales en su optimización.<br /><br />He aprovechado (otra vez), el código de cálculo de números primos en Javascript, VBScript, y ActionScript 3, y lo he ejecutado en diferentes entornos. Estos han sido los resultados:<br /><br />- Javascript (Safari 4.0.4): 1044 ms.<br />- Javascript (Iron 4.0.280): 1906 ms.<br />- Javascript (Opera 10.50.3236): 2038 ms.<br />- Javascript (Firefox 3.7a1 20100121 x64): 2148 ms.<br />- Javascript (Firefox 3.7a1 20100121 x86): 2192 ms.<br /><b>- Actionscript (Flash 10): 3586 ms.</b><br />- VBScript (Internet Explorer 8.0.7600.16385 x64): 5810  ms.<br />- VBScript (Internet Explorer 8.0.7600.16385 x86): 8080  ms.<br />- Javascript (Internet Explorer 8.0.7600.16385 x64): 8140 ms.<br />- Javascript (Internet Explorer 8.0.7600.16385 x86): 9230 ms.<br /><br />Observamos, que el rendimiento, no es en absoluto parejo, y Flash 10 se muestra alrededor de 2 veces más lento que Firefox en cuanto a desempeño. Personalmente una gran sorpresa para mi, que he vivido en mis propias carnes las grandes mejoras de velocidad con la VM de AS3 comparada con la anterior de AS2.<br /><br />Debemos aclarar que como cualquier benchmark sintético, puede no ser representativo de la realidad, aunque si que debe dar una idea clara de la velocidad a la que uno y otro pueden realizar cálculos puros. Ello no quiere decir que otras funcionalidades, en particular dibujo en pantalla, etc, puedan ser más eficientes en ActionScript 3 que en Javascript, aunque en todo caso, eso sería parte de un futuro artículo.<br /><br />Puedes probarlo tu mismo descargando todostodos los fuentes <a href="http://guti.bitacoras.com/images/10/02/flash_no_tan_rapido.zip"  >aquí (6 Kb. en formato ZIP)</a>.]]></content:encoded>
		</item>
	</channel>
</rss>
