﻿<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
  <channel>
    <title>JuanCri.com Blog</title>
    <description>Blog de Juan C. Olivares</description>
    <link>http://www.juancri.com/</link>
    <lastBuildDate>Tue, 27 Jul 2010 03:57:36 GMT</lastBuildDate>
    <docs>http://backend.userland.com/rss</docs>
    <generator>RSS.NET: http://www.rssdotnet.com/</generator>
    <item>
      <title>xmlstarlet</title>
      <description>&lt;p&gt;
&lt;a href="http://xmlstar.sourceforge.net/"&gt;xmlstarlet&lt;/a&gt; se autodefine como un &lt;i&gt;toolkit XML para línea de comando&lt;/i&gt;.
&lt;/p&gt;
&lt;p&gt;
He usado esta herramienta desde hace varios años, generalmente para validar un xml, ya sea que esté bien formado como también contra un esquema (XSD) o DTD. Para lo primero, basta con:
&lt;/p&gt;
&lt;pre name="code"&gt;xmlstarlet val test.xml&lt;/pre&gt;
&lt;p&gt;
Hoy, sin embargo, estaba buscando una forma rápida de obtener un valor desde un archivo XML. Tomemos como ejemplo este archivo:
&lt;/p&gt;
&lt;pre class="xml" name="code"&gt;
&lt;root&gt;
	&lt;hijo&gt;
		&lt;elemento atributo="valor"&gt;
			textoelemento
		&lt;/elemento&gt;
	&lt;/hijo&gt;
&lt;/root&gt;
&lt;/pre&gt;
&lt;p&gt;Si queremos, por ejemplo, seleccionar el texto de elemento, podemos ejecutar:&lt;/p&gt;
&lt;pre name="code"&gt;xmlstarlet sel --text -t -v /root/hijo/elemento test.xml&lt;/pre&gt;
&lt;p&gt;Si queremos encontrar el valor del &lt;i&gt;atributo&lt;/i&gt;, ejecutamos:&lt;/p&gt;
&lt;pre name="code"&gt;xmlstarlet sel --text -t -v /root/hijo/elemento/@atributo test.xml&lt;/pre&gt;
&lt;p&gt;Para seleccionar elementos se utiliza la sintaxis XPath. Más info &lt;a href="http://www.w3schools.com/XPath/xpath_syntax.asp"&gt;aquí&lt;/a&gt;.&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/xmlstarlet</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/xmlstarlet</guid>
      <pubDate>Tue, 27 Jul 2010 03:57:36 GMT</pubDate>
    </item>
    <item>
      <title>Cómo NO hacer un captcha</title>
      <description>&lt;p&gt;
Niños: NUNCA HAGAN ESTO:
&lt;/p&gt;
&lt;p&gt;
Sitio web:&lt;br /&gt;
&lt;img src="http://www.juancri.com/imagenes/posts/captcha1.png" /&gt;
&lt;/p&gt;
&lt;p&gt;
Código fuente:&lt;br /&gt;
&lt;img src="http://www.juancri.com/imagenes/posts/captcha2.png" /&gt;
&lt;/p&gt;
</description>
      <link>http://www.juancri.com/blog/como_no_hacer_un_captcha</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/como_no_hacer_un_captcha</guid>
      <pubDate>Wed, 12 May 2010 10:22:47 GMT</pubDate>
    </item>
    <item>
      <title>Magnetoscopio.net</title>
      <description>&lt;p&gt;Hoy lanzo oficialmente mi nuevo blog: &lt;a href="http://magnetoscopio.net"&gt;magnetoscopio.net&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;En &amp;eacute;l, pretendo publicar todos mis posts referentes a TV, video e Internet. Tal vez ver&amp;aacute;n algunos posts que ya han visto aqu&amp;iacute;, pero hay mucha informaci&amp;oacute;n interesante que comenzar&amp;eacute; a publicar. &amp;iexcl;Suscr&amp;iacute;bete! &amp;iexcl;Cu&amp;eacute;ntale a tus amigos! :)&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/magnetoscopio_net</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/magnetoscopio_net</guid>
      <pubDate>Tue, 04 May 2010 00:28:07 GMT</pubDate>
    </item>
    <item>
      <title>CNN Chile en Vivo</title>
      <description>&lt;p&gt;
