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

<channel>
	<title>jHernandez Blog &#187; Developer</title>
	<atom:link href="http://jhernandez.gpltarragona.org/category/developer/feed/" rel="self" type="application/rss+xml" />
	<link>http://jhernandez.gpltarragona.org</link>
	<description>Blog de actividad de Jonathan Hernández Velasco</description>
	<pubDate>Tue, 16 Mar 2010 18:18:30 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.3</generator>
	<language>en</language>
			<item>
		<title>Problemas con los botones de algunos programas Java en Ubuntu Karmic</title>
		<link>http://jhernandez.gpltarragona.org/2010/02/problemas-con-los-botones-de-algunos-programas-java-en-ubuntu-karmic/</link>
		<comments>http://jhernandez.gpltarragona.org/2010/02/problemas-con-los-botones-de-algunos-programas-java-en-ubuntu-karmic/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 19:46:15 +0000</pubDate>
		<dc:creator>jBilbo</dc:creator>
		
		<category><![CDATA[Developer]]></category>

		<category><![CDATA[Software Libre]]></category>

		<guid isPermaLink="false">http://jhernandez.gpltarragona.org/?p=898</guid>
		<description><![CDATA[Me ha pasado ya dos veces. La primera con Eclipse hace ya un tiempo. Me lo bajé de su web y a la hora de intentar instalar un plugin, no podía apretar la tecla &#8220;Ok&#8221;. Se quedaba apretada siempre que volvía a pasar el ratón por encima, muy molesto. Y ahora también me ha pasado [...]]]></description>
			<content:encoded><![CDATA[<p>Me ha pasado ya dos veces. La primera con <a href="http://www.eclipse.org/">Eclipse</a> hace ya un tiempo. Me lo bajé de su web y a la hora de intentar instalar un plugin, no podía apretar la tecla &#8220;Ok&#8221;. Se quedaba apretada siempre que volvía a pasar el ratón por encima, muy molesto. Y ahora también me ha pasado con <a href="http://azureus.sourceforge.net/">Azureus</a>, había una actualización y al intentar darle a &#8220;Aceptar&#8221; lo mismo&#8230; curiosamente el &#8220;Cancelar&#8221; siempre funciona.<br />
La solución es la misma para los 2 casos, exportar una variable antes de ejecutar el programa:</p>
<pre>export GDK_NATIVE_WINDOWS=1</pre>
<p>Así con eclipse por ejemplo, sería:</p>
<pre>#!/bin/sh
export GDK_NATIVE_WINDOWS=1
/home/user/eclipse/eclipse</pre>
<p>Y para azureus, simplemente he añadido esa línea en el script de inicio después del #!/bin/bash, en mi caso estaba en:</p>
<pre>/home/user/azureus/azureus</pre>
<p>Y ha quedado así:</p>
<pre>#!/bin/bash
export GDK_NATIVE_WINDOWS=1

######## CONFIGURATION OPTIONS ########</pre>
]]></content:encoded>
			<wfw:commentRss>http://jhernandez.gpltarragona.org/2010/02/problemas-con-los-botones-de-algunos-programas-java-en-ubuntu-karmic/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Articulo random en Rails</title>
		<link>http://jhernandez.gpltarragona.org/2009/03/articulo-random-en-rails/</link>
		<comments>http://jhernandez.gpltarragona.org/2009/03/articulo-random-en-rails/#comments</comments>
		<pubDate>Wed, 11 Mar 2009 18:45:09 +0000</pubDate>
		<dc:creator>jBilbo</dc:creator>
		
		<category><![CDATA[Developer]]></category>

		<guid isPermaLink="false">http://jhernandez.gpltarragona.org/?p=791</guid>
		<description><![CDATA[Queremos obtener un registro aleatorio de la BD en Rails:
def random
  @articulo = Articulo.find(:first, :order => 'RAND()')
end
]]></description>
			<content:encoded><![CDATA[<p>Queremos obtener un registro aleatorio de la BD en Rails:</p>
<pre>def random
  @articulo = Articulo.find(:first, :order => 'RAND()')
end</pre>
]]></content:encoded>
			<wfw:commentRss>http://jhernandez.gpltarragona.org/2009/03/articulo-random-en-rails/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Actualizar Ruby on Rails</title>
		<link>http://jhernandez.gpltarragona.org/2009/03/actualizar-ruby-on-rails/</link>
		<comments>http://jhernandez.gpltarragona.org/2009/03/actualizar-ruby-on-rails/#comments</comments>
		<pubDate>Mon, 09 Mar 2009 18:11:33 +0000</pubDate>
		<dc:creator>jBilbo</dc:creator>
		
		<category><![CDATA[Developer]]></category>

		<guid isPermaLink="false">http://jhernandez.gpltarragona.org/?p=789</guid>
		<description><![CDATA[Antes de actualizar Ruby on Rails es conveniente actualizar también gems y asegurarnos que funciona bien con la versión de Ruby que tenemos instalada.
Después de esto:
gem install rails --include-dependencies
Para actualizar nuestros proyectos de Rails con las mejoras del nuevo rails, hacemos un:
cd /directorio/de/nuestro/proyecto
rake rails:update
Esto nos actualizará las funciones javascript, los scripts/ i archivos internos del [...]]]></description>
			<content:encoded><![CDATA[<p>Antes de actualizar Ruby on Rails es conveniente actualizar también gems y asegurarnos que funciona bien con la versión de Ruby que tenemos instalada.<br />
Después de esto:</p>
<pre>gem install rails --include-dependencies</pre>
<p>Para actualizar nuestros proyectos de Rails con las mejoras del nuevo rails, hacemos un:</p>
<pre>cd /directorio/de/nuestro/proyecto
rake rails:update</pre>
<p>Esto nos actualizará las funciones javascript, los scripts/ i archivos internos del framework como por ejemplo config/boot.rb.</p>
]]></content:encoded>
			<wfw:commentRss>http://jhernandez.gpltarragona.org/2009/03/actualizar-ruby-on-rails/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Actualizar RubyGems</title>
		<link>http://jhernandez.gpltarragona.org/2009/03/actualizar-rubygems/</link>
		<comments>http://jhernandez.gpltarragona.org/2009/03/actualizar-rubygems/#comments</comments>
		<pubDate>Sat, 07 Mar 2009 18:08:34 +0000</pubDate>
		<dc:creator>jBilbo</dc:creator>
		
		<category><![CDATA[Developer]]></category>

		<guid isPermaLink="false">http://jhernandez.gpltarragona.org/?p=778</guid>
		<description><![CDATA[Para actualizar Gems es muy fácil, no requiere reinstalar el paquete. Primero miramos nuestra versión de gems con:
gem -v
Si gem os da error, probar con &#8220;gem1.8 -v&#8221;. En caso de que sí funcione, podeis borrar /usr/bin/gem y hacer un link simbólico hacia gem1.8:
sudo ln -s /usr/bin/gem1.8 /usr/bin/gem
Si tenemos gems &#62;= 0.8.5, incorpora una manera directa [...]]]></description>
			<content:encoded><![CDATA[<p>Para actualizar Gems es muy fácil, no requiere reinstalar el paquete. Primero miramos nuestra versión de gems con:</p>
<pre>gem -v</pre>
<p>Si gem os da error, probar con &#8220;gem1.8 -v&#8221;. En caso de que sí funcione, podeis borrar /usr/bin/gem y hacer un link simbólico hacia gem1.8:</p>
<pre>sudo ln -s /usr/bin/gem1.8 /usr/bin/gem</pre>
<p>Si tenemos gems &gt;= 0.8.5, incorpora una manera directa de hacerlo:</p>
<pre>sudo gem update --system</pre>
<p>NOTA: Rubygems 1.1 y 1.2 tiene un bug que impide actualizar (sale siempre &#8220;Nothing to update&#8221;). En caso de tener ese problema, lo haremos de la manera antigua, que se muestra a continuación:</p>
<p>Para versiones anteriores (gems &lt; 0.8.5), hay una gema que se encarga de ello:</p>
<pre>sudo gem install rubygems-update
sudo update_rubygems</pre>
]]></content:encoded>
			<wfw:commentRss>http://jhernandez.gpltarragona.org/2009/03/actualizar-rubygems/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Reemplazar una palabra dentro de un campo en MySQL</title>
		<link>http://jhernandez.gpltarragona.org/2009/03/reemplazar-una-palabra-dentro-de-un-campo-en-mysql/</link>
		<comments>http://jhernandez.gpltarragona.org/2009/03/reemplazar-una-palabra-dentro-de-un-campo-en-mysql/#comments</comments>
		<pubDate>Thu, 05 Mar 2009 18:35:55 +0000</pubDate>
		<dc:creator>jBilbo</dc:creator>
		
		<category><![CDATA[Developer]]></category>

		<guid isPermaLink="false">http://jhernandez.gpltarragona.org/?p=775</guid>
		<description><![CDATA[Si queremos cambiar dentro del campo descripcion de la tabla casa todas las palabras que dicen &#8220;benita&#8221; por &#8220;bonita&#8221;, se haría de la siguiente manera:
UPDATE casa SET descripcion=REPLACE(descripcion,'benita','bonita')
]]></description>
			<content:encoded><![CDATA[<p>Si queremos cambiar dentro del campo descripcion de la tabla casa todas las palabras que dicen &#8220;benita&#8221; por &#8220;bonita&#8221;, se haría de la siguiente manera:</p>
<pre>UPDATE casa SET descripcion=REPLACE(descripcion,'benita','bonita')</pre>
]]></content:encoded>
			<wfw:commentRss>http://jhernandez.gpltarragona.org/2009/03/reemplazar-una-palabra-dentro-de-un-campo-en-mysql/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Anchura de un campo en MySQL</title>
		<link>http://jhernandez.gpltarragona.org/2009/03/anchura-de-un-campo-en-mysql/</link>
		<comments>http://jhernandez.gpltarragona.org/2009/03/anchura-de-un-campo-en-mysql/#comments</comments>
		<pubDate>Tue, 03 Mar 2009 11:51:30 +0000</pubDate>
		<dc:creator>jBilbo</dc:creator>
		
		<category><![CDATA[Developer]]></category>

		<guid isPermaLink="false">http://jhernandez.gpltarragona.org/?p=773</guid>
		<description><![CDATA[Si tienes en MySQL un campo de nombre &#8220;apellido&#8221; con tipo varchar(15) en la tabla &#8220;persona&#8221; y quieres obtener las personas que tienen un apellido más largo o igual que 8 carácteres… ¿cómo se hace en MySQL?
SELECT * FROM persona where LENGTH(apellido) >= 8
El comando clave es el LENGTH.
]]></description>
			<content:encoded><![CDATA[<p>Si tienes en MySQL un campo de nombre &#8220;apellido&#8221; con tipo varchar(15) en la tabla &#8220;persona&#8221; y quieres obtener las personas que tienen un apellido más largo o igual que 8 carácteres… ¿cómo se hace en MySQL?</p>
<pre>SELECT * FROM persona where LENGTH(apellido) >= 8</pre>
<p>El comando clave es el <a href="http://web.archive.org/web/20070507133317/http://dev.mysql.com/doc/refman/5.0/es/string-functions.html">LENGTH</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://jhernandez.gpltarragona.org/2009/03/anchura-de-un-campo-en-mysql/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Expresiones regulares</title>
		<link>http://jhernandez.gpltarragona.org/2008/11/expresiones-regulares/</link>
		<comments>http://jhernandez.gpltarragona.org/2008/11/expresiones-regulares/#comments</comments>
		<pubDate>Tue, 04 Nov 2008 17:33:50 +0000</pubDate>
		<dc:creator>jBilbo</dc:creator>
		
		<category><![CDATA[Developer]]></category>

		<guid isPermaLink="false">http://jhernandez.gpltarragona.org/?p=690</guid>
		<description><![CDATA[&#8220;Si tienes un problema y la solución son las expresiones regulares&#8230; entonces tienes dos problemas.&#8221;
]]></description>
			<content:encoded><![CDATA[<p><em>&#8220;Si tienes un problema y la solución son las expresiones regulares&#8230; entonces tienes dos problemas.&#8221;</em></p>
]]></content:encoded>
			<wfw:commentRss>http://jhernandez.gpltarragona.org/2008/11/expresiones-regulares/feed/</wfw:commentRss>
		</item>
		<item>
		<title>ruby-debug-ide desactualizado</title>
		<link>http://jhernandez.gpltarragona.org/2008/05/ruby-debug-ide-desactualizado/</link>
		<comments>http://jhernandez.gpltarragona.org/2008/05/ruby-debug-ide-desactualizado/#comments</comments>
		<pubDate>Thu, 08 May 2008 10:13:10 +0000</pubDate>
		<dc:creator>jBilbo</dc:creator>
		
		<category><![CDATA[Developer]]></category>

		<guid isPermaLink="false">http://jhernandez.gpltarragona.org/blog/?p=634</guid>
		<description><![CDATA[ruby-debug-ide (o FastDebugger) es un paquete que utilizan algunos IDEs como Netbeans para depurar código ruby de manera eficiente a través de ruby-debug.
Ya hace unos días que ruby-debug-ide esta desactualizado en el repositorio central de gems. Si actualizais ruby-debug y ruby-debug-base os encontrareis con lo siguiente:
ERROR:  Error installing ruby-debug-ide:
      [...]]]></description>
			<content:encoded><![CDATA[<p>ruby-debug-ide (o FastDebugger) es un paquete que utilizan algunos IDEs como <a href="http://netbeans.org">Netbeans</a> para depurar código ruby de manera eficiente a través de ruby-debug.<br />
Ya hace unos días que ruby-debug-ide esta desactualizado en el repositorio central de gems. Si actualizais ruby-debug y ruby-debug-base os encontrareis con lo siguiente:</p>
<pre>ERROR:  Error installing ruby-debug-ide:
        ruby-debug-ide requires ruby-debug-base (= 0.10.0)</pre>
<p>Lo más lógico sería instalar la versión específica de ruby-debug que te pide (0.10.0), pero no esta en el repositorio de gems (supongo que el autor la debe de haber borrado y dejado sólo la última). Solución: Bajárselo a mano de su <a href="http://rubyforge.org/frs/?group_id=1900">home</a> y instalárselo <img src='http://jhernandez.gpltarragona.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Bajamos los paquetes que nos pide ruby-debug-ide</p>
<pre>$ wget http://rubyforge.org/frs/download.php/29708/ruby-debug-0.10.0.gem http://rubyforge.org/frs/download.php/29702/ruby-debug-base-0.10.0.gem</pre>
<p>Esto desinstala cualquier versión que tuviéramos en el sistema</p>
<pre>$ sudo gem uninstall ruby-debug ruby-debug-base ruby-debug-ide</pre>
<p>Instala los paquetes</p>
<pre>$ sudo gem install ruby-debug-base-0.10.0.gem ruby-debug-0.10.0.gem</pre>
<p>Ahora sí, instalamos ruby-debug-ide</p>
<pre>$ sudo gem install ruby-debug-ide</pre>
]]></content:encoded>
			<wfw:commentRss>http://jhernandez.gpltarragona.org/2008/05/ruby-debug-ide-desactualizado/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Excusas de programador</title>
		<link>http://jhernandez.gpltarragona.org/2008/04/excusas-de-programador/</link>
		<comments>http://jhernandez.gpltarragona.org/2008/04/excusas-de-programador/#comments</comments>
		<pubDate>Fri, 04 Apr 2008 11:46:29 +0000</pubDate>
		<dc:creator>jBilbo</dc:creator>
		
		<category><![CDATA[Developer]]></category>

		<guid isPermaLink="false">http://jhernandez.gpltarragona.org/blog/?p=629</guid>
		<description><![CDATA[
Visto en movesonrails.
]]></description>
			<content:encoded><![CDATA[<div align="center"><img src="http://www.movesonrails.com/files/compiling_new_style.png" alt="Excusas" title="Excusas" /></div>
<p>Visto en <a href="http://movesonrails.com/articles/2008/01/31/the-new-programmers-excuse-for-slacking-of">movesonrails</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://jhernandez.gpltarragona.org/2008/04/excusas-de-programador/feed/</wfw:commentRss>
		</item>
		<item>
		<title>greph o grep sin hidden files (ficheros ocultos)</title>
		<link>http://jhernandez.gpltarragona.org/2008/02/greph-o-grep-sin-hidden-files-ficheros-ocultos/</link>
		<comments>http://jhernandez.gpltarragona.org/2008/02/greph-o-grep-sin-hidden-files-ficheros-ocultos/#comments</comments>
		<pubDate>Fri, 22 Feb 2008 13:24:04 +0000</pubDate>
		<dc:creator>jBilbo</dc:creator>
		
		<category><![CDATA[Developer]]></category>

		<category><![CDATA[Software Libre]]></category>

		<guid isPermaLink="false">http://jhernandez.gpltarragona.org/blog/?p=626</guid>
		<description><![CDATA[Grep es uno de los comandos de linux que más hago servir. Dentro de un proyecto normalmente busco las referencias a alguna palabra por grep recursivamente, pero lo malo es que si el proyecto tiene carpetas o archivos ocultos que no quieres incluir en la búsqueda (grep por defecto busca en todos los archivos, ocultos [...]]]></description>
			<content:encoded><![CDATA[<p>Grep es uno de los comandos de linux que más hago servir. Dentro de un proyecto normalmente busco las referencias a alguna palabra por grep recursivamente, pero lo malo es que si el proyecto tiene carpetas o archivos ocultos que no quieres incluir en la búsqueda (grep por defecto busca en todos los archivos, ocultos incluido) no hay manera fácil de hacerlo.</p>
<p>Por ejemplo, en el caso de que estes en un proyecto controlado por subversion y por tanto tienes muchas carpetas .svn con muchos .*, para ejecutar grep recursivamente pero sólo en ficheros y carpetas no ocultas deberíamos ejecutar esto:</p>
<pre>grep -r "texto-a-buscar" `find &#92;( ! -regex '.*/&#92;..*' &#92;) -type f`</pre>
<p>No es un comando fácil para estar copiando/pegando en la consola&#8230; pero aquí entran los scripts en bash. Poniendo este sencillo script en cualquier lugar de vuestro path (/usr/local/bin por ej.) tendreis acceso a él desde cualquier usuario. Su uso es trivial, ponemos greph y luego el término a buscar. Ejemplos:</p>
<pre>greph hola
greph 'hola que tal'</pre>
<p>El código del script:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="re3">#!/bin/bash</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span> <span class="br0">&#91;</span> -z <span class="st0">&quot;$1&quot;</span> <span class="br0">&#93;</span>; <span class="kw1">then</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="kw3">echo</span> <span class="st0">&quot;Se necesita un parametro para buscar entre los ficheros (p.e. greph foo)&quot;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">else</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp; <span class="kw3">exec</span> <span class="kw2">grep</span> -r <span class="st0">&quot;$1&quot;</span> `<span class="kw2">find</span> \<span class="br0">&#40;</span> ! -regex <span class="st0">&#8216;.*/<span class="es0">\.</span>.*&#8217;</span> \<span class="br0">&#41;</span> -<span class="kw3">type</span> f`</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">fi</span></div>
</li>
</ol>
</div>
<p>PARA ASEGURAROS QUE NO HAY NINGÚN CARACTER RARO, EN VEZ DE COPIAR/PEGAR BAJARLO DESDE AQUÍ: <strong><a href="http://jhernandez.gpltarragona.org/aplicaciones/scripts/greph">greph</a></strong></p>
<p>Acordaos de darle permisos de ejecución:</p>
<pre>chmod +x greph</pre>
]]></content:encoded>
			<wfw:commentRss>http://jhernandez.gpltarragona.org/2008/02/greph-o-grep-sin-hidden-files-ficheros-ocultos/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
