<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" version="2.0">

<channel>
	<title>Jose Dueñas</title>
	
	<link>http://www.joseduenas.com</link>
	<description>Desarrollador Web</description>
	<lastBuildDate>Wed, 01 Sep 2010 19:28:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/joseduenas" /><feedburner:info xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" uri="joseduenas" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Reserva de Pistas Online</title>
		<link>http://www.joseduenas.com/archivos/sistema-de-reservas-de-pistas-de-padel</link>
		<comments>http://www.joseduenas.com/archivos/sistema-de-reservas-de-pistas-de-padel#comments</comments>
		<pubDate>Sat, 06 Feb 2010 18:31:19 +0000</pubDate>
		<dc:creator>Jose Dueñas</dc:creator>
				<category><![CDATA[Portfolio]]></category>

		<guid isPermaLink="false">http://www.joseduenas.com/?p=624</guid>
		<description><![CDATA[Diseño y programación de un sistema de reserva de pistas de pádel para el Club Deportivo Campolivo. La aplicación permite a los clientes reservar pistas de pádel mostrando de forma visual y clara las pistas y horarios disponibles. Tiene un acceso para administradores que permite la gestión de socios del club y de reserva y [...]]]></description>
			<content:encoded><![CDATA[<p>Diseño y programación de un sistema de reserva de pistas de pádel para el <strong>Club Deportivo Campolivo.</strong></p>
<p>La aplicación permite a los clientes reservar pistas de pádel mostrando de forma visual y clara las pistas y horarios disponibles. Tiene un acceso para administradores que permite la gestión de socios del club y de reserva y cancelación de pistas.</p>
<p>Tecnologías empleadas: CodeIgniter, CSS, xHTML, jQuery y MySQL.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joseduenas.com/archivos/sistema-de-reservas-de-pistas-de-padel/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Confección de Hogar EntreTelas</title>
		<link>http://www.joseduenas.com/archivos/entretelas</link>
		<comments>http://www.joseduenas.com/archivos/entretelas#comments</comments>
		<pubDate>Sat, 06 Feb 2010 17:26:29 +0000</pubDate>
		<dc:creator>Jose Dueñas</dc:creator>
				<category><![CDATA[Portfolio]]></category>

		<guid isPermaLink="false">http://www.joseduenas.com/?p=617</guid>
		<description><![CDATA[Diseño y Programación de la web corporativa para la empresa de confección de hogar EntreTelas. La empresa requiere de una presencia en Internet para dar a conocer sus servicios y mostrar las trabajos realizados. Para llevar a cabo el proyecto se le diseña el interfáz de usuario y se programa una plantilla a medida para [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Diseño y Programación de la web corporativa para la empresa de confección de hogar EntreTelas.</strong></p>
<p>La empresa requiere de una presencia en Internet para dar a conocer sus servicios y mostrar las trabajos realizados. Para llevar a cabo el proyecto se le diseña el interfáz de usuario y se programa una plantilla a medida para WordPress que haga uso de librerias JavaScript para mostrar los trabajos de forma vistosa.</p>
<p>Tecnologías empleadas: CMS WordPress, PHP, jQuery, MySQL.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joseduenas.com/archivos/entretelas/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Test de Joel: 11 pasos para mejorar tus aplicaciones web</title>
		<link>http://www.joseduenas.com/archivos/test-de-joel-11-pasos-para-mejorar-tus-aplicaciones-web</link>
		<comments>http://www.joseduenas.com/archivos/test-de-joel-11-pasos-para-mejorar-tus-aplicaciones-web#comments</comments>
		<pubDate>Wed, 02 Dec 2009 09:00:27 +0000</pubDate>
		<dc:creator>Jose Dueñas</dc:creator>
				<category><![CDATA[Aplicaciones Web]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[desarrollo web]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[test de joel]]></category>

		<guid isPermaLink="false">http://www.joseduenas.com//?p=452</guid>
		<description><![CDATA[El Test de Joel fué enunciado hace una década por Joel Spolsky y permite conocer si estamos desarrollando de una forma adecuada buenas aplicaciones, contestando si o no a 12 preguntas. Según Joel, si se respondía positivamente a las 12 preguntas obteniendo por tanto una puntuación de 12, entonces se podría asegurar que estábamos desarrollando un código excepcional, en caso de obtener 11 puntos se trataría de una puntuación tolerable pero 10 o menos pondría en evidencia nuestras carencias y la baja calidad de nuestro trabajo.]]></description>
			<content:encoded><![CDATA[<p>El Test de Joel fué enunciado hace una década por <a href="http://www.joelonsoftware.com/">Joel Spolsky</a> y permite conocer si estamos desarrollando de una forma adecuada buenas aplicaciones, contestando si o no a 12 preguntas. Según Joel, si se respondía positivamente a las 12 preguntas obteniendo por tanto una puntuación de 12, entonces se podría asegurar que estábamos desarrollando un código excepcional, en caso de obtener 11 puntos se trataría de una puntuación tolerable pero 10 o menos pondría en evidencia nuestras carencias y la baja calidad de nuestro trabajo.</p>
<p>Cuando Joel ideó éste test, el desarrollo web aún estaba en sus primeras fases y el test se aplicaba fundamentalmente al desarrollo tradicional de software de escritorio. Tras leer el artículo original de Joel y <a href="http://www.brandonsavage.net/adapting-the-joel-test-to-web-development/">algunas</a> <a href="http://allinthehead.com/retro/228/">adaptaciones</a> al desarrollo web del test, me atrevo a realizar mi propia adaptación que en realidad se asemeja bastante a la propuesta por <a href="http://www.brandonsavage.net/adapting-the-joel-test-to-web-development/">Brandon Savage</a>.</p>
<p>Mi <strong>Test de Joel modificado</strong> para el desarrollo Web sería:</p>
<ol>
<li><strong>¿Usas control de versiones?</strong></li>
<li><strong>¿Puedes preparar una versión distribuible de la aplicación en un solo paso?</strong></li>
<li><strong>¿Estás usando integración continua?</strong></li>
<li><strong>¿Tienes un sistema para el bug tracking?</strong></li>
<li><strong>¿Pones solución a los bugs antes de seguir escribiéndo nuevo código?</strong></li>
<li><strong>¿Mantienes continuamente actualizado tu calendario de desarrollo?</strong></li>
<li><strong>¿Tienes una hoja de especificaciones para la aplicación que estas construyendo?</strong></li>
<li><strong>¿Te sientes cómodo en tu lugar de trabajo?</strong></li>
<li><strong>¿Usas las mejores herramientas aunque sean caras?</strong></li>
<li><strong>¿Tienes beta-testers?</strong></li>
<li><strong>¿Es tu aplicación usable?</strong></li>
</ol>
<p>Simplemente contestando si o no a éstas 12 preguntas podemos averiguar si nuestro proceso de desarrollo es el adecuado o no para poder producir aplicaciones web de calidad. Y todo ésto en menos de 5 minutos al contrario de otras complicadas y laboriosas técnicas de medida de calidad del software cómo por ejemplo las desarrolladas por el prestigioso <a href="http://www.sei.cmu.edu/measurement/tools/index.cfm">Carnegie Mellon</a>.</p>
<p><strong>1. ¿Usas control de versiones?</strong></p>
<p>Desde mi punto de vista fundamental. En cualquier flujo de trabajo, sea cual sea la metodología empleada, debería de contemplarse un sistema de control de versiones. Yo uso Subversion, pero puedes usar también Git que cada vez gana mas adeptos. Además tienes el servicio github.com que es una maravilla.</p>
<p><strong>2. ¿Puedes preparar una versión distribuible de la aplicación en un solo paso?</strong></p>
<p>La estructura de la aplicación web debe permitir que seas capaz de trasportar la aplicación a otro servidor Web en un solo paso. O al menos en 3 micropasos: copiar todos los archivos, copiar la base de datos y editar el único archivo de configuración con los datos del nuevo servidor.</p>
<p><strong>3. ¿Estás usando integración continua?</strong></p>
<p>En la versión original del test, éste punto trata sobre poder construir una versión ejecutable diaria de la aplicación. ésto no tiene mucho sentido en el desarrollo de webs, por lo que es conveniente poder realizar una integración continua.</p>
<p>Con integración continua me refiero a realizar Pruebas de Unidad, realizar Refactoring y mantener una buena documentación.</p>
<p>Para las pruebas de Unidad podemos usar <a href="http://www.phpunit.de/">PHPUnit</a> o si como yo usas el framework CodeIgniter, tienes a tu disposición la clase <a href="http://codeigniter.com/user_guide/libraries/unit_testing.html">Unit Testing</a> incluida en el propio framework.</p>
<p>El <a href="http://es.wikipedia.org/wiki/Refactorización">Refactoring</a> es una tecnica de Ingeniería del software que consiste en reescribir nuestro código para que sea mas legible pero sin alterar su funcionamiento. Para ello podríamos seguir algunas <a href="http://www.phpbuilder.com/columns/tim20010101.php3">guías de estilo</a> para tener un código que pueda entenderlo rápidamente cualquier programador ajeno a nuestro proyecto.</p>
<p>Para el tema de la documentación casi siempre he usado <a href="http://www.doxygen.org/">Doxygen</a>, pero también está muy extendido <a href="http://www.phpdoc.org/">phpDocumentor</a>. Una buena documentación es imprescindible para poder escalar nuestra aplicación en un futuro y poder extenderla con mas funcionalidades.</p>
<p><strong>4. ¿Tienes un sistema para el bug tracking?</strong></p>
<p>Se necesita llevar un control de todos los bugs que se van encontrando en la aplicación. Se debe anotar 4 cosas:</p>
<ul>
<li>Pasos que se han seguido para que de lugar el error.</li>
<li>El comportamiento que se debería esperar en lugar del error.</li>
<li>El comportamiento qeu se ha obtenido (el error en sí)</li>
<li>A quien se le asigna el estudio de éste bug (en caso de haber mas componentes en el desarrollo)</li>
<li>Si ha sido resuelto el bug o no.</li>
</ul>
<p>Para llevar un control de ésta información nos bastaría con un simple documento de 4 columnas para anotar los puntos anteriores aunque lo reocmendable es usar sistemas pensados para ello. Mi preferido: <a href="http://trac.edgewall.org/">TRAC</a>, aunque hay otros como <a href="http://www.mantisbt.org/">Mantis</a></p>
<p><strong>5. ¿Pones solución a los bugs antes de seguir escribiéndo nuevo código?</strong></p>
<p>Si tienes una pila de bugs por corregir, no tiene sentido que sigas escribiéndo mas código, párate a resolver antes los problemas encontrados.</p>
<p><strong>6. ¿Mantienes continuamente actualizado tu calendario de desarrollo?</strong></p>
<p>Estimar las horas de desarrollo de una aplicación es terriblemente difícil, aun dividiendo la estimación en pequeñas partes. Aun así, es fundamental tener una hoja de ruta con fechas que iremos actualizando casi a diario para poder ajustarlo a la realidad.</p>
<p><strong>7. ¿Tienes una hoja de especificaciones para la aplicación que estas construyendo?</strong></p>
<p>Es necesario tener una lista de requerimientos que busca el cliente que tenga la aplicación, complementándose con los requerimientos que tu como desarrollador piensas que tiene que tener. Nos servirá para poder confeccionar el calendario del que hemos hablado en el punto anterior. Si no tienes una hoja de especificaciones, el desarrollo se puede convertir en un viaje sin rumbo en el que la pérdida de tiempo está asegurada. Es muy importante tener varias entrevistas con el cliente para acordar de forma clara Qué debe hacer y cómo lo debe hacer la aplicación.</p>
<p><strong>8. ¿Te sientes cómodo en tu lugar de trabajo?</strong></p>
<p>Para programar se necesita un lugar calmado. Nada de télefonos alrededor. Nada de distracciones de ningún tipo. Cuando estás programando tienes en tu cabeza mil ideas que pueden derrumbarse como un castillo de naipes si tan solo vienen a preguntarte algo en el momento equivocado. Si el trabajo va a ser en equipo habrá que estabelcer algunas normas para que ésto no suceda y todos los integrantes sean lo mas productivos posibles.</p>
<p>Cuando estás programando, estás programando, no puedes estar realizando otras tareas a la vez, asi de simple. Si lo haces, tu productividad se verá tan sumamente perjudicada que no podrás avanzar nada. Es algo que en muchas empresas deberían comprender.</p>
<p>Cubículos, oficinas, tu propio sitio de trabajo en casa, en mi opinión da igual mientras te sientas cómodo.</p>
<p><strong>9. ¿Usas las mejores herramientas aunque sean caras?</strong></p>
<p>Aunque tenemos la suerte de que hoy por hoy existe muchas herramientas de software libre y que ademas en la mayoría de los casos son gratuitas, en algunas ocasiones nos encontramos que la mejor herramienta para alguna determinada tarea es de pago. Si verdaderamente queremos sacar el mejor provecho de nuestro esfuerzo, será mejor que nos hagamos con esa herramienta. Si trabajamos para alguna empresa, ésta nos debería proveer de libros técnicos especializados, buenos equipos y buen software. Sin duda, es una inversión que les será altamente rentable.</p>
<p><strong>10. ¿Tienes beta-testers?</strong></p>
<p>Aunque le apliquemos pruebas de unidad, etc, como dijimos en el punto 3, es altamente recomendable ayudarnos de algunos beta testers que nos puedan dar una visión mas humana de las posibles carencias de nuestra aplicación. Incluso si el conocimiento a nivel técnico de éstos beta-testers no es muy alto, pueden darnos una idea del grado de usabilidad que tiene nuestra aplicación.</p>
<p><strong>11. ¿Es tu aplicación usable?</strong></p>
<p>La facilidad de uso de nuestro aplicación puede ser el punto que decida si será un éxito o no. Diseños mas simples y menos recargados, conjuntamente con interfaces intuitivos y fáciles de manejar harán de nuestra aplicación una apuesta segura. Cuidaremos especialmente, la paleta de colores elegida, la tipografía y la disposición del contenido.</p>
<p><strong>12. Los nuevos candidatos para tu proyecto, ¿han demostrado cierto nivel técnico en programación?</strong></p>
<p>Éste punto solo es aplicable si hablamos de grupos de desarrollo compuestos por varios programadores. Los nuevos aspirantes a trabajar en tu grupo deberían antes demostrar de algun modo que poseen los conocimientos suficientes para poder desenvolverse con soltura a la hora de programar código. No vale decir: &#8220;Tengo un curso de X y otro de Y&#8221;. HAy que saber programar y tener una visión global de lo que es el desarrollo de software.</p>
<p><strong>En conclusión</strong>, podemos hacer uso de éste test para:</p>
<ol>
<li>Puntuar tu modo de desarrollar aplicaciones web o la de la empresa para la que trabajas.</li>
<li>Si eres el jefe de un equipo de programadores, éste test te puede servir como orientación para que puedas conseguir lo máximo de ellos.</li>
<li>Si estás buscando un trabajo como programador web, puedes consultar con tu entrevistador que puntuación obtienen con éste test. En caso de obtener una puntuación baja asegúrate de que tendrás la autoridad suficiente para poder cambiarlo, de lo contrario ten por seguro que te sentirás frustrado trabajando para ellos.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.joseduenas.com/archivos/test-de-joel-11-pasos-para-mejorar-tus-aplicaciones-web/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>La nueva versión de CodeIgniter 1.7.2, ha sido publicada.</title>
		<link>http://www.joseduenas.com/archivos/la-nueva-version-de-codeigniter-1-7-2-ha-sido-publicada</link>
		<comments>http://www.joseduenas.com/archivos/la-nueva-version-de-codeigniter-1-7-2-ha-sido-publicada#comments</comments>
		<pubDate>Sat, 12 Sep 2009 10:25:28 +0000</pubDate>
		<dc:creator>Jose Dueñas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[CodeIgniter]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programación]]></category>

		<guid isPermaLink="false">http://www.joseduenas.com//?p=447</guid>
		<description><![CDATA[Ellislab acaba de publicar la nueva versión de CodeIgniter, la 1.7.2 que ya está disponible para su descarga. Las principales noveadades e ésta nueva versión son: Compatible con PHP 5.3.0 Se ha añadido una nueva clase para gestionar carritos de compra: Cart Class Se ha mejorado el Form helper Se ha añadido la función is_php() [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://codeigniter.com/news/codeigniter_v1.7.2_released/">Ellislab </a>acaba de publicar la nueva versión de CodeIgniter, la 1.7.2 que ya está <a href="http://codeigniter.com/downloads/">disponible para su descarga</a>.</p>
<p>Las principales noveadades e ésta nueva versión son:</p>
<p><span id="more-447"></span></p>
<ul>
<li>Compatible con PHP 5.3.0</li>
<li>Se ha añadido una nueva clase para gestionar carritos de compra: <a href="http://codeigniter.com/user_guide/libraries/cart.html">Cart Class</a></li>
<li>Se ha mejorado el <a href="http://codeigniter.com/user_guide/helpers/form_helper.html">Form helper</a></li>
<li>Se ha añadido la función is_php() para permitir comparaciones entre distintas versiones de PHP.</li>
<li>Ahora la función show_error() permite enviar códigos de estado HTTP.</li>
<li>Se han corregido muchos bugs.</li>
</ul>
<p>Para un informe mas detallado de los cambios puedes consultar el <a href="http://codeigniter.com/user_guide/changelog.html"><em>changelog </em></a>de la 1.7.2</p>
<p>Para los que no conozcáis <a href="http://www.joseduenas.com//archivos/codeigniter-un-gran-framework-para-php">CodeIgniter</a>, deciros que es un framework de desarrollo en PHP que agiliza el desarrollo de tus aplicaciones y te evita tener que estar reprogramando una y otra vez las mismas cosas para proyectos distintos.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joseduenas.com/archivos/la-nueva-version-de-codeigniter-1-7-2-ha-sido-publicada/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CKEditor, la evolución de FCKEditor</title>
		<link>http://www.joseduenas.com/archivos/ckeditor-la-evolucion-de-fckeditor</link>
		<comments>http://www.joseduenas.com/archivos/ckeditor-la-evolucion-de-fckeditor#comments</comments>
		<pubDate>Sun, 06 Sep 2009 10:25:31 +0000</pubDate>
		<dc:creator>Jose Dueñas</dc:creator>
				<category><![CDATA[Aplicaciones Web]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[ckeditor]]></category>
		<category><![CDATA[editor]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[wysiwyg]]></category>

		<guid isPermaLink="false">http://www.joseduenas.com//?p=440</guid>
		<description><![CDATA[Hasta ahora en mis proyectos web he usado generalmente FCKeditor como editor WYSIWYG. Durante mas de 6 años ha ido mejorando su calidad debido en gran parte a la robusta comunidad de programadores que lo rodean. Solo se le achacaba que era un editor bastante pesado de cargar debido a su gran cantidad de JavaScript. [...]]]></description>
			<content:encoded><![CDATA[<p>Hasta ahora en mis proyectos web he usado generalmente FCKeditor como editor WYSIWYG. Durante mas de 6 años ha ido mejorando su calidad debido en gran parte a la robusta comunidad de programadores que lo rodean.</p>
<p>Solo se le achacaba que era un editor bastante pesado de cargar debido a su gran cantidad de JavaScript. Ahora ésto ha cambiado, <strong>se ha reducido gran parte de éste código y se le ha añadido un nuevo interfaz mas moderno, ademas se le ha dotado de una mayor accesibilidad y docenas de mejoras adicionales que le confieren un mejor rendimiento</strong>.</p>
<p>Solo faltaba una cuestión mas: su nombre. FCK proviene del nombre de su creador Frederico Caldeira Knabben, pero también es la abreviatura de la palabra inglesa <em>fuck</em> (en español: joder) por lo que a muchos pudiera llevar a equivocación.</p>
<p><a href="http://www.joseduenas.com//wp-content/uploads/2009/09/ckeditor.png"><img class="alignleft size-full wp-image-444" title="CKEditor, editor WYSIWYG" src="http://www.joseduenas.com//wp-content/uploads/2009/09/ckeditor.png" alt="CKEditor, editor WYSIWYG" width="263" height="164" /></a>A causa de ésto se le ha rebautizado como CKEditor, que aunque sigue conservando las iniciales de sus apellidos, ahora suena mucho mejor.</p>
<p>Permite usar plugins y crear los nuestros propios a traves de su API Javascript. Es totalmente personalizable en cuanto al color de su interfaz, varios <em>themes</em> y archivos CSS.</p>
<p><a href="http://ckeditor.com">CKEditor</a> tiene licencias Open Source por lo que puedes usarlo en tus proyectos de forma libre y ademas incorpora una API para que puedas retocarlo a tu gusto.</p>
<p><strong>Demo</strong>: <a href="http://ckeditor.com/demo">Probar CKEditor</a></p>
<p><strong>Descarga</strong>: <a href="http://ckeditor.com/download">Descargar CKEditor 3.0</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.joseduenas.com/archivos/ckeditor-la-evolucion-de-fckeditor/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Las 10 aplicaciones Mac esenciales para desarrolladores web</title>
		<link>http://www.joseduenas.com/archivos/las-10-aplicaciones-mac-esenciales-para-desarrolladores-web</link>
		<comments>http://www.joseduenas.com/archivos/las-10-aplicaciones-mac-esenciales-para-desarrolladores-web#comments</comments>
		<pubDate>Sat, 05 Sep 2009 20:26:18 +0000</pubDate>
		<dc:creator>Jose Dueñas</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Blog]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[aplicaciones]]></category>
		<category><![CDATA[desarrollo web]]></category>
		<category><![CDATA[mac]]></category>

		<guid isPermaLink="false">http://www.joseduenas.com//?p=432</guid>
		<description><![CDATA[Desde que me pasé a la plataforma Mac, mi vida como desarrollador web no solo ha mejorado sino que ahora es mucho mas divertido. Os voy a dar una lista de las que considero son las aplicaciones esenciales para un desarrollador web y que yo uso diariamente. Ni que decir tiene que es algo personal [...]]]></description>
			<content:encoded><![CDATA[<p>Desde que me pasé a la plataforma Mac, mi vida como desarrollador web no solo ha mejorado sino que ahora es mucho mas divertido. Os voy a dar una lista de las que considero son las aplicaciones esenciales para un desarrollador web y que yo uso diariamente. Ni que decir tiene que es algo personal y seguro que muchos usarán otras.</p>
<ul>
<li><a href="http://www.mamp.info/"><strong>MAMP</strong></a>. Me permite montar un servidor Apache/PHP/MySQL de forma instantánea sobre la cual programo las aplicaciones. Permite configurar muchos aspectos tanto de Apache, PHP cómo de MySQL.</li>
<li><strong><a href="http://www.mozilla-europe.org/es/firefox/">Firefox</a></strong>. Mi navegador de internet predeterminado y dónde pruebo mis aplicaciones web.. Dos extensiones son imprescindibles: <a href="https://addons.mozilla.org/es-ES/firefox/addon/60">Web Developer Toolbar</a> y <a href="https://addons.mozilla.org/es-ES/firefox/addon/1843">FireBug</a> para ayudarme con la maquetación CSS y depurar errores respectivamente.</li>
<li><a href="http://www.panic.com/coda/"><strong>Coda</strong></a>. Es un Editor de texto, de CSS y cliente de FTP todo en uno. Es una suite muy completa que te permite tener en una sola ventana todo lo que necesitas para codificar, maquetar con CSS y subir al servidor. Lo suelo usar para proyectos pequeños/medianos por su rapidez y sencillez.</li>
<li><a href="http://www.araelium.com/querious/"><strong>Querious</strong></a>. Es un cliente de bases de datos MySQL. Ideal para crear/modificar/insertar en la base de datos. Una interfaz muy cuidada.</li>
<li><a href="http://www.adobe.com/es/products/fireworks/"><strong>Fireworks</strong></a>. Es el editor de imágenes que uso por defecto. Con él creo el mockup de la web para luego generar las diferentes imágenes necesarias.</li>
<li><a href="http://www.acqualia.com/"><strong>Picturesque</strong></a>. Para la edición rápida de imágenes a las que quiero redondeale las esquinas y añadir un reflejo. Ahorra bastante tiempo.</li>
<li><a href="http://culturedcode.com/things/"><strong>Things</strong></a>. Para organizar el trabajo sigo los principio de la filosofia GTD (Getting Things Done). Ésta aplicación es sencillamente fantástica por la manera rápida en la que te permite llevar un seguimiento de tu trabajo y hacer de ti una persona mucho mas productiva.</li>
</ul>
<p>Para los proyectos un poco mas grandes, que necesitan de una codificación mas extensa suelo usar:</p>
<ul>
<li><a href="http://macromates.com/"><strong>TextMate</strong></a>. La razón principal por la que me vine a Mac. Es difícil explicar lo que es, pero una posible definición sería: editor de texto avanzado con coloreado de sintaxis y posibilidad de extender sus posibilidades al infinito gracias a innumerables plugins. No solo es compatible con muchos lenguajes de programación (completado de palabras, templates&#8230;) sino que me permite usar un completado de palabras para mi framework PHP favorito, CodeIgniter. Ademas uso el plugin de SubVersion para poder tener sincronizado mi trabajo desde varios ordenadores y llevar el control de versión.</li>
<li><a href="http://macrabbit.com/cssedit/"><strong>CSSEdit</strong></a>. El mejor editor CSS. La forma mas rápida de trabajar con tu hoja de estilos. Permite previsualización de los cambios que vas haciendo en tiempo real.</li>
<li><a href="http://cyberduck.ch/"><strong>CyberDuck</strong></a>. Cliente de FTP gratuito. También he usado Transmit, pero al final siempre vuelvo a éste. Tambien uso de vez en cuando FileZilla, aunque su interfaz es bastante feo.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.joseduenas.com/archivos/las-10-aplicaciones-mac-esenciales-para-desarrolladores-web/feed</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Introducción básica a jQuery</title>
		<link>http://www.joseduenas.com/archivos/introduccion-basica-a-jquery</link>
		<comments>http://www.joseduenas.com/archivos/introduccion-basica-a-jquery#comments</comments>
		<pubDate>Tue, 07 Jul 2009 18:43:14 +0000</pubDate>
		<dc:creator>Jose Dueñas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://www.joseduenas.com//?p=425</guid>
		<description><![CDATA[jQuery es una libreria Javascript compacta y rápida que simplifica el que podamos recorrer nuestro HTML, manejar eventos, crear animaciones y de trabajar al fin y al cabo de una manera fácil con la tecnología AJAX para desarrollar webs. jQuery cambiará radicalmente tu forma de trabajar con JavaScript. Cargando la librería jQuery en nuestro HTML [...]]]></description>
			<content:encoded><![CDATA[<p>jQuery es una libreria Javascript compacta y rápida que simplifica el que podamos recorrer nuestro HTML, manejar eventos, crear animaciones y de trabajar al fin y al cabo de una manera fácil con la tecnología AJAX para desarrollar webs. <strong>jQuery cambiará radicalmente tu forma de trabajar con JavaScript.</strong></p>
<h2><strong>Cargando la librería jQuery en nuestro HTML<br />
</strong></h2>
<p>Vamos a ver lo más básico de jQuery, lo primero que haremos es crear un archivo HTML  llamado <strong>index.html </strong>con el siguiente contenido:</p>
<pre class="brush: xml;">
    &lt;script src=&quot;jquery.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
    &lt;script type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
    &lt;a href=&quot;http://jquery.com/&quot;&gt;jQuery&lt;/a&gt;
</pre>
<p>Segun hemos establecido en el atributo src, tenemos que establecer el archivo jquery.js en el mismo directorio de nuestro archivo index.html.<br />
El archivo jquery.js, es decir, la libreria jQuery lo puedes descrgar de: <a href="http://jquery.com"></a></p>
<h2>Ejecutando código al cargar la página</h2>
<p>Los programadores JavasScript estarán acostumbrados a usar código de éste tipo:</p>
<pre class="brush: jscript;">
 window.onload = function(){ alert(&quot;welcome&quot;); }
</pre>
<p>Pero con jQuery, si queremos ejecutar algo justo despues de que se cargue la página,tendremos que usar el evento jQuery llamado &#8220;evento ready&#8221;:</p>
<pre class="brush: jscript;">
 $(document).ready(function(){
   // Aqui va el codigo
 });
</pre>
<p>Vamos, por ejemplo, a hacer que se muestre una ventana con un mensaje cuando pulsemos el enlace de nuestra página.</p>
<pre class="brush: xml;">
 $(document).ready(function(){
   $(&quot;a&quot;).click(function(event){
     alert(&quot;Hola Mundo!&quot;);
   });
 });
</pre>
<p>Guarda el archivo index.html y ábrelo para ver el resultado, deberias ver una ventana con le mensaje &#8220;Hola Mundo&#8221; cuando pulses el enlace.</p>
<p>Lo aconsejable, para conseguir un código mas limpio y legible, es poner nuestro código jQuery en archivos .js y luego cargarlos en nuestro HTML del mismo modo que hemos cargado el archivo jquery.js, pero para nuestro tutorial lo pondremos todo en el HTML, asi pues, el ejemplo completo quedaría así:</p>
<pre class="brush: xml;">

   &lt;script src=&quot;jquery.js&quot; type=&quot;text/javascript&quot;&gt;&lt;!--mce:2--&gt;&lt;/script&gt;
   &lt;script type=&quot;text/javascript&quot;&gt;&lt;!--mce:3--&gt;&lt;/script&gt;

   &lt;a href=&quot;#&quot;&gt;jQuery&lt;/a&gt;
</pre>
<h2>Añadiendo y quitando clases CSS</h2>
<p>jQuery también nos permite de forma fácil, añadir y eliminar clases CSS. Para ver un ejemplo, primero añadimos algo de estilo CSS a nuestro HTML:</p>
<pre><code>
 <!--     a.test { font-weight: bold; } -->
</code></pre>
<p>Podemos por ejemplo hacer que al clickar sobre el enlace, se añada una clase CSS al enlace para que el texto se muestre en negrita:</p>
<pre><code>
$("a").addClass("test");
</code></pre>
<p>Para eliminar la clase hacemos lo siguiente:</p>
<pre><code>
$("a").removeClass("test");
</code></pre>
<h2>Animaciones</h2>
<p>La libreria jQuery tiene una gran cantidad de efectos y animaciones para dotar de dinamismo a nuestras webs. Veamos por ejemplo, como hacer desaparecer el enlace al clickar sobre él:</p>
<pre><code>
 $("a").click(function(event){
   event.preventDefault();
   $(this).hide("slow");
 });
</code></pre>
<p>Ésto debe servirte como punto de partida, con jQuery se pueden hacer muchisimas cosas mas, para aprender mas te recomiendo que leas la documentación oficial de jQuery en <a href="http://docs.jquery.com/Main_Page">http://docs.jquery.com/Main_Page</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.joseduenas.com/archivos/introduccion-basica-a-jquery/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Panda Cloud Antivirus, solución gratuita desde la nube</title>
		<link>http://www.joseduenas.com/archivos/panda-cloud-antivirus-solucion-gratuita-desde-la-nube</link>
		<comments>http://www.joseduenas.com/archivos/panda-cloud-antivirus-solucion-gratuita-desde-la-nube#comments</comments>
		<pubDate>Mon, 11 May 2009 17:22:31 +0000</pubDate>
		<dc:creator>Jose Dueñas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[antivirus]]></category>
		<category><![CDATA[cloud]]></category>

		<guid isPermaLink="false">http://www.joseduenas.com//?p=422</guid>
		<description><![CDATA[Si hace unos años el término de moda era Web 2.0, desde finales del año pasado el término Cloud Computing o Computación en la nube viene para quedarse. Ahora es el turno de los antivirus, Panda, empresa española creadora de Panda Antivirus nos trae una solución gratuita para Windows que libera a nuestro ordenador de [...]]]></description>
			<content:encoded><![CDATA[<p>Si hace unos años el término de moda era Web 2.0, desde finales del año pasado el término Cloud Computing o Computación en la nube viene para quedarse.</p>
<p>Ahora es el turno de los antivirus, Panda, empresa española creadora de Panda Antivirus nos trae una solución gratuita para Windows que libera a nuestro ordenador de la carga que supone ejecutar un antivirus, ya que todo lo hace desde la nube. Ésto supone que tánto las actualizaciones de la base de virus como loa analisis serán transparentes al usuario ya que no nos daremos ni cuenta.</p>
<p>Aunque soy usuario de Mac OSX y Gnu/Linux principalmente, en el trabajo me toca &#8220;sufrir&#8221; una máquina Windows, propensa a contagiarse con toda clase de virusm y e spor eso que he querido probar éste nuevo antivirus.</p>
<p>Personalmente he visto una gran mejora en el rendimiento de la aplicación, va mucho mas ligero que versiones anteriores de Panda Antivirus. El interfaz es limpio y claro y con las opciones justas para no perderse. Lo que he podido probar de él hasta ahora me ha gustado mucho. Sin duda, una opción a considerar para nuestros equpos Windows.</p>
<p>El antivirus está disponible para descarga gratuita desde la web: <a href="http://www.cloudantivirus.com/">http://www.cloudantivirus.com/ </a></p>
<p><a href="http://www.joseduenas.com//wp-content/uploads/2009/05/panda-cloud.png"><img class="aligncenter size-full wp-image-423" title="panda-cloud" src="http://www.joseduenas.com//wp-content/uploads/2009/05/panda-cloud.png" alt="panda-cloud" width="350" height="276" /></a></p>
<p>Comentaros que gracias a Panda Security y bitacoras.com, si sois bloggers, podeís ganar un netbook sólo por hacer un review como el mio, si vuestro post es elegido por un jurado compuesto por miembros de Panda Security. Podéis leer las bases en la web de <a href="http://bitacoras.com/concurso/panda">bitacoras.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.joseduenas.com/archivos/panda-cloud-antivirus-solucion-gratuita-desde-la-nube/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Libreria CodeIgniter para el API de Flickr publicada</title>
		<link>http://www.joseduenas.com/archivos/libreria-codeigniter-para-el-api-de-flickr-publicada</link>
		<comments>http://www.joseduenas.com/archivos/libreria-codeigniter-para-el-api-de-flickr-publicada#comments</comments>
		<pubDate>Sun, 19 Apr 2009 23:23:18 +0000</pubDate>
		<dc:creator>Jose Dueñas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[CodeIgniter]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Software Libre]]></category>
		<category><![CDATA[flickr]]></category>

		<guid isPermaLink="false">http://www.joseduenas.com//?p=406</guid>
		<description><![CDATA[Flickr es el servicio para compartir fotos mas popular actualmente y cada vez son mas las aplicaciones web que hacen uso de su API para poder exprimir todas las ventajas de ésta red social. Por otro lado, CodeIgniter, el framework de programación PHP, es el responsable de que mi productividad a la hora de desarrollar [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com">Flickr</a> es el servicio para compartir fotos mas popular actualmente y cada vez son mas las aplicaciones web que hacen uso de su API para poder exprimir todas las ventajas de ésta red social. Por otro lado, <a href="http://www.joseduenas.com//archivos/codeigniter-un-gran-framework-para-php">CodeIgniter</a>, el framework de programación PHP, es el responsable de que mi productividad a la hora de desarrollar aplicaciones web aumente cada vez mas. </p>
<p>Es por eso que acabo de lanzar la primera versión de la librería de CodeIgniter para el API de Flickr con la que podrás trabajar cómodamente sobre el API de Flickr usándola como una librería de CodeIgniter. </p>
<p>Basta con que copies el archivo Flickr.php dentro del directorio system/application/libraries y accedas a cualquier método desde tu controlador de éste modo:</p>
<pre class="brush: php;">
$this-&gt;flickr-&gt;call('metodo', array('parametro1'=&gt;valor,'parametro2'=&gt;valor2));
</pre>
<p>dónde con &#8220;metodo&#8221; le indicamos el método del API de Flickr al que queremos acceder y en el array le indicamos los distintos parámetros con sus correspondientes valores.</p>
<p>Puedes encontrar la documentación completa y el enlace para la descarga en la sección &#8220;Código&#8221;:</p>
<h3><a href="http://www.joseduenas.com//codigo/flickr">Libreria CodeIgniter para Flickr API</a></h3>
]]></content:encoded>
			<wfw:commentRss>http://www.joseduenas.com/archivos/libreria-codeigniter-para-el-api-de-flickr-publicada/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Estimar los costes de desarollo de un proyecto web</title>
		<link>http://www.joseduenas.com/archivos/estimar-los-costes-de-desarollo-de-un-proyecto-web</link>
		<comments>http://www.joseduenas.com/archivos/estimar-los-costes-de-desarollo-de-un-proyecto-web#comments</comments>
		<pubDate>Tue, 24 Feb 2009 23:10:26 +0000</pubDate>
		<dc:creator>Jose Dueñas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[costes]]></category>
		<category><![CDATA[desarrollo]]></category>
		<category><![CDATA[estimador]]></category>
		<category><![CDATA[proyecto web]]></category>

		<guid isPermaLink="false">http://www.joseduenas.com//?p=374</guid>
		<description><![CDATA[Para realizar la estimación de costes de un desarrollo software he encontrado una utilidad online bastante sencilla pero que nos puede ayudar en esa tarea a veces tan complicada. &#8220;The Web Development Project Estimator&#8221; es una herramienta que permite a los desarrollares y diseñadores web a estimar de una forma rápida el tiempo y materiales [...]]]></description>
			<content:encoded><![CDATA[<p>Para realizar la estimación de costes de un desarrollo software he encontrado una utilidad online bastante sencilla pero que nos puede ayudar en esa tarea a veces tan complicada.</p>
<p>&#8220;<a href="http://astuteo.com/estimator/#">The Web Development Project Estimator</a>&#8221; es una herramienta que permite a los desarrollares y diseñadores web a <strong>estimar de una forma rápida el tiempo y materiales necesarios para un proyecto y su coste total.</strong></p>
<p>Basta con introducir el título del proyecto y tu tarifa por hora, se ajustan las horas estimadas para cada tarea y se obtiene una estimación del coste lista para ser descargada en formato PDF.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.joseduenas.com/archivos/estimar-los-costes-de-desarollo-de-un-proyecto-web/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