Me gusta el tema de las transmisiones de video online. No por nada, hemos estado más de un año trabajando para desarrollar &lt;a href="http://iptvadventista.cl"&gt;IPTV Adventista&lt;/a&gt; (que, de paso, lanzó su versión 2.0 hace algunos días).
&lt;/p&gt;
&lt;p&gt;
Desde hace un tiempo (semanas al parecer), CNN Chile está transmitiendo su señal online para clientes VTR (CNN Chile es un proyecto de CNN y VTR).
&lt;/p&gt;
&lt;p&gt;
Si desean acceder directamente al stream, puede usar &lt;a href="http://www.videolan.org"&gt;VLC&lt;/a&gt;, así:&lt;br/&gt;
vlc rtsp://200.83.4.17/broadcast/cnn
&lt;/p&gt;
&lt;p&gt;
La transmisión funciona bien, pero podría ser mejor. Aquí va una lista de problemas y sugerencias:
&lt;/p&gt;
&lt;p&gt;
&lt;ul&gt;
&lt;li&gt;Se desperdicia en transmitir el audio en estéreo&lt;/li&gt;
&lt;li&gt;La transmisión utiliza 30 cuadros por segundos, pero el encoder parece emitir menos&lt;/li&gt;
&lt;li&gt;La imagen tirita, evidenciando la utilización de sistemas analógicos con interferencia de estática&lt;/li&gt;
&lt;li&gt;El bitrate es de 700Kbps aprox, pero la calidad no corresponde a ese uso de ancho de banda&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/cnn_chile_en_vivo</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/cnn_chile_en_vivo</guid>
      <pubDate>Tue, 16 Mar 2010 04:25:49 GMT</pubDate>
    </item>
    <item>
      <title>ChileAyuda</title>
      <description>&lt;p&gt;
Se están reuniendo esfuerzos en el grupo &lt;a href="http://groups.google.com/group/digitales-por-chile"&gt;Digitales Por Chile&lt;/a&gt; de   profesionales y empresas relacionadas con tecnología. Dos personas de CxNet estaremos a partir de esta tarde colaborando.
&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/chileayuda</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/chileayuda</guid>
      <pubDate>Tue, 02 Mar 2010 16:15:15 GMT</pubDate>
    </item>
    <item>
      <title>Terremoto</title>
      <description>&lt;p&gt;
El terremoto ya pasó, pero queda mucho por hacer. Yo y mi familia estamos muy bien gracias a Dios.
&lt;/p&gt;
&lt;p&gt;
Aquí hay una lista de sitios que pueden visitar para colaborar:
&lt;/p&gt;
&lt;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.google.com/intl/es/relief/chileearthquake/"&gt;Google Crisis Response Chile&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.onemi.cl"&gt;Oficina Nacional de Emergencias&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://nadaseralomismo.com/2010/02/28/lista-de-lugares-donde-comprar-provisiones/"&gt;Lista de lugares donde comprar provisiones&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;
&lt;/ul&gt;
&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/terremoto</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/terremoto</guid>
      <pubDate>Sun, 28 Feb 2010 23:26:44 GMT</pubDate>
    </item>
    <item>
      <title>Google sabe de mí...</title>
      <description>&lt;p&gt;
