<?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>luauf.com &#187; Gestión</title>
	<atom:link href="http://luauf.com/category/miscelaneas/gestion/feed/" rel="self" type="application/rss+xml" />
	<link>http://luauf.com</link>
	<description>Sistemas Operativos, Bases de Datos, Programación y Redes</description>
	<lastBuildDate>Mon, 14 May 2012 01:15:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Introducción a Control de Versiones con Git</title>
		<link>http://luauf.com/2012/02/25/introduccion-a-control-de-versiones-con-git/</link>
		<comments>http://luauf.com/2012/02/25/introduccion-a-control-de-versiones-con-git/#comments</comments>
		<pubDate>Sun, 26 Feb 2012 00:47:54 +0000</pubDate>
		<dc:creator>Luciano</dc:creator>
				<category><![CDATA[Gestión]]></category>
		<category><![CDATA[Miscelaneas]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[control de versiones]]></category>
		<category><![CDATA[CVS]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[Repositorio]]></category>
		<category><![CDATA[SVN]]></category>
		<category><![CDATA[versiones]]></category>

		<guid isPermaLink="false">http://luauf.com/?p=1199</guid>
		<description><![CDATA[Git es un software de control de versiones, como lo son, por ejemplo: CVS, SVN o VSS. Git fue diseñado por Torvalds con el objetivo de llevar el kernel de Linux en un...]]></description>
			<content:encoded><![CDATA[<p><strong>Git</strong> es un software de control de versiones, como lo son, por ejemplo: CVS, SVN o VSS.</p>
<p><strong>Git</strong> fue diseñado por <strong>Torvalds</strong> con el objetivo de llevar el kernel de Linux en un repositorio confiable o como el propio <strong>Linus</strong> dijo &#8220;rápido, muy rápido, fácil, bonito y espectacular&#8221;.</p>
<p style="text-align: center;"><a href="http://luauf.com/wp-content/uploads/2012/02/git_logo.png"><img class="aligncenter size-medium wp-image-1258" title="git_logo" src="http://luauf.com/wp-content/uploads/2012/02/git_logo-300x164.png" alt="" width="300" height="164" /></a></p>
<p>Una de las referencias de Linus en el diseño de <strong>git</strong> fue CVS, pero como un ejemplo de lo que NO HAY QUE HACER, pues lo sufrió durante siete años en una compañía y allí aprendió a odiarlo con pasión. Linus tampoco quizo probar con SVN, pues el lema de SVN era &#8220;hacer CVS bien&#8221;, y eso ya lo condenaba, pues no había forma de hacer a CVS bien.</p>
<p>Dejando de lado las anécdotas anteriores, Git es utilizado por la mayoría de los desarrollos open source de la actualidad:</p>
<ul>
<li>El propio Git</li>
<li>Linux Kernel</li>
<li>Perl</li>
<li>Eclipse</li>
<li>Gnome</li>
<li>KDE</li>
<li>Qt</li>
<li>Ruby on Rails</li>
<li>Android</li>
<li>PostgreSQL</li>
<li>Debian</li>
<li>X.org</li>
</ul>
<p><span id="more-1199"></span>Para quienes no saben lo que es un software control de versiones, básicamente, se puede resumir en un servidor donde se suben los archivos de un proyecto y a medida que se van modificando se van registrando y documentando estos cambios (versionando). En principio la idea es sencilla y más de un improvisado podría cuestionar el uso del mismo. No obstante, en la medida que un proyecto crece, la cantidad de archivos aumenta, los cambios y la cantidad de programadores también, resulta totalmente insostenible trabajar sin un control de versiones.</p>
<p>Trabajar sin control de versiones implica no saber donde está el último fuente, arrancar trabajando de una versión anterior y perderse los cambios de la que realmente era la última, no saber cuales son y quien realizó los cambios, no deshacer fácilmente los cambios realizados (downgrade), o no poder facilitar la transición a una versión totalmente nueva de un proyecto manteniendo el soporte a la anterior.</p>
<p>Una cosa más, la mayoría de los IDEs actuales tienen integración con Git, o si no la tienen, tienen algún plugin para hacerlo. Ahora, si no utilizas un IDE, tu caso es un poco más delicado <img src='http://luauf.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Sin más preámbulos, vamos a la práctica. En mis prácticas no utilizaré IDE, utilizaré un único archivo fuente y utilizaré el mismo equipo (dotado con Ubuntu Linux) como repositorio y cliente. Por lo tanto, primero, descargaré lo necesario: apt-get install git-core</p>
<p>Primer paso, en rol de &#8220;servidor&#8221;, creo el repositorio:</p>
<div class="syntax_hilite">
<div id="code-15">
<div class="code">$ git init mi_repositorio</div>
</div>
</div>
<p></p>
<p>Initialized empty Git repository in /home/luciano/mi_repositorio/.git/</p>
<p>En caso de no pasar el último argumento, en mi caso: mi_repositorio, el repositorio se inicializará en el directorio actual.</p>
<p>Ahora, en rol de &#8220;cliente&#8221;, supongamos que tengo mis desarrollos en este path:</p>
<div class="syntax_hilite">
<div id="code-16">
<div class="code">$ pwd<br />
/home/luciano/desarrollo</div>
</div>
</div>
<p>
Si quiero &#8220;sincronizar&#8221; mi directorio de desarrollo con el repositorio de git, debe hacer un &#8220;clone&#8221;, así:</p>
<div class="syntax_hilite">
<div id="code-17">
<div class="code">$ git clone /home/luciano/mi_repositorio<br />
Cloning into luciano&#8230;<br />
<span style="">done</span>.<br />
<span style="">warning</span>: You appear to have cloned an empty repository.</div>
</div>
</div>
<p>
Estamos arrancando de cero, por lo tanto el warning es ignorable <img src='http://luauf.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>El argumento que cambiará del &#8220;clone&#8221; en el caso que el repositorio se encuentre en otro servidor, será el path del repositorio, que deberá ser antecedido por usuario@host, por ejemplo:</p>
<div class="syntax_hilite">
<div id="code-18">
<div class="code">git clone username@host:/path/to/repository</div>
</div>
</div>
<p></p>
<p>Un repositorio administrador por git cuenta con lo que se denominan tres árboles, el primero, el directorio local (directorio de trabajo). El segundo es un &#8220;directorio intermedio&#8221; a donde van a parar los archivos que se agregan al proyecto, finalmente el &#8220;HEAD&#8221; donde reside la última versión confirmada. Ahora, veremos como agregar un archivo al repositorio y como &#8220;commitearlo&#8221;.</p>
<p>Primero, creo un archivo fuente en mi directorio de trabajo:</p>
<div class="syntax_hilite">
<div id="code-19">
<div class="code">$ pwd<br />
/home/luciano/desarrollo<br />
$ cd mi_repositorio<br />
$ touch holamundo.<span style="">c</span></div>
</div>
</div>
<p></p>
<p>Observen lo siguiente, no hay nada que decir:</p>
<div class="syntax_hilite">
<div id="code-20">
<div class="code">$ git status<br />
# On branch master<br />
#<br />
# Initial commit<br />
#<br />
# Untracked files:<br />
# <span style="color:#006600; font-weight:bold;">&#40;</span>use <span style="color:#CC0000;">&#8220;git add &#8230;&#8221;</span> to include in what will be committed<span style="color:#006600; font-weight:bold;">&#41;</span><br />
#<br />
# holamundo.<span style="">c</span><br />
nothing added to commit but untracked files present <span style="color:#006600; font-weight:bold;">&#40;</span>use <span style="color:#CC0000;">&#8220;git add&#8221;</span> to track<span style="color:#006600; font-weight:bold;">&#41;</span></div>
</div>
</div>
<p></p>
<p>Ahora, agrego el archivo al repositorio:</p>
<div class="syntax_hilite">
<div id="code-21">
<div class="code">$ git add holamundo.<span style="">c</span></div>
</div>
</div>
<p></p>
<p>Finalmente, commit:</p>
<div class="syntax_hilite">
<div id="code-22">
<div class="code">$ git commit -m <span style="color:#CC0000;">&#8220;revision inicial&#8221;</span> holamundo.<span style="">c</span><br />
<span style="color:#006600; font-weight:bold;">&#91;</span>master <span style="color:#006600; font-weight:bold;">&#40;</span>root-commit<span style="color:#006600; font-weight:bold;">&#41;</span> 2b983d9<span style="color:#006600; font-weight:bold;">&#93;</span> revision inicial<br />
Committer: Luciano</div>
</div>
</div>
<p></p>
<p>Ahora, el estado nuevamente:</p>
<div class="syntax_hilite">
<div id="code-23">
<div class="code">$ git status<br />
# On branch master<br />
nothing to commit <span style="color:#006600; font-weight:bold;">&#40;</span>working directory clean<span style="color:#006600; font-weight:bold;">&#41;</span></div>
</div>
</div>
<p></p>
<p>Un último comentario acerca de lo último, el commit quedó registrado con mi usuario (Committer) y mi host luciano@lucid.</p>
<p>Una opción, antes de lo anterior, es setear esos valores de la siguiente forma:</p>
<div class="syntax_hilite">
<div id="code-24">
<div class="code">$ git config –global user.<span style="">name</span> “Juan Del Rio”<br />
$ git config –global user.<span style="">email</span> juan@delrio.<span style="">com</span></div>
</div>
</div>
<p></p>
<p>Ahora, modifico el fuente y observo el estado de nuevo:</p>
<div class="syntax_hilite">
<div id="code-25">
<div class="code">$ echo <span style="color:#CC0000;">&#8220;/* holamundo program */&#8221;</span>&amp;gt; holamundo.<span style="">c</span></p>
<p>$ git status<br />
# On branch master<br />
# Changes not staged for commit:<br />
# <span style="color:#006600; font-weight:bold;">&#40;</span>use <span style="color:#CC0000;">&#8220;git add &#8230;&#8221;</span> to update what will be committed<span style="color:#006600; font-weight:bold;">&#41;</span><br />
# <span style="color:#006600; font-weight:bold;">&#40;</span>use <span style="color:#CC0000;">&#8220;git checkout &#8212; &#8230;&#8221;</span> to discard changes in working directory<span style="color:#006600; font-weight:bold;">&#41;</span><br />
#<br />
# modified: holamundo.<span style="">c</span><br />
#<br />
no changes added to commit <span style="color:#006600; font-weight:bold;">&#40;</span>use <span style="color:#CC0000;">&#8220;git add&#8221;</span> and/or <span style="color:#CC0000;">&#8220;git commit -a&#8221;</span><span style="color:#006600; font-weight:bold;">&#41;</span></div>
</div>
</div>
<p></p>
<p>Hay cambios sin &#8220;commitear&#8221;, por lo tanto, hago un nuevo commit:</p>
<div class="syntax_hilite">
<div id="code-26">
<div class="code">$ git commit -m <span style="color:#CC0000;">&#8220;agregue encabezado&#8221;</span> holamundo.<span style="">c</span></p>
<p>$ git status<br />
# On branch master<br />
nothing to commit <span style="color:#006600; font-weight:bold;">&#40;</span>working directory clean<span style="color:#006600; font-weight:bold;">&#41;</span></div>
</div>
</div>
<p></p>
<p>Para terminar (por ahora), si elimino el archivo:</p>
<div class="syntax_hilite">
<div id="code-27">
<div class="code">$ rm holamundo.<span style="">c</span></p>
<p>$ git status<br />
# On branch master<br />
# Changes not staged for commit:<br />
# <span style="color:#006600; font-weight:bold;">&#40;</span>use <span style="color:#CC0000;">&#8220;git add/rm &#8230;&#8221;</span> to update what will be committed<span style="color:#006600; font-weight:bold;">&#41;</span><br />
# <span style="color:#006600; font-weight:bold;">&#40;</span>use <span style="color:#CC0000;">&#8220;git checkout &#8212; &#8230;&#8221;</span> to discard changes in working directory<span style="color:#006600; font-weight:bold;">&#41;</span><br />
#<br />
# deleted: holamundo.<span style="">c</span><br />
#<br />
no changes added to commit <span style="color:#006600; font-weight:bold;">&#40;</span>use <span style="color:#CC0000;">&#8220;git add&#8221;</span> and/or <span style="color:#CC0000;">&#8220;git commit -a&#8221;</span><span style="color:#006600; font-weight:bold;">&#41;</span></div>
</div>
</div>
<p></p>
<p>Por lo tanto debo:</p>
<div class="syntax_hilite">
<div id="code-28">
<div class="code">$ git rm holamundo.<span style="">c</span><br />
$ git commit -m <span style="color:#CC0000;">&#8220;bye bye adios&#8221;</span> holamundo.<span style="">c</span><br />
$ git status<br />
# On branch master<br />
nothing to commit <span style="color:#006600; font-weight:bold;">&#40;</span>working directory clean<span style="color:#006600; font-weight:bold;">&#41;</span></div>
</div>
</div>
<p></p>
<p>Por hoy esto es todo, a pesar de que es muy poco y aún no es lo suficiente para compreder las virtudes de un sistema de control de versiones, basta para saber como hacer &#8220;altas, bajas y modificaciones&#8221;.</p>
<p>En la próxima entrega, quedo comprometido en tratar los &#8220;push&#8221; a un servidor remoto, trabajar con &#8220;branches&#8221;, hacer &#8220;merges&#8221; y un poco más.</p>
<div></div>
]]></content:encoded>
			<wfw:commentRss>http://luauf.com/2012/02/25/introduccion-a-control-de-versiones-con-git/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Administración de proyectos con dotProject</title>
		<link>http://luauf.com/2008/07/08/administracion-de-proyectos-con-dotproject/</link>
		<comments>http://luauf.com/2008/07/08/administracion-de-proyectos-con-dotproject/#comments</comments>
		<pubDate>Wed, 09 Jul 2008 02:46:20 +0000</pubDate>
		<dc:creator>Luciano</dc:creator>
				<category><![CDATA[Gestión]]></category>
		<category><![CDATA[Miscelaneas]]></category>
		<category><![CDATA[Gestión de Proyectos]]></category>
		<category><![CDATA[Project]]></category>
		<category><![CDATA[Scrum]]></category>

		<guid isPermaLink="false">http://luauf.com/?p=502</guid>
		<description><![CDATA[Recuerdo de mi época de estudiante universitario que usabamos DotProject para la gestión de un proyecto grupal. Para quienes no lo conozcan DotProject es algo así como un Ms. Project, pero con interfaz...]]></description>
			<content:encoded><![CDATA[<p>Recuerdo de mi época de estudiante universitario que usabamos DotProject para la gestión de un proyecto grupal. Para quienes no lo conozcan DotProject es algo así como un Ms. Project, pero con interfaz web y distribuido bajo licencia GPL.</p>
<p style="center;"><a href="http://luauf.com/wp-content/uploads/2008/07/logo_dotproject.png"><img class="aligncenter size-medium wp-image-503" src="http://luauf.com/wp-content/uploads/2008/07/logo_dotproject-300x103.png" alt="" width="300" height="103" /></a></p>
<p>El recuerdo del dotProject viene a mi, a partir de un artículo que leí <a href="http://softlibre.barrapunto.com/article.pl?sid=08/07/08/0645221" target="_blank">BarraPunto</a> , y que me pareció interesante citar pues cita características como definiciones de proyectos (OpenUP, Scrum, XP), integración con SVN, etc.</p>
<p><span id="more-502"></span></p>
<blockquote><p>&#8220;Complutense de Madrid ha desarrollado una extensión de <a href="http://www.dotproject.net/" target="_blank">dotProject</a>, el gestor de proyectos con interfaz web, con varias características interesantes para la comunidad: un asistente para la importación de definiciones de proyectos (OpenUP, Scrum, XP y algún otro); la gestión de control de versiones con subversion (dotproject sólo permite etiquetar a mano los ficheros); el concepto de rol como responsable de tareas; y la posibilidad de definir dependencias de tipo produce/consume entre tareas y productos del proceso de desarrollo. El software se distribuye bajo GPLv3 y se puede <a href="http://www.fvesolutions.es/" target="_blank">descargar</a>. En esa dirección se podrán encontrar demos (vídeos + software) y manuales de instalación y uso.&#8221;</p></blockquote>
<p>Vía: <a href="http://softlibre.barrapunto.com/article.pl?sid=08/07/08/0645221" target="_blank">BarraPunto</a></p>
]]></content:encoded>
			<wfw:commentRss>http://luauf.com/2008/07/08/administracion-de-proyectos-con-dotproject/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Extreme Programming (XP)</title>
		<link>http://luauf.com/2008/06/17/extreme-programming-xp/</link>
		<comments>http://luauf.com/2008/06/17/extreme-programming-xp/#comments</comments>
		<pubDate>Wed, 18 Jun 2008 02:31:56 +0000</pubDate>
		<dc:creator>Luciano</dc:creator>
				<category><![CDATA[Gestión]]></category>
		<category><![CDATA[Miscelaneas]]></category>
		<category><![CDATA[Ingeniería de Software]]></category>

		<guid isPermaLink="false">http://luauf.com/?p=427</guid>
		<description><![CDATA[Las metodologías ágiles en el desarrollo de software son términos bastante de moda hoy en día, y no por nada. De hecho, te pueden resultar familiares términos como Extreme Programming (XP), Scrum, Crystal,...]]></description>
			<content:encoded><![CDATA[<p>Las metodologías ágiles en el desarrollo de software son términos bastante de moda hoy en día, y no por nada. De hecho, te pueden resultar familiares términos como Extreme Programming (XP), <a href="http://luauf.com/2008/04/24/revolucion-scrum/" target="_blank">Scrum</a>, Crystal, Evolutionary Project Management (Evo) o Feature Driven Development (FDD).</p>
<p>En esta ocasión, quiero compartir un breve resumen de un texto acerca de Extreme Programming. Exceptuando la parte histórica, XP  se basa en llevar al extremo las buenas prácticas de desarrollo de software, y así bajar el riesgo, permitir cambios de especificaciones durante el desarrollo y favorecer la comunicación con el cliente.</p>
<p>Lo más interesante radica en la enumeración de las prácticas que son llevadas a un extremo:</p>
<p><span id="more-427"></span></p>
<ul>
<li>Como probar programas es bueno, entonces se hacen pruebas unitarias y funcionales todo el tiempo.</li>
<li>Como hacer pruebas de integración es importante, la integración sigue inmediatamente después de las pruebas unitarias</li>
<li>Como revisar la calidad del código es recomendable, se revisa código todo el tiempo y se hacen refactorizaciones, que implican cambios de diseño para hacerlo más simple, pero que no afectan la funcionalidad.</li>
<li>Como los estándares de codificación permiten una mejor comunicación y reducen los errores, se fijan estándares precisos y estrictos.</li>
<li>Como es bueno que el sistema sea simple, se busca la simplicidad siempre, diseñando solo lo que se necesita en el momento.</li>
<li>Como los requerimientos de la arquitectura pueden ser cambiantes, se van refinando constantemente.</li>
<li>Como el desarrollo incremental es positivo, se hacen iteraciones lo más cortas posibles: se diseña una pequeña porción, se la codifica y se la prueba.</li>
<li>Como suele suceder que un proyecto se suspenda en un momento determinado (por ejemplo por falta de presupuesto) se implementa primero lo que tiene mayor valor para el cliente.</li>
<li>Como es importante tener una comunicación frecuente con el cliente, siempre debe haber un cliente acompañando el desarrollo. Además éste es fundamental para escribir pruebas funcionales y establecer prioridades.</li>
<li>Como dos cabezas piensan mejor que una, y cómo refuerzo a las prácticas anteriores, los programadores trabaja de a dos: uno escribe y el otro piensa en mayor escala, buscando simplicidad, errores y formas alternativas de solución del problema. Estas parejas pueden intercambiarse a lo largo del desarrollo, de todas formas cada pareja es responsable de una tarea, y hasta no terminar esta no hay intercambio.</li>
</ul>
<p>Extraído de: Orientación a objetos con Java y UML, de Carlos Fontela.</p>
]]></content:encoded>
			<wfw:commentRss>http://luauf.com/2008/06/17/extreme-programming-xp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Instalar un repositorio CVS en Linux</title>
		<link>http://luauf.com/2008/06/08/instalar-un-repositorio-cvs-en-linux/</link>
		<comments>http://luauf.com/2008/06/08/instalar-un-repositorio-cvs-en-linux/#comments</comments>
		<pubDate>Sun, 08 Jun 2008 19:57:10 +0000</pubDate>
		<dc:creator>Luciano</dc:creator>
				<category><![CDATA[Gestión]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Miscelaneas]]></category>
		<category><![CDATA[Sistemas Operativos]]></category>
		<category><![CDATA[CVS]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://luauf.com/?p=389</guid>
		<description><![CDATA[CVS (Concurrent Versions/Versioning System) es una aplicación cliente-servidor que instala un repositorio centralizado de aplicaciones, archivos y básicamente cualquier tipo de archivo. En esta publicación vamos a instalar, configurar y probar CVS en...]]></description>
			<content:encoded><![CDATA[<p>CVS (Concurrent Versions/Versioning System) es una aplicación cliente-servidor que instala un repositorio centralizado de aplicaciones, archivos y básicamente cualquier tipo de archivo.</p>
<p style="text-align: center;"><a href="http://luauf.com/wp-content/uploads/2008/06/repositorio.png"><img class="aligncenter size-medium wp-image-390" title="repositorio" src="http://luauf.com/wp-content/uploads/2008/06/repositorio-195x300.png" alt="" width="195" height="300" /></a></p>
<p>En esta publicación vamos a instalar, configurar y probar CVS en Linux, especificamente sobre la distribución de Ubuntu 8.04:</p>
<p><span id="more-389"></span></p>
<ul>
<li>Descargar el cliente y servidor CVS, cvs y cvsd:</li>
</ul>
<p><code>
<div class="syntax_hilite">
<div id="code-36">
<div class="code">$ sudo apt-get install cvs cvsd</div>
</div>
</div>
<p></code></p>
<ul>
<li>Entre otras cosas, la instalación crea una estructura de directorios en /var/lib y crea los usuarios y grupos cvsd:</li>
</ul>
<p><code>
<div class="syntax_hilite">
<div id="code-37">
<div class="code">/etc/passwd<br />
cvsd:x:<span style="color:#800000;">114</span>:<span style="color:#800000;">116</span>:cvs pserver daemon:/var/lib/cvsd:/bin/false</p>
<p>/etc/groups<br />
cvsd:x:<span style="color:#800000;">116</span>:</div>
</div>
</div>
<p></code></p>
<ul>
<li>Dentro del directorio /var/lib/cvsd crearemos el directorio para nuestro repositorio (se pueden crear tantos directorios como repositorios querramos utilizar).</li>
</ul>
<p><code>
<div class="syntax_hilite">
<div id="code-38">
<div class="code">$ cd /var/lib/cvsd/<br />
$ sudo mkdir cvsroot</div>
</div>
</div>
<p></code></p>
<ul>
<li>Cambiamos el propietario y grupo del directorio creado, con el usuario y grupo creado durante la instalación por el cvs:</li>
</ul>
<p><code>
<div class="syntax_hilite">
<div id="code-39">
<div class="code">$ sudo chown cvsd:cvsd cvsroot</div>
</div>
</div>
<p></code></p>
<ul>
<li>Ejecutamos cvsd-buildroot para que se creen los directorios y archivos administrativos del sistema y se actualicen los binarios (cada vez que se actualicen los binarios del CVS deberíamos ejecutarlo) </li>
</ul>
<p><code>
<div class="syntax_hilite">
<div id="code-40">
<div class="code">$ cvsd-buildroot /var/lib/cvsd</div>
</div>
</div>
<p></code></p>
<ul>
<li>Para finalizar, inicializamos el repositorio y creamos un usuario para acceder al mismo:</li>
</ul>
<p><code>
<div class="syntax_hilite">
<div id="code-41">
<div class="code">$ sudo cvs -d /var/lib/cvsd/cvsroot/ init<br />
$ sudo cvsd-passwd /var/lib/cvsd/cvsroot/ luciano<br />
/usr/sbin/cvsd-passwd: adding user <span style="color:#CC0000;">'luciano'</span> to <span style="color:#CC0000;">'/var/lib/cvsd/cvsroot/CVSROOT/passwd'</span><br />
Enter new password:<br />
Retype new password:</div>
</div>
</div>
<p></code></p>
<ul>
<li>En esta instancia, nuestro repositorio ya está creado y ya podemos empezar a trabajar con el mismo. Para probar si es así, podemos conectarnos por línea de comandos o a través de algún IDE (por ejemplo, Eclipse o NetBeans incluyen integración con repositorios):</li>
</ul>
<p><code>
<div class="syntax_hilite">
<div id="code-42">
<div class="code">cvs -d :pserver:luciano@localhost:/cvsroot login<br />
Logging in to :pserver:luciano@localhost:<span style="color:#800000;">2401</span>/cvsroot<br />
CVS password:</div>
</div>
</div>
<p></code></p>
<p style="text-align: center;"><a href="http://luauf.com/wp-content/uploads/2008/06/cvs.png"><img class="aligncenter size-medium wp-image-391" title="cvs" src="http://luauf.com/wp-content/uploads/2008/06/cvs-293x300.png" alt="" width="293" height="300" /></a></p>
<p>Vía: <a href="http://emilio.aesinformatica.com/2008/06/02/instalar-un-cvs-en-linux/" target="_blank">Emilio</a></p>
]]></content:encoded>
			<wfw:commentRss>http://luauf.com/2008/06/08/instalar-un-repositorio-cvs-en-linux/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>¿Que es Bazaar?</title>
		<link>http://luauf.com/2008/06/03/%c2%bfque-es-bazaar/</link>
		<comments>http://luauf.com/2008/06/03/%c2%bfque-es-bazaar/#comments</comments>
		<pubDate>Wed, 04 Jun 2008 02:59:59 +0000</pubDate>
		<dc:creator>Luciano</dc:creator>
				<category><![CDATA[Gestión]]></category>
		<category><![CDATA[Miscelaneas]]></category>
		<category><![CDATA[Bazaar]]></category>
		<category><![CDATA[CVS]]></category>
		<category><![CDATA[Repositorio]]></category>

		<guid isPermaLink="false">http://luauf.com/?p=367</guid>
		<description><![CDATA[En los últimos días, producto del renegar diario con CVS, he empezado a leer un poco acerca de distintos sistemas de control de versiones. De esa lectura aparecen nombres como CVS, SVN, Git...]]></description>
			<content:encoded><![CDATA[<p>En los últimos días, producto del renegar diario con CVS, he empezado a leer un poco acerca de distintos sistemas de control de versiones. De esa lectura aparecen nombres como CVS, SVN, Git y <a href="http://bazaar-vcs.org/" target="_blank">Bazaar</a>.</p>
<p>En esta ocasión, sin entrar en detalles técnicos ni prácticos, me limitaré a citar algunas características de Bazaar. Espero en una futura publicación poder decir &#8220;Como instalar Bazaar&#8221;.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-368" title="logo" src="http://luauf.com/wp-content/uploads/2008/06/logo.png" alt="" width="144" height="149" /></p>
<p style="text-align: left;"><span id="more-367"></span></p>
<ul>
<li>Bazaar es una herramienta de control de versiones distribuidas</li>
<li>Es patrocinada por Canonical Ltd. ¿te suena? Canonical es el sponsor comercial de Ubuntu</li>
<li>Se centra en la facilidad de uso y puede ser utilizado por un único o en conjunto con equipos de desarrollo</li>
<li>Está escrito en Python, publicado bajo licencia GNU/GPL y disponible para plataformas Windows, Linux y Max OS X.</li>
<li>Comandos similares a otros sistemas de control de versiones (CVS, SVN)</li>
</ul>
<p>Para finalizar, una presentación de la herramienta, realizada por Martín Albisetti:</p>
<ul>
<li><a href="http://luauf.com/wp-content/uploads/2008/06/bazaartar.gz">ODP</a></li>
<li><a href="http://luauf.com/wp-content/uploads/2008/06/bazaar.rar">PPT</a></li>
</ul>
<p>Vía: <a href="http://elcodigok.blogspot.com/2008/06/presentacion-sobre-la-herramienta.html" target="_blank">El CoDiGo K</a></p>
]]></content:encoded>
			<wfw:commentRss>http://luauf.com/2008/06/03/%c2%bfque-es-bazaar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Revolución Scrum</title>
		<link>http://luauf.com/2008/04/24/revolucion-scrum/</link>
		<comments>http://luauf.com/2008/04/24/revolucion-scrum/#comments</comments>
		<pubDate>Fri, 25 Apr 2008 00:03:32 +0000</pubDate>
		<dc:creator>Luciano</dc:creator>
				<category><![CDATA[Gestión]]></category>
		<category><![CDATA[Miscelaneas]]></category>

		<guid isPermaLink="false">http://luauf.com/?p=187</guid>
		<description><![CDATA[Hace tiempo vengo escuchando y leyendo acerca del Scrum, así que leyendo un poco armé un resumen, muy breve, útil para tener una idea general de que se trata. Scrum es una metodología...]]></description>
			<content:encoded><![CDATA[<p>Hace tiempo vengo escuchando y leyendo acerca del Scrum, así que leyendo un poco armé un resumen, muy breve, útil para tener una idea general de que se trata.</p>
<p style="text-align: center;"><img class="alignnone size-medium wp-image-188" title="scrum" src="http://luauf.com/wp-content/uploads/2008/04/scrum-300x133.gif" alt="" width="300" height="133" /></p>
<p>Scrum es una metodología para el desarrollo de software que, como ninguna, se ha ganado muy rápido el visto bueno de los usuarios y cada vez más el de las empresas de la industria del software.</p>
<p><span id="more-187"></span></p>
<p>Ken Schwaber y Jeff Sutherland han sido los responsables de desarrollar una nueva manera de gestionar proyectos de construcción de software. Para el nacimiento de Scrum, los autores comparan la tradicional aproximación secuencial de desarrollo de productos en el que consecutivas fases del desarrollo son llevadas a cabo por diferentes grupos de especialistas (similar al desarrollo en cascada) con un enfoque más iterativo, en el que, usando una metáfora basada en el rugby, solo una persona corre en cada momento y el equipo pasa el balón al siguiente corredor. El liderazgo del proyecto va cambiando y todos trabajan como un equipo.</p>
<p>Scrum asume que los requerimientos cambiaran durante el proyecto. Scrum toma el cambio como una forma de entregar al final del desarrollo algo mas cercano a la verdadera necesidad del cliente.</p>
<p>El mercado actual exige ciclos de desarrollo cada vez más cortos. Para lograrlo se utiliza el &#8220;sprint de requisitos&#8221;, una lista en la que se detalla de cómo se van a construir los diferentes requisitos del producto. Cada sprint suele realizarse en un plazo de entre 2 y 4 semanas. Al final, el objetivo es entregar algo que funcione, para el usuario pueda probarlo y se puedan introducir los cambios necesarios antes de que sea demasiado tarde. Esto es lo que nos permitirá ser flexibles.</p>
<blockquote><p>Schwaber  y Sutherland se basaron en el trabajo de la década del 80 de los japoneses Takeuchi y Nonaka, quienes estudiaron las prácticas de empresas con buenos resultados de rapidez y flexibilidad en la producción: Xerox, Canon, Honda, NEC, Epson, 3M o Hewlett-Packard. De ahí extrajeron la base de la metodología SCRUM que, aunque nació en el ámbito tecnológico, ha ido creciendo hasta consolidarse en campos de actividad muy diferentes.</p></blockquote>
<p>Vía:  <a href="http://geeks.ms/blogs/rcorral/archive/2008/04/13/scrum-asi-empezo-una-revoluci-243-n.aspx" target="_blank">La masa, el ladrillo, la bota, el bocadillo&#8230;</a> , <a href="http://pymecrunch.com/scrum-metodologia-agil-para-tus-proyectos" target="_blank">PymeCrunch</a></p>
]]></content:encoded>
			<wfw:commentRss>http://luauf.com/2008/04/24/revolucion-scrum/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

