<?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>Qbit Mexhico Blog</title>
	<atom:link href="http://qbit.com.mx/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://qbit.com.mx/blog</link>
	<description>Lo que hacemos y pensamos se escribe aqui</description>
	<lastBuildDate>Fri, 29 Mar 2013 21:04:22 +0000</lastBuildDate>
	<language>es-ES</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>C#, DataTable, Linq y Expresiones Regulares</title>
		<link>http://qbit.com.mx/blog/2013/03/29/c-datatable-linq-y-expresiones-regulares/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=c-datatable-linq-y-expresiones-regulares</link>
		<comments>http://qbit.com.mx/blog/2013/03/29/c-datatable-linq-y-expresiones-regulares/#comments</comments>
		<pubDate>Fri, 29 Mar 2013 21:04:22 +0000</pubDate>
		<dc:creator>mike</dc:creator>
				<category><![CDATA[c#]]></category>
		<category><![CDATA[Expresiones Regulares]]></category>
		<category><![CDATA[Linq]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[DataTable]]></category>
		<category><![CDATA[linq]]></category>
		<category><![CDATA[RegExp]]></category>

		<guid isPermaLink="false">http://qbit.com.mx/blog/?p=1549</guid>
		<description><![CDATA[Buenas tardes, compartiendo un poco de mis experiencias en programación. Esta vez utilizando un objeto de tipo DataTable en un Linq con un filtro utilizando Expresiones Regulares. Espero sea de su utilidad. &#160; var miExpReg = new System.Text.RegularExpressions.Regex( @"\D{2}-\D{1}\w{3}-\D{2}-\d{3}-\d{2}"); var lst = (from DataRow r in MiDataTable where miExpReg.Matches(r["Folio"].ToString()).Count > 0 select r); Algo un [...]<div class='yarpp-related-rss'>

Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2008/02/06/sobre-qbit-mexhico/' rel='bookmark' title='Sobre Dcod Mexhico'>Sobre Dcod Mexhico</a></li>
</ol>

Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.
</div>
]]></description>
				<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=e8c30513ee6bddd0ca43b51c56cf58cd&amp;default=http://qbit.com.mx/blog/archivos/blank_gravatar.png' alt='No Gravatar' width=40 height=40/><p>Buenas tardes, compartiendo un poco de mis experiencias en programación. Esta vez utilizando un objeto de tipo DataTable en un Linq con un filtro utilizando Expresiones Regulares. Espero sea de su utilidad.</p>
<p>&nbsp;</p>
<pre language="c#">
var miExpReg =
  new System.Text.RegularExpressions.Regex(
    @"\D{2}-\D{1}\w{3}-\D{2}-\d{3}-\d{2}");

var lst = 
  (from DataRow r in MiDataTable
   where miExpReg.Matches(r["Folio"].ToString()).Count > 0
   select r);
</pre>
<p>Algo un tanto simple, pero me fue útil y un tanto complicado para encontrarlo.</p>
<h2>Compartir y Disfrutar</h2>

<!-- Start WP Socializer - Social Buttons - Output -->
 &bull; <a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F03%2F29%2Fc-datatable-linq-y-expresiones-regulares%2F&amp;t=C%23%2C+DataTable%2C+Linq+y+Expresiones+Regulares" title="Share this on Facebook" target="_blank" rel="nofollow">Facebook</a> &bull; <a href="http://twitter.com/home?status=C%23%2C+DataTable%2C+Linq+y+Expresiones+Regulares%20-%20http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F03%2F29%2Fc-datatable-linq-y-expresiones-regulares%2F%20@QbitMexhico" title="Tweet this !" target="_blank" rel="nofollow">Twitter</a> &bull; <a href="http://delicious.com/post?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F03%2F29%2Fc-datatable-linq-y-expresiones-regulares%2F&amp;title=C%23%2C+DataTable%2C+Linq+y+Expresiones+Regulares&amp;notes=Buenas+tardes%2C+compartiendo+un+poco+de+mis+experiencias+en+programaci%C3%B3n.+Esta+vez+utilizando+un+objeto+de+tipo+DataTable+en+un+Linq+con+un+filtro+utilizando+Expresiones+Regulares.+Espero+sea+de+su+utilidad.%0D%0A%0D%0A%26nbsp%3B%0D%0A%0D%0Avar+miExpReg+%3D%0D%0A++new+System." title="Post this on Delicious" target="_blank" rel="nofollow">Delicious</a> &bull; <a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F03%2F29%2Fc-datatable-linq-y-expresiones-regulares%2F&amp;title=C%23%2C+DataTable%2C+Linq+y+Expresiones+Regulares&amp;bodytext=Buenas+tardes%2C+compartiendo+un+poco+de+mis+experiencias+en+programaci%C3%B3n.+Esta+vez+utilizando+un+objeto+de+tipo+DataTable+en+un+Linq+con+un+filtro+utilizando+Expresiones+Regulares.+Espero+sea+de+su+utilidad.%0D%0A%0D%0A%26nbsp%3B%0D%0A%0D%0Avar+miExpReg+%3D%0D%0A++new+System." title="Submit this to Digg" target="_blank" rel="nofollow">Digg</a> &bull; <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F03%2F29%2Fc-datatable-linq-y-expresiones-regulares%2F&amp;title=C%23%2C+DataTable%2C+Linq+y+Expresiones+Regulares" title="Submit this to StumbleUpon" target="_blank" rel="nofollow">StumbleUpon</a>
<!-- End WP Socializer - Social Buttons - Output -->
<div class='yarpp-related-rss'>
<p>Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2008/02/06/sobre-qbit-mexhico/' rel='bookmark' title='Sobre Dcod Mexhico'>Sobre Dcod Mexhico</a></li>
</ol></p>
<p>Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://qbit.com.mx/blog/2013/03/29/c-datatable-linq-y-expresiones-regulares/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PL/SQL Cursores Anidados</title>
		<link>http://qbit.com.mx/blog/2013/03/27/plsql-cursoresanidados/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=plsql-cursoresanidados</link>
		<comments>http://qbit.com.mx/blog/2013/03/27/plsql-cursoresanidados/#comments</comments>
		<pubDate>Wed, 27 Mar 2013 20:45:07 +0000</pubDate>
		<dc:creator>mike</dc:creator>
				<category><![CDATA[oracle]]></category>
		<category><![CDATA[PL/SQL]]></category>
		<category><![CDATA[ANIDADOS]]></category>
		<category><![CDATA[CURSOR]]></category>
		<category><![CDATA[NESTED]]></category>

		<guid isPermaLink="false">http://qbit.com.mx/blog/?p=1544</guid>
		<description><![CDATA[El día de hoy tuve que volver a mis origenes y me encargaron la tarea de sacar un reporte en la base de datos, Para eso era necesario crear un PL/SQL con dos cursores anidados (NESTED CURSOR), y bueno me tome la tarea de buscar en Internet y encontré partes que me ayudaron. Comparto con ustedes un [...]<div class='yarpp-related-rss yarpp-related-none'>

No hay entradas relacionadas
</div>
]]></description>
				<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=e8c30513ee6bddd0ca43b51c56cf58cd&amp;default=http://qbit.com.mx/blog/archivos/blank_gravatar.png' alt='No Gravatar' width=40 height=40/><p>El día de hoy tuve que volver a mis origenes y me encargaron la tarea de sacar un reporte en la base de datos, Para eso era necesario crear un PL/SQL con dos cursores anidados (NESTED CURSOR), y bueno me tome la tarea de buscar en Internet y encontré partes que me ayudaron. Comparto con ustedes un script para obtener esa información:</p>
<pre>declare
  v_idNivel1 number;
  v_nombreNivel1 varchar2(300);
  v_idNivel2 number;
  v_nombreNivel2 varchar2(300);

   /* Primer Cursor */
   cursor cur_nivel1 is
     select id, nombre 
      from tablaNivel1;

   /* Segundo Cursor */
   cursor cur_nivel2 is
      select id, nombre 
      from tablaNivel2
      where idPadre = v_idNivel1;

begin   
   /* Primer Cursor */
   open cur_nivel1;
   loop
      fetch cur_nivel1 into v_idNivel1, v_nombreNivel1;
      EXIT WHEN cur_nivel1%NOTFOUND;

      DBMS_OUTPUT.PUT_LINE( v_nombreNivel1 );

      /* Segundo Cursor */
      open cur_nivel2;
      loop
         fetch cur_nivel2 into v_idNivel2, v_nombreNivel2;
         EXIT WHEN cur_nivel2%NOTFOUND;
         DBMS_OUTPUT.PUT_LINE( CHR(9) || v_nombreNivel2 );
      end loop;
      close cur_nivel2;

   end loop;
   close cur_nivel1;
end;</pre>
<h2>Compartir y Disfrutar</h2>

<!-- Start WP Socializer - Social Buttons - Output -->
 &bull; <a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F03%2F27%2Fplsql-cursoresanidados%2F&amp;t=PL%2FSQL+Cursores+Anidados" title="Share this on Facebook" target="_blank" rel="nofollow">Facebook</a> &bull; <a href="http://twitter.com/home?status=PL%2FSQL+Cursores+Anidados%20-%20http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F03%2F27%2Fplsql-cursoresanidados%2F%20@QbitMexhico" title="Tweet this !" target="_blank" rel="nofollow">Twitter</a> &bull; <a href="http://delicious.com/post?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F03%2F27%2Fplsql-cursoresanidados%2F&amp;title=PL%2FSQL+Cursores+Anidados&amp;notes=El+d%C3%ADa+de+hoy+tuve+que+volver+a+mis+origenes+y+me+encargaron+la+tarea+de+sacar+un+reporte+en+la+base+de+datos%2C+Para+eso+era+necesario+crear+un+PL%2FSQL+con+dos+cursores+anidados+%28NESTED+CURSOR%29%2C+y+bueno+me+tome+la+tarea+de+buscar+en+Internet+y%C2%A0encont" title="Post this on Delicious" target="_blank" rel="nofollow">Delicious</a> &bull; <a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F03%2F27%2Fplsql-cursoresanidados%2F&amp;title=PL%2FSQL+Cursores+Anidados&amp;bodytext=El+d%C3%ADa+de+hoy+tuve+que+volver+a+mis+origenes+y+me+encargaron+la+tarea+de+sacar+un+reporte+en+la+base+de+datos%2C+Para+eso+era+necesario+crear+un+PL%2FSQL+con+dos+cursores+anidados+%28NESTED+CURSOR%29%2C+y+bueno+me+tome+la+tarea+de+buscar+en+Internet+y%C2%A0encont" title="Submit this to Digg" target="_blank" rel="nofollow">Digg</a> &bull; <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F03%2F27%2Fplsql-cursoresanidados%2F&amp;title=PL%2FSQL+Cursores+Anidados" title="Submit this to StumbleUpon" target="_blank" rel="nofollow">StumbleUpon</a>
<!-- End WP Socializer - Social Buttons - Output -->
<div class='yarpp-related-rss yarpp-related-none'>
<p>No hay entradas relacionadas</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://qbit.com.mx/blog/2013/03/27/plsql-cursoresanidados/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Autetificación con facebook   1 crear aplicación en facebook</title>
		<link>http://qbit.com.mx/blog/2013/01/27/autetificacion-con-facebook-1-crear-aplicacion-en-facebook/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=autetificacion-con-facebook-1-crear-aplicacion-en-facebook</link>
		<comments>http://qbit.com.mx/blog/2013/01/27/autetificacion-con-facebook-1-crear-aplicacion-en-facebook/#comments</comments>
		<pubDate>Mon, 28 Jan 2013 03:19:41 +0000</pubDate>
		<dc:creator>nixho</dc:creator>
				<category><![CDATA[Sin categoría]]></category>

		<guid isPermaLink="false">http://qbit.com.mx/blog/?p=1522</guid>
		<description><![CDATA[El acto para confirmar que una usuario tiene privilegios para entrar a nuestro sitio web  es muy común aunque ahora también, es de gran utilidad usar a facebook para que autentificar algún usuario. Para comenzar es necesario  crear una aplicación en facebook para lo cual necesitamos una cuenta en facebook. Bien ahora en el buscador  escribimos Developers o Desarrollador, [...]<div class='yarpp-related-rss'>

Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2012/12/03/crear-instalador-personalizado/' rel='bookmark' title='Crear Instalador personalizado'>Crear Instalador personalizado</a></li>
<li><a href='http://qbit.com.mx/blog/2010/03/29/implementando-un-todo-con-jquery-para-tu-aplicacion-web/' rel='bookmark' title='Implementando un ToDo con jQuery para tu aplicacion Web'>Implementando un ToDo con jQuery para tu aplicacion Web</a></li>
<li><a href='http://qbit.com.mx/blog/2012/04/06/visualizarocultar-la-consola-en-una-aplicacion/' rel='bookmark' title='Visualizar/Ocultar la consola en una aplicación.'>Visualizar/Ocultar la consola en una aplicación.</a></li>
</ol>

Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.
</div>
]]></description>
				<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=d3dae958a046bea364f3dc715377ab7e&amp;default=http://qbit.com.mx/blog/archivos/blank_gravatar.png' alt='No Gravatar' width=40 height=40/><p>El acto para confirmar que una usuario tiene privilegios para entrar a nuestro sitio web  es muy común aunque ahora también, es de gran utilidad usar a facebook para que autentificar algún usuario.</p>
<p>Para comenzar es necesario  crear una aplicación en facebook para lo cual necesitamos una cuenta en facebook. Bien ahora en el buscador  escribimos Developers o Desarrollador, ya que necesitamos obtener un App Id , App secret que facebook nos da cuando registramos nuestra aplicación.</p>
<div align="center">
<a href="http://qbit.com.mx/blog/wp-content/uploads/0.png"><img class="aligncenter size-full wp-image-1524" alt="0" src="http://qbit.com.mx/blog/wp-content/uploads/0.png" width="475" height="103" /></a>
</div>
<p>Ahora nos registramos en la página aceptamos los términos y pulsamos siguiente, nos pide un teléfono en el cual nos mandara un mensaje con un código, continuamos con el proceso en el cual nos pedirá algunos datos acerca de nuestra aplicación.</p>
<div align="center">
<a href="http://qbit.com.mx/blog/wp-content/uploads/2.png"><img class="aligncenter size-full wp-image-1527" alt="2" src="http://qbit.com.mx/blog/wp-content/uploads/2.png" width="756" height="328" /></a>
</div>
<p>Escribimos el código de validación y quien podrá ver nuestra aplicación y seleccionamos opciones referentes a nuestra aplicación.</p>
<div align="center">
<a href="http://qbit.com.mx/blog/wp-content/uploads/3.png"><img class="aligncenter size-full wp-image-1528" alt="3" src="http://qbit.com.mx/blog/wp-content/uploads/3.png" width="740" height="337" /></a>
</div>
<p>Por fin tenemos el registro para poder crear una aplicación en facebook, escribimos el nombre con la cual se va a llamar nuestra aplicación y continuamos con el  proceso.</p>
<div align="center">
<a href="http://qbit.com.mx/blog/wp-content/uploads/8.png"><img class="aligncenter size-full wp-image-1529" alt="8" src="http://qbit.com.mx/blog/wp-content/uploads/8.png" width="706" height="436" /></a>
</div>
<p>Hay varios parámetros que debemos tener en cuenta y poner atención, facebook nos devuelve variables un App ID (identificador de nuestra aplicación ) y  App Secret( codigo de seguridad de nuestra aplicación ) , en la parte inferior observamos datos como nuestro email con el cual nos registramos, el  nombre de la aplicación y el dominio en el cual estar alojada nuestra aplicación , y existe un checbok en el cual si esta activado , provocara que solo admita nuestra, propia cuenta para autentificarnos , por ultimo la dirección en la cual facebook, nos responderá después de validar que el usuario exista.</p>
<p>en el siguiente post usaremos los datos con que obtuvimos.</p>
<h2>Compartir y Disfrutar</h2>

<!-- Start WP Socializer - Social Buttons - Output -->
 &bull; <a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F27%2Fautetificacion-con-facebook-1-crear-aplicacion-en-facebook%2F&amp;t=Autetificaci%C3%B3n+con+facebook+++1+crear+aplicaci%C3%B3n+en+facebook" title="Share this on Facebook" target="_blank" rel="nofollow">Facebook</a> &bull; <a href="http://twitter.com/home?status=Autetificaci%C3%B3n+con+facebook+++1+crear+aplicaci%C3%B3n+en+facebook%20-%20http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F27%2Fautetificacion-con-facebook-1-crear-aplicacion-en-facebook%2F%20@QbitMexhico" title="Tweet this !" target="_blank" rel="nofollow">Twitter</a> &bull; <a href="http://delicious.com/post?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F27%2Fautetificacion-con-facebook-1-crear-aplicacion-en-facebook%2F&amp;title=Autetificaci%C3%B3n+con+facebook+++1+crear+aplicaci%C3%B3n+en+facebook&amp;notes=El+acto+para+confirmar+que+una+usuario+tiene+privilegios+para+entrar+a+nuestro+sitio+web+%C2%A0es+muy+com%C3%BAn+aunque+ahora%C2%A0tambi%C3%A9n%2C+es+de+gran+utilidad+usar+a+facebook+para+que+autentificar+alg%C3%BAn+usuario.%0D%0A%0D%0APara+comenzar+es%C2%A0necesario%C2%A0+crear+una+apli" title="Post this on Delicious" target="_blank" rel="nofollow">Delicious</a> &bull; <a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F27%2Fautetificacion-con-facebook-1-crear-aplicacion-en-facebook%2F&amp;title=Autetificaci%C3%B3n+con+facebook+++1+crear+aplicaci%C3%B3n+en+facebook&amp;bodytext=El+acto+para+confirmar+que+una+usuario+tiene+privilegios+para+entrar+a+nuestro+sitio+web+%C2%A0es+muy+com%C3%BAn+aunque+ahora%C2%A0tambi%C3%A9n%2C+es+de+gran+utilidad+usar+a+facebook+para+que+autentificar+alg%C3%BAn+usuario.%0D%0A%0D%0APara+comenzar+es%C2%A0necesario%C2%A0+crear+una+apli" title="Submit this to Digg" target="_blank" rel="nofollow">Digg</a> &bull; <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F27%2Fautetificacion-con-facebook-1-crear-aplicacion-en-facebook%2F&amp;title=Autetificaci%C3%B3n+con+facebook+++1+crear+aplicaci%C3%B3n+en+facebook" title="Submit this to StumbleUpon" target="_blank" rel="nofollow">StumbleUpon</a>
<!-- End WP Socializer - Social Buttons - Output -->
<div class='yarpp-related-rss'>
<p>Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2012/12/03/crear-instalador-personalizado/' rel='bookmark' title='Crear Instalador personalizado'>Crear Instalador personalizado</a></li>
<li><a href='http://qbit.com.mx/blog/2010/03/29/implementando-un-todo-con-jquery-para-tu-aplicacion-web/' rel='bookmark' title='Implementando un ToDo con jQuery para tu aplicacion Web'>Implementando un ToDo con jQuery para tu aplicacion Web</a></li>
<li><a href='http://qbit.com.mx/blog/2012/04/06/visualizarocultar-la-consola-en-una-aplicacion/' rel='bookmark' title='Visualizar/Ocultar la consola en una aplicación.'>Visualizar/Ocultar la consola en una aplicación.</a></li>
</ol></p>
<p>Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://qbit.com.mx/blog/2013/01/27/autetificacion-con-facebook-1-crear-aplicacion-en-facebook/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Arreglos vs Objetos en javascript (diferencias)</title>
		<link>http://qbit.com.mx/blog/2013/01/13/arreglos-vs-objetos-en-javascript-diferencias/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=arreglos-vs-objetos-en-javascript-diferencias</link>
		<comments>http://qbit.com.mx/blog/2013/01/13/arreglos-vs-objetos-en-javascript-diferencias/#comments</comments>
		<pubDate>Sun, 13 Jan 2013 19:14:41 +0000</pubDate>
		<dc:creator>Jackfiallos</dc:creator>
				<category><![CDATA[Html]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Jackfiallos]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[mootools]]></category>
		<category><![CDATA[node.js]]></category>
		<category><![CDATA[array]]></category>
		<category><![CDATA[arrays]]></category>
		<category><![CDATA[delete]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[node]]></category>
		<category><![CDATA[objects]]></category>
		<category><![CDATA[splice]]></category>

		<guid isPermaLink="false">https://qbit.com.mx/blog/?p=1511</guid>
		<description><![CDATA[Para quienes no saben.. Javascript es el lenguaje de programación que da vida a todo lo que ven en la web, es el autor de que las cosas se muevan de un lado a otro, cambien de color, hace que aparezcan ventanitas bonitas y feas, además gestiona el contenido cuando necesitas información y lo muestre [...]<div class='yarpp-related-rss'>

Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2012/01/24/remover-elementos-repetidos-de-un-array-php-ruby-java-c-vb-javascript/' rel='bookmark' title='Remover elementos repetidos de un array php ruby java c# vb javascript'>Remover elementos repetidos de un array php ruby java c# vb javascript</a></li>
<li><a href='http://qbit.com.mx/blog/2013/01/07/la-diferencia-entre-return-false-preventdefault-y-stoppropagation-en-jquery/' rel='bookmark' title='La diferencia entre return false, preventDefault y stopPropagation en jQuery'>La diferencia entre return false, preventDefault y stopPropagation en jQuery</a></li>
<li><a href='http://qbit.com.mx/blog/2012/02/28/jquery-mobile-lo-bueno-y-lo-malo/' rel='bookmark' title='jQuery Mobile lo bueno y lo malo'>jQuery Mobile lo bueno y lo malo</a></li>
</ol>

Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.
</div>
]]></description>
				<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=0fe8495ecf67ef7b922e354a69a28749&amp;default=http://qbit.com.mx/blog/archivos/blank_gravatar.png' alt='No Gravatar' width=40 height=40/><div id="attachment_1514" class="wp-caption aligncenter" style="width: 316px"><a href="http://qbit.com.mx/blog/?attachment_id=1514" rel="attachment wp-att-1514"><img src="http://qbit.com.mx/blog/wp-content/uploads/Screenshot-from-2013-01-13-140532.png" alt="Javascript arrays vs objects" width="306" height="234" class="size-full wp-image-1514" /></a><p class="wp-caption-text">Javascript arrays vs objects</p></div>
<p>Para quienes no saben.. <a href="http://es.wikipedia.org/wiki/JavaScript" title="JavaScript">Javascript</a> es el lenguaje de programación que da vida a todo lo que ven en la web, es el autor de que las cosas se muevan de un lado a otro, cambien de color, hace que aparezcan ventanitas bonitas y feas, además gestiona el contenido cuando necesitas información y lo muestre casi sin darte cuenta .. eso y aun más hace javascript.</p>
<p>A primera vista es un lenguaje sencillo de aprender, basta con saber un poco de programación para empezar hacer calculadoras y cosas así.. pero hey, no todo es maravilloso y debido a su sencillez es que se suele incurrir en malas practicas.. por ejemplo el uso de arreglos vs. objetos.. conocen la diferencia entre uno y otro ??</p>
<p>Creo que no te habías puesto a pensar en esa diferencia verdad ??</p>
<p>Un arreglo basicamene es una lista o colección de elementos y aunque se parece un poco a un objeto literal (porque hay varias formar de crear objetos también) .. hay ligeras diferencias.. veamos:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #000066; font-weight: bold;">var</span> arreglo <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span> <span style="color: #006600; font-style: italic;">// esto es un arreglo, los corchetes [] lo indican</span>
<span style="color: #000066; font-weight: bold;">var</span> objeto <span style="color: #339933;">=</span> <span style="color: #009900;">&#123;</span><span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span> <span style="color: #006600; font-style: italic;">// a diferencia del arreglo, un objeto literal que se identifica por sus llavecitas {}</span></pre></td></tr></table></div>

<p>He de suponer que saben que los arreglos tienen una clave un un valor y que la clave puede ser un numérico o alfanumérico.. por ej:</p>
<p>Este código se traduce como el arreglo x en la posición 0 contiene el elemento a <em>x[0] = Jack</em> y la posición 1 al elemento b <em>x[1] = Basketball</em></p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #000066; font-weight: bold;">var</span> x <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'Jack'</span><span style="color: #339933;">,</span><span style="color: #3366CC;">'Basketball'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Como solamente indico los valores (Jack, Basketball), por omisión el arreglo contiene claves numéricas que inician desde 0.. (aburrido, ya lo sé.. continuemos)</p>
<p>Ahora la otra forma de usar arreglos es indicando claves alfanuméricas por ej:</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #000066; font-weight: bold;">var</span> x <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
x<span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'nombre'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #3366CC;">'Jack'</span><span style="color: #339933;">;</span>
x<span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'deporte'</span><span style="color: #009900;">&#93;</span> <span style="color: #339933;">=</span> <span style="color: #3366CC;">'Basketball'</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Ven la diferencia ?? ahora utilizo identificadores en las claves..</p>
<p>Pues bueno, un objeto literal funciona ligeramente de la misma manera, aunque aquí siempre se necesitará un identificador (buena práctica).</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #000066; font-weight: bold;">var</span> x <span style="color: #339933;">=</span> <span style="color: #009900;">&#123;</span>
  <span style="color: #CC0000;">0</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">'Jack'</span><span style="color: #339933;">,</span>
  <span style="color: #CC0000;">1</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">'Basketball'</span>
<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>
&nbsp;
<span style="color: #000066; font-weight: bold;">var</span> y <span style="color: #339933;">=</span> <span style="color: #009900;">&#123;</span> 
  nombre<span style="color: #339933;">:</span> <span style="color: #3366CC;">'Jack'</span><span style="color: #339933;">,</span>
  deporte<span style="color: #339933;">:</span> <span style="color: #3366CC;">'Baloncesto'</span>
<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Están entendiendo la diferencia cierto ?</p>
<p>Por ejemplo.. cada método tiene formas diferentes de tratar a sus elementos.. por ejemplo, es un arreglo existe la propiedad length, que básicamente cuenta el número de elementos contenidos.. length no esta disponible en un objeto literal.. simplemente no existe..</p>
<p>Mmmm.. haber si recuerdo otra diferencia.. otro ejemplo es que los arreglos tienen métodos específicos para agregar elementos (al inicio o al final), eliminar elementos y no se que más.. métodos que no están disponibles para un objeto..</p>
<p>Bueno, pues todo esto de la diferencia entre un arreglo y un objeto es porque vi por ahí.. que quisieron eliminar un elemento de un arreglo utilizando el método delete.. el cual solo está disponible para objetos..</p>
<p>Ilustrando lo que digo y usando el ejemplo anterior, digamos que quiero eliminar el valor &#8216;Jack&#8217; del arreglo, para esto utilizaré la función de javascript delete ..</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #000066; font-weight: bold;">var</span> x <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'Jack'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'Basketball'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
<span style="color: #000066; font-weight: bold;">delete</span> x<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Esto provoca una pequeña confusión, si no han entendido que utilizaron el método equivocado para eliminar un elemento del arreglo.. nada grave, pero no es la forma de hacerlo.. ya que al ver el contenido de la variable x .. verán algo como [, 'Basketball'] .. lo que significa que siguen existiendo 2 elementos aunque solo vean 1.. digamos que la longitud del arreglo no cambió.</p>
<p>Ahora si hacen eso mismo pero utilizando un objeto literal..</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #000066; font-weight: bold;">var</span> x <span style="color: #339933;">=</span> <span style="color: #009900;">&#123;</span>
  <span style="color: #CC0000;">0</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">'Jack'</span><span style="color: #339933;">,</span>
  <span style="color: #CC0000;">1</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">'Basketball'</span>
<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span>
<span style="color: #000066; font-weight: bold;">delete</span> x<span style="color: #009900;">&#91;</span><span style="color: #CC0000;">0</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Aquí no habrá problema.. funciona correctamente, pero es porque delete funciona específicamente solo para objetos.. el resultado del arreglo será solamente {1: &#8216;Basketball&#8217;} .. porque se eliminó la clave 0 que contenia &#8216;Jack&#8217;.</p>
<p>Entonces cual es la forma correcta de eliminar un elemento de un arreglo.. Ahhh pues fácil <img src='http://qbit.com.mx/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="javascript" style="font-family:monospace;"><span style="color: #000066; font-weight: bold;">var</span> x <span style="color: #339933;">=</span> <span style="color: #009900;">&#91;</span><span style="color: #3366CC;">'Jack'</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">'Basketball'</span><span style="color: #009900;">&#93;</span><span style="color: #339933;">;</span>
x.<span style="color: #660066;">splice</span><span style="color: #009900;">&#40;</span><span style="color: #CC0000;">0</span><span style="color: #339933;">,</span><span style="color: #CC0000;">1</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Y por sup&#8230;uesto!! <img src='http://qbit.com.mx/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  splice no funciona con objetos.. Splice es el método que se debe de utilizar para eliminar un elemento de un arreglo.. <a href="http://www.w3schools.com/jsref/jsref_splice.asp" title="Javascript Splice">la documentación la pueden ver siguiendo este enlace.</a></p>
<p>Si capiscaron el punto?? en javascript solemos decir que las cosas no funcionan bien y no sabemos el porque.. pero todo se debe a que utilizamos el tipo de dato incorrecto o los métodos incorrectos para ejecutar ciertas acciones..</p>
<h2>Compartir y Disfrutar</h2>

<!-- Start WP Socializer - Social Buttons - Output -->
 &bull; <a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F13%2Farreglos-vs-objetos-en-javascript-diferencias%2F&amp;t=Arreglos+vs+Objetos+en+javascript+%28diferencias%29" title="Share this on Facebook" target="_blank" rel="nofollow">Facebook</a> &bull; <a href="http://twitter.com/home?status=Arreglos+vs+Objetos+en+javascript+%28diferencias%29%20-%20http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F13%2Farreglos-vs-objetos-en-javascript-diferencias%2F%20@QbitMexhico" title="Tweet this !" target="_blank" rel="nofollow">Twitter</a> &bull; <a href="http://delicious.com/post?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F13%2Farreglos-vs-objetos-en-javascript-diferencias%2F&amp;title=Arreglos+vs+Objetos+en+javascript+%28diferencias%29&amp;notes=Para+quienes+no+saben..+Javascript+es+el+lenguaje+de+programaci%C3%B3n+que+da+vida+a+todo+lo+que+ven+en+la+web%2C+es+el+autor+de+que+las+cosas+se+muevan+de+un+lado+a+otro%2C+cambien+de+color%2C+hace+que+aparezcan+ventanitas+bonitas+y+feas%2C+adem%C3%A1s+gestiona+e" title="Post this on Delicious" target="_blank" rel="nofollow">Delicious</a> &bull; <a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F13%2Farreglos-vs-objetos-en-javascript-diferencias%2F&amp;title=Arreglos+vs+Objetos+en+javascript+%28diferencias%29&amp;bodytext=Para+quienes+no+saben..+Javascript+es+el+lenguaje+de+programaci%C3%B3n+que+da+vida+a+todo+lo+que+ven+en+la+web%2C+es+el+autor+de+que+las+cosas+se+muevan+de+un+lado+a+otro%2C+cambien+de+color%2C+hace+que+aparezcan+ventanitas+bonitas+y+feas%2C+adem%C3%A1s+gestiona+e" title="Submit this to Digg" target="_blank" rel="nofollow">Digg</a> &bull; <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F13%2Farreglos-vs-objetos-en-javascript-diferencias%2F&amp;title=Arreglos+vs+Objetos+en+javascript+%28diferencias%29" title="Submit this to StumbleUpon" target="_blank" rel="nofollow">StumbleUpon</a>
<!-- End WP Socializer - Social Buttons - Output -->
<div class='yarpp-related-rss'>
<p>Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2012/01/24/remover-elementos-repetidos-de-un-array-php-ruby-java-c-vb-javascript/' rel='bookmark' title='Remover elementos repetidos de un array php ruby java c# vb javascript'>Remover elementos repetidos de un array php ruby java c# vb javascript</a></li>
<li><a href='http://qbit.com.mx/blog/2013/01/07/la-diferencia-entre-return-false-preventdefault-y-stoppropagation-en-jquery/' rel='bookmark' title='La diferencia entre return false, preventDefault y stopPropagation en jQuery'>La diferencia entre return false, preventDefault y stopPropagation en jQuery</a></li>
<li><a href='http://qbit.com.mx/blog/2012/02/28/jquery-mobile-lo-bueno-y-lo-malo/' rel='bookmark' title='jQuery Mobile lo bueno y lo malo'>jQuery Mobile lo bueno y lo malo</a></li>
</ol></p>
<p>Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://qbit.com.mx/blog/2013/01/13/arreglos-vs-objetos-en-javascript-diferencias/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Reinicio automático de node.js con supervisor</title>
		<link>http://qbit.com.mx/blog/2013/01/08/reinicio-automatico-de-node-js-con-supervisor/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=reinicio-automatico-de-node-js-con-supervisor</link>
		<comments>http://qbit.com.mx/blog/2013/01/08/reinicio-automatico-de-node-js-con-supervisor/#comments</comments>
		<pubDate>Wed, 09 Jan 2013 03:00:31 +0000</pubDate>
		<dc:creator>Jackfiallos</dc:creator>
				<category><![CDATA[Html]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Jackfiallos]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[node.js]]></category>
		<category><![CDATA[js]]></category>
		<category><![CDATA[node]]></category>
		<category><![CDATA[nodemon]]></category>
		<category><![CDATA[npm]]></category>
		<category><![CDATA[reload]]></category>
		<category><![CDATA[restart]]></category>
		<category><![CDATA[supervisor]]></category>

		<guid isPermaLink="false">https://qbit.com.mx/blog/?p=1504</guid>
		<description><![CDATA[Una de las cosas que nos detienen un poco al momento de escribir aplicaciones en node, es tener que compilar nuestro código cada vez que hacemos un cambio.. para esto compilar significa reiniciar el servidor tras cualquier cambio en el backend.. Segun dicen por ahí nodemon permite evitar ese tedioso procedimiento.. pero en algunos casos [...]<div class='yarpp-related-rss yarpp-related-none'>

No hay entradas relacionadas
</div>
]]></description>
				<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=0fe8495ecf67ef7b922e354a69a28749&amp;default=http://qbit.com.mx/blog/archivos/blank_gravatar.png' alt='No Gravatar' width=40 height=40/><div id="attachment_1505" class="wp-caption aligncenter" style="width: 384px"><a href="http://qbit.com.mx/blog/2013/01/08/reinicio-automatico-de-node-js-con-supervisor/screenshot-31/" rel="attachment wp-att-1505"><img src="http://qbit.com.mx/blog/wp-content/uploads/screenshot.31.jpg" alt="Supervisor" width="374" height="213" class="size-full wp-image-1505" /></a><p class="wp-caption-text">Supervisor</p></div>