&lt;ul&gt;
  &lt;li&gt;Lo que busco&lt;/li&gt;
  &lt;li&gt;Quiénes son mis contactos&lt;/li&gt;
  &lt;li&gt;Lo que escribo y leo (Gmail)&lt;/li&gt;
  &lt;li&gt;Dónde estoy (Latitude)&lt;/li&gt;
  &lt;li&gt;Lo que me gusta leer (Reader)&lt;/li&gt;
  &lt;li&gt;Adónde voy (Maps / Navigator)&lt;/li&gt;
  &lt;li&gt;Dónde y qué compro (Checkout)&lt;/li&gt;
  &lt;li&gt;A quién llamo (Android)&lt;/li&gt;
  &lt;li&gt;Los sitios web que visito (Chrome)&lt;/li&gt;
  &lt;li&gt;Mi agenda diaria (Calendar)&lt;/li&gt;
  &lt;li&gt;Los proyectos que tengo (Docs)&lt;/li&gt;
  &lt;li&gt;Mis tareas pendientes (Tasks)&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;Sólo eso. ¿Se les ocurren más?&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/google_sabe_de_mi</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/google_sabe_de_mi</guid>
      <pubDate>Wed, 17 Feb 2010 19:08:43 GMT</pubDate>
    </item>
    <item>
      <title>jQuery + JSon (Parte 1): La búsqueda</title>
      <description>&lt;p&gt;
Hace algunas semanas, comenzamos un experimento para definir la arquitectura
básica de las aplicaciones web que desarrollaremos en CxNet de aquí en adelante.
&lt;/p&gt;
&lt;p&gt;
Aunque uno de los lenguajes que más utilizado es PHP (principalmente entre 2001 y 2004),
no me siento cómo desarrollando "web". Comparado a la satisfacción de programar software
sin interfaz de usuario, que sólo debe cumplir con los protocolos de los sistemas a los
cuales se conecta, la web tiene un sin fin de complejidades.
&lt;/p&gt;
&lt;p&gt;
Ésta es mi historia:
&lt;/p&gt;
&lt;p&gt;
&lt;ul&gt;
  &lt;li&gt;HTML: Aprendí gracias a Mosaic y algunas páginas de muestra que venían en el CD
  de mi primer módem. Luego, cuando por fin pude usarlo para conectarme a internet,
  seguí experimentando y creé algunas páginas, pero nada de lo que me sienta muy
  orgulloso.&lt;/li&gt;
  &lt;li&gt;Perl: Hace unos 11 años, alguien me pidió investigar una forma de listar
  información sobre empresas en un sitio web. Hice pruebas con Perl, el lenguaje
  más utilizado para desarrollar CGI en la época, y logré buenos resultados.
  Perl se convertiría en mi segundo lenguaje de programación (después de BASIC...
  aunque pasando por alto algunas pruebas con JavaScript).&lt;/li&gt;
  &lt;li&gt;PHP: Ya el 2001, cuando comencé a trabajar (semi) formalmente, PHP resonaba
  como la &lt;i&gt;maravilla&lt;/i&gt; del desarrollo web. Me tomé algunos días y, utilizando
  unas mil hojas tamaño carta y varios cartuchos recargables de tinta, imprimí
  la documentación de la, entonces nueva, versión 4 de PHP. Éste sería uno de
  los lenguajes que utilizaría por más tiempo. Si bien no habían frameworks en
  la época, y todas las variables se importaban mágicamente (nada de $_POST o
  similares), hace algunos años comencé a buscar alternativas como PRADO Framework.&lt;/li&gt;
  &lt;li&gt;ASP.NET:&lt;/li&gt; Durante la búsqueda de un lenguaje y plataforma más poderosos que
  me permitieran desarrollar para web y para escritorio, y luego de probar Java y
  Delphi, encontré el proyecto Mono (allá por la versión 0.16). De inmediato me sentí
  muy atraido por el lenguaje principal, C#. Luego, descubriría ASP.NET y su
  revolucionaria arquitectura de controles y estados. Ha sido mi principal plataforma
  de desarrollo web desde 2003 hasta 2009.&lt;/li&gt;
  &lt;li&gt;Java Struts: Este conocido motor MVC para Java me fue impuesto por el cruel
  mercado. Nunca me sentí cómodo con él y, después de menos de seis meses de práctica,
  renuncié a mi trabajo y decidí enfocarme en .NET/Mono, lo que incluía ASP.NET.&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;
