<?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>Pensando en Red &#187; Software Libre</title> <atom:link href="http://pensandoenred.com/category/software-libre/feed/" rel="self" type="application/rss+xml" /><link>http://pensandoenred.com</link> <description>nada es tan fácil como parece serlo</description> <lastBuildDate>Mon, 02 Jan 2012 08:35:01 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <item><title>Recuperando viejas ideas &#8211; rsstopodcast.com</title><link>http://pensandoenred.com/2011/03/29/recuperando-viejas-ideas-rsstopodcast-com/</link> <comments>http://pensandoenred.com/2011/03/29/recuperando-viejas-ideas-rsstopodcast-com/#comments</comments> <pubDate>Tue, 29 Mar 2011 20:44:41 +0000</pubDate> <dc:creator>mariotux</dc:creator> <category><![CDATA[Linux]]></category> <category><![CDATA[Software Libre]]></category> <category><![CDATA[festival]]></category> <category><![CDATA[mp3]]></category> <category><![CDATA[text to speech]]></category> <category><![CDATA[tts]]></category> <guid
isPermaLink="false">http://pensandoenred.com/?p=816</guid> <description><![CDATA[Llevo ya mucho tiempo hablando del proyecto de www.arreglamicarretera.com y aunque todavía tengo cuerda para rato, hoy toca comentar que he rescatado una vieja idea que tenía perdida en el cajón de los dominios. RSS To Podcast, ahora podéis probar el funcionamiento de unas voces sintéticas open source en http://api.rsstopodcast.com Un bug detectado es que [...]]]></description> <content:encoded><![CDATA[<p>Llevo ya mucho tiempo hablando del proyecto de www.arreglamicarretera.com y aunque todavía tengo cuerda para rato, hoy toca comentar que he rescatado una vieja idea que tenía perdida en el cajón de los dominios.</p><p><a
href="http://www.rsstopodcast.com">RSS To Podcast</a>, ahora podéis probar el funcionamiento de unas voces sintéticas open source en <a
href="http://api.rsstopodcast.com">http://api.rsstopodcast.com</a></p><p>Un bug detectado es que si navegas Google Chrome (muy probable si andas por estos lares) el fichero que se descarga lo tienes que renombrar a mp3.</p><p>En el formulario, escribimos un texto de prueba, seleccionamos idioma y luego enviamos el formulario. Tras el envío se descargará un fichero mp3 con el texto sintetizado.</p><p>Aunque en un principio este proyecto era más ambicioso, la idea ha sido simplificada para poder tener una versión lo antes posible.</p><p>A divertirse con las voces sintéticas! <img
src='http://pensandoenred.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /></p> ]]></content:encoded> <wfw:commentRss>http://pensandoenred.com/2011/03/29/recuperando-viejas-ideas-rsstopodcast-com/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Drupal el incomprendido y desconocido CMS</title><link>http://pensandoenred.com/2010/08/12/drupal-el-incomprendido-y-desconocido-cms/</link> <comments>http://pensandoenred.com/2010/08/12/drupal-el-incomprendido-y-desconocido-cms/#comments</comments> <pubDate>Thu, 12 Aug 2010 16:50:37 +0000</pubDate> <dc:creator>mariotux</dc:creator> <category><![CDATA[Drupal]]></category> <category><![CDATA[php]]></category> <category><![CDATA[Software Libre]]></category> <category><![CDATA[cms]]></category> <guid
isPermaLink="false">http://www.pensandoenred.com/?p=607</guid> <description><![CDATA[Hace ya bastante tiempo, desde que me muevo en la tecnología LAMP, que conozco Drupal. Nunca le dediqué el tiempo necesario para ser conocedor de esa potencia interna que cuando miramos las tripas nos hace dudar que tenga. Drupal es un CMS agnóstico en contenido y que gracias a su extensa comunidad hay una cantidad [...]]]></description> <content:encoded><![CDATA[<p><img
class="aligncenter size-medium wp-image-608" style="float: left; padding: 10px;" title="DrupalMan" src="http://www.pensandoenred.com/wp-content/uploads/2010/08/DrupalMan-199x300.jpg" alt="" width="199" height="300" />Hace ya bastante tiempo, desde que me muevo en la tecnología LAMP, que conozco Drupal. Nunca le dediqué el tiempo necesario para ser conocedor de esa potencia interna que cuando miramos las tripas nos hace dudar que tenga. Drupal es un CMS agnóstico en contenido y que gracias a su extensa comunidad hay una cantidad de módulos y documentación (a veces demasiada) sobre como hacer proyectos en Drupal.</p><p>Tal vez, el problema de no haber invertido más tiempo en Drupal es por su sencillez tras la instalación y no conocer lo que realmente podía ofrecer. Una de las razones también muy importantes por las que no me decidía a investigarlo era la parte técnica, donde escasea la POO y hace algo muy raro <img
src='http://pensandoenred.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /></p><p>Recientemente en el entorno laboral nos ha surgido la oportunidad de invertir tiempo en conocerlo, realmente me ha sorprendido. La primera sensación en la toma de contacto con el CMS es que se puede desarrollar sites dinámicos sin tirar una línea de código. Esta sensación duró hasta que nos enfrentamos a un proyecto real, en donde funcionalmente podíamos atacar muchos requisitos del proyecto pero a la hora de entrar en las tripas para personalizarlo nos dimos cuenta que hay algo más allá. El código es prácticamente funciones, y el core (no se como lo hace) simula la sobrecarga de métodos pero con  funciones en donde parece ser que sólo puede existir una sobre-escritura.</p><p>La verdad es que ahora mismo tengo un poco de fascinación por Drupal, y cuando hace unos 3 años un amigo me intentaba vender la "moto" de Drupal yo siempre le ignoraba <img
src='http://pensandoenred.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> lo siento Diego! ha tenido que ser tres años más tarde.</p><p>Supongo que a partir de ahora, retomaré el blog con algún que otro artículo de Drupal.</p> ]]></content:encoded> <wfw:commentRss>http://pensandoenred.com/2010/08/12/drupal-el-incomprendido-y-desconocido-cms/feed/</wfw:commentRss> <slash:comments>5</slash:comments> </item> <item><title>Live USB</title><link>http://pensandoenred.com/2010/01/18/live-usb/</link> <comments>http://pensandoenred.com/2010/01/18/live-usb/#comments</comments> <pubDate>Mon, 18 Jan 2010 00:10:50 +0000</pubDate> <dc:creator>mariotux</dc:creator> <category><![CDATA[Configuraciones]]></category> <category><![CDATA[Linux]]></category> <category><![CDATA[Software Libre]]></category> <category><![CDATA[live]]></category> <category><![CDATA[usb]]></category> <guid
isPermaLink="false">http://www.pensandoenred.com/?p=517</guid> <description><![CDATA[Hace unos días un amigo me trajo un netbook que le habían regalado, tenía instalado Linux y quería que le explicara un poco. La distribución que tenía era Linpus. No la conocía, por lo que le hice el cambio a xubuntu. La instalación con un LiveCD era imposible, este juguete no tenía lector y aunque [...]]]></description> <content:encoded><![CDATA[<p>Hace unos días un amigo me trajo un netbook que le habían regalado, tenía instalado Linux y quería que le explicara un poco. La distribución que tenía era Linpus. No la conocía, por lo que le hice el cambio a xubuntu.</p><p>La instalación con un LiveCD era imposible, este juguete no tenía lector y aunque a día de hoy todos los equipos son botables por USB nunca había necesitado hacerlo hasta entonces. Lo mejorcito que he encontrado para hacer un usb bootable es UNetbootin, muy fácil de utilizar. Esta aplicación está en los repositorios de ubuntu y por lo tanto la instalación es muy sencilla.</p><blockquote><p>sudo aptitude install unetbootin</p></blockquote><p>Aquí os dejo una captura del programa para que podáis ver la sencillo que sería crear un USB bootable con cualquier distribución.</p><p><a
href="http://pensandoenred.com/wp-content/uploads/2010/01/unetbootin.png"><img
class="aligncenter size-full wp-image-518" title="unetbootin" src="http://pensandoenred.com/wp-content/uploads/2010/01/unetbootin.png" alt="" width="529" height="395" /></a></p> ]]></content:encoded> <wfw:commentRss>http://pensandoenred.com/2010/01/18/live-usb/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Microsoft se vuelve a marcar un tanto</title><link>http://pensandoenred.com/2009/12/10/microsoft-se-vuelve-a-marcar-un-tanto/</link> <comments>http://pensandoenred.com/2009/12/10/microsoft-se-vuelve-a-marcar-un-tanto/#comments</comments> <pubDate>Thu, 10 Dec 2009 14:02:30 +0000</pubDate> <dc:creator>mariotux</dc:creator> <category><![CDATA[Microsoft]]></category> <category><![CDATA[Pensamientos]]></category> <category><![CDATA[Software Libre]]></category> <guid
isPermaLink="false">http://www.pensandoenred.com/?p=480</guid> <description><![CDATA[Seguridad al político que determina su contratación, buenos comerciales, o todavía sigue pesando más su pasado en el mundo del software... Pero es una lástima que nuevamente se vuelva a invertir dinero público en licencias de Microsoft. Ya comenté en un post anterior, decidirse por el software libre implicaría la creación de empleo y aumento [...]]]></description> <content:encoded><![CDATA[<p>Seguridad al político que determina su contratación, buenos comerciales, o todavía sigue pesando más su pasado en el mundo del software... Pero es una lástima que nuevamente se vuelva a invertir dinero público en licencias de Microsoft. Ya comenté en <a
href="http://www.pensandoenred.com/2009/12/01/el-camino-del-software-libre-para-llegar-a-la-administracion/" target="_self">un post anterio</a>r, decidirse por el software libre implicaría la creación de empleo y aumento del PIB.</p><blockquote><p><strong>Jueves 10 de Diciembre a las 12.00h</strong><br
/> La Secretaria de Estado de Educación y Formación Profesional, Eva<br
/> Almunia, y la presidenta de Microsoft Ibérica, María Garaña, suscriben<br
/> mañana, jueves 10 de diciembre, a las 12 horas, un acuerdo de<br
/> colaboración en el marco del programa de innovación educativa Escuela<br
/> 2.0.</p><p><a
href="http://www.educacion.es/horizontales/prensa/convocatorias/2009/12/microsoft.html" target="_blank">Enlace  oficial</a></p></blockquote><p>Que ven en el entorno político que no les convence el uso del Software Libre, la falta de una entidad que les de una garantía, si no invierten para que se pueda crear... En España ya tenemos muchas empresas que son partners de Ubuntu y con certificaciones emitidas por Canonical. ¿Qué es lo que no convence? OpenOffice es una suite que no tiene nada que envidiar al resto.</p><p>Pero para asegurar el cargo a veces es mejor firmar con el grande, antes que tomar una decisión arriesgada (para el mundo de la política). Para la foto siempre queda bien tener detrás un logotipo de una gran corporación...</p><p><strong>Actualizado</strong></p><p>Imagen del momento, gracias a <a
href="http://despuesdegoogle.com/2009/12/11/escuela-2-0-un-proyecto-mas-regresivo-que-el-cierre-de-webs-sin-mandamiento-judicial/" target="_blank">despuesdegoogle.com</a><img
class="aligncenter size-full wp-image-486" title="acuerdo_microsoft_educacion" src="http://pensandoenred.com/wp-content/uploads/2009/12/acuerdo_microsoft_educacion.jpg" alt="acuerdo_microsoft_educacion" width="430" height="307" /></p> ]]></content:encoded> <wfw:commentRss>http://pensandoenred.com/2009/12/10/microsoft-se-vuelve-a-marcar-un-tanto/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Symfony 1.4 estable</title><link>http://pensandoenred.com/2009/12/02/symfony-1-4-estable/</link> <comments>http://pensandoenred.com/2009/12/02/symfony-1-4-estable/#comments</comments> <pubDate>Tue, 01 Dec 2009 22:03:47 +0000</pubDate> <dc:creator>mariotux</dc:creator> <category><![CDATA[Framework]]></category> <category><![CDATA[php]]></category> <category><![CDATA[Software Libre]]></category> <category><![CDATA[Symfony]]></category> <guid
isPermaLink="false">http://www.pensandoenred.com/?p=453</guid> <description><![CDATA[Ya tenemos disponible la versión estable de Symfony 1.4, como es de esperar también acompañada de una amplia documentación en varios idiomas en el lanzamiento de la versión estable. En la web de Symfony de habla hispana nos da información al respecto. Y cito de: http://www.symfony.es/2009/12/01/mas-con-symfony-el-libro-definitivo/ La gran novedad es que este libro es el [...]]]></description> <content:encoded><![CDATA[<p>Ya tenemos disponible la versión estable de <a
href="http://www.symfony-project.org/" target="_blank">Symfony 1.4</a>, como es de esperar también acompañada de una amplia documentación en varios idiomas en el lanzamiento de la versión estable. En la web de Symfony de habla hispana nos da información al respecto. Y cito de: <a
href="http://www.symfony.es/2009/12/01/mas-con-symfony-el-libro-definitivo/" target="_blank">http://www.symfony.es/2009/12/01/mas-con-symfony-el-libro-definitivo/</a></p><blockquote><p>La gran novedad es que este libro es el primero que <strong>se ha escrito específicamente para los usuarios avanzados de Symfony</strong>, por lo que en este libro no te encontrarás la enésima explicación de cómo instalar Symfony o de cómo funciona la arquitectura MVC.</p></blockquote> ]]></content:encoded> <wfw:commentRss>http://pensandoenred.com/2009/12/02/symfony-1-4-estable/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>El camino del Software Libre para llegar a la Administración</title><link>http://pensandoenred.com/2009/12/01/el-camino-del-software-libre-para-llegar-a-la-administracion/</link> <comments>http://pensandoenred.com/2009/12/01/el-camino-del-software-libre-para-llegar-a-la-administracion/#comments</comments> <pubDate>Tue, 01 Dec 2009 21:57:08 +0000</pubDate> <dc:creator>mariotux</dc:creator> <category><![CDATA[Pensamientos]]></category> <category><![CDATA[Software Libre]]></category> <guid
isPermaLink="false">http://www.pensandoenred.com/?p=451</guid> <description><![CDATA[En mas de una ocasión cuando intervengo en algún debate sobre el Software Libre en las administraciones públicas siempre acabo mencionando que para que llegue a la administración primero hay que hacer "fuerza" en la formación básica, secundaria y superior. Las universidades ya apuestan por el uso del software libre, por lo menos en la [...]]]></description> <content:encoded><![CDATA[<p>En mas de una ocasión cuando intervengo en algún debate sobre el Software Libre en las administraciones públicas siempre acabo mencionando que para que llegue a la administración primero hay que hacer "fuerza" en la formación básica, secundaria y superior. Las universidades ya apuestan por el uso del software libre, por lo menos en la carrera de Informática (que menos), esperando que poco a poco pueda ir contagiando el resto de titulaciones.</p><p>Ya podemos ver que en Institutos está llegando el "contagio": <a
href="http://hirutelebista.hiru.com/2416/como-pasarse-al-software-libre-en-un-centro-educativo" target="_blank">Cómo pasarse al software libre en un centro educativo</a></p><p>Es cierto que todo el mundo tiene <a
href="http://www.pensandoenred.com/2007/08/11/el-miedo-al-cambio/">miedo al cambio</a>, sobre todo la administración pública. El político que tenga que tomar la decisión puede tener miedo de que sea un fracaso, no tiene una gran corporación respaldando el cambio de software. Por lo que normalmente suele ser más "seguro" el firmar contratos "astronómicos" con corporaciones que fomentar el PIB de su comunidad autónoma y fomentar el empleo.</p><p>En <a
href="http://es.wikipedia.org/wiki/Pa%C3%ADs_Vasco" target="_blank">Euskadi</a> tenemos la suerte de que hay gente que está trabajando para que el software libre llegue poco a poco a la administración pública de una manera razonable, sin vender humo ni tampoco con el "gratis" por delante. Gracias a <a
href="http://twitter.com/txipi">@txipi</a> que nos informa del trabajo que él y los colaboradores de la "causa" van realizando tras reuniones con las personas adecuadas que saben escuchar. En su blog podemos leer:</p><p><a
href="http://softwarelibre.deusto.es/las-cosas-de-palacio/" target="_self">http://softwarelibre.deusto.es/las-cosas-de-palacio/</a></p><p>Y el trabajo de que el software libre llegue a la administración no sólo lo están gestionando desde palacio, también desde la formación básica. La iniciativa de <a
href="http://softwarelibre.deusto.es/eskola-librea-software-libre-en-eskola-2-0/" target="_blank">ASKE</a> tiene como parte de los objetivos el llevar el software libre a las escuelas.</p><p>También la asociación <a
href="http://www.esle.eu" target="_blank">ESLE</a>, una agrupación de empresas apoya y divulga el uso del software libre, de esta manera la administración pública no se sentirá indefensa si opta por migrar sus aplicaciones y así lo están logrando con el trabajo de varias entidades y personas que apuestan por el uso del software libre. <a
href="http://www.esle.eu/2009/11/14/gobierno-vasco-creara-una-oficina-tecnica-de-apoyo-al-software-libre-para-promover-su-implantacion-en-la-administracion/" target="_blank">El Gobierno Vasco creará una oficina técnica de apoyo al software libre para promover su implantación en la Administración</a>.</p><p>Cuando el profesional del futuro tenga el conocimiento sobre herramientas libres podremos estar en igualdad de condiciones con las grandes corporaciones que han sabido hacer en su momento buenas campañas para incluirse en la formación, por lo tanto en el mercado laboral a largo plazo.</p><p>Aunque como menciona <a
href="http://twitter.com/txipi" target="_blank">@txipi</a> en su post al cual hago referencia, las cosas de palacio van despacio, pero afortunadamente van <img
src='http://pensandoenred.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>Noticia relacionada en <a
href="http://www.elpais.com/articulo/pais/vasco/Ejecutivo/lanza/plan/implantar/software/libre/elpepiesppvs/20091124elpvas_11/Tes" target="_blank">elpais.es</a>.</p> ]]></content:encoded> <wfw:commentRss>http://pensandoenred.com/2009/12/01/el-camino-del-software-libre-para-llegar-a-la-administracion/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>Un buen framework PHP</title><link>http://pensandoenred.com/2009/09/02/un-buen-framework-php/</link> <comments>http://pensandoenred.com/2009/09/02/un-buen-framework-php/#comments</comments> <pubDate>Wed, 02 Sep 2009 06:43:18 +0000</pubDate> <dc:creator>mariotux</dc:creator> <category><![CDATA[php]]></category> <category><![CDATA[Software Libre]]></category> <category><![CDATA[programacion]]></category> <category><![CDATA[Symfony]]></category> <guid
isPermaLink="false">http://www.pensandoenred.com/?p=413</guid> <description><![CDATA[Desde que tomé la decisión de utilizar symfony me sorprendo cada día que voy avanzando. Te encuentras todo aquello que querías tener hecho pero nunca tuviste tiempo de hacer. Si todavía estás dándole vueltas a que framework php utilizar deja de buscar, symfony es el framework perfecto! Por que hago esta afirmación tan rotunda... pues [...]]]></description> <content:encoded><![CDATA[<p>Desde que tomé la decisión de utilizar symfony me sorprendo cada día que voy avanzando. Te encuentras todo aquello que querías tener hecho pero nunca tuviste tiempo de hacer.</p><p>Si todavía estás dándole vueltas a que framework php utilizar deja de buscar, symfony es el framework perfecto! Por que hago esta afirmación tan rotunda... pues porque en el aprendizaje de symfony recalcan las buenas prácticas, el uso de pruebas unitarias y funcionales y la refactorización de código. Tal vez estés pensando en utilizar Zend Framework porque tiene unos componentes que son realmente interesantes, no te preocupes! con symfony puedes hacerlo!</p><p>La filosofía de los creadores del framework es de "no reinventar la rueda" y si algo está bien hecho y funciona lo utilizan. Antes de embarcarse en el desarrollo de algo nuevo comprueban si existe. De hecho, el core de symfony está compuesto por otros proyectos open source como Creole, Prado, Spyc y Pake.</p><p>Tienes todavía dudas de si debes usarlo o no, el libro y la documentación es extensa (es una buena señal), entonces ponte a realizar la práctica de Jobeet! verás lo que se puede hacer y como! la potencia de symfony es importante!</p><p>Yahoo news y del.icio.us son proyectos construidos con symfony por lo que se puede garantizar el desarrollo de aplicaciones con carga extrema.</p> ]]></content:encoded> <wfw:commentRss>http://pensandoenred.com/2009/09/02/un-buen-framework-php/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>Optimiza tu desarrollo web en php con KCachegrind &#8211; PHP Profiler con Xdebug</title><link>http://pensandoenred.com/2009/06/24/optimiza-tu-desarrollo-web-en-php-con-kcachegrind-php-profiler-con-xdebug/</link> <comments>http://pensandoenred.com/2009/06/24/optimiza-tu-desarrollo-web-en-php-con-kcachegrind-php-profiler-con-xdebug/#comments</comments> <pubDate>Wed, 24 Jun 2009 19:01:43 +0000</pubDate> <dc:creator>mariotux</dc:creator> <category><![CDATA[Configuraciones]]></category> <category><![CDATA[php]]></category> <category><![CDATA[Software Libre]]></category> <category><![CDATA[gnome]]></category> <category><![CDATA[kcachegrind]]></category> <category><![CDATA[php5-xdebug]]></category> <category><![CDATA[Ubuntu]]></category> <category><![CDATA[xdebug]]></category> <guid
isPermaLink="false">http://www.pensandoenred.com/?p=387</guid> <description><![CDATA[La descripción encontrada en wikipedia de "profiling": Un "profiler" es una herramienta de análisis de performance que mide el comportamiento del programa mientras este está corriendo, particularmente la frecuencia y duración de las llamadas a funciones. La salida es un rastro (stream) de eventos o un sumario estático de los eventos observados (un "profile", perfil [...]]]></description> <content:encoded><![CDATA[<p>La descripción encontrada en <a
href="http://es.wikipedia.org/wiki/Profiling" target="_blank">wikipedia de "profiling"</a>:</p><blockquote><p>Un "profiler" es una herramienta de análisis de performance que mide el comportamiento del programa mientras este está corriendo, particularmente la frecuencia y duración de las llamadas a funciones. La salida es un rastro (stream) de eventos o un sumario estático de los eventos observados (un "profile", perfil o reseña). Los profilers usan una amplia variedad de técnicas para recolectar datos, incluyendo interrupciones por hardware, instrumentos de código, ganchos (hooks) del sistema operativo.</p><p>El uso de profilers es usado en el proceso de ingeniería de performance. Un profile generalmente es realizado relacionado la posición del código fuente donde suceden los eventos y el tamaño de las medidas de los datos que es proporcional al tamaño del código del programa. En contraste, el tamaño de un rastro es proporcional al tiempo de ejecución de un programa, haciéndolo impracticable. Para programas secuenciales, un profile, es generalmente suficiente, pero los problemas de pefrormance en programas paralelos (que esperan mensajes o temas de sincronismo) generalmente depende del tiempo de relación de los eventos, de esta forma requieren la localización total para tener un entendimiento del problema</p></blockquote><p>Para ello tenemos que instalar php5-xdebug:</p><blockquote><p>sudo aptitude install php5-xdebug</p></blockquote><p>Una vez instalado el módulo Xdebug tenemos que editar su fichero de configuración que encontraremos en:</p><blockquote><p>/etc/php5/apache2/conf.d/<strong>xdebug.ini</strong></p></blockquote><p>En ese fichero agregaremos las siguientes lineas:</p><p>xdebug.profiler_enabled = 1<br
/> xdebug.profiler_output_dir = <em>(path de salida) "/home/usuario/tmp/"<br
/> </em>xdebug.profiler_output_name = cachegrind.out. %R</p><p>Tras reiniciar el apache comprobaremos en un fichero php el resultado de <em>phpinfo() </em>para comprobar que el modulo xdebug está operativo.</p><p>Más parámetros de configuración: <a
href="http://www.xdebug.org/docs/profiler" target="_blank">xdebug profiler</a></p><p>Al poner %R en el nombre de salida conseguimos que si estamos analizando el domonio localhost guarde los ficheros como: cachegrind.out.localhost</p><p>Para conocer más opciones de parametrización de xdebug.profiler_output_name en: <a
href="http://www.xdebug.org/docs/all_settings#trace_output_name" target="_blank">http://www.xdebug.org/docs/all_settings#trace_output_name</a></p><p>De esta manera conseguimos que se vayan creando los ficheros que después leeremos con <a
href="http://kcachegrind.sourceforge.net/html/Home.html" target="_blank">KCachegrind</a>.</p><p>Instalamos Kcachegrind:</p><blockquote><p>sudo aptitude kcachegrind kcachegrind-converters</p></blockquote><p>Ahora solo tendremos que lanzar el programa Kcachegrind y abrir el fichero cachegrind.out.localhost. En el mismo directorio encontraremos más ficheros pero tenemos que abrir el fichero principal que es el que no tiene concatenado a su nombre con un punto una secuencia numérica.</p><p
style="text-align: center;"><img
style="float:right" title="kcachegrindkde" src="../media/2009/06/kcachegrindkde-300x214.png" alt="kcachegrindkde" width="300" height="214" /></p><p>El programa analizará los logs de xdebug y nos lo mostrará con una interfaz gráfica intuitiva y no muy complicada de entender:</p><p>De esta manera podremos analizar si nuestra aplicación web pierde mucho tiempo en algún proceso en el que no hayamos reparado con anterioridad, el uso de memoria y las llamadas que se realizan a funciones y/o métodos.</p><blockquote><p>Esta configuración está pensada para probarla en la máquina local de desarrollo, en ese caso en el path de salida que hemos configurado en el xdebug.ini tenemos que asignarle los permisos necesarios para que el usuario de apache www-data pueda escribir los logs.</p></blockquote><p>Una vez finalizado su uso, es recomendable desactivar el profile de xdebug para que no nos sature de logs a los que no vamos a hacer caso.</p><p>Aunque el pantallazo es de un entorno KDE esta configuración y software se ha realizado en: Ubuntu 9.04 Gnome.</p><p>Si tu entorno de desarrollo es Windows, también puedes activar el módulo php_xdebug.dll en tu php.ini y seguir los mismos parámetros de configuración en tu fichero php.ini. Como herramienta para examinar los logs del profile xdebug puedes utilizar <a
href="http://sourceforge.net/projects/wincachegrind/" target="_blank">WinCacheGrind</a>.</p><p>Espero que os sea de utilidad, si conocéis alguna herramienta y/o utilidad que os facilite la tarea de realizar aplicaciones ligeras agradecería el comentario.</p> ]]></content:encoded> <wfw:commentRss>http://pensandoenred.com/2009/06/24/optimiza-tu-desarrollo-web-en-php-con-kcachegrind-php-profiler-con-xdebug/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>dvdisaster alternativa a IsoBuster &#8211; Recupera tu cd/dvd dañado</title><link>http://pensandoenred.com/2009/06/09/dvdisaster-alternativa-a-isobuster-recupera-tu-cddvd-danado/</link> <comments>http://pensandoenred.com/2009/06/09/dvdisaster-alternativa-a-isobuster-recupera-tu-cddvd-danado/#comments</comments> <pubDate>Tue, 09 Jun 2009 21:38:59 +0000</pubDate> <dc:creator>mariotux</dc:creator> <category><![CDATA[Linux]]></category> <category><![CDATA[Software Libre]]></category> <category><![CDATA[cd]]></category> <category><![CDATA[datos]]></category> <category><![CDATA[dvd]]></category> <category><![CDATA[recuperar]]></category> <guid
isPermaLink="false">http://www.pensandoenred.com/?p=373</guid> <description><![CDATA[Es una herramienta para poder recuprar información de tus cd's/dvd's dañados. Tiene la posibilidad de "reconstruir" algún que otro sector dañado, pero si te ocurre como a mi que hay unos cuantos sectores dañados en un largo tramo de lectura pues no hay mucho que hacer. Encontre esta alternativa a IsoBuster cuando a día de [...]]]></description> <content:encoded><![CDATA[<p>Es una herramienta para poder recuprar información de tus cd's/dvd's dañados. Tiene la posibilidad de "reconstruir" algún que otro sector dañado, pero si te ocurre como a mi que hay unos cuantos sectores dañados en un largo tramo de lectura pues no hay mucho que hacer.</p><p>Encontre esta alternativa a IsoBuster cuando a día de hoy intento recuperar un tar.gz de 4Gb que grabé en un DVD hace unos 4 días y parece ser que o grabó de manera defectuosa el tar.gz no se creó bien, la razón no lo he investigado, me interesa más recuperar esa información.</p><p>Probé la herramienta y es de fácil uso pero aunque mi caso no tiene solución con esta herramienta tampoco es el objetivo para la que está diseñada, ya que lo que promete es la recuperación de cd's/dvd's dañados. Podéis encontrar dvdisaster en los repositorios de ubuntu.</p><p>Aquí os dejo una captura del resultado de la lectura del dvd que intento recuperar.</p><p><img
class="aligncenter size-full wp-image-375" title="dvdisaster" src="http://pensandoenred.com/wp-content/uploads/2009/06/dvdisaster.png" alt="dvdisaster" width="633" height="450" /></p><p>Como podéis ver en la imagen, la herramienta es sencilla de utilizar y puede ser la solución a algún que otro problema. La imagen muestra unos cuantos sectores dañados de seguido por lo que entiendo que esta herramienta no ha sido efectiva por esa razón.</p> ]]></content:encoded> <wfw:commentRss>http://pensandoenred.com/2009/06/09/dvdisaster-alternativa-a-isobuster-recupera-tu-cddvd-danado/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Internacionalización en aplicaciones Web</title><link>http://pensandoenred.com/2009/05/13/internacionalizacion-en-aplicaciones-web/</link> <comments>http://pensandoenred.com/2009/05/13/internacionalizacion-en-aplicaciones-web/#comments</comments> <pubDate>Wed, 13 May 2009 18:43:51 +0000</pubDate> <dc:creator>mariotux</dc:creator> <category><![CDATA[Configuraciones]]></category> <category><![CDATA[Software Libre]]></category> <category><![CDATA[i18n]]></category> <category><![CDATA[internacionalización]]></category> <category><![CDATA[traducciones]]></category> <guid
isPermaLink="false">http://www.pensandoenred.com/?p=334</guid> <description><![CDATA[Tarde o temprano en el desarrollo de aplicaciones web nos enfrentamos a algún desarrollo que requiere internacionalizar la aplicación. El primer punto que creo que todos nos tenemos que preguntar a la hora de abordar una aplicación web es si el contenido tiene que ser multi-idioma o la aplicación será multi-idioma. Si leemos rápido esa [...]]]></description> <content:encoded><![CDATA[<p>Tarde o temprano en el desarrollo de aplicaciones web nos enfrentamos a algún desarrollo que requiere internacionalizar la aplicación. El primer punto que creo que todos nos tenemos que preguntar a la hora de abordar una aplicación web es si el contenido tiene que ser multi-idioma o la aplicación será multi-idioma.</p><p>Si leemos rápido esa última frase puede parecer lo mismo... Si queremos hacer una aplicación multi-idioma simplemente significa que la interface de usuario tiene que estar disponible en más de un idioma, pero no por ello el contenido que se genere tiene que ser multi-idioma. Evidentemente si la aplicación tiene contenido multi-idioma estará acompañado de interface multi-idioma.</p><p>Esto hay que tener en cuenta a la hora de diseñar el modelo de datos para que se adapte a nuestras necesidades.</p><p>Este artículo está enfocado principalmente a crear una interface multi-idioma y sistemas de traducción por lo que no entraré en como realizar un modelo de datos para soportar contenido multi-idioma.</p><p>Podemos reinventar la rueda, que en algunos casos puede ser nuestra rueda preferida en la que nos sintamos cómodos o aplicar estándares para internacionalizar una aplicación web. Si desconocemos la existencia de estos estándares es muy probable que recurramos a la creación de un array asociativo por idioma, ya que realizar una función que nos encuentre la traducción no supondría una grán complicación. Lo malo, es que no siempre pensamos en la explotación de la aplicación y en que la persona que tenga que mantener las traducciones no tiene porqué tener conocimientos técnicos.</p><p>Si utilizamos aplicaciones open source es muy probable que nos encontremos el uso de <a
href="http://es.wikipedia.org/wiki/Gettext" target="_blank">GETTEXT</a>. Este sistema de traducción utiliza ficheros .po y .mo. Los ficheros .po son los ficheros que contienen las traducciones en formato texto:</p><blockquote><p>msgid "Texto original"<br
/> msgstr "Texto traducido"</p></blockquote><p><img
class="aligncenter size-medium wp-image-336" style="float:right" title="eclipse_gettext" src="http://www.pensandoenred.com/media/2009/05/eclipse_gettext-300x209.gif" alt="eclipse_gettext" width="300" height="209" /></p><p>Lo que me gustó es que para poder editar un fichero .po no lo tienes porque realizar con un editor de texto convencional, si no que existen editores multi-plataforma para este formato de ficheros, lo que el mantenimiento de traducciones se hace más práctico. El que me pareció de mayor utilidad a la hora de desarrollar fue <a
href="http://www.gted.org/" target="_blank">gted</a>, un plugin (más) que se integra en <a
href="http://www.eclipse.org">eclipse</a>.</p><p>En mi opinión es más cómodo trabajar con "pestañas" que con ventanas, y estoy seguro que más de uno compartiréis conmigo esta misma opinión.</p><p>Teniendo en cuenta el inconveniente del mantenimiento conocí el formato estándar para traducción de documentos, <a
href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=xliff" target="_blank">XLIFF</a>. Es un formato basado en XML que fue normalizado por la organización <a
href="http://es.wikipedia.org/wiki/OASIS_(organizaci%C3%B3n)" target="_blank">OASIS</a> en el 2002.</p><p>Este formato para la internacionalización de documentos no es para utilizarlo exclusivamente en aplicaciones web, al igual que tampoco lo es el <a
href="http://es.wikipedia.org/wiki/Gettext" target="_blank">GETTEXT</a>. En la <a
href="http://docs.oasis-open.org/xliff/v1.2/os/xliff-core.html" target="_blank">especificación de la versión 1.2</a> podemos encontrarnos como tiene que ser la extructura de un fichero <a
href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=xliff" target="_blank">XLIFF</a>.</p><blockquote><p>&lt;xliff version='1.2' xmlns='urn:oasis:names:tc:xliff:document:1.2'&gt;<br
/> &lt;file original='hello.txt' source-language='en' target-language='es'<br
/> datatype='plaintext'&gt;<br
/> &lt;body&gt;<br
/> &lt;trans-unit id='0'&gt;<br
/> &lt;source&gt;Hello world&lt;/source&gt;<br
/> &lt;target&gt;Hola Mundo&lt;/target&gt;<br
/> &lt;/trans-unit&gt;<br
/> &lt;/body&gt;<br
/> &lt;/file&gt;<br
/> &lt;/xliff&gt;</p></blockquote><p>Donde a parte de este sencillo ejemplo se pueden complementar con mucha más información según la <a
href="http://docs.oasis-open.org/xliff/v1.2/os/xliff-core.html" target="_blank">especificación</a>.</p><p>La ventaja que encontré al utilizar este sistema de internacionalización es que las empresas que ofrecen servicios de traducción soportan este formato, y al igual que en <a
href="http://es.wikipedia.org/wiki/Gettext" target="_blank">GETTEXT</a>, <a
href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=xliff" target="_blank">XLIFF</a> también tiene editores estándar y en muchos casos multi-plataforma para el mantenimiento de las traducciones.</p><p>A diferencia de <a
href="http://es.wikipedia.org/wiki/Gettext" target="_blank">GETTEXT</a>, <a
href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=xliff" target="_blank">XLIFF </a>trabaja sobre el mismo fichero, sin tener que crear una versión compilada. Esto es una ventaja para comprobar si falta alguna traducción y para poder agregar nuevas traducciones en la fase de desarrollo.</p><p>En la busca de editores para <a
href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=xliff" target="_blank">XLIFF</a> me encontré que muchos de los que decian cumplir con el estándar realmente no lo hacían, como <a
href="https://open-language-tools.dev.java.net/" target="_blank">Open Languaje Tools</a>, y otros estaban desactualizados en especificaciones "antiguas". Open Source y multi-plataforma no encontré ningún editor actualizado, pero sí un editor de pago. <a
href="http://www.heartsome.net/EN/xlfedit.html" target="_blank">Hearstome Translation Studio</a>, un editor profesional para la internacionalización de documentos. Aunque podemos encontrarnos en la Red proyectos web interesantes como este<a
href="http://www.flashextension.net/xliffeditor/xliffedit.php" target="_blank"> editor en flash</a> lo que nos permitiría dar acceso a las personas que tengan que realizar las traduciones en nuestras aplicaciones.</p><p>Escojamos el sistema que escojamos para internacionalizar nuestras aplicaciones, si estamos hablando de entornos Web, es interesante el utilizar un parser de nuestras plantillas/templates para el mantenimiento de la traducción de nuestra interface, de esta manera simplemente generaríamos el archivo origen donde cualquier persona pudiera traducir.</p><p>Tiendo en cuenta que has leído "todo el tocho"  <img
src='http://pensandoenred.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> ¿Como internacionalizas tus aplicaciones/páginas web?</p> ]]></content:encoded> <wfw:commentRss>http://pensandoenred.com/2009/05/13/internacionalizacion-en-aplicaciones-web/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> </channel> </rss>