<p>Una de las cosas que nos detienen un poco al momento de escribir aplicaciones en node, es tener que compilar nuestro código cada vez que hacemos un cambio.. para esto compilar significa reiniciar el servidor tras cualquier cambio en el backend..</p>
<p>Segun dicen por ahí nodemon permite evitar ese tedioso procedimiento.. pero en algunos casos suele fallar y se interrumpe su ejecución.. lo que lleva a nuestro servidor a detenerse.. plop lamentable, porque es necesario iniciarlo nuevamente..</p>
<p>En mi búsqueda de una alternativa fue que encontré &#8220;Supervisor&#8221;, que muy similar a nodemon reinicia la aplicación ante cualquier cambio, con la ventaja de que al ocurrir cualquier error en nuestro código, el servidor continua su ejecución.</p>
<p>Instalarlo es sumamente fácil.. desde el manejador de paquetes de node (Node Package Manager)</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">npm <span style="color: #c20cb9; font-weight: bold;">install</span> <span style="color: #660033;">-g</span> supervisor</pre></td></tr></table></div>

<p>Una forma recomendable de instalarlo es con el parámetro -g (global) .. y seguramente necesitarán permisos de super-usuario si están en linux o ambientes similares..</p>
<p>Para utilizarlo, es exactamente igual que nodemon o el mismo node, haciendo..</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">supervisor app.js
&nbsp;
DEBUG: Running node-supervisor with
DEBUG:   program <span style="color: #ff0000;">'server.js'</span>
DEBUG:   <span style="color: #660033;">--watch</span> <span style="color: #ff0000;">'.'</span>
DEBUG:   <span style="color: #660033;">--extensions</span> <span style="color: #ff0000;">'node|js'</span>
DEBUG:   <span style="color: #660033;">--exec</span> <span style="color: #ff0000;">'node'</span>
&nbsp;
DEBUG: Starting child process with <span style="color: #ff0000;">'node app.js'</span>
DEBUG: Watching directory <span style="color: #ff0000;">'/home/jack/tutorials/node-supervisor.'</span> <span style="color: #000000; font-weight: bold;">for</span> changes.</pre></td></tr></table></div>