Si bien el modelo de ASP.NET, también ocupado en JSF, PRADO Framework y otros, es cómodo
y ordenado, uno de los problemas que tiene es el uso de servicios Ajax o JSON y la
interacción con JavaScript, nada de natural. Hay varios intentos de amalgamar estas
tecnologías que parecen haber sido diseñadas para lo mismo pero que, sin embargo,
tienen arquitecturas totalmente opuestas. Un intento es ASP.NET Ajax, el cual incluye
un "update panel", en el cual se pueden insertar otros controles que utilizar AJAX
por debajo. Otro intento, muy bueno, es Gaia Ajax Widgets. En este caso, sus desarrolladores
crearon toda una gama de controles "ajaxosos", extendiendo la funcionalidad de los controles
originales. Incluso llegué a comprar una licencia durante una oferta. El viewstate se seguía
ocupando, pero no todo era color de rosas. Hay que saber muchos detalles de cómo funcionan
estos sistemas, a bajo nivel, para poder resolver problemas que seguramente ocurrirán tarde
o temprano, síntomas de una relación ilícita entre dos mundos que se niegan a convivir.
&lt;/p&gt;
&lt;p&gt;
Como todo cambia, especialmente en este mundillo de la computación, siempre hay que
replantearse las cosas. En el caso de las plataformas web, esto me ha ocurrido varias
veces.
&lt;/p&gt;
&lt;p&gt;
Hay dos criterios muy importantes que deben ser tomados en cuenta cuando se elige una
plataforma: el usuario y el desarrollador. GMail es tal vez el gran ejemplo de AJAX.
La primera aplicación masiva donde no había que esperar por un &lt;i&gt;refresh&lt;/i&gt; o
&lt;i&gt;postback&lt;/i&gt; y donde el usuario es complacido con una interfaz intuitiva y simple.
En el caso del desarrollador, hay un gran problema en el típico framework web mezclado
con AJAX (o JSON, etc). Cierto contenido es &lt;i&gt;rendereado&lt;/i&gt; en el servidor mientras
otro contenido es generado dinámicamente al cargarse datos a través de un request AJAX.
&lt;/p&gt;
&lt;p&gt;
Luego de la popularidad alcanzada por JQuery y la facilidad de uso de JSON en ASP.NET MVC,
decidí probar esta combinación. En los próximos posts, les contaré cómo.
&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/jquery_json_parte_1_la_busqueda</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/jquery_json_parte_1_la_busqueda</guid>
      <pubDate>Wed, 17 Feb 2010 08:36:23 GMT</pubDate>
    </item>
    <item>
      <title>Consultas recursivas</title>
      <description>&lt;p&gt;
Cuando se llevan estructuras de árbol a una base de datos, es común utilizar un esquema como este:
&lt;/p&gt;
&lt;pre class="sql" name="code"&gt;CREATE TABLE nodos
(
    id int primary key,
    idpadre integer REFERENCES nodos (id),
    nombre varchar
);&lt;/pre&gt;
&lt;p&gt;
Una vez hecho esto, podemos insertar algunos datos para crear la estructura:
&lt;/p&gt;
&lt;pre class="sql" name="code"&gt;INSERT INTO nodos (id, nombre) VALUES (1, 'Raíz');
INSERT INTO nodos (id, nombre, idpadre) VALUES (2, 'Nodo 1', 1);
INSERT INTO nodos (id, nombre, idpadre) VALUES (3, 'Nodo 2', 1);
INSERT INTO nodos (id, nombre, idpadre) VALUES (4, 'Nodo 3', 2);
INSERT INTO nodos (id, nombre, idpadre) VALUES (5, 'Nodo 4', 4);&lt;/pre&gt;
&lt;p&gt;
Con estos datos, tendremos una estructura como esta:
&lt;/p&gt;
&lt;pre&gt;Raíz (1)
 |-- Nodo 1 (2)
 |    |-- Nodo 3 (4)
 |         |-- Nodo 4 (5)
 |-- Nodo 2 (3)&lt;/pre&gt;
