<?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>Blog de Desarrollo Web</title>
	<atom:link href="http://desarrollo.dsisweb.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://desarrollo.dsisweb.com</link>
	<description>Blog de Desarrollo y Programación con .NET, Java, PHP entre otros. Por Rodolfo Baeza Madrid.</description>
	<lastBuildDate>Fri, 12 Feb 2010 19:27:45 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>IDE para Python y Django muy prometedor</title>
		<link>http://desarrollo.dsisweb.com/2010/02/ide-para-python-y-django-muy-prometedor/</link>
		<comments>http://desarrollo.dsisweb.com/2010/02/ide-para-python-y-django-muy-prometedor/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 19:27:45 +0000</pubDate>
		<dc:creator>REBM</dc:creator>
				<category><![CDATA[Django]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[IDE]]></category>
		<category><![CDATA[IDEA]]></category>
		<category><![CDATA[Jetbrains]]></category>
		<category><![CDATA[PyCharm]]></category>
		<category><![CDATA[RubyMine]]></category>

		<guid isPermaLink="false">http://desarrollo.dsisweb.com/?p=227</guid>
		<description><![CDATA[







En mi búsqueda incesante por mejores editores o IDEs para los lenguajes con los que trabajo, hace unos días me topé con una excelente noticia. Jetbrains, los creadores de IntelliJ IDEA (editor políglota aunque principalmente orientado a Java) y de RubyMine (editor para Ruby y Rails), ya anuncieron su nueva adición a su línea de [...]]]></description>
			<content:encoded><![CDATA[<p>En mi búsqueda incesante por mejores editores o IDEs para los lenguajes con los que trabajo, hace unos días me topé con una excelente noticia. <a href="http://www.jetbrains.org" target="_blank">Jetbrains</a>, los creadores de IntelliJ IDEA (editor políglota aunque principalmente orientado a Java) y de <a href="http://www.jetbrains.com/ruby/index.html" target="_blank">RubyMine</a> (editor para Ruby y Rails), ya anuncieron su nueva adición a su línea de productos.</p>
<p>El nuevo miembro se llama <a href="http://www.jetbrains.com/pycharm/" target="_blank">PyCharm IDE</a> y contendrá todo lo que se puede esperar de un IDE de Jetbrains. Trae autocompletado y resaltado de sintaxis para código Python, HTML, CSS, Javascript, así como también para los templates de Django. También trae opciones para control de código fuente (Subversion, GIT, etc), posibilidad de depurar nuestros scripts, integración de pruebas unitarias y por supuesto también múltiples opciones para refactorizar nuestro código.</p>
<p><img class="aligncenter" title="PyCharm" src="http://blogs.jetbrains.com/idea/wp-content/uploads/2010/02/pycharm_preview.png" alt="PyCharm en acción con plantillas de Django" width="650" height="325" /></p>
<p>Jetbrains ha comentado que seguirá el desarrollo del <a href="http://plugins.intellij.net/plugin/?id=631" target="_blank">plugin de Python para IntelliJ IDEA</a>, por lo que podremos recurrir a la opción que nos resulte más conveniente.</p>
<p>El IDE no será gratuito, aunque seguramente tendrá un costo muy accesible como el de Rubymine (99 dólares) por lo que valdrá la pena adquirirlo. Por lo pronto, se pueden <a href="http://www.jetbrains.com/pycharm/download" target="_blank">descargar la versión preview</a> de forma gratuita para probarlo.</p>
<p>Personalmente me parece una excelente opción, ya que son pocos los editores o IDEs que proporcionan un soporte de primer nivel para Python y sobre todo Django. Así que a probarlo&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://desarrollo.dsisweb.com/2010/02/ide-para-python-y-django-muy-prometedor/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Razones para amar a Ruby</title>
		<link>http://desarrollo.dsisweb.com/2010/02/razones-para-amar-a-ruby/</link>
		<comments>http://desarrollo.dsisweb.com/2010/02/razones-para-amar-a-ruby/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 17:24:04 +0000</pubDate>
		<dc:creator>REBM</dc:creator>
				<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://desarrollo.dsisweb.com/?p=225</guid>
		<description><![CDATA[
Para los que aun no se hayan metido mucho con el lenguaje Ruby, aquí les presento una lista de las cosas que te podrían convencer de que lo uses un poco más.

Es orientado a objetos. Ruby proporciona las herramientas necesarias para cubrir los conceptos clásicos de los lenguajes orientados a objetos como el encapsulamiento, la [...]]]></description>
			<content:encoded><![CDATA[<p><!--<br />
.lista li {<br />
margin-bottom: 5px;<br />
}<br />
--><br />
Para los que aun no se hayan metido mucho con el lenguaje Ruby, aquí les presento una lista de las cosas que te podrían convencer de que lo uses un poco más.</p>
<ol class="lista">
<li>Es orientado a objetos. Ruby proporciona las herramientas necesarias para cubrir los conceptos clásicos de los lenguajes orientados a objetos como el encapsulamiento, la herencia, el polimorfismo, etc. Además, a diferencia de otros lenguajes como C++, Ruby fue diseñado desde un inicio para ser orientado a objetos.</li>
<li>Es completamente orientado a objetos. No es redundancia. Es simplemente que en Ruby, completamente todo es un objeto. Incluso los datos primitivos como enteros, flotantes y cadenas son objetos. Por ejemplo se puede hacer lo siguiente: 5.to_s para convertir el número 5 a cadena.</li>
<li>Es un lenguaje dinámico. Para las personas que están más familiarizadas con Java o C++, este es un cambio conceptual muy grande. Esto significa que los métodos o variables pueden ser agregados en tiempo de ejecución. Es similar en este aspecto a los lenguajes como Python y PHP.</li>
<li>Es un lenguaje interpretado. Esta puede ser un arma de doble filo. Muchos podrían decir que es más una desventaja, ya que provoca que la ejecución del programa sea más lenta con lenguajes interpretados. Pero yo le veo varias ventajas&#8230; por ejemplo, al desarrollar una aplicación con Java o ASP.NET, se vuelve cansado el ciclo de modificar-recompilar para ver las modificaciones realizadas. En cambio con Ruby sólo modifico algo y se ve al instante el cambio realizado. Además de que si se necesita mayor velocidad para ciertas cosas, siempre se puede recurrir a programar esas partes en C.</li>
<li>Entiende expresiones regulares. Por años este tema fue considerado del dominio único de UNIX, pero con Perl las cosas cambiaron y ahora Ruby está ayudando a seguir con ese cambio. Cada vez más gente se va dando cuenta de las ventajas que las expresiones regulares proporcionan para la manipulación de texto en nuestros programas.</li>
<li>Es multiplataforma. Se ejecuta en las principales plataformas de hoy en día, como son Windows, MacOS, Linux e incluso en MS-DOS.</li>
<li>Es una derivación. Ruby ha tomado cosas de otros lenguajes como Smalltalk, Lisp, C, C++, Perl y otros. Como Isaac Newton dijo alguna vez: &#8220;Si he visto más allá que otros, es porque he estado sobre los hombros de gigantes&#8221;. Ruby definitivamente ha hecho esto al basarse en esos lenguajes y ha logrado una mezcla excelente.</li>
<li>Tiene un recolector de basura inteligente. Como la mayoría de los lenguajes modernos, ya cuenta con un componente que nos ayuda a olvidarnos de las rutinas de asignar y desasignar memoria.</li>
<li>Es open-source. no hay que pagar por el uso de licencias y además puedes tener acceso al código y ver cómo está programado.</li>
<li>Es intuitivo. Al principio puede parecer un poco extraña la sintaxis, pero una vez que la comprendes, verás que es muy fácil e intuitivo programar con Ruby. Es muy similar a un idioma humano.</li>
<li>Tiene manejo de excepciones. Como Java y C++, Ruby entiende el concepto de excepciones. Esto significa que no tenemos que preocuparnos por códigos de error sin sentido y repercute en un código más claro.</li>
<li>Tiene una clase Array. Los arreglos son dinámicos, por lo que no es necesario declarar su tamaño desde el inicio. No es necesario asignar memoria tampoco. Son objetos y por lo tanto tienen sus propias propiedades y métodos para la manipulación de su contenido.</li>
<li>manejo de símbolos y mayúsculas de forma creativa. Un método que regresa un valor booleano normalmente termina en un símbolo de interrogación (por ejemplo: nil? o empty?); los métodos que modifican o destruyen datos terminan con un símbolo de exclamación (por ejemplo: clear!). Todas las constantes y los nombres de clases empiezan con letras mayúsculas. Todos los atributos de los objetos inician con el símbolo @. Simple, informativo e intuitivo.</li>
<li>Permite iteradores. Entre otras cosas, permite pasar bloques de código de tal forma que el block es llamado por cada uno de los elementos del arreglo, lista, árbol o lo que sea.</li>
<li>Gran atención a los detalles. Abundan los sinónimos para los métodos o propiedades. Si no recuerdas cuál usar entre <em><strong>size</strong></em> o <strong><em>length</em></strong> para una cadena o arreglo, pues usa cualquiera, ambos funcionan. Para los rangos, puedes usar <strong><em>begin</em></strong> y <strong><em>end</em></strong> o <strong><em>first</em></strong> y <strong><em>last</em></strong>. Y así en otros casos.</li>
<li>Sintaxis flexible. Los paréntesis para las llamadas a métodos pueden ser omitidos, así como tambián las comas entre cada uno de los parámetros. La palabra reservada <strong><em>return</em></strong> puede ser igualmente omitida.</li>
<li>Tiene un gran conjunto de librerías. Tiene soporte para hilos, sockets, persistencia de objetos, programas CGI, bases de datos y mucho más. Incluso igual hay soporte para librerías de gráficos de usuario como Tk, WxWidgets, Gtk, Qt y muchos más.</li>
<li>Es un lenguaje conciso. No hay el uso de palabras extras como <strong><em>begin</em></strong> y <strong><em>then</em></strong> para despues de un <strong><em>if</em></strong> como en el caso de Pascal. Las variables no necesitan ser declaradas, los tipos de retorno no tienen que ser especificados para los métodos, y como ya dijimos anteriormente, el <strong><em>return</em></strong> puede no ser especificado, se tomará como valor de retorno la última expresión evaluada.</li>
<li>Tiene sobrecarga de operadores. Esta característica que hizo tan popular C++ y luego ha sido implementada en lenguajes como C#, es muy útil para mejorar la lectura y la intuitividad de nuestro código. En lenguajes como Java que no cuentan con esta característica, para sumar dos variables de tipo <strong><em>BigDecimal</em></strong> es necesario hacer algo como num1.add(num2) cuando lo más lógico sería algo como num1 + num2; pues este tipo de expresiones las permite Ruby gracias a la sobrecarga de operadores.</li>
<li>Por último pero no de menor importancia, es la magnífica librería Ruby on Rails que permite desarrollar aplicaciones web de la forma más fácil que he visto hasta ahora.</li>
</ol>
<p>Bueno, esta es mi lista de las cosas que me gustan de Ruby, talvez he omitido algunas que no son tan obvias o que no me vienen a la mente en este momento, pero al menos espero que la lista cumpla el objetivo de que las personas que no conocen mucho el lenguaje puedan empezar a encariñarse con él.</p>
]]></content:encoded>
			<wfw:commentRss>http://desarrollo.dsisweb.com/2010/02/razones-para-amar-a-ruby/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Página con links a videos de Ruby</title>
		<link>http://desarrollo.dsisweb.com/2010/02/pagina-con-links-a-videos-de-ruby/</link>
		<comments>http://desarrollo.dsisweb.com/2010/02/pagina-con-links-a-videos-de-ruby/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 16:00:54 +0000</pubDate>
		<dc:creator>REBM</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Screencasts]]></category>
		<category><![CDATA[Videos]]></category>
		<category><![CDATA[Webcasts]]></category>

		<guid isPermaLink="false">http://desarrollo.dsisweb.com/?p=223</guid>
		<description><![CDATA[Buscando información de Ruby por internet me encontré con este magnífico sitio que contiene enlaces hacia videos relacionados con Ruby.
Actualmente contiene más de 500 links a videos, por lo que vale la pena visitarla, ver los videos y hasta hacer algunas aportaciones.
http://www.rubytu.be/
]]></description>
			<content:encoded><![CDATA[<p>Buscando información de Ruby por internet me encontré con este magnífico sitio que contiene enlaces hacia videos relacionados con Ruby.</p>
<p>Actualmente contiene más de 500 links a videos, por lo que vale la pena visitarla, ver los videos y hasta hacer algunas aportaciones.</p>
<p><a href="http://www.rubytu.be/">http://www.rubytu.be/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://desarrollo.dsisweb.com/2010/02/pagina-con-links-a-videos-de-ruby/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jQuery con Rails 3</title>
		<link>http://desarrollo.dsisweb.com/2010/02/jquery-con-rails-3/</link>
		<comments>http://desarrollo.dsisweb.com/2010/02/jquery-con-rails-3/#comments</comments>
		<pubDate>Fri, 12 Feb 2010 15:48:05 +0000</pubDate>
		<dc:creator>REBM</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Prototype]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[UJS]]></category>

		<guid isPermaLink="false">http://desarrollo.dsisweb.com/?p=219</guid>
		<description><![CDATA[Una de las características nuevas en Rails 3 es que permite de manera más sencilla poder definir los diferentes componentes de nuestra aplicación. Por ejemplo, ya no tendremos que hacer tanta magia para poder utilizar otra que no sea Prototype como librería Javascript, si no que ahora igual podremos utilizar jQuery con un poquito de [...]]]></description>
			<content:encoded><![CDATA[<p>Una de las características nuevas en Rails 3 es que permite de manera más sencilla poder definir los diferentes componentes de nuestra aplicación. Por ejemplo, ya no tendremos que hacer tanta magia para poder utilizar otra que no sea Prototype como librería Javascript, si no que ahora igual podremos utilizar jQuery con un poquito de configuración.</p>
<p>Lo primero que tendremos que hacer es con respecto al <a href="http://es.wikipedia.org/wiki/JavaScript_no_obstructivo">Javascript no obstructivo</a> (UJS por sus siglas en inglés). El equipo de desarrollo de Rails 3 ha hecho un gran trabajo al reemplazar todo el código JS en línea con UJS y XHTML semántico; el detalle es que sigue siendo Prototype la librería por default</p>
<p>Para cambiar eso debes descargar y reemplazar el archivo public/javascript/rails.js desde github en la <a href="http://github.com/rails/jquery-ujs">página del proyecto de jQuery UJS</a>.</p>
<p>El siguiente paso sería la sentencia javascript_include_tag a todos nuestros layouts. Si ya has usado jQuery con Rails anteriormente, debes haber hecho algo como esto:</p>
<pre class="brush: rails">
javascript_include_tag &#039;jquery&#039;, &#039;jquery-ui&#039;, &#039;rails&#039;, &#039;application&#039;
</pre>
<p>Pero si tienes más de un layout y quieres adherirte al principio DRY (Don&#8217;t repeat yourself, no te repitas a ti mismo), entonces lo ideal sería poder hacer algo como lo que se hace con Prototype:</p>
<pre class="brush: rails">
javascript_include_tag :defaults
</pre>
<p>Para lograr esto, es necesario modificar el archivo config/application.rb debes agregar una expansión Javascript como la siguiente</p>
<pre class="brush: rails">
ActionView::Helpers::AssetTagHelper.register_javascript_expansion \
:jquery =&gt; %w/jquery jquery-ui rails application
</pre>
<p>De esta manera, podremos incluir nuestras librerías con la siguiente línea:</p>
<pre class="brush: rails">
javascript_include_tag :jquery
</pre>
<p>Lo cual es mucho más sencillo y rápido.</p>
<p>En artículos siguientes seguiremos explorando las características nuevas de Rails 3. Manténganse en contacto.</p>
]]></content:encoded>
			<wfw:commentRss>http://desarrollo.dsisweb.com/2010/02/jquery-con-rails-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Introducción a Python Django</title>
		<link>http://desarrollo.dsisweb.com/2010/02/introduccion-a-python-django/</link>
		<comments>http://desarrollo.dsisweb.com/2010/02/introduccion-a-python-django/#comments</comments>
		<pubDate>Thu, 11 Feb 2010 17:38:24 +0000</pubDate>
		<dc:creator>REBM</dc:creator>
				<category><![CDATA[Django]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://desarrollo.dsisweb.com/?p=79</guid>
		<description><![CDATA[En la actualidad existen muchas opciones para desarrollar páginas dinámicas. Tenemos las opciones de los lenguajes de lado servidor como por ejemplo PHP, ASP.NET o Java; también existen los manejadores de contenido como por ejemplo Joomla, Drupal, CMSMadeSimple,etc, que nos ofrecen la creación de sitios enfocados a presentar contenido dinámico; otra opción que tenemos es [...]]]></description>
			<content:encoded><![CDATA[<p>En la actualidad existen muchas opciones para desarrollar páginas dinámicas. Tenemos las opciones de los lenguajes de lado servidor como por ejemplo PHP, ASP.NET o Java; también existen los manejadores de contenido como por ejemplo Joomla, Drupal, CMSMadeSimple,etc, que nos ofrecen la creación de sitios enfocados a presentar contenido dinámico; otra opción que tenemos es utilizar algún framework de los existentes que nos facilitan el desarrollo de cualquier sitio dinámico, ya sean aplicaciones web o portales.</p>
<p>En esta última categoría encontramos a Django, que es un framework basado en Python, que es un lenguaje dinámico orientado a objetos bastante utilizado en diversas áreas, desde la computación científica hasta el el desarrollo de sitios web.</p>
<p>Django nació en una organización enfocada a las noticias. Fue principalmente para satisfacer dos retos: ser la herramienta ideal para cumplir con los plazos tan apretados de entrega y satisfacer los requerimientos de los programadores web experimentados que lo crearon. Es un framework que trata de adherirse lo más posible al principio DRY (No te repites a ti mismo, Dont Repeat Yourself).</p>
<p><strong>Descarga e Instalación</strong><br />
Para iniciar, lo primero que debemos hacer es descargarlo del <a href="http://www.djangoproject.com/download/">sitio web</a>. Después debemos descomprimir el archivo y el método dependerá de nuestro sistema operativo; en windows sería probablemente con un programa como winrar y con linux con el comando tar. Posteriormente, nos debemos situar en el directorio donde lo hayamos puesto el resultado y ejecutaremos el siguiente comando:</p>
<pre class="brush: php">sudo python setup.py install</pre>
<p>En caso de que estemos usando Linux, tendriamos que ejecutarlo con un usuario con suficientes privilegios, o utilizar un comando &#8220;sudo&#8221; o similar (como en el ejemplo anterior).</p>
<p><strong>Iniciando el proyecto</strong><br />
En esta ocasión desarrollaremos un pequeño Blog que nos permita capturar artículos y mostrarlos en forma de lista y también leer el artículo completo.</p>
<p>Como primer paso es necesario ejecutar el comando siguiente:</p>
<pre class="brush: php">django-admin startproject misitio</pre>
<p>Este comando nos generará los siguientes archivos dentro de la carpeta &#8220;misitio&#8221;:</p>
<ul>
<li>El archivo <strong>__init__.py</strong> nos sirve para indicar que la carpeta se trata de un paquete de python.</li>
</ul>
<ul>
<li>El archivo <strong>manage.py</strong> contiene comandos que nos ayudan para realizar diversas operaciones con el proyecto.</li>
</ul>
<ul>
<li> En el archivo <strong>settings.py</strong> se establecen los parámetros de configuración para el sitio web.</li>
</ul>
<ul>
<li> <strong>urls.py</strong> nos sirve para configurar las diferentes rutas de forma elegante sin tener que usar extensiones (como .php,, .jsp, .aspx, etc).</li>
</ul>
<p><strong>Probando el proyecto</strong><br />
Para comprobar que todo esté bien, ejecutaremos el siguiente comando en una consola de nuestro sistema operativo ubicados en el directorio del proyecto:</p>
<pre class="brush: php">python manage.py runserver</pre>
<p>Y debemos ver la siguiente salida:</p>
<p><a href="http://desarrollo.dsisweb.com/wp-content/uploads/2010/02/runserver.png"><img class="aligncenter size-full wp-image-214" title="runserver" src="http://desarrollo.dsisweb.com/wp-content/uploads/2010/02/runserver.png" alt="Salida del comando runserver" width="399" height="51" /></a></p>
<p>Si todo salió bien, podremos navegar a la dirección mencionada en la salida (http://127.0.0.1:8000) y deberemos ver el siguiente resultado:</p>
<p><a href="http://desarrollo.dsisweb.com/wp-content/uploads/2010/02/itworked.jpeg"><img class="aligncenter size-medium wp-image-215" title="pagina" src="http://desarrollo.dsisweb.com/wp-content/uploads/2010/02/itworked-300x65.jpg" alt="Página de resultados" width="300" height="65" /></a></p>
<p>
Hasta aquí en este artículo. En la segunda parte crearemos nuestros objetos del modelo y veremos cómo configurar nuestra aplicación.
</p>
<p>
Saludos y hasta pronto.</p>
]]></content:encoded>
			<wfw:commentRss>http://desarrollo.dsisweb.com/2010/02/introduccion-a-python-django/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VS2010 y .NET 4 RC disponible para descarga</title>
		<link>http://desarrollo.dsisweb.com/2010/02/vs2010-y-net-4-rc-disponible-para-descarga/</link>
		<comments>http://desarrollo.dsisweb.com/2010/02/vs2010-y-net-4-rc-disponible-para-descarga/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 04:45:09 +0000</pubDate>
		<dc:creator>REBM</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Visual Studio 2010]]></category>

		<guid isPermaLink="false">http://desarrollo.dsisweb.com/?p=208</guid>
		<description><![CDATA[El release candidate de Visual Studio 2010 junto con el .NET framework 4 ya están disponibles para descargarse para los que cuentan con una subscripción MSDN. El miércoles 10 de febrero estará disponible la descarga para el público en general.
Según el anuncio oficial, entre las mejoras tendremos un mayor desempeño al momento de abrir los [...]]]></description>
			<content:encoded><![CDATA[<p>El release candidate de Visual Studio 2010 junto con el .NET framework 4 ya están disponibles para <a href="http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx">descargarse</a> para los que cuentan con una subscripción MSDN. El miércoles 10 de febrero estará disponible la descarga para el público en general.</p>
<p>Según el anuncio oficial, entre las mejoras tendremos un mayor desempeño al momento de abrir los proyectos, en la edición de código y en los diseñadores visuales, principalmente de WPF; además obviamente de la resolución de los bugs que fueron reportados durante las pruebas de la Beta 2.</p>
<p>Mientras tanto ya lo estoy descargando, así que apenas lo instale pondré mis primeras impresiones.</p>
]]></content:encoded>
			<wfw:commentRss>http://desarrollo.dsisweb.com/2010/02/vs2010-y-net-4-rc-disponible-para-descarga/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Liberada la primera beta de Rails 3.0</title>
		<link>http://desarrollo.dsisweb.com/2010/02/liberada-la-primera-beta-de-rails-3-0/</link>
		<comments>http://desarrollo.dsisweb.com/2010/02/liberada-la-primera-beta-de-rails-3-0/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 21:01:22 +0000</pubDate>
		<dc:creator>REBM</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[DataMapper]]></category>
		<category><![CDATA[Merb]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Sequel]]></category>

		<guid isPermaLink="false">http://desarrollo.dsisweb.com/?p=203</guid>
		<description><![CDATA[El 5 de febrero fue liberada la primera beta de la tan esperada versión 3.0 de Rails. Esta nueva versión trae muchas mejoras y características nuevas respecto a la rama 2.0. Lo más sobresaliente podriamos decir que es la fusión con el framework Merb; lo que trae como beneficio que ahora los componentes del framework [...]]]></description>
			<content:encoded><![CDATA[<p>El 5 de febrero fue liberada la primera beta de la tan esperada versión 3.0 de Rails. Esta nueva versión trae muchas mejoras y características nuevas respecto a la rama 2.0. Lo más sobresaliente podriamos decir que es la fusión con el framework Merb; lo que trae como beneficio que ahora los componentes del framework estén menos fuertemente acoplados entre sí, permitiendo poder elegir qué componente queremos por ejemplo en la capa de acceso a datos (ActiveRecord, <a href="http://datamapper.org/">DataMapper</a>, <a href="http://sequel.rubyforge.org/">Sequel</a>) así como en las demás capas.</p>
<p>ActiveRecord, ActionController, ActionView, and ActionMailer, ActiveSupport todos han sido rediseñados, y además de que Rails 3 es compatible con Rack, los subcomponentes de Rails, como el enrutamiento, son middlewares de Rack.</p>
<p>Entre los principales puntos podemos mencionar también:</p>
<ul>
<li>Un ruteador mejorado y nuevo que hace un énfasis en declaraciones tipo REST</li>
<li>Nueva API para Action Mailer modelado tomando como base el Action Controller</li>
<li>Nuevo lenguaje encadenable para Active Record construido basándose en álgebra relacional</li>
<li>Helpers de Javascript no intrusivos con manejadores para Prototype, jQuery y más</li>
<li>Control de dependencias explícito con Bundler</li>
</ul>
<p>Si deseas ver todas las notas de la versión puedes hacerlo en este <a href="http://guides.rails.info/3_0_release_notes.html">enlace</a>.</p>
<p>Por mi parte, aun no me decido a migrar a la nueva versión de Rails el proyecto que estoy realizando, pero pronto lo haré así que los mantendré informados de mis aventuras con Rails 3.</p>
<p>Por cierto que para instalarlo, se necesitan ejecutar los siguientes comandos:</p>
<pre style="width:20" lang="bash">gem install tzinfo builder memcache-client rack rack-test rack-mount erubis mail text-format thor bundler i18n
gem install rails --pre</pre>
]]></content:encoded>
			<wfw:commentRss>http://desarrollo.dsisweb.com/2010/02/liberada-la-primera-beta-de-rails-3-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Taller gratuito de Spring 3 + Flex 4 y Adobe Air en Monterrey</title>
		<link>http://desarrollo.dsisweb.com/2010/02/taller-gratuito-de-spring-3-flex-4-y-adobe-air-en-monterrey/</link>
		<comments>http://desarrollo.dsisweb.com/2010/02/taller-gratuito-de-spring-3-flex-4-y-adobe-air-en-monterrey/#comments</comments>
		<pubDate>Sun, 07 Feb 2010 23:00:30 +0000</pubDate>
		<dc:creator>REBM</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Air]]></category>
		<category><![CDATA[Capacitación]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Spring]]></category>

		<guid isPermaLink="false">http://desarrollo.dsisweb.com/?p=201</guid>
		<description><![CDATA[Este 20 de febrero se llevará a cabo un taller gratuito en la ciudad de Monterrey, México que consistirá en construir aplicaciones con el Spring Framework 3.0, Flex 4.0 y Adobe Air 2.0. Este taller será impartido por Erick Camacho, Iván Álvarez y Élder Valdez.
Si deseas más información puedes obtenerla en el siguiente enlace: http://springhispano.org/?q=node/618
Esperemos que [...]]]></description>
			<content:encoded><![CDATA[<p>Este 20 de febrero se llevará a cabo un taller gratuito en la ciudad de Monterrey, México que consistirá en construir aplicaciones con el Spring Framework 3.0, Flex 4.0 y Adobe Air 2.0. Este taller será impartido por Erick Camacho, Iván Álvarez y Élder Valdez.</p>
<p>Si deseas más información puedes obtenerla en el siguiente enlace: <a href="http://springhispano.org/?q=node/618">http://springhispano.org/?q=node/618</a></p>
<p>Esperemos que luego se animen a hacer este tipo de talleres en otros lugares de la república, incluyendo el sureste.</p>
]]></content:encoded>
			<wfw:commentRss>http://desarrollo.dsisweb.com/2010/02/taller-gratuito-de-spring-3-flex-4-y-adobe-air-en-monterrey/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Video de acceso a base de datos con Spring mediante JDBC</title>
		<link>http://desarrollo.dsisweb.com/2010/02/video-de-acceso-a-base-de-datos-con-spring-mediante-jdbc/</link>
		<comments>http://desarrollo.dsisweb.com/2010/02/video-de-acceso-a-base-de-datos-con-spring-mediante-jdbc/#comments</comments>
		<pubDate>Thu, 04 Feb 2010 22:49:21 +0000</pubDate>
		<dc:creator>REBM</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[JDBC]]></category>
		<category><![CDATA[Screencast]]></category>
		<category><![CDATA[Spring]]></category>

		<guid isPermaLink="false">http://desarrollo.dsisweb.com/?p=199</guid>
		<description><![CDATA[Nuestros amigos de SpringHispano publicaron recientemente un screencast muy interesante de cómo accesar a bases de datos con el Spring Framework utilizando JDBC.
Lean la nota completa y visualicen el video posteriormente.
]]></description>
			<content:encoded><![CDATA[<p>Nuestros amigos de <a href="http://springhispano.org/">SpringHispano</a> publicaron recientemente un screencast muy interesante de cómo accesar a bases de datos con el Spring Framework utilizando JDBC.</p>
<p>Lean la <a href="http://springhispano.org/?q=node/614">nota completa</a> y visualicen el <a href="http://vimeo.com/9116447">video</a> posteriormente.</p>
]]></content:encoded>
			<wfw:commentRss>http://desarrollo.dsisweb.com/2010/02/video-de-acceso-a-base-de-datos-con-spring-mediante-jdbc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Liberada la versión 1.2.1 de Grails</title>
		<link>http://desarrollo.dsisweb.com/2010/02/liberada-la-version-1-2-1-de-grails/</link>
		<comments>http://desarrollo.dsisweb.com/2010/02/liberada-la-version-1-2-1-de-grails/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 21:42:27 +0000</pubDate>
		<dc:creator>REBM</dc:creator>
				<category><![CDATA[Grails]]></category>

		<guid isPermaLink="false">http://desarrollo.dsisweb.com/?p=197</guid>
		<description><![CDATA[El día de ayer 1 de febrero salió la primera versión de mantenimiento de Grails 1.2.
Más que nada está enfocada a resolver ciertos bugs y mejorar el desempeño del framework.
Si deseas puedes ver la lista completa de problemas solucionados (en inglés): http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11063&#38;version=16060
También puedes descargarlo desde el siguiente link: http://grails.org/Download
]]></description>
			<content:encoded><![CDATA[<p>El día de ayer 1 de febrero salió la primera versión de mantenimiento de Grails 1.2.</p>
<p>Más que nada está enfocada a resolver ciertos bugs y mejorar el desempeño del framework.</p>
<p>Si deseas puedes ver la lista completa de problemas solucionados (en inglés): <a href="http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11063&amp;version=16060">http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=11063&amp;version=16060</a></p>
<p>También puedes descargarlo desde el siguiente link: <a href="http://grails.org/Download">http://grails.org/Download</a></p>
]]></content:encoded>
			<wfw:commentRss>http://desarrollo.dsisweb.com/2010/02/liberada-la-version-1-2-1-de-grails/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	<img style='margin:0;padding:0;border:0;' width='1px' height='1px' src="http://desarrollo.dsisweb.com/wp-content/plugins/mystat/mystat.php?act=time_load&id=39211&rnd=388930846" /></channel>
</rss>