<p>Ahora la prueba, si cambiamos algo en uno de nuestros archivos .js veremos que el módulo detecta el cambio y reinicia la aplicación.. bueno algo como esto!</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="bash" style="font-family:monospace;">DEBUG: crashing child
DEBUG: Starting child process with <span style="color: #ff0000;">'node app.js'</span></pre></td></tr></table></div>

<p>También si en alguno de nuestros cambios se produce un error, supervisor nos avisará en la consola y mantendrá el servidor siempre despierto <img src='http://qbit.com.mx/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<h2>Compartir y Disfrutar</h2>

<!-- Start WP Socializer - Social Buttons - Output -->
 &bull; <a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F08%2Freinicio-automatico-de-node-js-con-supervisor%2F&amp;t=Reinicio+autom%C3%A1tico+de+node.js+con+supervisor" title="Share this on Facebook" target="_blank" rel="nofollow">Facebook</a> &bull; <a href="http://twitter.com/home?status=Reinicio+autom%C3%A1tico+de+node.js+con+supervisor%20-%20http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F08%2Freinicio-automatico-de-node-js-con-supervisor%2F%20@QbitMexhico" title="Tweet this !" target="_blank" rel="nofollow">Twitter</a> &bull; <a href="http://delicious.com/post?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F08%2Freinicio-automatico-de-node-js-con-supervisor%2F&amp;title=Reinicio+autom%C3%A1tico+de+node.js+con+supervisor&amp;notes=Una+de+las+cosas+que+nos+detienen+un+poco+al+momento+de+escribir+aplicaciones+en+node%2C+es+tener+que+compilar+nuestro+c%C3%B3digo+cada+vez+que+hacemos+un+cambio..+para+esto+compilar+significa+reiniciar+el+servidor+tras+cualquier+cambio+en+el+backend.." title="Post this on Delicious" target="_blank" rel="nofollow">Delicious</a> &bull; <a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F08%2Freinicio-automatico-de-node-js-con-supervisor%2F&amp;title=Reinicio+autom%C3%A1tico+de+node.js+con+supervisor&amp;bodytext=Una+de+las+cosas+que+nos+detienen+un+poco+al+momento+de+escribir+aplicaciones+en+node%2C+es+tener+que+compilar+nuestro+c%C3%B3digo+cada+vez+que+hacemos+un+cambio..+para+esto+compilar+significa+reiniciar+el+servidor+tras+cualquier+cambio+en+el+backend.." title="Submit this to Digg" target="_blank" rel="nofollow">Digg</a> &bull; <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F08%2Freinicio-automatico-de-node-js-con-supervisor%2F&amp;title=Reinicio+autom%C3%A1tico+de+node.js+con+supervisor" title="Submit this to StumbleUpon" target="_blank" rel="nofollow">StumbleUpon</a>