&lt;p&gt;
Supongamos que queremos saber todos los nodos padres del "Nodo 4" (ID: 5). Para esto, PostgreSQL provee consultas recursivas. Acá un ejemplo de cómo podemos realizar la consulta para este nodo:
&lt;/p&gt;
&lt;pre class="sql" name="code"&gt;WITH RECURSIVE arbol (idpadre, idnodo) AS (
    SELECT
	n.idpadre,
	n.id
    FROM
	nodos n
    WHERE
	n.id = 5
  UNION ALL
    SELECT n2.idpadre, n2.id
    FROM arbol a INNER JOIN nodos n2
      ON (n2.id = a.idpadre)
  )
SELECT * FROM arbol&lt;/pre&gt;
&lt;p&gt;
Esta simple consulta, retornará:
&lt;/p&gt;
&lt;pre&gt; idpadre | idnodo 
---------+--------
       4 |      5
       2 |      4
       1 |      2
         |      1
&lt;/pre&gt;
&lt;p&gt;
Espero que les sirva ;)
&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/consultas_recursivas</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/consultas_recursivas</guid>
      <pubDate>Fri, 12 Feb 2010 02:00:44 GMT</pubDate>
    </item>
    <item>
      <title>Si usted puede...</title>
      <description>&lt;p&gt;
Si puede iniciar el día sin cafeína;&lt;br/&gt;
Si usted puede funcionar sin píldoras estimulantes; &lt;br/&gt;
Si usted siempre puede ser alegre, ignorar dolores y dolores; &lt;br/&gt;
Si puede resistir la queja y aburrido la gente con sus problemas; &lt;br/&gt;
Si usted puede comer la misma comida todos los días y estar agradecidos por ello;&lt;br/&gt;
Si usted puede entender cuando sus seres queridos están demasiado ocupados para darle cualquier momento; &lt;br/&gt;
Si se puede perdonar la falta de un amigo de su examen; &lt;br/&gt;
Si usted puede pasar por alto cuando las amas de sacarlo a usted cuando, 
no por culpa propia, algo va mal; &lt;br/&gt;
Si usted puede tomar la crítica y la culpa, sin resentimiento; &lt;br/&gt;
Si usted puede ignorar la educación limitada de un amigo y nunca lo correcto; &lt;br/&gt;
Si puede resistir el tratamiento de un amigo rico mejor que un amigo de los pobres; &lt;br/&gt;
Si puedes enfrentar el mundo sin mentiras y el engaño; &lt;br/&gt;
Si usted puede conquistar la tensión sin ayuda médica; &lt;br/&gt;
Si usted puede relajarse sin licor; &lt;br/&gt;
Si usted puede dormir sin la ayuda de las drogas; &lt;br/&gt;
Si usted honestamente puedo decir que en el fondo de su corazón no tiene ningún perjuicio
contra el credo o el color, la religión o la política, entonces, mi amigo, usted es 
casi tan bueno como su perro.
&lt;/p&gt;
&lt;p&gt;
Fuente: La Voz de la Esperanza. Copia &lt;a href="http://blog.vault9.net/es/?p=603"&gt;aquí&lt;/a&gt;.&lt;br/&gt;
Dedicado a Mad, mi perro (2002 - 2010)
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.juancri.com/imagenes/posts/mad-bostezo.jpg" /&gt;
&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/si_usted_puede</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/si_usted_puede</guid>
      <pubDate>Thu, 11 Feb 2010 04:55:45 GMT</pubDate>
    </item>
    <item>
      <title>Intercom con Asterisk</title>
      <description>&lt;p&gt;La versi&amp;oacute;n del &lt;a href="http://svn.digium.com/svn/asterisk-gui/branches/2.0"&gt;branch 2.0&lt;/a&gt; de &lt;a href="http://www.asteriskguru.com/tutorials/asterisk_gui.html"&gt;Asterisk GUI&lt;/a&gt; permite configurar el sistema de telefon&amp;iacute;a IP para intercomunicaci&amp;oacute;n (intercom) o mensajes (paging). La opci&amp;oacute;n que da es utilizar un header Alert-Info para que los tel&amp;eacute;fonos puedan reconocer este modo especial.&lt;/p&gt;
