<?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>Espacio de Dario Quintana &#187; tips</title>
	<atom:link href="http://blog.darioquintana.com.ar/category/tips/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.darioquintana.com.ar</link>
	<description></description>
	<lastBuildDate>Tue, 21 Jun 2011 22:51:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2</generator>
		<item>
		<title>Resultados en aplicaciones reales usando NHibernate Reflection Optimizer</title>
		<link>http://blog.darioquintana.com.ar/2008/07/24/resultados-en-aplicaciones-reales-usando-nhibernate-reflection-optimizer/</link>
		<comments>http://blog.darioquintana.com.ar/2008/07/24/resultados-en-aplicaciones-reales-usando-nhibernate-reflection-optimizer/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 23:57:47 +0000</pubDate>
		<dc:creator>Dario Quintana</dc:creator>
				<category><![CDATA[NHibernate]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[Tool]]></category>

		<guid isPermaLink="false">http://blog.darioquintana.com.ar/2008/07/24/resultados-en-aplicaciones-reales-usando-nhibernate-reflection-optimizer/</guid>
		<description><![CDATA[<p>Quizás algunos van a pensar que esto es una aplicación usando NHibernate, pero la verdad es que no. Como es una aplicación sin NHibernate me las arreglé para convertir DataTables resultados de consultas a objetos de Negocio o colecciones de objetos para poder manejarlos fuera de la capa de Infraestructura de una manera más interesante. [...]]]></description>
			<content:encoded><![CDATA[<p>Quizás algunos van a pensar que esto es una aplicación usando NHibernate, pero la verdad es que no. Como es una aplicación sin NHibernate me las arreglé para convertir DataTables resultados de consultas a objetos de Negocio o colecciones de objetos para poder manejarlos fuera de la capa de Infraestructura de una manera más interesante. </p>
<p>La capa de Infraestructura posee unos helpers para realizar la conversión que nombramos usando algunas convenciones, attributes y reflection! Llega la hora de la optimización y tenemos que afrontar que Reflection no es algo de lo que se debe abusar, pero tampoco está prohibido.</p>
<p>En este <a href="http://blog.darioquintana.com.ar/2008/07/24/nhibernate-how-much-slow-because-the-use-of-reflection/">post</a> mostraba alguna de las bondades de NHibernate como buen ORM y las optimizaciones que posee a la hora de instanciar objetos, o setear/obtener los valores de las properties o fields. </p>
<p>Los Helpers de datos básicamente están encargados de convertir Datatables a Colecciones de Entidades o simplemente a Entidades. Para esto podemos tener métodos como ser: GetEntities y GetEntity</p>
<p><img src="http://uooopaa.googlepages.com/DataHelper.png"> </p>
<p>Las pruebas se hicieron realizaron la misma cantidad de consultas y con los mismo datos en la base. El profiler para realizar las pruebas es DotTrace, de la empresa JetBrains.</p>
<h4>Sin optimizaciones: </h4>
<p><img src="http://uooopaa.googlepages.com/GetEntitiesWithoutOpt.png"> </p>
<h4>Con Optimizaciones (NHibernate Reflection Optimizer)</h4>
<p><img src="http://uooopaa.googlepages.com/GetEntitiesWithOpt.png"> </p>
<p>53 llamadas a GetEntities: 111,18 ms. contra los 66,921 ms. del GetEntities con las optimizaciones. Destaquemos aquí que GetEntities solamente realiza conversiones para obtener colecciones y objetos de negocios, y no realiza ninguna hit a la base de datos.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.darioquintana.com.ar/2008/07/24/resultados-en-aplicaciones-reales-usando-nhibernate-reflection-optimizer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mejorando el ingles</title>
		<link>http://blog.darioquintana.com.ar/2008/03/13/mejorando-el-ingles/</link>
		<comments>http://blog.darioquintana.com.ar/2008/03/13/mejorando-el-ingles/#comments</comments>
		<pubDate>Fri, 14 Mar 2008 01:45:40 +0000</pubDate>
		<dc:creator>Dario Quintana</dc:creator>
				<category><![CDATA[personal]]></category>
		<category><![CDATA[podcast]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://blog.darioquintana.com.ar/2008/03/13/mejorando-el-ingles/</guid>
		<description><![CDATA[<p>Últimamente estoy tratando de dedicarle un poco de tiempo a estudiar ingles. En la web existen muchos recursos destinado a ello. Algunos de los sitios que visito y que me obligan a hacer la tarea los voy a compartir, quizás a alguien le sirva. Aquí les va:</p> <p><a href="http://www.eslpod.com">English as a Second Language Podcast</a>: es [...]]]></description>
			<content:encoded><![CDATA[<p>Últimamente estoy tratando de dedicarle un poco de tiempo a estudiar ingles. En la web existen muchos recursos destinado a ello. Algunos de los sitios que visito y que me obligan a hacer la tarea los voy a compartir, quizás a alguien le sirva. Aquí les va:</p>
<p><a href="http://www.eslpod.com">English as a Second Language Podcast</a>: es un sitio que contiene cientos de podcast en ingles. Cada podcast comienza con una introducción, un diálogo a velocidad lenta, luego viene la explicación del diálogo (también hay un texto para seguir al diálogo) y finalmente viene el diálogo a velocidad normal. Muy útil.</p>
<p><a href="http://www.thebobandrobshow.com/">The Bob and Rob show</a>: este sitio contiene podcast igual que el anterior pero de una manera interesante. Son 2 personas que hablan, uno con un ingles americano y otro con ingles británico. La velocidad aquí es un poco más rápida.</p>
<p><a href="http://www.livemocha.com/">LiveMocha</a>: Comunidad web para aprender idiomas varios, no solamente inglés. Es el sitio más &#8220;web 2.0&#8243; que conozco en la materia. Contiene ejercicios muy interactivos que son muy utiles si se los sigue sistemáticamente. Brinda la posibilidad de que nuestros ejercicios sean evaluados por otros miembros. También permite chat y speaking con otras personas.</p>
<p>Yo creo que para poder mejorar nuestro ingles, hay que practicar, no existe otra solución. Estos 3 simples recursos pueden servir de mucho a la hora de hacerlo. </p>
<p>También podemos practicar escuchando podcast técnicos, como lo son los clásicos de <a href="http://www.dotnetrocks.com/">Dot Net Rocks!</a> y <a href="http://www.hanselminutes.com/">Hanselman Minutes</a>, ó quizás algún video en <a href="http://www.infoq.com">InfoQ</a>. Estos podcasts/screencast no pretender tenernos paciencia con nuestro inglés, pero es bueno empezar a acostumbrar el oído sino lo estamos haciendo. En nuestra área, el ingles no puede ser un impedimento.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.darioquintana.com.ar/2008/03/13/mejorando-el-ingles/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Named Queries en NHibernate y por qu&#233; debemos usarlas</title>
		<link>http://blog.darioquintana.com.ar/2007/10/16/named-queries-en-nhibernate-y-por-qu-debemos-usarlas/</link>
		<comments>http://blog.darioquintana.com.ar/2007/10/16/named-queries-en-nhibernate-y-por-qu-debemos-usarlas/#comments</comments>
		<pubDate>Tue, 16 Oct 2007 20:52:44 +0000</pubDate>
		<dc:creator>Dario Quintana</dc:creator>
				<category><![CDATA[NHibernate]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://blog.darioquintana.com.ar/2007/10/16/named-queries-en-nhibernate-y-por-qu-debemos-usarlas/</guid>
		<description><![CDATA[<p>En chat con Fabio Maulo, me estaba contando de las bondades de usar Named Queries en NHibernate, las cuales justifican esta entrada en el blog.</p> <p>Que es una named query? Es una query que se define en los archivos de mapeos y posee un nombre, puede ser HQL o SQL nativo.&#160;&#160;Una HQL query puede ser [...]]]></description>
			<content:encoded><![CDATA[<p>En chat con Fabio Maulo, me estaba contando de las bondades de usar Named Queries en NHibernate, las cuales justifican esta entrada en el blog.</p>
<p>Que es una named query? Es una query que se define en los archivos de mapeos y posee un nombre, puede ser HQL o SQL nativo.&nbsp;&nbsp;Una HQL query puede ser escrita así:</p>
<pre class="csharpcode">  <span class="kwrd">&lt;</span><span class="html">query</span> <span class="attr">name</span><span class="kwrd">="Foo-by-name"</span> <span class="attr">cacheable</span><span class="kwrd">="false"</span> <span class="attr">read-only</span><span class="kwrd">="true"</span><span class="kwrd">&gt;</span>
    <span class="kwrd">&lt;!</span>[CDATA[
        from Foo where Name like :value
    ]]<span class="kwrd">&gt;</span>
  <span class="kwrd">&lt;/</span><span class="html">query</span><span class="kwrd">&gt;</span></pre>
<p>Y la named query equivalente&nbsp;en Sql Nativo se puede escribir de esta manera:&nbsp;</p>
<pre class="csharpcode">  <span class="kwrd">&lt;</span><span class="html">sql-query</span> <span class="attr">name</span><span class="kwrd">="Foo-by-name"</span> <span class="attr">cacheable</span><span class="kwrd">="false"</span> <span class="attr">read-only</span><span class="kwrd">="true"</span><span class="kwrd">&gt;</span>
    <span class="kwrd">&lt;</span><span class="html">return</span> <span class="attr">alias</span><span class="kwrd">="foo"</span> <span class="attr">class</span><span class="kwrd">="Foo"</span><span class="kwrd">/&gt;</span>
    <span class="kwrd">&lt;!</span>[CDATA[
    SELECT
    {foo}.ID AS {foo.Id},
    {foo}.NAME AS {foo.Name},
    {foo}.MISC AS {foo.Misc}
    FROM Foo {foo}
    WHERE {foo}.Name LIKE :value
    ]]<span class="kwrd">&gt;</span>
  <span class="kwrd">&lt;/</span><span class="html">sql-query</span><span class="kwrd">&gt;</span></pre>
<p>El código que lo ejecuta:&nbsp;</p>
<pre class="csharpcode">    Foo f1 = <span class="kwrd">new</span> Foo();
    f1.Misc = <span class="str">"misc 1"</span>;
    f1.Name = <span class="str">"foo 1"</span>;
    session.Save(f1);

    Foo f2 = <span class="kwrd">new</span> Foo();
    f2.Misc = <span class="str">"misc 2"</span>;
    f2.Name = <span class="str">"foo 2"</span>;
    session.Save(f2);

    session.Flush();

    IQuery q = session.GetNamedQuery(<span class="str">"Foo-by-name"</span>);
    q.SetString(<span class="str">"value"</span>, <span class="str">"f%"</span>);

    Debug.Assert(q.List().Count == 2);</pre>
<p>Si se dan cuenta, ambas Named Queries se ejecutan con el mismo código <img src='http://blog.darioquintana.com.ar/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><u>Ventajas</u>: </p>
<ul>
<li>Si queremos cambiar de motor de base de datos, no tenemos que cambiar la query nativa en el código, sino en el mapping.</li>
<li>Si poseemos queries escritas en HQL y queremos usar alguna feature especial del motor, solo debemos escribir una named query equivalente en SQL nativo y usarla.</li>
<li><strong>Muy importante!</strong> Y practicamente <strong>La Razón</strong> de&nbsp;este post. Las named queries <strong>se parsean 1 sola vez</strong>, cuando se llama al <em>.BuildSessionFactory();</em> de modo que si escribimos mal la query (por que nos equivocamos en el nombre de una property por ejemplo), NHibernate nos va a avisar con un error. Las otras queries se parsean TODAS las veces que van a hacer ejecutadas, a menos que estén en una caché destinada a ellas.&nbsp;Esta es&nbsp;una caché MRU (Most Recently Used) de 128 posiciones.</li>
<li>El código queda más limpio !</li>
<li>Se evita la construcción de los queries&nbsp;artesanalmente y variables, haciendo uso y abuso de String.Format( &#8230; ), gastando posiciones en la caché MRU para estas queries.</li>
</ul>
<p>Gracias Fabio por la información.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.darioquintana.com.ar/2007/10/16/named-queries-en-nhibernate-y-por-qu-debemos-usarlas/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SVN y versionado de soluciones Visual Studio</title>
		<link>http://blog.darioquintana.com.ar/2007/06/28/svn-y-versionado-de-soluciones-visual-studio/</link>
		<comments>http://blog.darioquintana.com.ar/2007/06/28/svn-y-versionado-de-soluciones-visual-studio/#comments</comments>
		<pubDate>Thu, 28 Jun 2007 23:16:19 +0000</pubDate>
		<dc:creator>Dario Quintana</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[Tool]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://blog.darioquintana.com.ar/2007/06/28/svn-y-versionado-de-soluciones-visual-studio/</guid>
		<description><![CDATA[<p>Cuando queremos versionar soluciones de Visual Studio, existen ciertos archivos que se deben incluir en el repositorio, y archivos que no. Si estamos usando Resharper, también vamos omitir los archivos que agrega a nuestras carpetas. La estructura de directorios que propongo es esta:</p> <p></p> <p>En este ejemplo para interactuar con el repositorio SVN, utilizaremos <a [...]]]></description>
			<content:encoded><![CDATA[<p>Cuando queremos versionar soluciones de Visual Studio, existen ciertos archivos que se deben incluir en el repositorio, y archivos que no. Si estamos usando Resharper, también vamos omitir los archivos que agrega a nuestras carpetas. La estructura de directorios que propongo es esta:</p>
<p><img src="http://uooopaa.googlepages.com/svnfolder01.png"></p>
<p>En este ejemplo para interactuar con el repositorio SVN, utilizaremos <a href="http://tortoisesvn.tigris.org/">Tortoise SVN</a>.</p>
<p>Consideremos una solución <em>winApp</em>, que tiene dependencias con la librería <em>NHibernate.dll</em>, que se encuentra en la carpeta&nbsp;<em>lib</em>.&nbsp;La solución en el Visual Studio luce así:
<p><img src="http://uooopaa.googlepages.com/svnsolution.png">
<p>&nbsp;Los archivos de dicha solución&nbsp;serían los siguientes:
<p><img src="http://uooopaa.googlepages.com/svnsolution02.png">&nbsp;
<p>Una vez que tenemos nuestra solución creada, y nuestro repositorio funcionando, realizamos un checkout sobre una carpeta que elijamos, en mi caso es &#8220;D:\checkouts&#8221;. Ahí estaran los archivos que necesitan sincronizarse contra el repositorio. Luego del checkout, la carpeta seguirá vacia, pero lista para la sincronización.
<p>Ahora copiamos nuestras carpetas &#8220;lib&#8221; y &#8220;winApp&#8221; dentro de &#8220;checkouts/&#8221; para agregarlas al versionado. Las seleccionamos y hacemos: TortoiseSVN -&gt; Add&#8230;
<p><img src="http://uooopaa.googlepages.com/svnAdd.png">
<p>Ahora tenemos que seleccionar los archivos que vamos a versionar. Dicho de manera contraria, eliminamos archivos que no deseamos que estén en el repositorio.&nbsp;Los archivos no versionables son:
<ul>
<li>Carpeta bin/ y su contenido.
<li>Carpeta obj/ y su contenido.
<li>Carpeta _ReSharper.*/ y su contenido.
<li>Archivo *.resharper
<li>Archivo *.suo</li>
</ul>
<p>Y la selección debe quedar similar a esto:
<p><img src="http://uooopaa.googlepages.com/svnAdd02.png">
<p>Una vez que agregamos los archivos, realicemos el commit !</p>
<p><img src="http://uooopaa.googlepages.com/svncommit.png"></p>
<p>Los archivos que&nbsp;no participan en el versionado&nbsp;son los desmarcados. Y luego el repositorio debería lucir así:</p>
<p><img src="http://uooopaa.googlepages.com/svnrepositorio.png"> </p>
<p>Listo, tenemos nuestras solución sincronizada y versionada ! </p>
<p>Como tip final, podemos usar <a href="http://ankhsvn.tigris.org/">AnkhSVN</a>, un plugin para Visual Studio que nos permite gestionar los comandos de SVN desde Visual Studio.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.darioquintana.com.ar/2007/06/28/svn-y-versionado-de-soluciones-visual-studio/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Vibrant Ink, configuraciones para Visual Studio y Vim</title>
		<link>http://blog.darioquintana.com.ar/2007/06/27/vibrant-ink-configuraciones-para-visual-studio-y-vim/</link>
		<comments>http://blog.darioquintana.com.ar/2007/06/27/vibrant-ink-configuraciones-para-visual-studio-y-vim/#comments</comments>
		<pubDate>Wed, 27 Jun 2007 13:49:20 +0000</pubDate>
		<dc:creator>Dario Quintana</dc:creator>
				<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://blog.darioquintana.com.ar/2007/06/27/vibrant-ink-configuraciones-para-visual-studio-y-vim/</guid>
		<description><![CDATA[<p><a href="http://www.iunknown.com/2007/06/vibrant_ink_vis.html">John Lam en su blog</a> nos deja unas interesantes configuraciones para Visual Studio y Vim. Si usan Visual Studio+Resharper, quizas tengan que reiniciar la configuración de los shortcuts del teclado haciendo: Resharper-&#62;Options&#8230;-&#62;General-&#62;Restore ReSharper Keyboard shorcuts-&#62;ReSharper 2.x or IntelliJ IDEA-&#62; &#160;Apply.</p> <p><a href="http://www.iunknown.com/files/jflam.zip">Descargar configuraciones</a></p> <p></p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.iunknown.com/2007/06/vibrant_ink_vis.html">John Lam en su blog</a> nos deja unas interesantes configuraciones para Visual Studio y Vim. Si usan Visual Studio+Resharper, quizas tengan que reiniciar la configuración de los shortcuts del teclado haciendo: <em>Resharper-&gt;Options&#8230;-&gt;General-&gt;Restore ReSharper Keyboard shorcuts-&gt;ReSharper 2.x or IntelliJ IDEA-&gt; &nbsp;Apply</em>.</p>
<p><a href="http://www.iunknown.com/files/jflam.zip">Descargar configuraciones</a></p>
<p><img src="http://uooopaa.googlepages.com/vssettings.png"></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.darioquintana.com.ar/2007/06/27/vibrant-ink-configuraciones-para-visual-studio-y-vim/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Im&#225;genes como recursos en los assemblies</title>
		<link>http://blog.darioquintana.com.ar/2007/06/26/imgenes-como-recursos-en-los-assemblies/</link>
		<comments>http://blog.darioquintana.com.ar/2007/06/26/imgenes-como-recursos-en-los-assemblies/#comments</comments>
		<pubDate>Wed, 27 Jun 2007 02:41:13 +0000</pubDate>
		<dc:creator>Dario Quintana</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Mono]]></category>
		<category><![CDATA[monosms]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://blog.darioquintana.com.ar/2007/06/26/imgenes-como-recursos-en-los-assemblies/</guid>
		<description><![CDATA[<p>Cuando trabajamos con Visual Studio/Sharpdevelop,&#160;podemos&#160;agregar en un&#160;pictureBox una imagen. Lo podemos hacer de 2 maneras (a simple vista): como Project Resource file ó Local Resource. </p> <p>Ahora bien,&#160;otra manera de&#160;hacer esto,&#160;es añadiendo al proyecto las imágenes y declarándolas como Recursos Embebidos, para eso se podría crear una carpeta. Y después para obtener&#160;dichas imagenes utilizariamos un [...]]]></description>
			<content:encoded><![CDATA[<p>Cuando trabajamos con Visual Studio/Sharpdevelop,&nbsp;podemos&nbsp;agregar en un&nbsp;pictureBox una imagen. Lo podemos hacer de 2 maneras (a simple vista): como Project Resource file ó Local Resource. </p>
<p>Ahora bien,&nbsp;otra manera de&nbsp;hacer esto,&nbsp;es añadiendo al proyecto las imágenes y declarándolas como Recursos Embebidos, para eso se podría crear una carpeta. Y después para obtener&nbsp;dichas imagenes utilizariamos un helper que nos retorne los recursos embebidos.</p>
<p>Así es como se está realizando el manejo de imágenes/iconos en <a href="http://code.google.com/p/paint-mono/">Paint.Net.</a> También copié el mismo esquema <a href="http://monosms.googlecode.com/svn/trunk/src/Mono.Sms/Core/MonoSmsResources.cs">(y código)</a> para <a href="http://code.google.com/p/monosms">Mono.Sms</a>. Lo bueno del esquema que utiliza Paint.Net es que permite tener imágenes personalizadas dependiendo de la cultura:</p>
<p><img src="http://uooopaa.googlepages.com/resources-paint.net.png"> </p>
<p>Cuando Paint.Net necesita una imagen, lo solicita a la clase PdnResources, y esta hace lo siguiente: </p>
<ul>
<li>Verifica si posse una imagen personalizada según la Cultura, si encuentra la devuelve.
<li>Sino, busca dentro del assembly por imagenes embebidas, si encuentra la devuelve.</li>
</ul>
<p>Al momento de buscar una imagen para asignarla a un pictureBox podemos hacer esto:</p>
<pre>

pictureBox.Image&nbsp;= PdnResources.GetImage("image.png");
</pre>
<p>El archivo <a href="http://paint-mono.googlecode.com/svn/trunk/src/Resources/PdnResources.cs">PdnResources</a> puede encontrarse <a href="http://paint-mono.googlecode.com/svn/trunk/src/Resources/PdnResources.cs">aquí</a>, y la manera que trata los recursos la considero como una buena práctica.</p>
<p>Mono.Sms contiene todas las imágenes&nbsp;embebidas de esta misma manera. Así se&nbsp;ven los recursos de Mono.Sms&nbsp;con Reflector:</p>
<p>&nbsp;<img src="http://uooopaa.googlepages.com/monosmsresources.png"></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.darioquintana.com.ar/2007/06/26/imgenes-como-recursos-en-los-assemblies/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LG R1 y Ubuntu 7.04</title>
		<link>http://blog.darioquintana.com.ar/2007/05/10/lg-r1-y-ubuntu-704/</link>
		<comments>http://blog.darioquintana.com.ar/2007/05/10/lg-r1-y-ubuntu-704/#comments</comments>
		<pubDate>Thu, 10 May 2007 03:41:09 +0000</pubDate>
		<dc:creator>Dario Quintana</dc:creator>
				<category><![CDATA[tips]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://blog.darioquintana.com.ar/2007/05/10/lg-r1-y-ubuntu-704/</guid>
		<description><![CDATA[<p>Estoy usando Ubuntu 7.04 muy conforme, solamente tuve problemas para configurar la resolución del monitor, es una laptop LG R1 pro Express Dual con Monitor de 14.1&#8243; en un Ubuntu 7.04. Pero lo solucioné.<br /> Para poder configurar la resolucion 1280&#215;768 en este monitor widescreen (una resolución muy particular), debemos cambiar de driver de video [...]]]></description>
			<content:encoded><![CDATA[<p>Estoy usando Ubuntu 7.04 muy conforme, solamente tuve problemas para configurar la resolución del monitor, es una laptop LG R1 pro Express Dual con Monitor de 14.1&#8243; en un Ubuntu 7.04. Pero lo solucioné.<br />
Para poder configurar la resolucion 1280&#215;768 en este monitor widescreen (una resolución muy particular), debemos cambiar de driver de video haciendo:</p>
<pre>$sudo apt-get install xserver-xorg-video-intel</pre>
<p>El gestor se encargará de desinstalar el paquete xserver-xorg-video-i810 que habia instalado automáticamente.<br />
Eso es todo.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.darioquintana.com.ar/2007/05/10/lg-r1-y-ubuntu-704/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>plugins de WordPress usados este blog</title>
		<link>http://blog.darioquintana.com.ar/2007/05/01/plugins-de-wordpress-usados-este-blog/</link>
		<comments>http://blog.darioquintana.com.ar/2007/05/01/plugins-de-wordpress-usados-este-blog/#comments</comments>
		<pubDate>Tue, 01 May 2007 23:14:33 +0000</pubDate>
		<dc:creator>Dario Quintana</dc:creator>
				<category><![CDATA[blog]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[Tool]]></category>

		<guid isPermaLink="false">http://blog.darioquintana.com.ar/2007/05/01/plugins-de-wordpress-usados-este-blog/</guid>
		<description><![CDATA[<p>Una de las ventajas de WordPress es la gran cantidad de plugins que tiene, hay para todos los gustos y todas las edades.</p> <p>En este blog estoy usando unos cuantos y los voy a enumerar:</p> <a href="http://akismet.com/">Akismet</a>: controla el spam en los comentarios del blog (y lo hace bastante bien). <a href="http://www.skippy.net/blog/plugins/">Respaldo de la base [...]]]></description>
			<content:encoded><![CDATA[<p>Una de las ventajas de WordPress es la gran cantidad de plugins que tiene, hay para todos los gustos y todas las edades.</p>
<p>En este blog estoy usando unos cuantos y los voy a enumerar:</p>
<ul>
<li><a href="http://akismet.com/">Akismet</a>: controla el spam en los comentarios del blog (y lo hace bastante bien).</li>
<li><a href="http://www.skippy.net/blog/plugins/">Respaldo de la base de datos de WordPress</a>: realiza un script SQL de toda la base de datos de tu blog y te la podés descargar en un archivo o enviar a tu mail.</li>
<li><a href="http://www.oratransplant.nl/uga">Ultimate Google Analytics</a>: Habilita Google Analytics en el blog y te aleja de tener que poner el script a mano.</li>
<li><a href="http://www.neato.co.nz/ultimate-tag-warrior/">Ultimate Tag Warrior</a>: permite asignarle Tags a los posts. y también hacer la nube de tags, mostrando los tags que tienen más post, más grandes.</li>
<li><a href="http://orderedlist.com/wordpress-plugins/feedburner-plugin/">Feedburner Feed Replacement</a>: (este me gusta mucho) Forwardea todo el trafico de los feeds de WordPress, a FeedBurner, y entonces con la cuenta de FeedBurner podés ver la cantidad de suscriptores a tu feed (entre otras cosas). Una vez instalado demora 24 hs aprox. para ver los cambios. Está bueno si hace rato tenés tu blog online y querés cambiar a FeedBurner sin alterar los links de los feeds.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.darioquintana.com.ar/2007/05/01/plugins-de-wordpress-usados-este-blog/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Formatear c&#243;digo para publicar en la web o blogs</title>
		<link>http://blog.darioquintana.com.ar/2007/04/01/formatear-cdigo-para-publicar-en-la-web-o-blogs/</link>
		<comments>http://blog.darioquintana.com.ar/2007/04/01/formatear-cdigo-para-publicar-en-la-web-o-blogs/#comments</comments>
		<pubDate>Sun, 01 Apr 2007 12:49:58 +0000</pubDate>
		<dc:creator>Dario Quintana</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[expresiones regulares]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[Tool]]></category>

		<guid isPermaLink="false">http://blog.darioquintana.com.ar/2007/04/01/formatear-cdigo-para-publicar-en-la-web-o-blogs/</guid>
		<description><![CDATA[<p><a href="http://manoli.net/csharpformat/">Este enlace</a> me lo debía desde hace tiempo. Con <a href="http://manoli.net/csharpformat/">esta</a> herramienta web podemos formatear el codigo&#160;C#, Vb, HTML&#160;o SQL a html para poder publicarlo en blogs o en nuestros sitios.</p> <p>Solamente debemos copiar esto en la sección &#60;head&#62; de nuestro blog o site:</p> &#60;link rel="stylesheet" type="text/css" href="csharp.css" &#62; <p>El código de esta herramienta, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://manoli.net/csharpformat/">Este enlace</a> me lo debía desde hace tiempo. Con <a href="http://manoli.net/csharpformat/">esta</a> herramienta web podemos formatear el codigo&nbsp;C#, Vb, HTML&nbsp;o SQL a html para poder publicarlo en blogs o en nuestros sitios.</p>
<p>Solamente debemos copiar esto en la sección &lt;head&gt; de nuestro blog o site:</p>
<pre class="csharpcode"><span class="kwrd">&lt;</span><span class="html">link</span> <span class="attr">rel</span><span class="kwrd">="stylesheet"</span> <span class="attr">type</span><span class="kwrd">="text/css"</span> <span class="attr">href</span><span class="kwrd">="csharp.css"</span> <span class="kwrd">&gt;</span>
</pre>
<p>El código de esta herramienta, que&nbsp;usa expresiones regulares está <a href="http://manoli.net/csharpformat/CSharpFormat.zip">aquí.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.darioquintana.com.ar/2007/04/01/formatear-cdigo-para-publicar-en-la-web-o-blogs/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>&#191;C&#243;mo huele mi c&#243;digo?</title>
		<link>http://blog.darioquintana.com.ar/2007/02/23/cmo-huele-mi-cdigo/</link>
		<comments>http://blog.darioquintana.com.ar/2007/02/23/cmo-huele-mi-cdigo/#comments</comments>
		<pubDate>Fri, 23 Feb 2007 16:42:17 +0000</pubDate>
		<dc:creator>Dario Quintana</dc:creator>
				<category><![CDATA[Refactoring]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://blog.darioquintana.com.ar/2007/02/23/cmo-huele-mi-cdigo/</guid>
		<description><![CDATA[<p>Que buena pregunta: progamo bien? o solamente abro la IDE y comienzo a tirar lineas sueltas?</p> <p>Bueno, está muy bien que al comenzar un proyecto comencemos a tirar lineas sueltas que vislumbran buenas ideas y quizas no estén muy bien organizadas, pero&#8230; en algún momento tendremos que aplicar a nuestro código la buena palabra: <a [...]]]></description>
			<content:encoded><![CDATA[<p>Que buena pregunta: progamo bien? o solamente abro la IDE y comienzo a tirar lineas sueltas?</p>
<p>Bueno, está muy bien que al comenzar un proyecto comencemos a tirar lineas sueltas que vislumbran buenas ideas y quizas no estén muy bien organizadas, pero&#8230; en algún momento tendremos que aplicar a nuestro código la buena palabra: <strong><a href="http://es.wikipedia.org/wiki/Refactorizaci%C3%B3n">refactoring!</a></strong></p>
<p>Un programador con unas cuantas lineas de código encima, deberia darse cuenta sobre cómo huele su código. Si aún no desarrolló el olfato es hora de que lo haga, a menos quiera asegurarse trabajo de por vida&#8230;creando código que no es mantenible (y bueno&#8230;hay gente que le gusta estar ocupada <img src='http://blog.darioquintana.com.ar/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ) </p>
<p><a href="http://www.codinghorror.com/blog/archives/000589.html">Aquí le dejo un post</a> donde hay olores que le serán muy conocidos&#8230;otros no tanto quizas.</p>
<p>Y &#8230; si insisten en crear código IN,DES,NO, ó NULL-mantenible &#8230; <a href="http://thc.org/root/phun/unmaintain.html">sigan este enlace</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.darioquintana.com.ar/2007/02/23/cmo-huele-mi-cdigo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