<!-- End WP Socializer - Social Buttons - Output -->
<div class='yarpp-related-rss yarpp-related-none'>
<p>No hay entradas relacionadas</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://qbit.com.mx/blog/2013/01/08/reinicio-automatico-de-node-js-con-supervisor/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>La diferencia entre return false, preventDefault y stopPropagation en jQuery</title>
		<link>http://qbit.com.mx/blog/2013/01/07/la-diferencia-entre-return-false-preventdefault-y-stoppropagation-en-jquery/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=la-diferencia-entre-return-false-preventdefault-y-stoppropagation-en-jquery</link>
		<comments>http://qbit.com.mx/blog/2013/01/07/la-diferencia-entre-return-false-preventdefault-y-stoppropagation-en-jquery/#comments</comments>
		<pubDate>Mon, 07 Jan 2013 15:00:42 +0000</pubDate>
		<dc:creator>Jackfiallos</dc:creator>
				<category><![CDATA[eventos]]></category>
		<category><![CDATA[Html]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Jackfiallos]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[Ocio]]></category>
		<category><![CDATA[bubbling]]></category>
		<category><![CDATA[clientside]]></category>
		<category><![CDATA[dom]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[preventdefault]]></category>
		<category><![CDATA[return false]]></category>
		<category><![CDATA[stoppropagation]]></category>

		<guid isPermaLink="false">https://qbit.com.mx/blog/?p=1485</guid>
		<description><![CDATA[No se con que frecuencia utilicen eventos de jQuery sobre elementos en el DOM y menos como detienen su ejecución.. pero si hacen return false, déjenme decirlo.. estan cometiendo un gran error, quizás el mismo que yo cometía hace algun tiempo atrás.. eso porque ya existen métodos para detener la acción de un evento.. La [...]<div class='yarpp-related-rss'>

Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2012/02/28/jquery-mobile-lo-bueno-y-lo-malo/' rel='bookmark' title='jQuery Mobile lo bueno y lo malo'>jQuery Mobile lo bueno y lo malo</a></li>
<li><a href='http://qbit.com.mx/blog/2010/03/29/implementando-un-todo-con-jquery-para-tu-aplicacion-web/' rel='bookmark' title='Implementando un ToDo con jQuery para tu aplicacion Web'>Implementando un ToDo con jQuery para tu aplicacion Web</a></li>
<li><a href='http://qbit.com.mx/blog/2012/11/12/paginar-un-grid-con-mvc-contrib-en-asp/' rel='bookmark' title='Paginar un Grid con MVC Contrib en ASP'>Paginar un Grid con MVC Contrib en ASP</a></li>
</ol>

Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.
</div>
]]></description>
				<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=0fe8495ecf67ef7b922e354a69a28749&amp;default=http://qbit.com.mx/blog/archivos/blank_gravatar.png' alt='No Gravatar' width=40 height=40/><div id="attachment_1489" class="wp-caption aligncenter" style="width: 540px"><a href="http://qbit.com.mx/blog/2013/01/07/la-diferencia-entre-return-false-preventdefault-y-stoppropagation-en-jquery/bubbling/" rel="attachment wp-att-1489"><img src="http://qbit.com.mx/blog/wp-content/uploads/bubbling.png" alt="http://37signals.com/svn/posts/3137-using-event-capturing-to-improve-basecamp-page-load-times" width="530" height="160" class="size-full wp-image-1489" /></a><p class="wp-caption-text">Bubbling</p></div>