&lt;p&gt;Por otro lado, los tel&amp;eacute;fonos &lt;a href="http://www.grandstream.com/"&gt;Grandstream&lt;/a&gt;, una de las marcas m&amp;aacute;s utilizadas gracias a sus equipos econ&amp;oacute;micos, tienen dos opciones interesantes:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;ul&gt;
    &lt;li style="margin-left: 15px;"&gt;Allow Auto Answer by Call-Info&lt;/li&gt;
    &lt;li style="margin-left: 15px;"&gt;Turn off speaker on remote disconnect&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;La primera permite que, cuando se env&amp;iacute;a el header:&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;&lt;strong&gt;Call-Info: answer-after=0&lt;/strong&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;el tel&amp;eacute;fono conteste la llamada utilizando el speaker, sin un ring previo. M&amp;aacute;s info &lt;a href="http://www.grandstream.com/support/gxp_series/general/documents/gxp_interop_asterisk.pdf"&gt;aqu&amp;iacute;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;La segunda permite que el tel&amp;eacute;fono termine la llamada por la contraparte, el tel&amp;eacute;fono cuelgue.&lt;/p&gt;
&lt;p&gt;El problema es que Asterisk GUI genera el header&lt;/p&gt;
&lt;blockquote&gt;
&lt;pre&gt;&lt;strong&gt;Alert-Info: ${PAGING_HEADER}&lt;/strong&gt;&lt;/pre&gt;
&lt;/blockquote&gt;
&lt;p&gt;donde ${PAGING_HEADER} es un header definido por el usuario en Asterisk GUI. El problema est&amp;aacute; entre Call-Info y Alert-Info. Para solucionarlo, hice un peque&amp;ntilde;o parche que simplemente cambia este header. Est&amp;aacute; disponible &lt;a href="http://www.juancri.com/temp/asterisk-gui-grandstream.diff"&gt;aqu&amp;iacute;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Y... voila. Pueden configurar todo el resto en Asterisk GUI sin problemas.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/intercom_con_asterisk</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/intercom_con_asterisk</guid>
      <pubDate>Fri, 05 Feb 2010 22:13:42 GMT</pubDate>
    </item>
    <item>
      <title>ALBAstryde</title>
      <description>&lt;p&gt;
Hoy estaba escuchando &lt;a href="http://podcast.softwarelibre.org.ni/"&gt;POSOL&lt;/a&gt;, un podcast de la comunicad de software libre de Nicaragua (Posol también es el nombre de una bebida típica de centroamérica).
&lt;/p&gt;
&lt;p&gt;
Entre los temas del &lt;a href="http://podcast.softwarelibre.org.ni/?p=108"&gt;episodio 4&lt;/a&gt;, está &lt;a href="http://code.google.com/p/albastryde/"&gt;ALBAstryde&lt;/a&gt;. Se trata de un software basado en la idea de cyberstryde. Durante el gobierno de &lt;a href="http://es.wikipedia.org/wiki/Salvador_Allende"&gt;Salvador Allende&lt;/a&gt; en Chile, entre 1970 y 1973, se desarrolló el proyecto &lt;a href="http://es.wikipedia.org/wiki/Proyecto_Synco"&gt;Synco&lt;/a&gt;, el cual permitíría administrar información acerca de la agricultura chilena.
&lt;/p&gt;
&lt;p&gt;
Lamentablemente, este proyecto fue descontinuado en 1973... ya saben por qué...
&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/albastryde</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/albastryde</guid>
      <pubDate>Mon, 01 Feb 2010 07:16:08 GMT</pubDate>
    </item>
    <item>
      <title>Más... que...</title>
      <description>&lt;p&gt;
