<?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>mifergo</title>
	<atom:link href="http://www.mifergo.es/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.mifergo.es</link>
	<description>Miguel Ángel Fernández Gómez</description>
	<lastBuildDate>Fri, 02 Dec 2011 09:38:58 +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>Qué es la prima riesgo</title>
		<link>http://www.mifergo.es/2011/12/que-es-la-prima-riesgo/</link>
		<comments>http://www.mifergo.es/2011/12/que-es-la-prima-riesgo/#comments</comments>
		<pubDate>Fri, 02 Dec 2011 09:38:58 +0000</pubDate>
		<dc:creator>mifergo</dc:creator>
				<category><![CDATA[Economía]]></category>
		<category><![CDATA[bono del tesoro]]></category>
		<category><![CDATA[letras del tesoro]]></category>
		<category><![CDATA[prima de riesgo]]></category>

		<guid isPermaLink="false">http://www.mifergo.es/?p=386</guid>
		<description><![CDATA[Estamos hartos de oir este concepto y muchos no tienen claro qué es. Voy a intentar explicarlo de una forma sencilla.
La prima de riesgo de un país, es la diferencia del tipo de interés que se paga por prestarle dinero a un estado en comparación con el país referencia que tendrá el tipo de interés [...]]]></description>
			<content:encoded><![CDATA[<p>Estamos hartos de oir este concepto y muchos no tienen claro qué es. Voy a intentar explicarlo de una forma sencilla.</p>
<p>La prima de riesgo de un país, es la diferencia del tipo de interés que se paga por prestarle dinero a un estado en comparación con el país referencia que tendrá el tipo de interés más bajo dentro de la Comunidad Europea, o sea, Alemania.</p>
<p>El dinero que presta el estado, se hace mediante subasta. Habréis oido hablar de Letras y Bonos del Tesoro. Pues es esto. Todo el mundo tiene acceso a invertir en estas subastas. Podéis hacerlo incluso por internet en <a href="http://www.tesoro.es" target="_blank">www.tesoro.es</a> (para España).</p>
<p>Entonces, los inversores, cuando prestan su dinero a Alemania, por ejemplo, saben que van a tener poca rentabilidad (ahora un 2,17%) a cambio de que se fían de que Alemania les van a devolver el dinero sin problemas.</p>
<p>En cambio, si se fían menos de otro Estado de otro país, por ejemplo España, exigen que les pague más intereses, si no, no estás dispuestos a arriesgar su dinero. A España se le exige casi un 5,73% para el mismo tipo de inversión: bono a 10 años.</p>
<p>La diferencia del tipo de interés que te da el bono español (5,73%) y el alemán (2,17%) nos da <strong>la prima de riesgo</strong>: (573-217=<strong>357</strong>). Los puntos es la unidad mínima en que puede variar el tipo de interés, o sea 0,01%, por eso se miden como 357 puntos, y no 3,57.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mifergo.es/2011/12/que-es-la-prima-riesgo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scrum</title>
		<link>http://www.mifergo.es/2011/10/scrum/</link>
		<comments>http://www.mifergo.es/2011/10/scrum/#comments</comments>
		<pubDate>Tue, 11 Oct 2011 11:14:34 +0000</pubDate>
		<dc:creator>mifergo</dc:creator>
				<category><![CDATA[Informática]]></category>
		<category><![CDATA[ágil]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[backlog]]></category>
		<category><![CDATA[burn down]]></category>
		<category><![CDATA[Burndown chart]]></category>
		<category><![CDATA[daily scrum]]></category>
		<category><![CDATA[flexibilidad]]></category>
		<category><![CDATA[gráfica burn-down]]></category>
		<category><![CDATA[gráfica burndown]]></category>
		<category><![CDATA[intervalo]]></category>
		<category><![CDATA[iteración]]></category>
		<category><![CDATA[pila]]></category>
		<category><![CDATA[pila de producto]]></category>
		<category><![CDATA[pila de sprint]]></category>
		<category><![CDATA[planificación]]></category>
		<category><![CDATA[Product Backlog]]></category>
		<category><![CDATA[product owner]]></category>
		<category><![CDATA[producto]]></category>
		<category><![CDATA[reuniones]]></category>
		<category><![CDATA[scrum]]></category>
		<category><![CDATA[Scrum diario]]></category>
		<category><![CDATA[scrum master]]></category>
		<category><![CDATA[scrum meeting]]></category>
		<category><![CDATA[sprint]]></category>
		<category><![CDATA[Sprint Backlog]]></category>

		<guid isPermaLink="false">http://www.mifergo.es/?p=265</guid>
		<description><![CDATA[Introducción
Scrum es un proceso ágil que nos permite centrarnos en ofrecer el mayor valor de negocio en el menor tiempo.
Scrum es&#8230;

Simple y minimalista
Un marco de trabajo para la gestión de proyectos
Soporta los valores y principios en el Manifiesto Agile
Un planteamiento eficaz para gestionar la complejidad y el cambio
Capacidad de adaptación para requisitos cambiantes o poco [...]]]></description>
			<content:encoded><![CDATA[<h2>Introducción</h2>
<p>Scrum es un proceso ágil que nos permite centrarnos en ofrecer el mayor valor de negocio en el menor tiempo.</p>
<p>Scrum es&#8230;</p>
<ul>
<li>Simple y minimalista</li>
<li>Un marco de trabajo para la gestión de proyectos</li>
<li>Soporta los valores y principios en el Manifiesto Agile</li>
<li>Un planteamiento eficaz para gestionar la complejidad y el cambio</li>
<li>Capacidad de adaptación para requisitos cambiantes o poco claros</li>
<li>&#8220;Agile&#8221; en la naturaleza y la práctica</li>
<li>Basado en el sentido común (pragmático)</li>
<li>Menos documentación (&#8221;pocos y valiosos&#8221;)</li>
<li>Liberar el producto pronto y a menudo (maximizar el ROI)</li>
<li>Evita el caos, balanceando entre adaptación y la anticipación</li>
<li>Promueve la comunicación frecuente y eficaz de los equipos</li>
<li>Orientado al compromiso, la confianza y la responsabilidad</li>
<li>Alienta a la difusión de conocimientos, la comprensión y la innovación</li>
<li>Visibilidad diaria de los progresos y los obstáculos</li>
<li><strong>Un cambio de paradigma</strong></li>
</ul>
<p>¿Por qué usar Scrum?</p>
<ul>
<li>Aumento de la productividad
<ul>
<li>Según Rico (2008) con Scrum se aumenta la productividad entre un 14% y un 384% (88% de media).</li>
<li>Según Mah (2008) los proyectos Agile son un 16% más productivos.</li>
</ul>
</li>
<li>Reducción de coste
<ul>
<li> Según Rico (2008) la redución del coste fue desde el 10% al 70% (26% de media), gracias a reducir el re-trabajo.</li>
</ul>
</li>
<li>Aumenta el nivel de compromiso y la satisfación del empleado</li>
<li>Reducción de las fechas de salida al mercado
<ul>
<li>Según Mah (2008) los productos de proyectos Agile salen un 37% antes que la media industrial.</li>
</ul>
</li>
<li>Aumenta el nivel de satisfacción de los interesados (clientes)</li>
<li>Mayor calidad y mejora continua.</li>
</ul>
<p>Resumen</p>
<ul>
<li>Scrum es un proceso ágil que nos permite centrarnos en ofrecer el mayor valor de negocio en el menor tiempo.</li>
<li>Scrum nos permite rápida y repetidamente inspeccionar el software en el que se está trabajando actualmente (cada 1-4 semanas)</li>
<li>El negocio fija las prioridades. Los equipos se auto-organizan para determinar la mejor manera de desarrollar las funcionalidades con más prioridad.</li>
<li>En intervalos regulares (de 1 semana a 1 mes), cualquiera puede ver el software en el que se está trabajando y decidir entregarlo como está  o continuar para mejorarlo en el siguiente Sprint.</li>
</ul>
<p>Valores Scrum</p>
<ul>
<li>Compromiso</li>
<li>Foco</li>
<li>Abierto</li>
<li>Respeto</li>
<li>Coraje</li>
</ul>
<div class="wp-caption alignnone" style="width: 558px"><img class="  " title="Scrum" src="http://www.mifergo.es/images/scrum.JPG" alt="Esquema de Scrum" width="548" height="309" /><p class="wp-caption-text">Esquema de Scrum</p></div>
<h2>Los elementos</h2>
<h4>Pila de Producto (Product Backlog)</h4>
<p>La pila de producto es el corazón de <em>Scrum</em>. Es donde empieza todo. La pila de producto es, básicamente, una lista priorizada de requisitos, o historias, o funcionalidades, o lo que sea. Cosas que el cliente quiere, descritas usando la terminología del cliente. Llamamos a esto <em>historias</em>, o a veces simplemente <em>elementos de la Pila</em>.</p>
<p>Es el inventario de funcionalidades, mejoras, tecnología y corrección de errores que deben incorporarse al producto a través de las sucesivas iteraciones de desarrollo. Representa todo aquello que esperan los clientes, usuarios, y en general los interesados en el producto.</p>
<p>Todo lo que suponga un trabajo que debe realizar el equipo tiene que estar reflejado en la pila de producto.</p>
<p>A diferencia de un documento de requisitos del sistema, la pila de producto nunca se da por completo; está en continuo crecimiento y evolución.</p>
<p>Para comenzar el desarrollo se necesita una visión de los objetivos que se quieren conseguir con el producto, comprendida y conocida por todo el equipo, y elementos suficientes en la pila de producto para llevar a cabo el primer sprint.</p>
<p>Es recomendable el formato de lista que incluya al menos la siguiente información para cada línea:</p>
<ul>
<li>Identificador único de la funcionalidad o trabajo.</li>
<li>Descripción de la funcionalidad.</li>
<li>Prioridad.</li>
<li>Estimación.</li>
</ul>
<p>Dependiendo del tipo de proyecto, funcionamiento del equipo y la organización, pueden resultar aconsejables otros campos:</p>
<ul>
<li>Observaciones</li>
<li>Criterio de validación</li>
<li>Persona asignada</li>
<li>Número de <em>sprint</em> o iteración en el que se realiza</li>
<li>Módulo del sistema al que pertenece</li>
<li>Etc.</li>
</ul>
<h4>Sprint (Iteración)</h4>
<p>Cada iteración se programa mediante un intervalo de tiempo fijo para realizar una parte del producto (el intervalo) con garantías para que no haya distracciones al equipo de desarrollo y por otra parte que permita flexibilidad para adaptarse a cambios en los requisitos. Es lo que se llama “<em>Sprint</em>”.</p>
<p>El objetivo de un <em>sprint</em> debe ser entregar una parte del producto con ciertas funcionalidades que el cliente puede probar. De esta manera se implica al cliente en el desarrollo del producto, pudiendo este comprobar que lo que se está haciendo es lo que ha pedido además de comprender las dificultades que va teniendo el equipo a lo largo de la vida del proyecto.</p>
<p>Los sprints cortos les gustan a los clientes, porque pueden ir probando funcionalidades que se van acabando y dar su opinión al respecto.</p>
<p>Los sprints largos le gustan al equipo de desarrollo, pues así tiene más autonomía y menos cambios.</p>
<p>Se toma una duración compromiso entre el cliente y el equipo de desarrollo de tal manera que se consiga un equilibrio entre el trabajo realizado y la adaptabilidad al cambio. Suele ser entre 2 y 6 semanas.</p>
<p>Manteniendo la misma duración conseguimos un latido corporativo al que todo el mundo se acostumbra confortablemente.</p>
<h4>Pila del Sprint (Sprint Backlog)</h4>
<p>La pila del Sprint es la lista de tareas que se van a realizar en una iteración. Es la especificación de los requisitos de software necesarios para dar respuesta a las funcionalidades esperadas por el cliente.</p>
<p>Es la lista que descompone las funcionalidades de la pila de producto en las tareas necesarias para construir un incremento: una parte completa y operativa del producto.</p>
<p>En la pila del <em>sprint</em> se asigna a cada tarea la persona que la va a llevar a cabo, y se indica el tiempo de trabajo que se estima, aún falta para terminarla.</p>
<p>Es útil porque descompone el proyecto en tareas de tamaño adecuado para determinar el avance a diario; e identificar riesgos y problemas sin necesidad de procesos complejos de gestión.</p>
<h4>El Incremento</h4>
<p>El incremento es la parte de producto producida en una iteración, y tiene como característica que está completamente terminada y operativa: en condiciones de ser entregada al cliente final.</p>
<p>El incremento debe estar terminado y probado. Si el proyecto o el sistema requiere documentación, o procesos de validación y verificación documentados, o con niveles de independencia que implican procesos con terceros, éstos también tienen que estar realizados para considerar que el producto está “terminado”.</p>
<h2>Las reuniones</h2>
<h4>La planificación de la Iteración</h4>
<p>La planificación de la iteración es una reunión crítica, probablemente la más importante de <em>Scrum</em>.</p>
<p>Una planificación mal ejecutada puede arruinar por completo toda la iteración.</p>
<p>El propósito de la planificación de la iteración es proporcionar al equipo suficiente información como para que puedan trabajar en paz y sin interrupciones durante unas pocas semanas, y para ofrecer al dueño de Producto suficiente confianza como para permitírselo.</p>
<p>En esta reunión, tomando como base las prioridades y necesidades de negocio del cliente, se determinan cuáles y cómo van a ser las funcionalidades que se van a incorporar al producto con la próximo iteración.</p>
<p>En realidad esta reunión consiste en dos: En la primera, que puede tener una duración de una a cuatro horas, se decide qué elementos de la pila de producto se van a desarrollar. En la segunda se desglosan éstos para determinar las tareas necesarias, estimar el esfuerzo que necesita cada una y asignarlas a las personas del equipo.</p>
<p>La planificación de la iteración no debe durar más de un día.</p>
<h4>Seguimiento de la Iteración (Daily Scrum)</h4>
<p>Es una breve reunión diaria para dar repaso al avance de cada tarea, y al trabajo previsto para la jornada. Cada miembro del equipo responde a las siguientes preguntas:</p>
<ol>
<li>Trabajo realizado desde la reunión anterior</li>
<li>Trabajo que se va a realizar hasta la próxima reunión</li>
<li>Impedimentos que se deben solventar para que pueda realizar el trabajo.</li>
</ol>
<h4>Revisión de la Iteración</h4>
<p>Permite realizar el análisis y revisión del incremento generado. Esta reunión no debe tomarse como un “acontecimiento especial”, sino como la presentación normal de los resultados.</p>
<h2>Los roles</h2>
<p>Se destacan tres roles imporantes:</p>
<h4>El dueño del producto (Product owner)</h4>
<p>En el proyecto hay una persona, y sólo una, conocedora del entorno de negocio del cliente y de la visión del producto. Representa a todos los interesados en el producto final y es el responsable de la pila de producto.</p>
<h4>El equipo</h4>
<p>Todo el equipo de desarrollo, incluido el propietario del producto conoce la metodología <em>Scrum</em>, y son los auténticos responsables del resultado.</p>
<p>Es un equipo multidisciplinar que cubre todas las habilidades necesarias para generar el resultado.</p>
<p>Se auto-gestiona y auto-organiza, y dispone de atribuciones suficientes en la organización para tomar decisiones sobre cómo realizar su trabajo.</p>
<h4>Scrum Master</h4>
<p>En él recae la responsabilidad de funcionamiento del modelo.</p>
<p>La organización debe garantizar el funcionamiento de los procesos y metodologías que emplea, y en este aspecto <em>Scrum</em> no es una excepción.</p>
<h2>Gráfica Burndown</h2>
<div class="wp-caption alignnone" style="width: 540px"><img class="  " title="Burndown" src="http://www.mifergo.es/images/burn-down.JPG" alt="Gráfica Burndown" width="530" height="355" /><p class="wp-caption-text">Gráfica Burndown</p></div>
<p>Es una herramienta de seguimiento para el equipo, que muestra el avance del sprint día a día y revela de forma temprana posibles desviaciones.</p>
<p>Es un gráfico cartesiano que representa en el eje de abscisas los días laborables del sprint, y en el de coordenadas, la cantidad de esfuerzo estimada. Ver figura 4.</p>
<p>Primero, se traza una recta punteada que parte desde el día 1 del <em>sprint</em> con la cantidad de esfuerzo de todas las tareas estimadas y planificadas para es <em>sprint</em> y llega hasta el última día del <em>sprint</em> con una cantidad de esfuerzo 0. Esta línea es la evolución ideal del estado del proyecto.</p>
<p>Después, en la reunión diaria cada miembro del equipo al referirse al trabajo que realizó ayer, y el que tiene previsto hacer hoy, actualiza en la pila del <em>sprint</em>: si ha terminado alguna de las tareas en las que ha trabajado, o actualiza cuánto esfuerzo estima que le queda en cada una de las tareas que tiene asignadas. Se va trazando día a día la línea del estado del proyecto, según esta información.</p>
<p>De esta forma al final de la reunión la columna del día del sprint, muestra el esfuerzo que según el equipo falta para terminar sus tareas, y el equipo marca en el gráfico el punto que tiene como ordenada ese valor, y como abscisa la fecha del día.</p>
<p>Si la línea de estado del proyecto diverge de la ideal hacia encima, quiere decir que hay problemas y habrá tareas de la pila del sprint que no se podrán realizar. Sin embargo, si la línea diverge de la ideal hacia abajo, quiere decir que el equipo es capaz de desarrollar más trabajo y si no se aumenta la pila del sprint, se quedarán sin trabajo.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mifergo.es/2011/10/scrum/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Metodologías ágiles</title>
		<link>http://www.mifergo.es/2011/09/metodologias-agiles/</link>
		<comments>http://www.mifergo.es/2011/09/metodologias-agiles/#comments</comments>
		<pubDate>Thu, 29 Sep 2011 08:45:37 +0000</pubDate>
		<dc:creator>mifergo</dc:creator>
				<category><![CDATA[Informática]]></category>
		<category><![CDATA[CMM]]></category>
		<category><![CDATA[DSDM]]></category>
		<category><![CDATA[Extreme Programming]]></category>
		<category><![CDATA[integración continua]]></category>
		<category><![CDATA[manifiesto ágil]]></category>
		<category><![CDATA[metodologías ágiles]]></category>
		<category><![CDATA[Pair programming]]></category>
		<category><![CDATA[scrum]]></category>
		<category><![CDATA[TDD]]></category>
		<category><![CDATA[Test Driven Development]]></category>
		<category><![CDATA[XP]]></category>

		<guid isPermaLink="false">http://www.mifergo.es/?p=370</guid>
		<description><![CDATA[Seguidamente se describen brevemente algunas de las metodologías ágiles:
DSDM
Es la metodología más veterana de las auto-denominadas ágiles. Surgió en 1994 de los trabajos de Jennifer Stapleton, la actual directora del DSDM Consortium.
DSDM es la metodología ágil más próxima a los métodos formales; de hecho la implantación de un modelo DSDM en una organización le permite [...]]]></description>
			<content:encoded><![CDATA[<p>Seguidamente se describen brevemente algunas de las metodologías ágiles:</p>
<h2>DSDM</h2>
<p>Es la metodología más veterana de las auto-denominadas ágiles. Surgió en 1994 de los trabajos de Jennifer Stapleton, la actual directora del DSDM Consortium.</p>
<p>DSDM es la metodología ágil más próxima a los métodos formales; de hecho la implantación de un modelo DSDM en una organización le permite alcanzar lo que CMM consideraría un nivel 2 de madurez. Sin embargo los aspectos que DSDM reprocha a CMM son:</p>
<ul>
<li>Aunque es cierto que se ha desarrollado con éxito en algunas organizaciones, lo que funciona bien en unos entornos no tiene por qué servir para todos.</li>
<li>CMM no le da al diseño la importancia que debería tener.</li>
<li>CMM plantea un foco excesivo en los procesos, olvidando la importancia que en nuestra industria tiene el talento de las personas.</li>
<li>El tener procesos claramente definidos no es sinónimo de tener buenos procesos.</li>
</ul>
<h2>Extreme Programming (XP)</h2>
<p>Ó programación extrema. Es la metodología ágil más popular, y posiblemente también la más transgresora de la ortodoxia basada en procesos. Su creador fue Kent Beck, impulsor del Manifiesto Ágil.</p>
<p><em>Extreme Programming (XP)</em> se yergue sobre la suposición de que es posible obtener software de gran calidad a pesar, o incluso como consecuencia del cambio continuo. Su principal asunción es que con un poco de planificación, un poco de codificación y unas pocas pruebas, se puede decidir si se está siguiendo un camino acertado o equivocado, evitando tener que echar marcha atrás demasiado tarde.</p>
<p>Prácticas destacables de este modelo son:</p>
<p><strong>Programación en parejas</strong> ó “<em>Pair Programming</em>”: para desarrollos complejos este modelo aconseja que dos desarrolladores se sienten juntos y programen conjuntamente. Cuando dos personas trabajan en lo mismo, se discuten ideas, se corrigen errores y como resultado se obtiene un código más robusto y elegante, con lo que conlleva un aumento de productividad.</p>
<p><strong>Desarrollo Orientado a Pruebas </strong>ó<strong> </strong>“<em>Test Driven Development (TDD)</em>” o: Se trata de programar antes la prueba que la funcionalidad en sí. Con esto, el desarrollador realiza el código de manera que no va a fallar, aumentando la calidad de lo entregado.</p>
<p><strong>Integración continua</strong>: cada vez que se realice un cambio hay generar una versión que se pueda probar o incluso entregar. Si hay algo mal, la integración fallará y se podrá corregir al momento.</p>
<h2>Scrum</h2>
<p>Aunque surgió como modelo en el desarrollo de productos tecnológicos, sus principios son válidos para entornos que trabajan con requisitos inestables, y necesitan agilidad: situaciones frecuentes en el desarrollo de determinados sistemas de software. Jeff Sutherland aplicó los principios de los campos de Scrum al desarrollo de software en 1993 en Easel Corporation (Empresa que en los macro-juegos de compras y fusiones se integraría en VMARK, luego en Informix y finalmente en Ascential Software Corporation). En 1996 presentó junto con Ken Schwaber, las prácticas que empleaba como válidas para gestionar el desarrollo de software OOPSLA 96 (Schwaber &amp; Sutherland, 1996).</p>
<h2>Otros modelos o prácticas ágiles</h2>
<p>Además de las mencionadas, destacan otras como:</p>
<ul>
<li>Crystal: <em>Adaptative Software Development</em> (ASD) ó Desarrollo de Software Adaptativo.</li>
<li><em>Pragmatic Programming</em> (PP) ó Programación pragmatica.</li>
<li><em>Agile Modeling</em> (AM) ó Modelado Ágil.</li>
<li><em>Feature Driven Development</em> (FDD) ó Desarrollo Orientado a Funcionalidad.</li>
<li>Etc.</li>
</ul>
<p>Estas metodologías ágiles no deben considerarse como modelos de procesos completos. Cada metodología ágil surge de la difusión de una o unas “buenas prácticas” diseñada y utilizada con éxito por su autor, y contrastado éste también por los equipos que la van incorporando.</p>
<p>Por eso, en cada caso, son conjuntos de prácticas focalizadas sobre un área de conocimiento, más o menos delimitado, de la Ingeniería del Software. Las prácticas de <em>Agile Modeling</em> cubren básicamente tareas técnicas de diseño, las de <em>Scrum</em> diseñadas por Sutherland y Schwaber se centran en la gestión del desarrollo, <em>Extreme Programming</em> cubre las actividades que desde el plano completo de la ISO 12207 pertenecería al desarrollo, etc.</p>
<p>Por esta razón es frecuente combinar varias de estas prácticas (ej. XP + <em>Scrum</em> + FDD) para dar cobertura ágil a un ámbito más amplio del ciclo de vida.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mifergo.es/2011/09/metodologias-agiles/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Alimentación saludable</title>
		<link>http://www.mifergo.es/2011/05/alimentacion-saludable/</link>
		<comments>http://www.mifergo.es/2011/05/alimentacion-saludable/#comments</comments>
		<pubDate>Thu, 19 May 2011 18:20:12 +0000</pubDate>
		<dc:creator>mifergo</dc:creator>
				<category><![CDATA[Salud]]></category>
		<category><![CDATA[alimentación]]></category>
		<category><![CDATA[alimentación saludable]]></category>
		<category><![CDATA[comida]]></category>
		<category><![CDATA[consejos]]></category>
		<category><![CDATA[dieta]]></category>
		<category><![CDATA[errores]]></category>
		<category><![CDATA[saludable]]></category>

		<guid isPermaLink="false">http://www.mifergo.es/?p=356</guid>
		<description><![CDATA[Consejos:

Utilice aceite de oliva
Manténgase hidratado bebiendo agua abundante
Evite largos períodos en ayunas&#8230; haga 5 o 6 comidas diarias
Consuma 2 ó 3 piezas de fruta al día
Consuma  legumbres habitualmente
Consuma pescado regularmente
Elija carnes blancas en lugar de rojas
Consuma cereales integrales
Modere el consumo de sal
Reduzca el consumo de azúcar y dulces
Modere el consumo de bebidas alcohólicas o estimulantes
Huya [...]]]></description>
			<content:encoded><![CDATA[<h2>Consejos:</h2>
<ul>
<li>Utilice aceite de oliva</li>
<li>Manténgase hidratado bebiendo agua abundante</li>
<li>Evite largos períodos en ayunas&#8230; haga 5 o 6 comidas diarias</li>
<li>Consuma 2 ó 3 piezas de fruta al día</li>
<li>Consuma  legumbres habitualmente</li>
<li>Consuma pescado regularmente</li>
<li>Elija carnes blancas en lugar de rojas</li>
<li>Consuma cereales integrales</li>
<li>Modere el consumo de sal</li>
<li>Reduzca el consumo de azúcar y dulces</li>
<li>Modere el consumo de bebidas alcohólicas o estimulantes</li>
<li>Huya de alimentos con grasas añadidas (bollería, alimentos precocinados, etc)</li>
</ul>
<h2>Errores más comunes en la dieta:</h2>
<ul>
<li>No desayunar</li>
<li>Desayunar poco y desequilibrado</li>
<li>Sustitución de comidas por &#8220;snacks&#8221;</li>
<li>Exceso de de azúcares y productos azucarados</li>
<li>Abuso de alimentos fritos y salados</li>
<li>Saltarse alguna comida</li>
<li>Consumo regular de refrescos</li>
<li>Intervalo entre comidas de más de 3 horas y media</li>
<li>Cenar demasiado</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.mifergo.es/2011/05/alimentacion-saludable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pasos de cebra</title>
		<link>http://www.mifergo.es/2011/03/pasos-de-cebra/</link>
		<comments>http://www.mifergo.es/2011/03/pasos-de-cebra/#comments</comments>
		<pubDate>Thu, 24 Mar 2011 12:07:35 +0000</pubDate>
		<dc:creator>mifergo</dc:creator>
				<category><![CDATA[Opinión]]></category>
		<category><![CDATA[acera]]></category>
		<category><![CDATA[atropellar]]></category>
		<category><![CDATA[atropello]]></category>
		<category><![CDATA[cebra]]></category>
		<category><![CDATA[León]]></category>
		<category><![CDATA[paso de cebra]]></category>
		<category><![CDATA[pasos]]></category>
		<category><![CDATA[señal]]></category>
		<category><![CDATA[señales]]></category>

		<guid isPermaLink="false">http://www.mifergo.es/?p=317</guid>
		<description><![CDATA[Últimamente me estaba dando cuenta que me costaba un montón ver a peatones cuando iban a pasar pasos de cebra. Eso que iba bien lento, a unos 30 km/h siempre daba algún frenazo brusco porque no había visto a un peatón.
Después de estar en Madrid, por fin me he dado cuenta por qué era esto.
Un [...]]]></description>
			<content:encoded><![CDATA[<p>Últimamente me estaba dando cuenta que me costaba un montón ver a peatones cuando iban a pasar pasos de cebra. Eso que iba bien lento, a unos 30 km/h siempre daba algún frenazo brusco porque no había visto a un peatón.</p>
<p>Después de estar en Madrid, por fin me he dado cuenta por qué era esto.</p>
<p>Un buen paso de cebra:</p>
<div class="wp-caption alignnone" style="width: 573px"><img class="   " title="Paso de cebra correcto" src="http://www.mifergo.es/images/paso_bien_2.JPG" alt="Paso de cebra correcto" width="563" height="289" /><p class="wp-caption-text">Paso de cebra correcto</p></div>
<p>Desde lejos, ya podemos ver a un peatón esperando en el paso de cebra</p>
<p>Si nos acercamos más:</p>
<div class="wp-caption alignnone" style="width: 568px"><img class="  " title="Paso de cebra correcto" src="http://www.mifergo.es/images/paso_bien_3.JPG" alt="Acercandome a un paso de cebra correcto" width="558" height="285" /><p class="wp-caption-text">Acercandome a un paso de cebra correcto</p></div>
<p>Me quedan 10 metros y se perfectamente que debo dejar pasar al peatón.</p>
<div class="wp-caption alignnone" style="width: 568px"><img class="  " title="Buen paso de cebra - detalle" src="http://www.mifergo.es/images/paso_bien_4.JPG" alt="Detalle" width="558" height="285" /><p class="wp-caption-text">Detalle</p></div>
<p>Como vemos, el paso de cebra empieza delante de los coches aparcados.</p>
<p>Además, está señalizado a cada lado.</p>
<p>El peatón es plénamente visible a 10 metros. Paramos para que pase.</p>
<div class="wp-caption alignnone" style="width: 568px"><img class="   " title="Peaon" src="http://www.mifergo.es/images/paso_bien_5.JPG" alt="El peatón pasa" width="558" height="285" /><p class="wp-caption-text">El peatón pasa</p></div>
<p>Ahora veamos ejemplos de pasos de cebra faltamente hechos o diseñados:</p>
<div class="wp-caption alignnone" style="width: 565px"><img class="  " title="Paso de cebra malo" src="http://www.mifergo.es/images/paso_mal_1.JPG" alt="Paso de cebra malo" width="555" height="296" /><p class="wp-caption-text">Paso de cebra malo</p></div>
<p>Increíble, ¿no es cierto? Todo está mal:</p>
<div class="wp-caption alignnone" style="width: 565px"><img class="  " title="Paso de cebra malo 2" src="http://www.mifergo.es/images/paso_mal_2.JPG" alt="Paso de cebra malo (detalle)" width="555" height="296" /><p class="wp-caption-text">Paso de cebra malo (detalle)</p></div>
<p>1. Nos plantan unos buenos contenedores delante del paso de cebra.</p>
<p>2. No hay más señales indicando el paso de cebra.</p>
<p>3. La acera no está adelantada para el que el paso empiece por delante de los contenedores.</p>
<p>Conclusión: parece que han hecho el paso de cebra adrede para atropellar gente y llevarlos al Centro de Salud de enfrente.</p>
<p>Más ejemplos:</p>
<div class="wp-caption alignnone" style="width: 558px"><img class="  " title="Paso de cebra malo" src="http://www.mifergo.es/images/paso_mal_3.JPG" alt="Paso de cebra malo" width="548" height="277" /><p class="wp-caption-text">Paso de cebra malo</p></div>
<p>Lo permitir aparcar en esquinas debería estar penado por ley.</p>
<div class="wp-caption alignnone" style="width: 565px"><img class="  " title="Paso de cebra malo" src="http://www.mifergo.es/images/paso_mal_4.JPG" alt="Paso de cebra malo" width="555" height="278" /><p class="wp-caption-text">Paso de cebra malo</p></div>
<p>Ahí detrás hay un paso de cebra.</p>
<div class="wp-caption alignnone" style="width: 553px"><img class="  " title="Paso de cebra malo" src="http://www.mifergo.es/images/paso_mal_5.JPG" alt="Paso de cebra malo" width="543" height="273" /><p class="wp-caption-text">Paso de cebra malo</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.mifergo.es/2011/03/pasos-de-cebra/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ruby On Rails: ActiveRecord</title>
		<link>http://www.mifergo.es/2011/02/ruby-on-rails-activerecord/</link>
		<comments>http://www.mifergo.es/2011/02/ruby-on-rails-activerecord/#comments</comments>
		<pubDate>Sat, 19 Feb 2011 19:28:50 +0000</pubDate>
		<dc:creator>mifergo</dc:creator>
				<category><![CDATA[Informática]]></category>
		<category><![CDATA[:conditions]]></category>
		<category><![CDATA[:group]]></category>
		<category><![CDATA[:limit]]></category>
		<category><![CDATA[:offset]]></category>
		<category><![CDATA[:order]]></category>
		<category><![CDATA[:select]]></category>
		<category><![CDATA[ActiveRecord]]></category>
		<category><![CDATA[ActiveRecord::Base]]></category>
		<category><![CDATA[create]]></category>
		<category><![CDATA[CRUD]]></category>
		<category><![CDATA[find]]></category>
		<category><![CDATA[new]]></category>
		<category><![CDATA[ORM]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[save]]></category>
		<category><![CDATA[set_table_name]]></category>

		<guid isPermaLink="false">http://www.mifergo.es/?p=298</guid>
		<description><![CDATA[ActiveRecord es la capa de Rails para realizar el mapeo objeto relacional (object-relational mapping ORM).
El stándar del modelo ORM dice que las tablas se mapean a clases, las filas a objetos y las columnas a atributos de los objetos.
Cuando heredamos de la clase ActiveRecord::Base estamos diciendo a la clase que mapea una tabla.
Por defecto Rails [...]]]></description>
			<content:encoded><![CDATA[<p>ActiveRecord es la capa de Rails para realizar el mapeo objeto relacional (object-relational mapping ORM).</p>
<p>El stándar del modelo ORM dice que las tablas se mapean a clases, las filas a objetos y las columnas a atributos de los objetos.<br />
Cuando heredamos de la clase ActiveRecord::Base estamos diciendo a la clase que mapea una tabla.</p>
<p>Por defecto Rails asume que el nombre de la tabla es el plural del nombre de la clase y en minúsculas, y si la clase tiene mayúsculas en la palabra, el nombre de la tabla tendrá guiones bajos (&#8221;_&#8221;).</p>
<p><span style="color: #99cc00;">Order =&gt; orders<br />
TaxAgency =&gt; tax_agencies<br />
Person =&gt; people</span></p>
<p>Si no queremos seguir estas reglas, podemos indicar el nombre de la tabla con la que trabajará la clase:</p>
<p><span style="color: #99cc00;">class Ship &lt; ActiveRecord::Base<br />
<strong> set_table_name</strong> &#8220;ship_09&#8243;<br />
end</span></p>
<p>Sin tener que definir los atributos explícitamente, se pueden usar. Se usarán los definidos para esa tabla en la base de datos (ficheros Migration).</p>
<p><span style="color: #99cc00;">o = Order.find(1)<br />
puts o.name                     # imprimiría el campo &#8220;name&#8221; de la tabla &#8220;orders&#8221;<br />
o.name = &#8220;Miguel&#8221;          # cambiaría el campo &#8220;name&#8221; de la tabla &#8220;orders&#8221; con el nuevo valor</span></p>
<p>Para que tuviese efecto el cambio del atributo name en la tabla habría que llamar al método &#8220;<strong>save</strong>&#8220;.</p>
<h2>Claves primarias</h2>
<p>Por defecto, una migración de Rails añade una columna con nombre &#8220;id&#8221; y tipo entero a tu tabla y que es la clave primaria. Pero si tú tienes un campo que será clave primaria, puedes indicarlo:</p>
<p><span style="color: #99cc00;">class Order &lt; ActiveRecord::Base<br />
self.primary_key = &#8220;number&#8221;<br />
end</span></p>
<p>Aunque cambies el campo de la clave primaria, el campo &#8220;id&#8221; siempre indicará la clave primaria. Entonce, en nuestro caso &#8220;id&#8221; y &#8220;number&#8221; es lo mismo.</p>
<p>Lo aconsejable es usar un código interno para la clave primaria y no una referencia externa, ya que estas pueden cambiar.</p>
<p>Rails no trabaja con claves primarias compuestas, aunque existen plug-ins que lo facilitan.</p>
<h2>Crear, Leer, Actualizar, Borrar (en inglés CRUD)</h2>
<h3><strong>Crear</strong></h3>
<p>Cuando se crean objetos, se crean filas en la tabla asociada a la clase. Con el método &#8220;<strong>new</strong>&#8221; se crea el objeto, pero hasta que no se hace &#8220;<strong>save</strong>&#8221; no se guarda en la base de datos.</p>
<p>Existe otro método, &#8220;<strong>create</strong>&#8221; para crear el objeto y guardarlo en la base de datos directamente.</p>
<p><span style="color: #99cc00;">an_order = Order.create(<br />
:name =&gt; &#8220;Pepe&#8221;<br />
:address =&gt; &#8220;Calle ancha 1&#8243;<br />
:payment =&gt; &#8220;card&#8221;)</span></p>
<h3><strong>Leer</strong></h3>
<p>Toda clase modelo tiene el método &#8220;<strong>find</strong>&#8220;. Este método puede retornar RecordNotFound si no encuentra ningún objeto, un objeto o una lista de objetos si encuentra uno o varios objetos que cumplan las condiciones de find.</p>
<p>Se le puede decir al método find que busque el primero (<strong>:first</strong>) o todos los objetos (<strong>:all</strong>), pasando estos símbolos como argumentos al método. En Rails 3 directamente existen los métodos &#8220;<strong>first</strong>&#8221; y &#8220;<strong>all</strong>&#8221; para hacer esto.</p>
<p><strong>SQL y ActiveRecord</strong></p>
<p>Para meter código SQL podemos utilizar el parámetros &#8220;<strong>:conditions</strong>&#8220;:</p>
<p><span style="color: #99cc00;">pos = Feature.find(:all, :conditions =&gt; &#8220;name = &#8216;New GUI&#8217; and priority=&#8217;High&#8217;&#8221;)</span></p>
<p>Y si queremos meter variables en el parámetro &#8220;:conditios&#8221; debemos usar una forma que el ActiveRecord nos facilita para que no exista posibilidad de un ataque de <em>inyección SQL</em>, pasándole una lista, donde el primer elemento contiene el formato de la sentencia SQL indicando las posiciones donde irán las variables, y el resto de elementos las variables:</p>
<p><span style="color: #99cc00;">pos = Feature.find(:all, :conditions =&gt; ["name = ? and priority= ?", name, priority])</span></p>
<p>ó</p>
<p><span style="color: #99cc00;">pos = Feature.find(:all, :conditions =&gt; ["name = :name and priority= :priority", {:priority =&gt; priority, :name =&gt; name}])</span></p>
<p>Para el uso de &#8220;<strong>like</strong>&#8220;:</p>
<p><span style="color: #99cc00;">pos = Feature.find(:all, :conditions =&gt; ["name like ?", params[:name]+&#8221;%&#8221;])</span></p>
<p>Si queremos que aparezca el resultado en un orden específico debemos indicarlo con el parámetro&#8221;<strong> <img src='http://www.mifergo.es/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' /> rder</strong>&#8220;.</p>
<p>Si queremos limitar el número de filas de la consulta, lo haremos con el parámetro &#8220;<strong>:limit</strong>&#8220;.</p>
<p><span style="color: #99cc00;">pos = Feature.find(:all, :conditions =&gt; ["name = 'New GUI'",<br />
 <img src='http://www.mifergo.es/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' /> rder =&gt; "priority",<br />
:limit =&gt; 10)</span></p>
<p>Para seguir viendo resultados que han sido limitados con el parámetro ":limit" se usa el parámetro "<strong> <img src='http://www.mifergo.es/wp-includes/images/smilies/icon_surprised.gif' alt=':o' class='wp-smiley' /> ffset</strong>" que indica a partir de que posición se desea el resultado.</p>
<p>Cuando no queremos todos los campos sino sólo algunos, utilizamos el parámetro ":select".</p>
<p>El parámetro ":group" añade la sentencia SQL "group by":</p>
<p><span style="color: #99cc00;">pos = Feature.find(:all, :select =&gt;"sku, sum(pages) as num",<br />
:group =&gt; "sku")</span></p>
<p>...</p>
<p><em><span style="color: #ff0000;">[artículo sin terminar]</span></em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.mifergo.es/2011/02/ruby-on-rails-activerecord/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HP Designjet T2300 eMFP</title>
		<link>http://www.mifergo.es/2010/09/hp-designjet-t2300-emfp/</link>
		<comments>http://www.mifergo.es/2010/09/hp-designjet-t2300-emfp/#comments</comments>
		<pubDate>Thu, 30 Sep 2010 12:19:19 +0000</pubDate>
		<dc:creator>mifergo</dc:creator>
				<category><![CDATA[Informática]]></category>
		<category><![CDATA[Designjet]]></category>
		<category><![CDATA[eMFP]]></category>
		<category><![CDATA[gran formato]]></category>
		<category><![CDATA[HP]]></category>
		<category><![CDATA[impresora]]></category>
		<category><![CDATA[T2300]]></category>

		<guid isPermaLink="false">http://www.mifergo.es/?p=284</guid>
		<description><![CDATA[
El pasado 20 de septiembre se presentó en Nueva York, entre otras novedades de HP, la nueva impresora Designjet T2300 eMFP. La nueva impresora multifuncional conectada a la Web de gran formato.
Esta impresora está dirigida a un público técnico. Los clientes son arquitectos, ingenieros, diseñadores, etc.
Las novedades con las que cuenta esta impresora son:
- pantálla [...]]]></description>
			<content:encoded><![CDATA[<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="560" height="340" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/PR56pNOr1wo?fs=1&amp;hl=en_US&amp;color1=0x3a3a3a&amp;color2=0x999999" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="560" height="340" src="http://www.youtube.com/v/PR56pNOr1wo?fs=1&amp;hl=en_US&amp;color1=0x3a3a3a&amp;color2=0x999999" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>El pasado 20 de septiembre se presentó en Nueva York, entre otras novedades de HP, la nueva impresora Designjet T2300 eMFP. La nueva impresora multifuncional conectada a la Web de gran formato.</p>
<p>Esta impresora está dirigida a un público técnico. Los clientes son arquitectos, ingenieros, diseñadores, etc.</p>
<p>Las novedades con las que cuenta esta impresora son:</p>
<p>- pantálla táctil y color, que permite un uso mucho más sencillo, previsulización, etc.</p>
<p>- USB para leer directamente pendrives</p>
<p>- Scanner incorporado, con lo que podremos escanear y copiar.</p>
<p>- Conexión a la Web, con la que podremos enviar y recibir nuestros documentos hacia o desde la Web.</p>
<p>Por lo tanto, por ejemplo, una empresa de arquitectura que tiene su sede en Inglaterra, los ingenieros de estructura en Alemania, y la obra en Singapur, pueden compartir los planos simultanemamente gracias a esta impresora, ya que se pueden hacer anotaciones sobre un plano, escanearlo, enviarlo a otro lugar y allí volver a imprimirlo con las correccines realizadas por sus colegas del otro lado del mundo.</p>
<p>En definitiva, una nueva manera de trabajar.</p>
<p><object style="height: 340px; width: 560px"><param name="movie" value="http://www.youtube.com/v/0fo-lIvwaqo?version=3"><param name="allowFullScreen" value="true"><param name="allowScriptAccess" value="always"><embed src="http://www.youtube.com/v/0fo-lIvwaqo?version=3" type="application/x-shockwave-flash" allowfullscreen="true" allowScriptAccess="always" width="560" height="340"></object></p>
<div class="wp-caption alignnone" style="width: 504px"><a href="http://www.hp.com/hpinfo/newsroom/press_kits/2010/InnovationSummit/Designjet_T2300_Datasheet.pdf"><img class=" " title="HP Designjet T2300 eMFP" src="http://www.mifergo.es/images/t2300.JPG" alt="Nueva Impresora técnica multifuncional de HP" width="494" height="641" /></a><p class="wp-caption-text">Nueva Impresora técnica multifuncional de HP</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.mifergo.es/2010/09/hp-designjet-t2300-emfp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Abandono de La Lastra</title>
		<link>http://www.mifergo.es/2010/06/abandono-de-la-lastra/</link>
		<comments>http://www.mifergo.es/2010/06/abandono-de-la-lastra/#comments</comments>
		<pubDate>Fri, 18 Jun 2010 12:01:16 +0000</pubDate>
		<dc:creator>mifergo</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[abandono]]></category>
		<category><![CDATA[accidentes]]></category>
		<category><![CDATA[accidentes en la lastra]]></category>
		<category><![CDATA[Ayuntamiento de León]]></category>
		<category><![CDATA[barrio]]></category>
		<category><![CDATA[barrio de la lastra]]></category>
		<category><![CDATA[jardines]]></category>
		<category><![CDATA[La Lastra]]></category>
		<category><![CDATA[Lastra]]></category>
		<category><![CDATA[León]]></category>
		<category><![CDATA[selva]]></category>

		<guid isPermaLink="false">http://www.mifergo.es/?p=253</guid>
		<description><![CDATA[La Lastra es uno de los nuevos barrios del Ayuntamiento de León. Un proyecto serio y magestuoso, con una urbanización moderna que muchas otras ciudades más grandes quisiesen para sí: espacios amplios, grandes zonas peatonales, zonas verdes, de recreo, recogida de basuras de forma neumática, muy buenas comunicaciones, etc.
En principio, un sitio idílico para vivir, [...]]]></description>
			<content:encoded><![CDATA[<p>La Lastra es uno de los nuevos barrios del Ayuntamiento de León. Un proyecto serio y magestuoso, con una urbanización moderna que muchas otras ciudades más grandes quisiesen para sí: espacios amplios, grandes zonas peatonales, zonas verdes, de recreo, recogida de basuras de forma neumática, muy buenas comunicaciones, etc.</p>
<p>En principio, un sitio idílico para vivir, pero el afán de enriquecer las arcas ciega a los necios.</p>
<p>Los suelos se vendieron muy caros, y lo más asombroso: ni una sola promoción de vivienda protegida. ¿esto es legal? ¿por qué la Junta ó Europa (ya no incluyo al Gobierno, K.O. hace mucho) lo permite?</p>
<p>Bueno, siguiendo para alante, llega la crisis&#8230; parón urbanísitco. Muchas constructoras involucradas no inician la construcción, a otras le cuesta un montón vender, porque no quieren comprometer su margen de ganancia. Eso no me importa, si antes han ganado mucho margen, que hubiern ahorrado un poco para ahora poder aguantar las pérdidas. La solución es vender más barato, que por un año que pierdan, no pasa nada, casi todas las empresas tienen pérdidas en los comienzos y en los tiempos de crisis, una empresa no se hace en función de unos resultados de un año. La culpa de que no se vendan los pisos, en parte es porque no rebajan el precio&#8230; ¡más pierden!</p>
<p>Pero bueno, sigamos, además del dinero, ¿por qué la gente no se anima? Cuando preguntas a la gente sobre La Lastra, dicen&#8230; &#8220;buf, está muy lejos&#8221;, &#8220;allí no hay nada&#8221;, etc. Casi todo rebatible. ¿lejos? ¿está más cerca Eras? ¿y la zona del Espacio León?&#8230; <strong>¡no!</strong>. Medir con un plano tomando el centro la plaza de Santo Domingo y lo veréis.</p>
<p>¿Vive poca gente? más o menos. No hay muchos edificios habitados, por lo menos en mayoría, pero en cifras sí es bastante gente. El problema es que al ser un barrio muy grande, los edificios están dispersos, y hay una sensación desocupación. ¿no hay nada?, bueno, no mucho, pero es que teniendo en cuenta que andando se puede ir al Carrefour, Mercadona, Árbol, carnecerías, el Corte Inglés,  etc., todavía hay que esperar a que haya más densidad de población para que un empresario se lance&#8230; el primero tendrá ventaja.</p>
<p>La sensación de abandono de este magnífico barrio viene dada por culpa del Ayuntamiento&#8230; sí. ¿por qué? Mayormente por dos razones:</p>
<p>La primera, ya mencionada antes. No hizo ninguna promoción pública, las cuales se venden antes, y con un mínimo de par de edificios que hubiera de estas características, ya habría 100 vecinos fijos, más o menos 250 habitantes. Esto ayudaría a atraer a más gente que ve ahora deshabitado el barrio.</p>
<p>La segunda, porque tiene abandonado el barrio: no mantiene los jardines, que tanto anunciaron a bombo y platillo. Las pruebas:</p>
<div class="wp-caption alignnone" style="width: 452px"><a href="http://www.mifergo.es/images/Imagen0038.jpg" target="_blank"><img class="    " title="inteco1" src="http://www.mifergo.es/images/Imagen0038.jpg" alt="Malas hierbas y basura detrás del INTECO" width="442" height="332" /></a><p class="wp-caption-text">Malas hierbas y basura detrás del INTECO</p></div>
<div class="wp-caption alignnone" style="width: 452px"><a href="http://www.mifergo.es/images/Imagen0039.jpg" target="_blank"><img class="    " title="inteco2" src="http://www.mifergo.es/images/Imagen0039.jpg" alt="Bosque detras del INTECO" width="442" height="332" /></a><p class="wp-caption-text">Bosque detras del INTECO</p></div>
<div class="wp-caption alignnone" style="width: 452px"><a href="http://www.mifergo.es/images/Imagen0040.jpg" target="_blank"><img class="    " title="lastra1" src="http://www.mifergo.es/images/Imagen0040.jpg" alt="Malas hierbas en el centro de LA LASTRA" width="442" height="332" /></a><p class="wp-caption-text">Malas hierbas en el centro de LA LASTRA</p></div>
<div class="wp-caption alignnone" style="width: 452px"><a href="http://www.mifergo.es/images/Imagen0042.jpg" target="_blank"><img class="    " title="lastra2" src="http://www.mifergo.es/images/Imagen0042.jpg" alt="Crecen las hierbas en el empedrado" width="442" height="332" /></a><p class="wp-caption-text">Crecen las hierbas en el empedrado</p></div>
<div class="wp-caption alignnone" style="width: 452px"><a href="http://www.mifergo.es/images/Imagen0043.jpg" target="_blank"><img class="    " title="lastra3" src="http://www.mifergo.es/images/Imagen0043.jpg" alt="Estan para un premio" width="442" height="332" /></a><p class="wp-caption-text">Estan para un premio</p></div>
<div class="wp-caption alignnone" style="width: 452px"><a href="http://www.mifergo.es/images/Imagen0044.jpg" target="_blank"><img class="    " title="lastra4" src="http://www.mifergo.es/images/Imagen0044.jpg" alt="Bosque o selva" width="442" height="332" /></a><p class="wp-caption-text">bosque o selva</p></div>
<div class="wp-caption alignnone" style="width: 452px"><a href="http://www.mifergo.es/images/Imagen0045.jpg" target="_blank"><img class="    " title="lastra5" src="http://www.mifergo.es/images/Imagen0045.jpg" alt="Selva de LA LASTRA" width="442" height="332" /></a><p class="wp-caption-text">Selva de LA LASTRA</p></div>
<div class="wp-caption alignnone" style="width: 452px"><a href="http://www.mifergo.es/images/Imagen0046.jpg" target="_blank"><img class="    " title="lastra6" src="http://www.mifergo.es/images/Imagen0046.jpg" alt="Que clase de animales habra ahi" width="442" height="332" /></a><p class="wp-caption-text">Que clase de animales habra ahi</p></div>
<div class="wp-caption alignnone" style="width: 452px"><a href="http://www.mifergo.es/images/Imagen0048.jpg" target="_blank"><img class="    " title="lastra7" src="http://www.mifergo.es/images/Imagen0048.jpg" alt="Alguno se puede quedar atrapado al salir del coche" width="442" height="332" /></a><p class="wp-caption-text">Alguno se puede quedar atrapado al salir del coche</p></div>
<div class="wp-caption alignnone" style="width: 452px"><a href="http://www.mifergo.es/images/Imagen0049.jpg" target="_blank"><img class="    " title="lastra8" src="http://www.mifergo.es/images/Imagen0049.jpg" alt="La unica planta que se riega en LA LASTRA" width="442" height="332" /></a><p class="wp-caption-text">La unica planta que se riega en LA LASTRA</p></div>
<div class="wp-caption alignnone" style="width: 452px"><a href="http://www.mifergo.es/images/Imagen0050.jpg" target="_blank"><img class="    " title="lastra9" src="http://www.mifergo.es/images/Imagen0050.jpg" alt="asura y mas hierbas" width="442" height="332" /></a><p class="wp-caption-text">Basura y mas hierbas</p></div>
<p>¿Dónde están los impuestos de los pobres vecinos de La Lastra? ¿ó acaso no pagan?</p>
<p>Y para rematar, gracias al corte a los turismos de un pequeño tramo de la calle Fernández Ladreda, todo el tráfico de una de las principales vias de León pasa por una pequeña calle de La Lastra, originando pequeños y grandes accidentes en el cruce de esta pequeña calle con la prolongación de José Aguado, cruce que no está dimensionado para este nuevo volumen de tráfico&#8230; ah que no lo habían pensado&#8230; pues cuando haya desgracias mayores, ¿sobre qué conciencias caerán?&#8230; ah que nuestros políticos no tienen de eso. Ya.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mifergo.es/2010/06/abandono-de-la-lastra/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Manifiesto Ágil</title>
		<link>http://www.mifergo.es/2010/05/manifiesto-agil/</link>
		<comments>http://www.mifergo.es/2010/05/manifiesto-agil/#comments</comments>
		<pubDate>Thu, 20 May 2010 15:30:38 +0000</pubDate>
		<dc:creator>mifergo</dc:creator>
				<category><![CDATA[Informática]]></category>
		<category><![CDATA[ágil]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[gestión de proyectos]]></category>
		<category><![CDATA[manifiesto]]></category>
		<category><![CDATA[manifiesto ágil]]></category>
		<category><![CDATA[metodología]]></category>
		<category><![CDATA[paradigma]]></category>

		<guid isPermaLink="false">http://www.mifergo.es/?p=234</guid>
		<description><![CDATA[En febrero 2001 hubo una reunión de expertos en la industria del software: nace el término “ágil” aplicado al desarrollo del software.
Objetivos:

Esbozar valores y principios que permitan a los desarrolladores desarrollar software rápidamente y respondiendo a los cambios que puedan surgir a lo largo del proyecto.
Ser alternativa a procesos de desarrollo tradicionales.

Se creó “The Agile [...]]]></description>
			<content:encoded><![CDATA[<p>En febrero 2001 hubo una reunión de expertos en la industria del software: nace el término “ágil” aplicado al desarrollo del software.</p>
<p>Objetivos:</p>
<ul>
<li>Esbozar valores y principios que permitan a los desarrolladores desarrollar software rápidamente y respondiendo a los cambios que puedan surgir a lo largo del proyecto.</li>
<li>Ser alternativa a procesos de desarrollo tradicionales.</li>
</ul>
<p>Se creó “The Agile Alliance”: organización sin ánimo de lucro dedicada a promover los conceptos relacionados con el desarrollo ágil de software y ayudar a las organizaciones para que adopten dichos conceptos.</p>
<h2>Principios del Manifiesto Ágil</h2>
<ol>
<li>La prioridad es satisfacer al cliente mediante tempranas y continuas entregas de software que le aporte un valor.</li>
<li>Dar la bienvenida a los cambios. se capturan los cambios para que el cliente tenga una ventaja competitiva.   3.</li>
<li>Entregar frecuentemente software que funcione desde un par de semanas a un par de meses, con el menor intervalo de tiempo posible entre entregas.</li>
<li>La gente del negocio y los desarrolladores deben trabajar juntos a lo largo del proyecto.</li>
<li>Construir el proyecto en torno a individuos motivados. Darles el entorno y el apoyo que necesitan y confiar en ellos para conseguir finalizar el trabajo.</li>
<li>El diálogo cara a cara es el método más eficiente y efectivo para comunicar información dentro de un equipo de desarrollo.</li>
<li>El software que funciona es la medida principal de progreso.</li>
<li>Los procesos ágiles promueven un desarrollo sostenible. Los promotores, desarrolladores y usuarios deberían ser capaces de mantener una paz constante.</li>
<li>La atención continua a la calidad técnica y al buen diseño mejora la agilidad.</li>
<li>La simplicidad es esencial.</li>
<li>Las mejores arquitecturas, requisitos y diseños surgen de los equipos organizados por sí mismos.</li>
<li>En intervalos regulares, el equipo reflexiona respecto a cómo llegar a ser más efectivo, y según ésto ajusta su comportamiento.</li>
</ol>
<h2>Según el Manifiesto se valora:</h2>
<ul>
<li>Al <strong><span style="color: #ccffff;">individuo y las interaccione</span>s</strong> del equipo de desarrollo sobre el <span style="color: #ffcc99;">proceso y las herramientas</span>. La gente es el principal factor de éxito de un proyecto software. Es más importante construir un buen equipo que construir el entorno. Es mejor crear el equipo y que éste configure su propio entorno de desarrollo en base a sus necesidades.</li>
<li>Desarrollar<span style="color: #ccffff;"> <strong>software que funciona</strong></span> más que conseguir una <span style="color: #ffcc99;">buena documentación</span>. La regla a seguir es &#8220;no producir documentos a menos que sean necesarios de forma inmediata para tomar una decisión importante&#8221;. Estos documentos deben ser cortos y centrarse en lo fundamental.</li>
<li><strong><span style="color: #ccffff;">Responder a los cambios</span></strong><strong> </strong>más que <span style="color: #ffcc99;">seguir estrictamente un plan</span>. La habilidad de responder a los cambios que puedan surgir a lo largo del proyecto (cambios en los requisitos, en la tecnología, en el equipo, etc) determina también éxito o fracaso del mismo. Por lo tanto, la planificación no debe ser estricta sino flexible y abierta.</li>
</ul>
<h2>Desarrollo tradicional vs Desarrollo ágil</h2>
<h3>Desarrollo tradicional:</h3>
<ul>
<li>Inspirados en las ingenierías clásicas</li>
<li>Predictivos y optimizables</li>
<li>Orientados a:
<ul>
<li>La planificación</li>
<li>La documentación del proceso y el producto</li>
</ul>
</li>
<li>Todas las fases tienen elementos de proceso definidos</li>
<li>Los equipos de desarrollo se comportan según las actividades del proceso</li>
</ul>
<h3>Desarrollo ágil:</h3>
<ul>
<li>Procesos adaptativos
<ul>
<li>Pensados para contextos cambiantes (requisitos inestables, cambios tecnológicos, etc)</li>
<li>Basados en reglas generativas</li>
<li>Minimizar la documentación</li>
</ul>
</li>
<li>Asumen que:
<ul>
<li>Los requisitos cambian</li>
<li>Los planes cambian</li>
<li>El diseño es una actividad creativa</li>
<li>La construcción de sw (programación) es una actividad poco costosa</li>
</ul>
</li>
<li>Al ser orientados a personas:</li>
<li>Es necesaria una alta participación y compromiso
<ul>
<li>Las personas participan en el proceso de decisión</li>
<li>Ciclos de vida iterativo o incremental iterativo</li>
</ul>
</li>
</ul>
<table border="1" cellspacing="2" cellpadding="3" width="600">
<colgroup>
<col width="300"></col>
<col width="300"></col>
</colgroup>
<thead>
<tr height="41">
<td><strong>DESARROLLO TRADICIONAL</strong></td>
<td><strong>DESARROLLO ÁGIL</strong></td>
</tr>
</thead>
<tbody>
<tr height="41">
<td>Basadas en normas provenientes de estándares seguidos por el entorno de   desarrollo</td>
<td>Basadas en heurísticas provenientes de buenas prácticas de producción de   código</td>
</tr>
<tr height="41">
<td width="380" height="41">Resistencia a los cambios: Invertir esfuerzo al principio del proyecto   para reducir la probabilidad de tener que realizar cambios durante el   proyecto</td>
<td width="380">Especialmente preparados para cambios durante el proyecto (Los requisitos   cambian frecuentemente)</td>
</tr>
<tr height="34">
<td width="380" height="34">Impuestas externamente</td>
<td width="380">Impuestas internamente (equipo)</td>
</tr>
<tr height="34">
<td width="380" height="34">Proceso mucho más controlado, con numerosas políticas/normas</td>
<td width="380">Proceso menos controlado, con pocos principios</td>
</tr>
<tr height="34">
<td width="380" height="34">Existe un contrato prefijado</td>
<td width="380">No existe un contrato tradicional o al menos es bastante flexible</td>
</tr>
<tr height="34">
<td>El cliente interactúa con el equipo de desarrollo mediante reuniones</td>
<td>El cliente es parte del equipo de desarrollo</td>
</tr>
<tr height="34">
<td>Grupos grandes y posiblemente distribuídos</td>
<td>Grupos pequeños (&lt;10) y trabajando en el mismo sitio</td>
</tr>
<tr height="34">
<td>Más artefactos</td>
<td>Pocos artefactos</td>
</tr>
<tr height="34">
<td>Más roles</td>
<td>Pocos roles</td>
</tr>
<tr height="34">
<td>La arquitectura del software es esencial y se expresa mediante modelos</td>
<td>Menos énfasis en la arquitectura del software</td>
</tr>
<tr height="57">
<td>Documentar y especificar para que los desarrolladores implementen la   solución</td>
<td>El centro de desarrollo de software es el desarrollador. Los usuarios   aprenden durante el desarrollo</td>
</tr>
<tr height="57">
<td>Planificar el proyecto para asegurar el desempeño del proyecto (alcance,   tiempo, coste, calidad)</td>
<td>Dos niveles de planificación y seguimiento: planificación global y   planificaciones por iteraciones a bajo nivel.</td>
</tr>
<tr height="34">
<td>Poder repetir el proceso</td>
<td>La tecnología evoluciona rápidamente. El software es maleable e   intangible</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.mifergo.es/2010/05/manifiesto-agil/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IFU &#8211; Unidad de Búsqueda de Instrucción</title>
		<link>http://www.mifergo.es/2010/03/ifu-unidad-de-busqueda-de-instruccion/</link>
		<comments>http://www.mifergo.es/2010/03/ifu-unidad-de-busqueda-de-instruccion/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 22:29:16 +0000</pubDate>
		<dc:creator>mifergo</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[I-Cache]]></category>
		<category><![CDATA[IFG]]></category>
		<category><![CDATA[IFU]]></category>
		<category><![CDATA[LSU]]></category>
		<category><![CDATA[MIL]]></category>
		<category><![CDATA[NIR]]></category>
		<category><![CDATA[NPC]]></category>
		<category><![CDATA[PC]]></category>
		<category><![CDATA[Pipeline SPARC]]></category>
		<category><![CDATA[TIR]]></category>

		<guid isPermaLink="false">http://www.mifergo.es/?p=196</guid>
		<description><![CDATA[1. El pipeline del núcleo SPARC
Hay seis etapas en el pipeline del núcleo SPARC:

Búsqueda &#8211; Etapa F
Selección de hilo &#8211; Etapa S
De-codificación - Etapa D
Ejecución &#8211; Etapa E
Memoria &#8211; Etapa M
Contestación &#8211; Etapa W

El acceso de la caché de Instrucción y el acceso ITLB tienen lugar en la etapa F. La selección del hilo (hardware) se [...]]]></description>
			<content:encoded><![CDATA[<h2>1. El pipeline del núcleo SPARC</h2>
<p>Hay seis etapas en el pipeline del núcleo SPARC:</p>
<ol>
<li>Búsqueda &#8211; Etapa F</li>
<li>Selección de hilo &#8211; Etapa S</li>
<li>De-codificación - Etapa D</li>
<li>Ejecución &#8211; Etapa E</li>
<li>Memoria &#8211; Etapa M</li>
<li>Contestación &#8211; Etapa W</li>
</ol>
<p>El acceso de la caché de Instrucción y el acceso ITLB tienen lugar en la etapa F. La selección del hilo (hardware) se realiza en la etapa S. La decodificación de la instrucción y el acceso a los registros suceden en la etapa D. La evaluación de la rama se hace en la etapa E. El acceso a memoria y la respuesta se realiza en las etapas M y W. La figura siguiente ilustra el pipeline y las estructuras involucradas.</p>
<div class="wp-caption alignnone" style="width: 577px"><img class="  " src="http://www.mifergo.es/images/core_pipeline.jpg" alt="Core Pipeline" width="567" height="469" /><p class="wp-caption-text">Core Pipeline</p></div>
<p>La Cola de Llenado de Instrucción (IFQ) alimenta la caché de instrucción. La Lista de Instrucciones perdidas (MIL) guarda las direcciones que fallaron la caché de instrucción (I-Cache) y la ITLB,  y la MIL alimenta la Unidad de Almacén de Carga (LSU) para futuros procesamientos. El búfer de instrucción es de dos niveles de profundidad, e incluye la Unidad de Instrucción de Hilo (TIR) y la de Próxima Instrucción (NIR). La Selección del Hilo y el Planificador (etapa S) resuelve el arbitraje entre el TIR, el NIR, el PC de la rama, el PC de interrupciones para coger un hilo y mandarlo a la etapa de decodificación (D). La siguiente figura muestra la porción del pipeline del hilo:</p>
<h2 style="font-size: 1.5em;"><img style="border: 0px initial initial;" title="Pipeline del Hilo" src="http://www.mifergo.es/images/thread_pipeline.jpg" alt="" width="576" height="338" /></h2>
<h2>2. Búsqueda de Instrucción</h2>
<p>La Unidad de Búsqueda de Instrucción (IFU) mantiene los contadores de programa (PC) y los próximos contadores de programa (NPC) de todas las instrucciones vivas ejecutadas en el procesador. Por cada ciclo de reloj del núcleo, dos instrucciones son buscadas por cada instrucción usada. Esta relación de dos búsquedas por cada uso tiene la intención de reducir el acceso a la I-Cache para llenar la I-Cache de forma oportunista. A cada hilo le está permitido tener un fallo de I-Cache pendiente, y el núcleo SPARC permite un total de cuatro fallos de I-cache. Fallos duplicados de I-cache no inducen la carga redundante al nivel 2 de caché (L2-caché).</p>
<h2>3. Registros de instrucción y registros de Contador de Programa</h2>
<p>En el búfer de instrucción, hay dos registros de instrucción por hilo: el registro de instrucción del hilo (TIR) y el registro de próxima instrucción del hilo (NIR). El TIR contiene el la instrucción actual del hilo el la etapa de selección del hilo (etapa S), y el NIR contiene la siguiente instrucción. Un fallo en la carga de la I-cache, evita la I-cache y escribe directamente a la TIR, pero nunca escribe en la NIR.</p>
<p>El planificador de hilos selecciona una instrucción válida del TIR. Después de la selección de un instrucción válida, ésta será movida del NIR al TIR. Si no hay una instrucción válida en el TIR, una istrucción de No Operación (NOP) es insertada.</p>
<p>Hay un registro de contador de programa (PC) por hilo. El contador de próximo programa (NPC) puede venir de una de las siguientes fuentes:</p>
<p>1. Rama</p>
<p>2.  PC de interrupción</p>
<p>3. NPC de interrupción</p>
<p>4. Rollback (un hilo revertido debido a un fallo de carga)</p>
<p>5. PC + 4</p>
<p>La IFU rastrea  el PC y el NPC a través de la etapa W. El último PC retirado es guardado in la unidad lógica de interrupción (TLU), y si ocurre una interrupción, también sera guardada en la pila de la interrupción.</p>
<h2>4. La caché de instrucción de nivel 1</h2>
<p>La caché de instrucción es nombrada comunmente como caché de instrucción de nivel 1 (L1I).</p>
<p>[Artículo sin terminar]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.mifergo.es/2010/03/ifu-unidad-de-busqueda-de-instruccion/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- www.000webhost.com Analytics Code -->
<script type="text/javascript" src="http://analytics.hosting24.com/count.php"></script>
<noscript><a href="http://www.hosting24.com/"><img src="http://analytics.hosting24.com/count.php" alt="web hosting" /></a></noscript>
<!-- End Of Analytics Code -->