<p>No se con que frecuencia utilicen eventos de jQuery sobre elementos en el DOM y menos como detienen su ejecución.. pero si hacen return false, déjenme decirlo.. estan cometiendo un gran error, quizás el mismo que yo cometía hace algun tiempo atrás.. eso porque ya existen métodos para detener la acción de un evento..</p>
<p><strong>La teoría</strong><br />
e.PreventDefault() se utiliza para detener una acción por omisión, utilizada comunmente sobre etiquetas (a) o botones input:submit ..</p>
<p>e.stopPropagation() en cambio detiene la propagación de un evento, con el objetivo de q no se realice otra ejecución u otro listener lo escuche a través del DOM.. esto se conoce como bubbling y es algo que quizás no  hayan notado antes.. pero al dar click a un elemento, ese evento de click lo pueden escuchar los padres de ese elemento..</p>
<p><strong>La explicación</strong><br />
La razón principal del porque return false es tan utilizado, es porque aparentemente hace lo que queremos.. jejeje.. es como un demonio porque en realidad hace 3 cosas a la vez y nunca lo notamos hasta que pasan errores según desconocidos que no podemos explicar.. entonces lo que ejecuta return false es:</p>
<ul>
<li>event.preventDefault()</li>
<li>event.stopPropagation()</li>
<li>Detiene la ejecución del código y sale del bloque de la función</li>
</ul>
<p><strong>La práctica</strong><br />
Teniendo un código html, la meta es cargar el contenido de una etiqueta href dentro de una parte de mi código entonces.. veamos como va!</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="html4strict" style="font-family:monospace;">  <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;articulo&quot;</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">a</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;http://enlace&quot;</span>&gt;</span>Titulo<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">a</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;contenido&quot;</span>&gt;</span>
      Este código cambiará por algo que se pide vía ajax
    <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
  <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span></pre></td></tr></table></div>

<p>Ahora probemos cada uno de los métodos.. y empezamos con return false.. que cancela todo.. y supongo que así es como normalmente lo utilizan, hasta el final de su bloque de código.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="javascript" style="font-family:monospace;">  $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;div.articulo a&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">function</span> <span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    $.<span style="color: #000066; font-weight: bold;">get</span><span style="color: #009900;">&#40;</span>$<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'href'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #000066; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>$<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">next</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">html</span><span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    <span style="color: #000066; font-weight: bold;">return</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Ahora utilizando preventDefault que como verán cancela solamente seguir el enlace.. y a diferencia de return false, este método se utiliza al inicio.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="javascript" style="font-family:monospace;">  $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;div.post h2 a&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">function</span> <span style="color: #009900;">&#40;</span>e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    e.<span style="color: #660066;">preventDefault</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    $.<span style="color: #000066; font-weight: bold;">get</span><span style="color: #009900;">&#40;</span>$<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'href'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #000066; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>$<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">next</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">html</span><span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Y por último stopPropagation que no cancela el enlace, pero detiene la propagación del evento, cosa que no sirve de mucho porque si estamos en una etiqueta (a) o etiquetas de ejecución contínua.. seguiremos el enlace y abandonaremos la página.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="javascript" style="font-family:monospace;">  $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;div.post h2 a&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">function</span> <span style="color: #009900;">&#40;</span>e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    $.<span style="color: #000066; font-weight: bold;">get</span><span style="color: #009900;">&#40;</span>$<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">attr</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'href'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">,</span> <span style="color: #000066; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span>$<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">next</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">html</span><span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
    e.<span style="color: #660066;">stopPropagation</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Vieron la diferencia ?? o todavía no..</p>
<p>Será que return false aun sigue teniendo más sentido ?? Hey.. que pasa si tengo otro listener que escucha esta vez el click sobre el div.articulo y quizás lo utilizamos para agregar un estilo al artículo.. por ej.</p>

<div class="wp_syntax"><table><tr><td class="code"><pre class="javascript" style="font-family:monospace;">  $<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;div.post&quot;</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">click</span><span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">function</span> <span style="color: #009900;">&#40;</span>e<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    $<span style="color: #009900;">&#40;</span><span style="color: #000066; font-weight: bold;">this</span><span style="color: #009900;">&#41;</span>.<span style="color: #660066;">addClass</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;activo&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></td></tr></table></div>