Tal vez algunos ya se enteraron por Twitter, pero hace algunos días lanzamos (&lt;a href="http://twitter.com/jos88tco"&gt;@jos88tco&lt;/a&gt; y yo) un nuevo blog llamado: "Más... que..." con frases típicas chilenas como "Más huasqueado que león de circo" :)
&lt;/p&gt;
&lt;p&gt;
Si quieren reirse un rato, pueden suscribirse y ¡recomiéndenselo a sus amigos!
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://masdichosque.blogspot.com/"&gt;Más... que...&lt;/a&gt;
&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/mas_que</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/mas_que</guid>
      <pubDate>Mon, 25 Jan 2010 22:13:46 GMT</pubDate>
    </item>
    <item>
      <title>Configuration Sections</title>
      <description>&lt;p&gt;
Cuando comencé a desarrollar aplicaciones configurables en .NET, guardaba todo en &lt;a href="http://msdn.microsoft.com/en-us/library/ms228154.aspx"&gt;appSettings&lt;/a&gt;. Más tarde, evolucioné y creé clases para guardar las configuraciones y descubrí que la forma más simple de cargarlas desde un archivo era usando &lt;a href="http://www.developer.com/net/csharp/article.php/3110371/SerializationDeserialization-in-NET.htm"&gt;serialización XML&lt;/a&gt;. El problema de este método es que se necesita un archivo distinto al .config normal (Web.config en el caso de ASP.NET y programa.exe.config en el caso de aplicaciones de consola o desktop).
&lt;/p&gt;
&lt;p&gt;En algún punto ya fue necesario incorporar todo en el archivo .config normal, por lo tanto, aprendí a escribir las clases que heredan de &lt;a href="http://msdn.microsoft.com/en-us/library/system.configuration.configurationsection.aspx"&gt;ConfigurationSection&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/system.configuration.configurationelement.aspx"&gt;ConfigurationElement&lt;/a&gt;, etc. Este método permite crear archivos de configuración muy limpios y ordenados, pero es muy tedioso escribir las clases C# a las cuales se mapea el archivo de configuración. Definitivamente, debía existir una manera más simple de generar estas clases.
&lt;/p&gt;
&lt;p&gt;
Hace algunos días descubrí &lt;a href="http://blogs.msdn.com/dmitryr/archive/2005/12/07/501365.aspx"&gt;SCDL&lt;/a&gt;, una pequeña herramienta que permite generar las clases entregándole un archivo simple de muestra.
&lt;/p&gt;
&lt;p&gt;¡Nunca más escribas código que puede ser generado! :)&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/configuration_sections</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/configuration_sections</guid>
      <pubDate>Wed, 20 Jan 2010 14:56:40 GMT</pubDate>
    </item>
    <item>
      <title>Ingeniero de Software</title>
      <description>&lt;p&gt;
&lt;ul&gt;
&lt;li&gt;¿Te gusta programar?&lt;/li&gt;
&lt;li&gt;¿Tienes conocimientos de programación orientada a objetos?&lt;/li&gt;
&lt;li&gt;¿Te consideras geek?&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;&lt;h1&gt;&lt;a href="mailto:cristobal@cxnet.cl"&gt;Postula Aquí&lt;/a&gt;&lt;/h1&gt;&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/ingeniero_de_software</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/ingeniero_de_software</guid>
      <pubDate>Mon, 23 Nov 2009 22:57:43 GMT</pubDate>
    </item>
    <item>
      <title>Encuentro Linux 2009</title>
      <description>&lt;p&gt;
No tengo mucho tiempo, pero "Yo voy al Encuentro Linux"
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://2009.encuentrolinux.cl/wp-content/uploads/2009/10/yovoy.png" alt="Yo voy" /&gt;
&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/encuentro_linux_2009</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/encuentro_linux_2009</guid>
      <pubDate>Wed, 21 Oct 2009 20:46:31 GMT</pubDate>
    </item>
    <item>
      <title>Desarrollador C#</title>
      <description>&lt;p&gt;
