<?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>Diario de Programación &#187; proyectos</title>
	<atom:link href="http://blog.chuidiang.com/tag/proyectos/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.chuidiang.com</link>
	<description>Programación e informática en general</description>
	<lastBuildDate>Wed, 25 Jan 2012 23:17:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>.NET pende sobre mi cabeza</title>
		<link>http://blog.chuidiang.com/2010/06/29/net-pende-sobre-mi-cabeza/</link>
		<comments>http://blog.chuidiang.com/2010/06/29/net-pende-sobre-mi-cabeza/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 16:36:33 +0000</pubDate>
		<dc:creator>Chuidiang</dc:creator>
				<category><![CDATA[Lenguajes de Programación]]></category>
		<category><![CDATA[varios]]></category>
		<category><![CDATA[.net]]></category>
		<category><![CDATA[banco pruebas]]></category>
		<category><![CDATA[proyectos]]></category>
		<category><![CDATA[scpi]]></category>

		<guid isPermaLink="false">http://blog.chuidiang.com/?p=823</guid>
		<description><![CDATA[Nuestros proyectos suelen ser de larga duraci&#243;n (dos a&#241;os los que menos) y cuando empez&#243; la crisis a nuestro departamento no le afect&#243; mucho, ten&#237;amos proyectos y trabajo para alrededor de dos a&#241;os. Pero dos a&#241;os despu&#233;s empezamos a sufrirla, los proyectos est&#225;n termin&#225;ndose y durante este per&#237;odo no se han contratado m&#225;s. As&#237; que [...]]]></description>
			<content:encoded><![CDATA[<p><img alt=".net" width="400" height="257" vspace="10" hspace="10" align="right" src="http://img94.imageshack.us/img94/8731/microsoftnetlogowhite.png" />Nuestros proyectos suelen ser de larga duraci&oacute;n (dos a&ntilde;os los que menos) y cuando empez&oacute; la crisis a nuestro departamento no le afect&oacute; mucho, ten&iacute;amos proyectos y trabajo para alrededor de dos a&ntilde;os. Pero dos a&ntilde;os despu&eacute;s empezamos a sufrirla, los proyectos est&aacute;n termin&aacute;ndose y durante este per&iacute;odo no se han contratado m&aacute;s. As&iacute; que andamos buscando trabajo en otros departamentos de la empresa y van cayendo algunas cosas, y proyectos que no son &quot;como siempre&quot;.</p>
<p>El <a href="http://blog.chuidiang.com/2010/05/20/cambio-de-tercio/">banco autom&aacute;tico de pruebas</a> que me cay&oacute; en su d&iacute;a es uno de esos proyectos de otros departamentos. Su duraci&oacute;n prevista era de unos tres meses y debo tenerlo terminado en Julio. Mi parte de software va bastante bien, pero el banco lleva mucho hardware (instrumentaci&oacute;n electr&oacute;nica, conectores, cables, aparatos variados, incluso un &quot;armario&quot; para montarlo todo) y creo (s&eacute; seguro) que todo eso van a retrasarse. Supongo que tengo trabajo de integraci&oacute;n con todo ese hardware al menos hasta Septiembre. El lenguaje de programaci&oacute;n para el banco lo eleg&iacute; yo y pens&eacute; en LabWindows/LabView, pero visto el corto plazo y que el protocolo SCPI de control de instrumentaci&oacute;n es bastante simple, decid&iacute; hacerlo en java.</p>
<p>Y pasado Septiembre &#8230; ya me tienen buscado otro proyecto. Este es en .NET, as&iacute; que me toca aprender un lenguaje nuevo. Espero s&oacute;lo un par de cosillas:</p>
<ul>
<li>Que me metan en el proyecto a un nivel de &quot;currito&quot;, de forma que pueda programar y aprender .NET. No s&eacute; qu&eacute; me han comentado de requisitos y zarandajas varias, as&iacute; que me veo m&aacute;s con el Word que con el .NET. Bueno, en ambos casos es Microsoft.</li>
<li>Que el proyecto dure lo suficiente (fecha prevista Septiembre de 2011) como para aprender bien .NET. Supongo que podr&eacute; hacer cosas en .NET en cuesti&oacute;n de semanas, pero s&eacute; por experiencia que pueden pasar a&ntilde;os hasta que aprendes a hacer las cosas correctamente y ni a&uacute;n as&iacute;, siempre est&aacute;s aprendiendo. De hecho, esta frase &quot;<br />
    <meta http-equiv="content-type" content="text/html; charset=utf-8" /><span class="Apple-style-span" style="font-family: Tahoma, Arial, Helvetica, sans-serif; font-size: 13px; ">Sigo pensando todo de nuevo mil veces y todavia encuentro mejores maneras de hacer lo mismo. Creo que ya tenemos todas las soluciones al igual que lo creia 8 a&ntilde;os atras&quot; del <a href="http://geeks.ms/blogs/lontivero/default.aspx">blog de Lucas Ontivero</a>&nbsp;creo que refleja perfectamente lo que quiero decir.</span></li>
</ul>
<p>Ya me veo a&ntilde;adiendo un apartado en alg&uacute;n sitio de esta web sobre .NET</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chuidiang.com/2010/06/29/net-pende-sobre-mi-cabeza/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Bicicletas a la carta</title>
		<link>http://blog.chuidiang.com/2010/06/17/bicicletas-a-la-carta/</link>
		<comments>http://blog.chuidiang.com/2010/06/17/bicicletas-a-la-carta/#comments</comments>
		<pubDate>Thu, 17 Jun 2010 19:46:44 +0000</pubDate>
		<dc:creator>Chuidiang</dc:creator>
				<category><![CDATA[varios]]></category>
		<category><![CDATA[bicicleta]]></category>
		<category><![CDATA[github]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[proyectos]]></category>

		<guid isPermaLink="false">http://blog.chuidiang.com/?p=807</guid>
		<description><![CDATA[&#160;Soy aficionado a salir en bicicleta los domingos y llevo varios a&#241;os haci&#233;ndolo. Pero a diferencia de otros muchos aficionados, no soy en absoluto aficionado a la bicicleta en s&#237; misma. Cuando llego de uno de mis paseos, la cuelgo en la terraza y me olvido de ella hasta el siguiente Domingo. No la engraso, [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="bici embarrada" width="400" height="300" border="10" align="right" src="http://lh4.ggpht.com/_RJl_J8Zl0PI/SXN6y6xJRNI/AAAAAAAAAh4/LarOshR9sw4/s800/IMG_3515.JPG" />&nbsp;Soy aficionado a <a href="http://fjballena.blogspot.com/">salir en bicicleta los domingos</a> y llevo varios a&ntilde;os haci&eacute;ndolo. Pero a diferencia de otros muchos aficionados, no soy en absoluto aficionado a la bicicleta en s&iacute; misma. Cuando llego de uno de mis paseos, la cuelgo en la terraza y me olvido de ella hasta el siguiente Domingo. No la engraso, ni la limpio, ni la miro. En cuanto tengo cualquier problema m&aacute;s all&aacute; de un pinchazo, suelo llevarla a una tienda de bicis de barrio. El due&ntilde;o es muy amable y se ha ganado mi confianza desde la primera vez que fui por la tienda, despu&eacute;s de llevarme un cabreo con los del <a href="http://www.decathlon.es/">Decathlon</a>.</p>
<p>En cierta ocasi&oacute;n vi que la tienda ten&iacute;a una p&aacute;gina web, as&iacute; que en una de mis visitas se lo coment&eacute;. El due&ntilde;o me dijo que no andaba muy contento con los que se la hab&iacute;an hecho y que si yo sab&iacute;a algo de eso, que le hiciera un presupuesto para llevarle yo la p&aacute;gina web. Bueno, no es lo m&iacute;o, s&oacute;lo llevo la m&iacute;a por hobby, tampoco soy aut&oacute;nomo as&iacute; que no podr&iacute;a darle factura y encima soy vago. Una cosa es &quot;jugar&quot; con mi p&aacute;gina web cuando tengo ganas y otra es comprometerme a algo. As&iacute; que lo dej&eacute; correr. De esto debe hacer ya cerca de dos a&ntilde;os.</p>
<p>Pero hace poco volv&iacute; a visitar la web y vi cosas que no me gustaron nada. Enlaces internos rotos, fotos que no salen y la p&aacute;gina muy parada, en dos a&ntilde;os apenas hab&iacute;a nada nuevo. As&iacute; que le env&iacute;e un correo al due&ntilde;o dici&eacute;ndole que pod&iacute;a arreglarle la p&aacute;gina y que siempre que fueran cosas puntuales y sin mucho trabajo, no le cobrar&iacute;a. Me conformar&iacute;a con alg&uacute;n descuento/regalo en los arreglos que me fuera haciendo en la bici. Vaya, un trueque. As&iacute; que quedamos para un caf&eacute; &#8230; y me llamaron la atenci&oacute;n varias cosas.</p>
<p>Lo primero es &quot;hacer negocios&quot; con gente de un negocio totalmente distinto al tuyo. Si le pregunto con qui&eacute;n tiene contratado el dominio y el hosting o c&oacute;mo accede al panel de control, pues pone la misma cara que cuando &eacute;l me comenta a m&iacute; que en una bici a medida se seleccionan unos treinta tipos de piezas y que <a href="http://bitacora1001.blogspot.com/2009/05/la-junta-de-la-trocola.html">la junta de la tr&oacute;cola</a> no forma parte de ellas.</p>
<p>Y por otro lado, yo iba con mi idea de arreglarle un poco la p&aacute;gina, ponerle un os-commerce para que tuviera un carrito de la compra o incluso un foro en el que la gente pudiera preguntarle on-line si tiene tal o cual pieza, cu&aacute;nto tardar&iacute;a en conseguirla o el precio. Pues bien, no tiene tiempo para atender el foro adecuadamente y lo del os-commerce le da igual porque casi todas las tiendas de bicis tienen y el que compra on-line al final se va al m&aacute;s barato, que suele ser alguna gran superficie. El lo que quer&iacute;a es algo que muy pocas tiendas de bicis tienen y es que un cliente pueda hacerse una bicicleta a medida, eligiendo las piezas del cat&aacute;logo y hacer el pedido sobre ello. Es m&aacute;s, tampoco quiere que esa aplicaci&oacute;n est&eacute; abierta al p&uacute;blico en general, sino que s&oacute;lo puedan acceder ciertos usuarios a los que &eacute;l d&eacute; de alta y que hayan pasado previamente por la tienda, es decir, clientes conocidos.</p>
<p>As&iacute; que me pareci&oacute; entretenido y a ello me he puesto. Llevo ya un par de semanas a ratos libres desempolvando mi php y me he creado <a href="http://github.com/chuidiang/Bicis-a-la-carta">un proyecto de bicis a la carta en GitHub</a>, donde he subido una primera versi&oacute;n, m&aacute;s o menos funcional, pero todav&iacute;a con faltantes y algunos ideas pendientes. A la vuelta del verano le llevar&eacute; mi bici para que le haga una revisi&oacute;n general <a href="http://picasaweb.google.es/chuidiang/BarroYNieve#slideshow/5292707981511345938">por debajo del barro</a> que tiene acumulado desde el invierno.</p>
<p>Por cierto, entiendo que s&oacute;lo le interesen esos pocos clientes conocidos que &quot;suelen&quot; comprarle bicis a medida. Jugando con la aplicaci&oacute;n y un cat&aacute;logo real, haciendo bicis de forma aleatoria, no me ha bajado ning&uacute;n precio de los 2000 &euro;.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chuidiang.com/2010/06/17/bicicletas-a-la-carta/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Plugin de maven para cambio de versiones en los pom.xml</title>
		<link>http://blog.chuidiang.com/2008/11/07/plugin-de-maven-para-cambio-de-versiones-en-los-pomxml/</link>
		<comments>http://blog.chuidiang.com/2008/11/07/plugin-de-maven-para-cambio-de-versiones-en-los-pomxml/#comments</comments>
		<pubDate>Fri, 07 Nov 2008 05:23:56 +0000</pubDate>
		<dc:creator>Chuidiang</dc:creator>
				<category><![CDATA[maven]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[proyectos]]></category>

		<guid isPermaLink="false">http://blog.chuidiang.com/?p=420</guid>
		<description><![CDATA[&#160; Hace tiempo que tengo una necesidad en el trabajo y que he ido dejando olvidada por falta de tiempo. Cuando en maven manejas proyectos grandes, cada uno con varios subproyectos&#160; y encima esos proyectos grandes dependen de otros proyectos grandes que tambi&#233;n tienen sus subproyectos, llevar un versionado en condiciones de cada jar puede [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p>Hace tiempo que tengo una necesidad en el trabajo y que he ido dejando olvidada por falta de tiempo. Cuando en <em>maven</em> manejas proyectos grandes, cada uno con varios subproyectos&nbsp; y encima esos proyectos grandes dependen de otros proyectos grandes que tambi&eacute;n tienen sus subproyectos, llevar un versionado en condiciones de cada jar puede ser un infierno.</p>
<p>Me explico, tu proyecto grande lleva un fichero <em>pom.xml</em>. Cada uno de los subproyectos tambi&eacute;n. En los dem&aacute;s proyectos tambi&eacute;n y en sus subproyectos tambi&eacute;n. Algunos de los jar de alguno de esos subproyectos pueden ser librer&iacute;as b&aacute;sicas, por ejemplo, una librer&iacute;a de componentes <em>swing </em>o de utilidades para acceso a base de datos, de gr&aacute;ficos, o lo que sea. Aparecen dependencias de esa librer&iacute;a en los <em>pom.xml</em> de muchos de los proyectos y subproyectos.</p>
<p>&iquest;Qu&eacute; pasa si cambiamos la versi&oacute;n de esa librer&iacute;a?. Que no queda m&aacute;s remedio que ir en todos los proyectos y subproyectos en los que queremos actualizar la versi&oacute;n buscando dicha librer&iacute;a por los <em>pom.xml</em> y cambiando el n&uacute;mero de versi&oacute;n. Desde luego, una tarea rutinaria, pero algo aburrida, que lleva un tiempo y susceptible de error &quot;humano&quot; al hacerla a mano.</p>
<p>As&iacute; que pens&eacute; en hacer un <em>script </em>o algo que buscara por los <em>pom.xml</em> y cambiara autom&aacute;ticamente las versiones que se le dijeran. As&iacute; que por fin me puse a ello y como siempre, para jugar y aprender algo nuevo, en vez de un <em>script</em>, decid&iacute; hacerlo como <em>plugin de maven</em>.</p>
<p>El resultado es un plugin de maven con dos <em>goals</em>:</p>
<ul>
<li><strong>lista</strong> saca en un fichero un listado de todos los artifacts que aparecen en el <em>pom.xml</em> del proyecto y subproyectos actuales y con la nueva versi&oacute;n o <em>groupId</em> que queremos para cada sub/proyecto. Ese fichero lo utilizar&aacute; el siguiente <em>goal </em>para hacer los cambios en el <em>pom.xml</em>.</li>
<li><strong>cambia </strong>realiza los cambios indicado en el fichero anterior en todos los <em>pom.xml</em> que encuentre del proyecto y subproyecto.&nbsp;
<ul>
<li>Si se ejecuta este <em>goal </em>en el mismo proyecto en que se ejecut&oacute; el <strong>lista</strong>, obtenemos un cambio de versi&oacute;n en el proyecto. Quiz&aacute;s el <a href="http://maven.apache.org/plugins/maven-release-plugin/">plugin release de maven</a> hace esto mismo y mejor.</li>
<li>Si se copia el fichero de cambios en otros proyecto distinto y ejecutamos all&iacute; el <em>goal </em>cambia, conseguimos cambiar la versi&oacute;n de las dependencias con el primer proyecto.</li>
</ul>
</li>
</ul>
<p>Lo he estado usando ya y probando, va bastante bien, aunque veo que el uso no es demasiado intuitivo, siempre se me olvida hacer alguna cosa.</p>
<p>Ah&iacute; van un par de enlaces:</p>
<ul>
<li>Proyecto en chuidiang : <a href="http://proyectos.chuidiang.com/pom_version/index.html">http://proyectos.chuidiang.com/pom_version/index.html</a></li>
<li>Proyecto en google-code: <a href="http://code.google.com/p/chuidiang-pom-version/">http://code.google.com/p/chuidiang-pom-version/</a></li>
</ul>
<p>Aprender, pues aprend&iacute; algunas cosillas, sobre todo, &iquest;c&oacute;mo no?, problemas con los que me he tropezado. El m&aacute;s gordo ha sido que no hay forma de hacer un <em>deploy </em>de un <em>plugin </em>en condiciones. En el <em>pom.xml</em> del <em>plugin</em>, el <em>packaging </em>es &quot;<em>maven-plugin</em>&quot;. Pues el <em>deploy </em>no sabe hacer un <em>deploy </em>de una cosa cuyo packaging es &quot;<em>maven-plugin</em>&quot;, as&iacute; que para que funcione el <em>deploy</em>, debes poner <em>packaging</em> &quot;<em>jar</em>&quot;. Pero claro, eso sube el fichero <em>.pom</em> al repositorio remoto con ese <em>packaging </em>que no es, as&iacute; que luego, a mano y en el repositorio remoto, tienes que cambiar el &quot;<em>jar</em>&quot; por &quot;<em>maven-plugin</em>&quot; otra vez. Y el problema sigue, ya que al cambiar eso a mano, los ficheros de checksum/huella o como quieras llamarle <em>.md5</em> y <em>.sha1</em> que se crean en el repositorio remoto ya no cuadran y al bajarte el plugin con maven dan un <em>warning</em>.</p>
<p>Y yo creo que ya est&aacute; bien de proyectos. Esta tarde me dedicar&eacute; a otra cosa.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chuidiang.com/2008/11/07/plugin-de-maven-para-cambio-de-versiones-en-los-pomxml/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Descargador de ficheros web</title>
		<link>http://blog.chuidiang.com/2008/11/03/descargador-de-ficheros-web/</link>
		<comments>http://blog.chuidiang.com/2008/11/03/descargador-de-ficheros-web/#comments</comments>
		<pubDate>Mon, 03 Nov 2008 17:54:38 +0000</pubDate>
		<dc:creator>Chuidiang</dc:creator>
				<category><![CDATA[java]]></category>
		<category><![CDATA[varios]]></category>
		<category><![CDATA[proyectos]]></category>

		<guid isPermaLink="false">http://blog.chuidiang.com/?p=417</guid>
		<description><![CDATA[&#160; Hace tiempo me puse a hacer en perl, por aquello de aprender perl, un script que me pasara tipos de ficheros .h de C a clases java, de forma que pudiera enviarlas y recibirlas por socket desde un ejecutable C a uno Java y viceversa. Con ese experimento, aprend&#237; el tema de expresiones regulares [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p><a href="http://blog.chuidiang.com/2007/07/16/he-empezado-con-perl/">Hace tiempo me puse a hacer en perl</a>, por aquello de aprender perl, un script que me pasara tipos de ficheros .h de C a clases java, de forma que pudiera enviarlas y recibirlas por socket desde un ejecutable C a uno Java y viceversa. Con ese experimento, aprend&iacute; el tema de expresiones regulares algo m&aacute;s en serio. Luego, para sorpresa m&iacute;a, vi que en java las expresiones regulares son calcaditas a las de perl, y que se parecen mucho a las del editor vi y que finalmente supongo que vienen del mundo unix. As&iacute; que me qued&eacute; con las ganas de hacer algo un poco m&aacute;s en serio con expresiones regulares en java.</p>
<p>Otra cosa que ten&iacute;a pendiente es la de conectarme desde java a una URL y ver c&oacute;mo bajar el fichero correspondiente a esa URL, bien sea un html, bien sea un doc, un pdf o una foto.</p>
<p>As&iacute; que junt&eacute; lo uno con lo otro y para probar m&aacute;s que por otro motivo, decid&iacute; hacer un descargardor de ficheros de p&aacute;ginas web. La idea es darle una p&aacute;gina html, que se la descargue, que busque dentro todos los href y que si apuntan a ficheros con determinadas extensiones, que se las descargue tambi&eacute;n. Eso cumple ambos requisitos, jugar con las expresiones regulares y descargar ficheros de una URL.</p>
<p>Me puse con ello y he estado en ello hasta que me ha aburrido el tema (ya no iba a aprender nada m&aacute;s sin meterme en <a href="http://es.wikipedia.org/wiki/Meterse_en_camisa_de_once_varas">camisa de once varas</a>) y he probado un poco para ver que m&aacute;s o menos funciona, pero a pesar de todo ello, me he decidido a ponerlo en la web.</p>
<p>As&iacute; que en el repositorio <a href="http://www.chuidiang.com/java/herramientas/maven.php">maven</a> de chuidiang.com est&aacute;n <a href="http://maven2.chuidiang.com/com/chuidiang/descargador/1.0.0/">los jar y los fuentes empaquetados en un jar del descargador</a>.</p>
<p>En la parte de proyectos, he puesto la <a href="http://proyectos.chuidiang.com/descargador/index.html">documentaci&oacute;n generada por maven de dicho descargador</a>.</p>
<p>Y finalmente, para rizar el rizo, he creado en google code el <a href="http://code.google.com/p/chuidiang-descargador/">proyecto chuidiang-descargador</a>, para que los fuentes est&eacute;n accesibles v&iacute;a subversion. La verdad es que mi primera intenci&oacute;n era meterlos en el <a href="https://launchpad.net/">repositorio launchpad de bazaar</a>, pero no me funcion&oacute; a la primera por problemas de seguridad, firmas digitales, claves p&uacute;blicas y privadas y como no s&eacute; del tema m&aacute;s que lo b&aacute;sico, pero nada de lo pr&aacute;ctico y como encima windows no ayuda a estas cosas, pues lo dej&eacute; en subversion de google-code.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chuidiang.com/2008/11/03/descargador-de-ficheros-web/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Sí, definitivamente la he cagado.</title>
		<link>http://blog.chuidiang.com/2008/07/12/si-definitivamente-la-he-cagado/</link>
		<comments>http://blog.chuidiang.com/2008/07/12/si-definitivamente-la-he-cagado/#comments</comments>
		<pubDate>Sat, 12 Jul 2008 20:14:34 +0000</pubDate>
		<dc:creator>Chuidiang</dc:creator>
				<category><![CDATA[Herramientas]]></category>
		<category><![CDATA[trabajo]]></category>
		<category><![CDATA[CVS]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[proyectos]]></category>
		<category><![CDATA[statcvs]]></category>

		<guid isPermaLink="false">http://blog.chuidiang.com/?p=398</guid>
		<description><![CDATA[Hace unos d&#237;as comentaba si la habr&#237;a cagado al aceptar un puesto un poco m&#225;s de &#34;jefecillo&#34; que antes. Y efectivamente, compruebo que la he cagado. La prueba de ello es que en vez de hacer c&#243;digo, me estoy dedicando a mirar cosas como statcvs, una herramienta que mira el log de todos los commits [...]]]></description>
			<content:encoded><![CDATA[<p>Hace unos d&iacute;as comentaba si <a href="http://blog.chuidiang.com/2008/07/08/%c2%bfla-habre-cagado/">la habr&iacute;a cagado</a> al aceptar un puesto un poco m&aacute;s de &quot;jefecillo&quot; que antes. Y efectivamente, compruebo que la he cagado. La prueba de ello es que en vez de hacer c&oacute;digo, me estoy dedicando a mirar cosas como <a href="http://statcvs.sourceforge.net/">statcvs</a>, una herramienta que mira el log de todos los commits que se han hecho en un proyecto en CVS y luego saca un mont&oacute;n de gr&aacute;ficos molones, in&uacute;tiles, pero molones.</p>
<p>Aqu&iacute; van unos cuantos ejemplos. El siguiente es un gr&aacute;fico que muestra los commits como puntitos de varios desarrolladores a lo largo de cerca de cuatro a&ntilde;os. Me he cargado el nombre del proyecto y de los desarrolladores, por&nbsp; aquello de la discrecci&oacute;n. En cada gr&aacute;fico, el eje y son las horas del d&iacute;a, de 0 a 24. En el eje x son los d&iacute;as a lo largo de los a&ntilde;os. El primer gr&aacute;fico, de puntitos azules, muestra el total de commits del proyecto. Los siguientes, con puntitos rojos, cada uno de los desarrolladores.</p>
<p>Llama la atenci&oacute;n el tercer desarrollador, que se fue a teletrabajar hace un a&ntilde;o. Se nota claramente que desde ese d&iacute;a NO tiene horarios. Antes hac&iacute;a commits de 8 a 6, horario de oficina. Ahora es habitual que haga commits a la una de la madrugada.</p>
<p>Tambi&eacute;n llama la atenci&oacute;n el &uacute;ltimo, con una densidad de commits especialmente alta. Se ve que es amigo de CVS. Curiosamente, se ve una peque&ntilde;a franja horizontal sin commits, correspondiente a la hora de comer.</p>
<p>En el sexto desarrollador, hacia el principio del gr&aacute;fico, tambi&eacute;n se ven unos d&iacute;as de agobio. con un commit pasada la media noche.</p>
<p>Tambi&eacute;n se ve, gracias a Dios, que en mi empresa tenemos un horario en general normal. Son raros los commits m&aacute;s all&aacute; de las seis de la tarde.</p>
<p><a href="http://blog.chuidiang.com/wp-content/uploads/commits-totales.png"><img width="600" height="2017" src="http://blog.chuidiang.com/wp-content/uploads/commits-totales.png" alt="" /></a></p>
<p>y en este otro gr&aacute;fico, se ve c&oacute;mo han ido a&ntilde;diendo l&iacute;neas de ćodigo en otro proyecto distintos desarrolladores. Las grandes subidas se deben posiblemente a copy-paste de otros proyectos (verg&uuml;enza) o bien a &quot;refactoring&quot; intensivo, a base de mover grandes fuentes bloques de fuente de un sitio a otro (espero que sea eso). En la parte baja estaba el nombre de los desarrolladores, asociado a cada una de las l&iacute;neas de color, pero me los he cargado.</p>
<p><a href="http://blog.chuidiang.com/wp-content/uploads/lineas-codigo-totales.png"><img width="600" height="375" src="http://blog.chuidiang.com/wp-content/uploads/lineas-codigo-totales.png" alt="" /></a></p>
<p>y aunque no he puesto ejemplos, tambi&eacute;n hay gr&aacute;ficos para cada desarrollador indicando en qu&eacute; horas del d&iacute;a mete m&aacute;s en CVS o en que d&iacute;as de la semana. Aunque en general este tipo de gr&aacute;ficos si es m&aacute;s o menos aleatorio, a veces se ve gente que tiende a meter en CVS los viernes, o bien justo antes de comer o de irse a casa por la tarde. Supongo que eso tambi&eacute;n es una mala costumbre, da la impresi&oacute;n de que no meten el c&oacute;digo cuando lo han probado bien, sino como una especie de &quot;backup&quot; de su trabajo diario, metiendo en CVS cosas que quiz&aacute;s no est&aacute;n lo suficientemente probadas.</p>
<p>Aqu&iacute; puedes ver un <a href="http://statcvs.sourceforge.net/statcvs-html/">ejemplo completo de los gr&aacute;ficos estad&iacute;scos generados por statcvs</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chuidiang.com/2008/07/12/si-definitivamente-la-he-cagado/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>chuidiang-editores</title>
		<link>http://blog.chuidiang.com/2008/05/14/chuidiang-editores/</link>
		<comments>http://blog.chuidiang.com/2008/05/14/chuidiang-editores/#comments</comments>
		<pubDate>Wed, 14 May 2008 04:15:19 +0000</pubDate>
		<dc:creator>Chuidiang</dc:creator>
				<category><![CDATA[java]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[proyectos]]></category>

		<guid isPermaLink="false">http://blog.chuidiang.com/?p=371</guid>
		<description><![CDATA[&#160; Acabo de subir a google-code los fuentes de otro peque&#241;o proyecto que me traigo entre manos, chuidiang-editores. De momento son simplemente unas clases que heredan de JFormattedTextField y hace de editores simples: un EditorNumerico, EditorDate, EditorLongitud, EditorLatitud, etc. Por supuesto, intentando que s&#243;lo admitan n&#250;meros correctos, que se puedan poner restricciones, como que el [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp;</p>
<p>Acabo de subir a <em>google-code</em> los fuentes de otro peque&ntilde;o proyecto que me traigo entre manos, <em>chuidiang-editores</em>.</p>
<p>De momento son simplemente unas clases que heredan de <em>JFormattedTextField </em>y hace de editores simples: un <em>EditorNumerico</em>, <em>EditorDate</em>, <em>EditorLongitud</em>, <em>EditorLatitud</em>, etc. Por supuesto, intentando que s&oacute;lo admitan n&uacute;meros correctos, que se puedan poner restricciones, como que el n&uacute;mero est&eacute; entre un m&iacute;nimo y un m&aacute;ximo, etc.</p>
<p>Tambi&eacute;n hay un <em>EditorPanelGeneral</em>. Es un <em>JPanel </em>al que se a&ntilde;aden editores de una forma simple y &eacute;l se encarga del <em>Layout </em>y de colocarlos de forma autom&aacute;tica. Este <em>JPanel </em>admite como dato un <em>Hashtable</em>. Con las claves identifica a qu&eacute; editor pertenece el dato y se lo pasa. En el m&eacute;todo <em>getDato()</em> devuelve un <em>Hashtable </em>con los datos de cada uno de los editores.</p>
<p>Y eso es m&aacute;s o menos lo que hay. La intenci&oacute;n final es ligar todo esto con base de datos, de forma que para un conjunto de columnas dadas de unas tablas, se construya autom&aacute;ticamente el formulario y m&aacute;s adelante, facilitar tambi&eacute;n el tema de consultas e inserciones, as&iacute; como la presentaci&oacute;n en un <em>JTable </em>de los resultados, con sus botones de crear/editar/borrar, filtro, etc.</p>
<p>Ah&iacute; van algunos enlaces:</p>
<ul>
<li>La documentaci&oacute;n del proyecto: <a href="http://proyectos.chuidiang.com/editores/">http://proyectos.chuidiang.com/editores/</a></li>
<li>El proyecto en google-code: <a href="http://code.google.com/p/chuidiang-editores/">http://code.google.com/p/chuidiang-editores/</a></li>
<li>Repositorio Maven: <a href="http://maven2.chuidiang.com/com/chuidiang/ChuidiangEditores/">http://maven2.chuidiang.com/com/chuidiang/ChuidiangEditores/</a></li>
</ul>
<p>y s&oacute;lo falta lo de siempre, porque empezar he empezado con ganas. Lo que hay que ver es lo que dura.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.chuidiang.com/2008/05/14/chuidiang-editores/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
	</channel>
</rss>