<p>Y explicándolo en el mismo orden que como escribí los ejemplos..<br />
- Utilizando return false no alcanzaría a agregar el estilo al div.articulo, porque recuerden que utilizar esta forma agrupa 3 métodos (prevent, default y return)&#8230;<br />
- Con preventDefault lo hará (detendrá el enlace y agregará la clase de estilos &#8220;activo&#8221; al div.articulo).<br />
- Y con stopPropagation, quizás haga la petición para cargar el contenido, pero al finalizar cambiará de página.</p>
<p>Lo que ocurre con preventDefault es que al no detener la propagación del evento click, como antes lo había mencionado ese evento lo puede escuchar el padre que para este caso el padre de la etiqueta (a) es (div.articulo).. Ese es el motivo de que aparte de entrar al click de la etiqueta (a), tambien entre al click de la etiqueta (div.articulo) y se agregue una clase de estilos.</p>
<p><strong>Conclusión</strong><br />
Creo que ha quedado bastante claro como detener un evento de forma correcta.. no olviden que al final de lo que trata esto es de mejorar nuestras prácticas de programación, escribiendo código legible y lo más flexible posible.</p>
<h2>Compartir y Disfrutar</h2>

<!-- Start WP Socializer - Social Buttons - Output -->
 &bull; <a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F07%2Fla-diferencia-entre-return-false-preventdefault-y-stoppropagation-en-jquery%2F&amp;t=La+diferencia+entre+return+false%2C+preventDefault+y+stopPropagation+en+jQuery" title="Share this on Facebook" target="_blank" rel="nofollow">Facebook</a> &bull; <a href="http://twitter.com/home?status=La+diferencia+entre+return+false%2C+preventDefault+y+stopPropagation+en+jQuery%20-%20http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F07%2Fla-diferencia-entre-return-false-preventdefault-y-stoppropagation-en-jquery%2F%20@QbitMexhico" title="Tweet this !" target="_blank" rel="nofollow">Twitter</a> &bull; <a href="http://delicious.com/post?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F07%2Fla-diferencia-entre-return-false-preventdefault-y-stoppropagation-en-jquery%2F&amp;title=La+diferencia+entre+return+false%2C+preventDefault+y+stopPropagation+en+jQuery&amp;notes=No+se+con+que+frecuencia+utilicen+eventos+de+jQuery+sobre+elementos+en+el+DOM+y+menos+como+detienen+su+ejecuci%C3%B3n..+pero+si+hacen+return+false%2C+d%C3%A9jenme+decirlo..+estan+cometiendo+un+gran+error%2C+quiz%C3%A1s+el+mismo+que+yo+comet%C3%ADa+hace+algun+tiempo" title="Post this on Delicious" target="_blank" rel="nofollow">Delicious</a> &bull; <a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F07%2Fla-diferencia-entre-return-false-preventdefault-y-stoppropagation-en-jquery%2F&amp;title=La+diferencia+entre+return+false%2C+preventDefault+y+stopPropagation+en+jQuery&amp;bodytext=No+se+con+que+frecuencia+utilicen+eventos+de+jQuery+sobre+elementos+en+el+DOM+y+menos+como+detienen+su+ejecuci%C3%B3n..+pero+si+hacen+return+false%2C+d%C3%A9jenme+decirlo..+estan+cometiendo+un+gran+error%2C+quiz%C3%A1s+el+mismo+que+yo+comet%C3%ADa+hace+algun+tiempo" title="Submit this to Digg" target="_blank" rel="nofollow">Digg</a> &bull; <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2013%2F01%2F07%2Fla-diferencia-entre-return-false-preventdefault-y-stoppropagation-en-jquery%2F&amp;title=La+diferencia+entre+return+false%2C+preventDefault+y+stopPropagation+en+jQuery" title="Submit this to StumbleUpon" target="_blank" rel="nofollow">StumbleUpon</a>
<!-- End WP Socializer - Social Buttons - Output -->
<div class='yarpp-related-rss'>
<p>Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2012/02/28/jquery-mobile-lo-bueno-y-lo-malo/' rel='bookmark' title='jQuery Mobile lo bueno y lo malo'>jQuery Mobile lo bueno y lo malo</a></li>
<li><a href='http://qbit.com.mx/blog/2010/03/29/implementando-un-todo-con-jquery-para-tu-aplicacion-web/' rel='bookmark' title='Implementando un ToDo con jQuery para tu aplicacion Web'>Implementando un ToDo con jQuery para tu aplicacion Web</a></li>
<li><a href='http://qbit.com.mx/blog/2012/11/12/paginar-un-grid-con-mvc-contrib-en-asp/' rel='bookmark' title='Paginar un Grid con MVC Contrib en ASP'>Paginar un Grid con MVC Contrib en ASP</a></li>
</ol></p>
<p>Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://qbit.com.mx/blog/2013/01/07/la-diferencia-entre-return-false-preventdefault-y-stoppropagation-en-jquery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Feliz año 2013</title>
		<link>http://qbit.com.mx/blog/2012/12/31/feliz-ano-2013/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=feliz-ano-2013</link>
		<comments>http://qbit.com.mx/blog/2012/12/31/feliz-ano-2013/#comments</comments>
		<pubDate>Mon, 31 Dec 2012 16:00:00 +0000</pubDate>
		<dc:creator>Jackfiallos</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[3D]]></category>
		<category><![CDATA[accesibilidad]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[ASP]]></category>
		<category><![CDATA[Batch]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[CalcImp]]></category>
		<category><![CDATA[Calidad]]></category>
		<category><![CDATA[CFD]]></category>
		<category><![CDATA[Comandos]]></category>
		<category><![CDATA[dcodsms]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[Diseño]]></category>
		<category><![CDATA[DTSx]]></category>
		<category><![CDATA[Error]]></category>
		<category><![CDATA[eventos]]></category>
		<category><![CDATA[Facturas Electronicas]]></category>
		<category><![CDATA[FTP]]></category>
		<category><![CDATA[Futuro]]></category>
		<category><![CDATA[Gestión de Calidad]]></category>
		<category><![CDATA[Hibernate]]></category>
		<category><![CDATA[Html]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[Impuesto]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Jackfiallos]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[JBoss]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[kinect]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Metodologías de Software]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[mootools]]></category>
		<category><![CDATA[moviles]]></category>
		<category><![CDATA[MS SQL SERVER]]></category>
		<category><![CDATA[MS-Dos]]></category>
		<category><![CDATA[MSDos]]></category>
		<category><![CDATA[MVC]]></category>
		<category><![CDATA[MySQL]]></category>
		<category><![CDATA[Nosotros]]></category>
		<category><![CDATA[Ocio]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[Paradigmas]]></category>
		<category><![CDATA[patrones]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Proyectos]]></category>
		<category><![CDATA[Pruebas de Software]]></category>
		<category><![CDATA[Qbit]]></category>
		<category><![CDATA[qbitsms]]></category>
		<category><![CDATA[REST]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Sentencias]]></category>
		<category><![CDATA[Servicio]]></category>
		<category><![CDATA[servidor]]></category>
		<category><![CDATA[Sin categoría]]></category>
		<category><![CDATA[Sistemas de Informacion]]></category>
		<category><![CDATA[SMS]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[T-SQL]]></category>
		<category><![CDATA[tecnologia]]></category>
		<category><![CDATA[Tendencias]]></category>
		<category><![CDATA[Twitter]]></category>
		<category><![CDATA[vb]]></category>
		<category><![CDATA[virtual]]></category>
		<category><![CDATA[VirtualBox]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[ZeruGiran]]></category>
		<category><![CDATA[2013]]></category>
		<category><![CDATA[año]]></category>
		<category><![CDATA[feliz]]></category>

		<guid isPermaLink="false">https://qbit.com.mx/blog/?p=1478</guid>
		<description><![CDATA[Ha sido un gran año de aprendizaje y mucho de eso lo hemos compartido, hubiésemos querido tener suficiente tiempo para escribir aún más, pero siempre hay pequeños retos que nos lo impedían.. esperamos superarlos y continuar compartiendo eso que nos gusta tanto y que se llama programación.. Les deseamos un buen año y adelante con [...]<div class='yarpp-related-rss'>

Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2012/01/04/celestic-un-largo-camino-por-seguir-y-muchas-ganas-de-continuar/' rel='bookmark' title='Celestic un largo camino por seguir y muchas ganas de continuar'>Celestic un largo camino por seguir y muchas ganas de continuar</a></li>
<li><a href='http://qbit.com.mx/blog/2012/02/28/jquery-mobile-lo-bueno-y-lo-malo/' rel='bookmark' title='jQuery Mobile lo bueno y lo malo'>jQuery Mobile lo bueno y lo malo</a></li>
<li><a href='http://qbit.com.mx/blog/2012/01/10/oauth-twitter-ruby/' rel='bookmark' title='OAuth Twitter Ruby'>OAuth Twitter Ruby</a></li>
</ol>

Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.
</div>
]]></description>
				<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=0fe8495ecf67ef7b922e354a69a28749&amp;default=http://qbit.com.mx/blog/archivos/blank_gravatar.png' alt='No Gravatar' width=40 height=40/><p>Ha sido un gran año de aprendizaje y mucho de eso lo hemos compartido, hubiésemos querido tener suficiente tiempo para escribir aún más, pero siempre hay pequeños retos que nos lo impedían.. esperamos superarlos y continuar compartiendo eso que nos gusta tanto y que se llama programación.. </p>
<p>Les deseamos un buen año y adelante con sus ideas.. gracias por seguirnos y por sus comentarios.</p>
<h2>Compartir y Disfrutar</h2>

<!-- Start WP Socializer - Social Buttons - Output -->
 &bull; <a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F31%2Ffeliz-ano-2013%2F&amp;t=Feliz+a%C3%B1o+2013" title="Share this on Facebook" target="_blank" rel="nofollow">Facebook</a> &bull; <a href="http://twitter.com/home?status=Feliz+a%C3%B1o+2013%20-%20http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F31%2Ffeliz-ano-2013%2F%20@QbitMexhico" title="Tweet this !" target="_blank" rel="nofollow">Twitter</a> &bull; <a href="http://delicious.com/post?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F31%2Ffeliz-ano-2013%2F&amp;title=Feliz+a%C3%B1o+2013&amp;notes=Ha+sido+un+gran+a%C3%B1o+de+aprendizaje+y+mucho+de+eso+lo+hemos+compartido%2C+hubi%C3%A9semos+querido+tener+suficiente+tiempo+para+escribir+a%C3%BAn+m%C3%A1s%2C+pero+siempre+hay+peque%C3%B1os+retos+que+nos+lo+imped%C3%ADan..+esperamos+superarlos+y+continuar+compartiendo+eso+que" title="Post this on Delicious" target="_blank" rel="nofollow">Delicious</a> &bull; <a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F31%2Ffeliz-ano-2013%2F&amp;title=Feliz+a%C3%B1o+2013&amp;bodytext=Ha+sido+un+gran+a%C3%B1o+de+aprendizaje+y+mucho+de+eso+lo+hemos+compartido%2C+hubi%C3%A9semos+querido+tener+suficiente+tiempo+para+escribir+a%C3%BAn+m%C3%A1s%2C+pero+siempre+hay+peque%C3%B1os+retos+que+nos+lo+imped%C3%ADan..+esperamos+superarlos+y+continuar+compartiendo+eso+que" title="Submit this to Digg" target="_blank" rel="nofollow">Digg</a> &bull; <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F31%2Ffeliz-ano-2013%2F&amp;title=Feliz+a%C3%B1o+2013" title="Submit this to StumbleUpon" target="_blank" rel="nofollow">StumbleUpon</a>