Estimados lectores:
&lt;/p&gt;
&lt;p&gt;
Estamos recibiendo CVs para una posición de Ingeniero de Software. El perfil es un ingeniero en informática o computación recién egresado con conocimientos en C# para trabajar tanto bajo Linux como Windows.
&lt;/p&gt;
&lt;p&gt;
Si estás interesado (o conoces a alguien que calce con este perfil), puedes contactarme a &lt;a href="mailto:cristobal@cxnet.cl"&gt;cristobal@cxnet.cl&lt;/a&gt;.
&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/desarrollador_c</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/desarrollador_c</guid>
      <pubDate>Tue, 13 Oct 2009 12:15:55 GMT</pubDate>
    </item>
    <item>
      <title>JRSL</title>
      <description>&lt;p&gt;Esta semana se realizan en Santiago las &lt;a href="http://www.jornadasregionales.org"&gt;Jornadas Regionales de Software Libre 2009&lt;/a&gt;. Espero poder asistir y los invito a participar.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.jornadasregionales.org" target="_blank"&gt;&lt;img src="http://www.jornadasregionales.org/wp-content/uploads/2009/05/713.png" alt="Banner JRSL" /&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/jrsl</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/jrsl</guid>
      <pubDate>Sun, 04 Oct 2009 20:31:58 GMT</pubDate>
    </item>
    <item>
      <title>MEO</title>
      <description>&lt;p&gt;
Entramos de lleno en la carrera presidencial y, aunque la mayor parte de ustedes ya lo sabe, quiero anunciar mi apoyo a Marco Enríquez-Ominami.
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://www.marco2010.cl"&gt;&lt;img src="http://www.juancri.com/imagenes/posts/marco2010.png" alt="Marco 2010" border="0" /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;¿Por qué?&lt;/p&gt;
&lt;p&gt;
&lt;ul&gt;
&lt;li&gt;Por una educación estatal digna para todos&lt;/li&gt;
&lt;li&gt;Por una mejor distribución de la riqueza&lt;/li&gt;
&lt;li&gt;Por un gobierno transparente&lt;/li&gt;
&lt;li&gt;Por un país donde todos nos sintamos orgullosos de ser chilenos&lt;/li&gt;
&lt;li&gt;Por un estado fuerte que apoye el emprendimiento&lt;/li&gt;
&lt;li&gt;Porque merecemos tener un gobierno socialista y progresista&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;
&lt;p&gt;¡He dicho!&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/meo</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/meo</guid>
      <pubDate>Sun, 27 Sep 2009 08:11:02 GMT</pubDate>
    </item>
    <item>
      <title>El mentiroso y el pillo</title>
      <description>&lt;p&gt;En el debate realizado hace algunos días en Chile, Eduardo Frei se refirió a un informe emitido por Transparencia Internacional en el cual se indica que Sebastián Piñera utilizó información privilegiada y compró acciones de LAN Chile, cuando debio haberse abstenido y por lo cual fue multado por la SVS. Luego agregó que ese informe había sido publicado por el "tribunal" internacional&lt;/p&gt;
&lt;p&gt;El informe existe y fue publicado por Transparencia Internacional, una ONG y no un tribunal. El informe incluso habla de "uso de información privilegiada", pero ténicamente hablando, ése es un delito y Sebastián Piñera no fue acusado de eso. En cambio, se le multó por no abstenerse.&lt;/p&gt;
&lt;p&gt;Aquí tenemos dos personajes. El primero, miente y habla de un tribunal y de uso de información privilegiada, sabiendo que eso no es cierto. El segundo, se escuda en la legalidad de su accionar, sin embargo, no acepta que su actuar fue antiético.
&lt;/p&gt;
&lt;p&gt;¿A quién prefieren para dirigir Chile? ¿El mentiroso o el pillo?&lt;/p&gt;
&lt;p&gt;PS: Sebastián piñera está desinformado. La violación fue en La Reina y no en Peñalolén.&lt;/p&gt;</description>
      <link>http://www.juancri.com/blog/el_mentiroso_y_el_pillo</link>
      <guid isPermaLink="True">http://www.juancri.com/blog/el_mentiroso_y_el_pillo</guid>
      <pubDate>Sun, 27 Sep 2009 04:39:15 GMT</pubDate>
    </item>
  </channel>
</rss>