<!-- End WP Socializer - Social Buttons - Output -->
<div class='yarpp-related-rss'>
<p>Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2012/01/04/celestic-un-largo-camino-por-seguir-y-muchas-ganas-de-continuar/' rel='bookmark' title='Celestic un largo camino por seguir y muchas ganas de continuar'>Celestic un largo camino por seguir y muchas ganas de continuar</a></li>
<li><a href='http://qbit.com.mx/blog/2012/02/28/jquery-mobile-lo-bueno-y-lo-malo/' rel='bookmark' title='jQuery Mobile lo bueno y lo malo'>jQuery Mobile lo bueno y lo malo</a></li>
<li><a href='http://qbit.com.mx/blog/2012/01/10/oauth-twitter-ruby/' rel='bookmark' title='OAuth Twitter Ruby'>OAuth Twitter Ruby</a></li>
</ol></p>
<p>Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://qbit.com.mx/blog/2012/12/31/feliz-ano-2013/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Feliz navidad!!!</title>
		<link>http://qbit.com.mx/blog/2012/12/24/feliz-navidad/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=feliz-navidad</link>
		<comments>http://qbit.com.mx/blog/2012/12/24/feliz-navidad/#comments</comments>
		<pubDate>Tue, 25 Dec 2012 01:17:59 +0000</pubDate>
		<dc:creator>Jackfiallos</dc:creator>
				<category><![CDATA[Qbit]]></category>
		<category><![CDATA[Sin categoría]]></category>
		<category><![CDATA[feliz]]></category>
		<category><![CDATA[navidad]]></category>

		<guid isPermaLink="false">http://qbit.com.mx/blog/?p=1480</guid>
		<description><![CDATA[Nuestros mejores deseos en estas fiestas.<div class='yarpp-related-rss'>

Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2009/01/15/iniciando-el-2009-con-tequillavalley-y-super-happy-dev-house/' rel='bookmark' title='Iniciando el 2009 con TequillaValley y Super Happy Dev House'>Iniciando el 2009 con TequillaValley y Super Happy Dev House</a></li>
</ol>

Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.
</div>
]]></description>
				<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=0fe8495ecf67ef7b922e354a69a28749&amp;default=http://qbit.com.mx/blog/archivos/blank_gravatar.png' alt='No Gravatar' width=40 height=40/><p style="text-align: center;">Nuestros mejores deseos en estas fiestas.<a href="http://qbit.com.mx/blog/?attachment_id=1479" rel="attachment wp-att-1479"><img class="aligncenter  wp-image-1479" alt="Feliz navidad" src="http://qbit.com.mx/blog/wp-content/uploads/feliz_navidad_by_lillyfly06-d4k3kka.jpg" width="869" height="558" /></a></p>
<h2>Compartir y Disfrutar</h2>

<!-- Start WP Socializer - Social Buttons - Output -->
 &bull; <a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F24%2Ffeliz-navidad%2F&amp;t=Feliz+navidad%21%21%21" title="Share this on Facebook" target="_blank" rel="nofollow">Facebook</a> &bull; <a href="http://twitter.com/home?status=Feliz+navidad%21%21%21%20-%20http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F24%2Ffeliz-navidad%2F%20@QbitMexhico" title="Tweet this !" target="_blank" rel="nofollow">Twitter</a> &bull; <a href="http://delicious.com/post?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F24%2Ffeliz-navidad%2F&amp;title=Feliz+navidad%21%21%21&amp;notes=Nuestros+mejores+deseos+en+estas+fiestas." title="Post this on Delicious" target="_blank" rel="nofollow">Delicious</a> &bull; <a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F24%2Ffeliz-navidad%2F&amp;title=Feliz+navidad%21%21%21&amp;bodytext=Nuestros+mejores+deseos+en+estas+fiestas." title="Submit this to Digg" target="_blank" rel="nofollow">Digg</a> &bull; <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F24%2Ffeliz-navidad%2F&amp;title=Feliz+navidad%21%21%21" title="Submit this to StumbleUpon" target="_blank" rel="nofollow">StumbleUpon</a>
<!-- End WP Socializer - Social Buttons - Output -->
<div class='yarpp-related-rss'>
<p>Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2009/01/15/iniciando-el-2009-con-tequillavalley-y-super-happy-dev-house/' rel='bookmark' title='Iniciando el 2009 con TequillaValley y Super Happy Dev House'>Iniciando el 2009 con TequillaValley y Super Happy Dev House</a></li>
</ol></p>
<p>Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://qbit.com.mx/blog/2012/12/24/feliz-navidad/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OpenProj error &#8220;Your Java vendor is Oracle Corporation&#8221;</title>
		<link>http://qbit.com.mx/blog/2012/12/13/openproj-error-your-java-vendor-is-oracle-corporation/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=openproj-error-your-java-vendor-is-oracle-corporation</link>
		<comments>http://qbit.com.mx/blog/2012/12/13/openproj-error-your-java-vendor-is-oracle-corporation/#comments</comments>
		<pubDate>Thu, 13 Dec 2012 15:59:33 +0000</pubDate>
		<dc:creator>Jackfiallos</dc:creator>
				<category><![CDATA[Error]]></category>
		<category><![CDATA[Jackfiallos]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[djava]]></category>
		<category><![CDATA[error]]></category>
		<category><![CDATA[jackfiallos]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[openproj]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://qbit.com.mx/blog/?p=1472</guid>
		<description><![CDATA[Recién he cambiado mi sistema operativo hacia Ubuntu 12.10 .. para mi sorpresa una de las cosas nuevas en este mundo de linux es que oracle es java (ya deja de ser libre) y que tenemos una actualización de java que es la versión 7 y con ello muchos problemas con las aplicaciones de licencia [...]<div class='yarpp-related-rss'>

Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2010/01/12/utilizar-una-clase-java-en-oracle-10g/' rel='bookmark' title='Utilizar una clase Java en Oracle 10g'>Utilizar una clase Java en Oracle 10g</a></li>
<li><a href='http://qbit.com.mx/blog/2012/01/24/remover-elementos-repetidos-de-un-array-php-ruby-java-c-vb-javascript/' rel='bookmark' title='Remover elementos repetidos de un array php ruby java c# vb javascript'>Remover elementos repetidos de un array php ruby java c# vb javascript</a></li>
<li><a href='http://qbit.com.mx/blog/2012/10/19/sql-server-error-15138/' rel='bookmark' title='SQL SERVER – Error: 15138'>SQL SERVER – Error: 15138</a></li>
</ol>

Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.
</div>
]]></description>
				<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=0fe8495ecf67ef7b922e354a69a28749&amp;default=http://qbit.com.mx/blog/archivos/blank_gravatar.png' alt='No Gravatar' width=40 height=40/><div id="attachment_1473" class="wp-caption aligncenter" style="width: 590px"><a href="http://qbit.com.mx/blog/?attachment_id=1473" rel="attachment wp-att-1473"><img src="http://qbit.com.mx/blog/wp-content/uploads/Screenshot-from-2012-12-12-192203-580x133.png" alt="Your Java vendor is &quot;Oracle Corporation&quot;. " width="580" height="133" class="size-medium wp-image-1473" /></a><p class="wp-caption-text">Your Java vendor is &#8220;Oracle Corporation&#8221;.</p></div>
<p>Recién he cambiado mi sistema operativo hacia Ubuntu 12.10 .. para mi sorpresa una de las cosas nuevas en este mundo de linux es que oracle es java (ya deja de ser libre) y que tenemos una actualización de java que es la versión 7 y con ello muchos problemas con las aplicaciones de licencia libre que usaban java.</p>
<p>Pues bien, este error muestra un mensaje que decía lo siguiente:</p>
<p>&#8220;Your Java vendor is &#8220;Oracle Corporation&#8221;. To run OpenProj, you need the Sun Java implementation.<br />
The auto-detected Java Runtime used is&#8230;&#8221;</p>
<p>Blah.. blah.. blah.. en realidad el mensaje no dice mucho y menos nos ayuda a resolver el problema, inicialmente pensaba que tenía que establecer el path correcto de java, pero nooooo!! .. en fin, buscando un poco encontré que para hacerlo funcionar básicamente hay que engañar a openproj desde su archivo de configuración diciéndole que efectivamente es java el proveedor.. entonces solo es necesario modificar la línea JAVA_OPTS en el archivo /home/user/.openproj/run.conf</p>
<pre>
JAVA_OPTS="-Xms128m -Xmx768m"
</pre>
<p>y reemplazarla por esta otra</p>
<pre>
JAVA_OPTS="-Djava.vendor=Sun -Xms128m -Xmx768m"
</pre>
<p>Y listo y como recomendación, por favor no hagan el cambio teniendo el mensaje de error abierto, ya que no surtirá efecto. <img src='http://qbit.com.mx/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<h2>Compartir y Disfrutar</h2>

<!-- Start WP Socializer - Social Buttons - Output -->
 &bull; <a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F13%2Fopenproj-error-your-java-vendor-is-oracle-corporation%2F&amp;t=OpenProj+error+%26%238220%3BYour+Java+vendor+is+Oracle+Corporation%26%238221%3B" title="Share this on Facebook" target="_blank" rel="nofollow">Facebook</a> &bull; <a href="http://twitter.com/home?status=OpenProj+error+%26%238220%3BYour+Java+vendor+is+Oracle+Corporation%26%238221%3B%20-%20http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F13%2Fopenproj-error-your-java-vendor-is-oracle-corporation%2F%20@QbitMexhico" title="Tweet this !" target="_blank" rel="nofollow">Twitter</a> &bull; <a href="http://delicious.com/post?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F13%2Fopenproj-error-your-java-vendor-is-oracle-corporation%2F&amp;title=OpenProj+error+%26%238220%3BYour+Java+vendor+is+Oracle+Corporation%26%238221%3B&amp;notes=Reci%C3%A9n+he+cambiado+mi+sistema+operativo+hacia+Ubuntu+12.10+..+para+mi+sorpresa+una+de+las+cosas+nuevas+en+este+mundo+de+linux+es+que+oracle+es+java+%28ya+deja+de+ser+libre%29+y+que+tenemos+una+actualizaci%C3%B3n+de+java+que+es+la+versi%C3%B3n+7+y+con+ello+m" title="Post this on Delicious" target="_blank" rel="nofollow">Delicious</a> &bull; <a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F13%2Fopenproj-error-your-java-vendor-is-oracle-corporation%2F&amp;title=OpenProj+error+%26%238220%3BYour+Java+vendor+is+Oracle+Corporation%26%238221%3B&amp;bodytext=Reci%C3%A9n+he+cambiado+mi+sistema+operativo+hacia+Ubuntu+12.10+..+para+mi+sorpresa+una+de+las+cosas+nuevas+en+este+mundo+de+linux+es+que+oracle+es+java+%28ya+deja+de+ser+libre%29+y+que+tenemos+una+actualizaci%C3%B3n+de+java+que+es+la+versi%C3%B3n+7+y+con+ello+m" title="Submit this to Digg" target="_blank" rel="nofollow">Digg</a> &bull; <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F13%2Fopenproj-error-your-java-vendor-is-oracle-corporation%2F&amp;title=OpenProj+error+%26%238220%3BYour+Java+vendor+is+Oracle+Corporation%26%238221%3B" title="Submit this to StumbleUpon" target="_blank" rel="nofollow">StumbleUpon</a>
<!-- End WP Socializer - Social Buttons - Output -->
<div class='yarpp-related-rss'>
<p>Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2010/01/12/utilizar-una-clase-java-en-oracle-10g/' rel='bookmark' title='Utilizar una clase Java en Oracle 10g'>Utilizar una clase Java en Oracle 10g</a></li>
<li><a href='http://qbit.com.mx/blog/2012/01/24/remover-elementos-repetidos-de-un-array-php-ruby-java-c-vb-javascript/' rel='bookmark' title='Remover elementos repetidos de un array php ruby java c# vb javascript'>Remover elementos repetidos de un array php ruby java c# vb javascript</a></li>
<li><a href='http://qbit.com.mx/blog/2012/10/19/sql-server-error-15138/' rel='bookmark' title='SQL SERVER – Error: 15138'>SQL SERVER – Error: 15138</a></li>
</ol></p>
<p>Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://qbit.com.mx/blog/2012/12/13/openproj-error-your-java-vendor-is-oracle-corporation/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Escalamiento</title>
		<link>http://qbit.com.mx/blog/2012/12/11/escalamiento/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=escalamiento</link>
		<comments>http://qbit.com.mx/blog/2012/12/11/escalamiento/#comments</comments>
		<pubDate>Tue, 11 Dec 2012 15:40:00 +0000</pubDate>
		<dc:creator>Jackfiallos</dc:creator>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[Jackfiallos]]></category>
		<category><![CDATA[Qbit]]></category>
		<category><![CDATA[Servicio]]></category>
		<category><![CDATA[servidor]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[Tendencias]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[big data]]></category>
		<category><![CDATA[escalamiento]]></category>
		<category><![CDATA[horizontal]]></category>
		<category><![CDATA[jackfiallos]]></category>
		<category><![CDATA[servicios]]></category>
		<category><![CDATA[servidores]]></category>
		<category><![CDATA[vertical]]></category>

		<guid isPermaLink="false">http://qbit.com.mx/blog/?p=1464</guid>
		<description><![CDATA[http://www.continuitycms.com/product/technical/scalablearchitecture<div class='yarpp-related-rss'>

Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2012/02/14/rest-vs-soap/' rel='bookmark' title='REST vs SOAP'>REST vs SOAP</a></li>
<li><a href='http://qbit.com.mx/blog/2011/12/06/participando-en-desarrollando-america-latina/' rel='bookmark' title='Participando en Desarrollando America Latina'>Participando en Desarrollando America Latina</a></li>
<li><a href='http://qbit.com.mx/blog/2012/01/04/celestic-un-largo-camino-por-seguir-y-muchas-ganas-de-continuar/' rel='bookmark' title='Celestic un largo camino por seguir y muchas ganas de continuar'>Celestic un largo camino por seguir y muchas ganas de continuar</a></li>
</ol>

Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.
</div>
]]></description>
				<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=0fe8495ecf67ef7b922e354a69a28749&amp;default=http://qbit.com.mx/blog/archivos/blank_gravatar.png' alt='No Gravatar' width=40 height=40/><div id="attachment_1469" class="wp-caption aligncenter" style="width: 456px"><a href="http://qbit.com.mx/blog/wp-content/uploads/scalable_architecture.jpg"><img class=" wp-image-1469  " title="Arquitecturas escalables" src="http://qbit.com.mx/blog/wp-content/uploads/scalable_architecture.jpg" alt="Arquitecturas escalables" width="446" height="314" /></a><p class="wp-caption-text">Image Source from http://www.continuitycms.com/product/technical/scalablearchitecture</p></div>
<p>Si te dedicas al desarrollo de aplicaciones de software o desarrollo de servicios sobre internet, seguramente ya has escuchado hablar sobre escalamiento y no es más que otro término que se ha dado a la forma en que un sistema crece o evoluciona y la manera en que se mejora su acceso.</p>
<p>Básicamente existen 2 formas de mejorar un servicio y es a través del escalamiento vertical y el escalamiento horizontal.</p>
<p><strong>Escalamiento Vertical (Scale Up)</strong><br />
Significa que mejoran los recursos de un servidor, esto se refiere típicamente a agregar más memoria, almacenamiento u capacidad de procesamiento (CPU).</p>
<p><strong>Escalamiento Horizontal (Scale out)</strong><br />
Significa que se pueden agregar nodos o servidores que comparten la misma información, algo similar al procesamiento distribuido que al final termina siendo administrado por algo que se llama balanceadores de carga.</p>
<p>Una u otra forma de escalar un servicio depende mucho del tipo de petición y el acceso a datos, no es lo mismo obtener información de una fuente de datos a guardarla en la misma (por cierto, tema pendiente para otro artículo).</p>
<h2>Compartir y Disfrutar</h2>

<!-- Start WP Socializer - Social Buttons - Output -->
 &bull; <a href="http://www.facebook.com/share.php?u=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F11%2Fescalamiento%2F&amp;t=Escalamiento" title="Share this on Facebook" target="_blank" rel="nofollow">Facebook</a> &bull; <a href="http://twitter.com/home?status=Escalamiento%20-%20http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F11%2Fescalamiento%2F%20@QbitMexhico" title="Tweet this !" target="_blank" rel="nofollow">Twitter</a> &bull; <a href="http://delicious.com/post?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F11%2Fescalamiento%2F&amp;title=Escalamiento&amp;notes=http%3A%2F%2Fwww.continuitycms.com%2Fproduct%2Ftechnical%2Fscalablearchitecture" title="Post this on Delicious" target="_blank" rel="nofollow">Delicious</a> &bull; <a href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F11%2Fescalamiento%2F&amp;title=Escalamiento&amp;bodytext=http%3A%2F%2Fwww.continuitycms.com%2Fproduct%2Ftechnical%2Fscalablearchitecture" title="Submit this to Digg" target="_blank" rel="nofollow">Digg</a> &bull; <a href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fqbit.com.mx%2Fblog%2F2012%2F12%2F11%2Fescalamiento%2F&amp;title=Escalamiento" title="Submit this to StumbleUpon" target="_blank" rel="nofollow">StumbleUpon</a>
<!-- End WP Socializer - Social Buttons - Output -->
<div class='yarpp-related-rss'>
<p>Entradas Relacionadas:<ol>
<li><a href='http://qbit.com.mx/blog/2012/02/14/rest-vs-soap/' rel='bookmark' title='REST vs SOAP'>REST vs SOAP</a></li>
<li><a href='http://qbit.com.mx/blog/2011/12/06/participando-en-desarrollando-america-latina/' rel='bookmark' title='Participando en Desarrollando America Latina'>Participando en Desarrollando America Latina</a></li>
<li><a href='http://qbit.com.mx/blog/2012/01/04/celestic-un-largo-camino-por-seguir-y-muchas-ganas-de-continuar/' rel='bookmark' title='Celestic un largo camino por seguir y muchas ganas de continuar'>Celestic un largo camino por seguir y muchas ganas de continuar</a></li>
</ol></p>
<p>Publicaciones relacionadas que recibes por <a href='http://yarpp.org'>Yet Another Related Posts Plugin</a>.</p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://qbit.com.mx/blog/2012/12/11/escalamiento/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
