<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.javier-romero.com/~d/styles/rss2full.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.javier-romero.com/~d/styles/itemcontent.css" type="text/css" media="screen"?><rss xmlns:blogChannel="http://backend.userland.com/blogChannelModule" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
  <channel>
    <title>Javier-Romero</title>
    <description>Desarrollando desde el Milenio Pasado</description>
    <link>http://www.mordorblog.com/</link>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>BlogEngine.Net Syndication Generator 1.0.0.0 (http://dotnetblogengine.net/)</generator>
    <language>es-EC</language>
    <blogChannel:blogRoll>http://www.mordorblog.com/opml.axd</blogChannel:blogRoll>
    <blogChannel:blink>http://www.dotnetblogengine.net/syndication.axd</blogChannel:blink>
    <dc:creator>Javier Romero A.</dc:creator>
    <dc:description>Desarrollando desde el Milenio Pasado</dc:description>
    <dc:title>Javier-Romero</dc:title>
    <geo:lat>0.000000</geo:lat>
    <geo:long>0.000000</geo:long>
    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.javier-romero.com/JavierRomero" type="application/rss+xml" /><feedburner:emailServiceId>543927</feedburner:emailServiceId><feedburner:feedburnerHostname>http://www.feedburner.com</feedburner:feedburnerHostname><item><title>Links for 2008-04-30 [del.icio.us]</title><link>http://feeds.javier-romero.com/~r/JavierRomero/~3/281253057/javierRomero</link><pubDate>Thu, 01 May 2008 00:00:00 -0500</pubDate><guid isPermaLink="false">http://del.icio.us/javierRomero#2008-04-30</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<ul>
<li><a href="http://www.smashingmagazine.com/2008/04/30/best-of-april-2008/">Best Of April 2008 | Best of the Month | Smashing Magazine</a><br/>
Every month we take a look around and select some of the most interesting web-development-related web-sites. We read articles, check out tools, analyze the advantages of new resources. Below you’ll find useful references, tutorials, services, tools, tec</li>
</ul><img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/281253057" height="1" width="1"/>]]></content:encoded><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.smashingmagazine.com/2008/04/30/best-of-april-2008/"&gt;Best Of April 2008 | Best of the Month | Smashing Magazine&lt;/a&gt;&lt;br/&gt;
Every month we take a look around and select some of the most interesting web-development-related web-sites. We read articles, check out tools, analyze the advantages of new resources. Below you’ll find useful references, tutorials, services, tools, tec&lt;/li&gt;
&lt;/ul&gt;</description><feedburner:origLink>http://del.icio.us/javierRomero#2008-04-30</feedburner:origLink></item><item><title>Links for 2008-04-29 [del.icio.us]</title><link>http://feeds.javier-romero.com/~r/JavierRomero/~3/280550398/javierRomero</link><pubDate>Wed, 30 Apr 2008 00:00:00 -0500</pubDate><guid isPermaLink="false">http://del.icio.us/javierRomero#2008-04-29</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<ul>
<li><a href="http://geeks.ms/blogs/ilanda/archive/2008/04/23/191-qu-233-es-ser-accesible-i.aspx">&iquest;Qu&eacute; es ser accesible? ( I ) - Yo s&oacute;lo pasaba por aqu&iacute; pero ya que estoy....</a><br/>
Las directrices propiamente dichas no detallan las acciones que hay que realizar para conseguir que un sitio Web sea más accesible. Se trata más bien de consideraciones de alto nivel que proporcionan comentarios sobre cómo garantizar la accesibilidad.</li>
<li><a href="http://weblogs.asp.net/bradvincent/archive/2008/04/28/better-jquery-intellisense-in-vs2008.aspx">(Better) JQuery IntelliSense in VS2008 - BradVin's .Net Blog</a><br/>
If you are like me and you've read the many articles about how to get other javascript libraries to work in VS2008, you'll know that all you really need to do is install the visual studio HOTFIX. This patches your VS and among other things, gets the javas</li>
<li><a href="http://www.alistapart.com/articles/accessibledatavisualization">A List Apart: Articles: Accessible Data Visualization with Web Standards</a><br/>
We’ve been talking about Web 2.0 for so long now it’s already passé to argue about what it means and what it doesn’t. But one thing’s for sure, there’s a lot of data out there on the web these days. And as web designers, we’re designing a lot</li>
<li><a href="http://meyerweb.com/eric/css/edge/bargraph/demo-table.html">CSS Vertical Bar Graphs</a><br/>
Here's a fairly typical vertical bar graph showing a hypothetical set of quarterly data for, say, invoice and collection totals. The difference here is that the whole thing is a simple table and a few divs. Really.</li>
<li><a href="http://www.devtopics.com/10-commandments-for-programmers/">10 Commandments for Programmers</a><br/>
So instead, here is a bunch of &quot;Commandments for Programmers&quot;:</li>
</ul><img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/280550398" height="1" width="1"/>]]></content:encoded><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://geeks.ms/blogs/ilanda/archive/2008/04/23/191-qu-233-es-ser-accesible-i.aspx"&gt;&amp;iquest;Qu&amp;eacute; es ser accesible? ( I ) - Yo s&amp;oacute;lo pasaba por aqu&amp;iacute; pero ya que estoy....&lt;/a&gt;&lt;br/&gt;
Las directrices propiamente dichas no detallan las acciones que hay que realizar para conseguir que un sitio Web sea más accesible. Se trata más bien de consideraciones de alto nivel que proporcionan comentarios sobre cómo garantizar la accesibilidad.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://weblogs.asp.net/bradvincent/archive/2008/04/28/better-jquery-intellisense-in-vs2008.aspx"&gt;(Better) JQuery IntelliSense in VS2008 - BradVin's .Net Blog&lt;/a&gt;&lt;br/&gt;
If you are like me and you've read the many articles about how to get other javascript libraries to work in VS2008, you'll know that all you really need to do is install the visual studio HOTFIX. This patches your VS and among other things, gets the javas&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.alistapart.com/articles/accessibledatavisualization"&gt;A List Apart: Articles: Accessible Data Visualization with Web Standards&lt;/a&gt;&lt;br/&gt;
We’ve been talking about Web 2.0 for so long now it’s already passé to argue about what it means and what it doesn’t. But one thing’s for sure, there’s a lot of data out there on the web these days. And as web designers, we’re designing a lot&lt;/li&gt;
&lt;li&gt;&lt;a href="http://meyerweb.com/eric/css/edge/bargraph/demo-table.html"&gt;CSS Vertical Bar Graphs&lt;/a&gt;&lt;br/&gt;
Here's a fairly typical vertical bar graph showing a hypothetical set of quarterly data for, say, invoice and collection totals. The difference here is that the whole thing is a simple table and a few divs. Really.&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.devtopics.com/10-commandments-for-programmers/"&gt;10 Commandments for Programmers&lt;/a&gt;&lt;br/&gt;
So instead, here is a bunch of &amp;quot;Commandments for Programmers&amp;quot;:&lt;/li&gt;
&lt;/ul&gt;</description><feedburner:origLink>http://del.icio.us/javierRomero#2008-04-29</feedburner:origLink></item><item><title>Links for 2008-04-17 [del.icio.us]</title><link>http://feeds.javier-romero.com/~r/JavierRomero/~3/272646632/javierRomero</link><pubDate>Fri, 18 Apr 2008 00:00:00 -0500</pubDate><guid isPermaLink="false">http://del.icio.us/javierRomero#2008-04-17</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<ul>
<li><a href="http://www.interiders.com/2008/02/11/prototextboxlist-meets-autocompletion/">Proto!TextboxList meets Autocompletion | InteRiders</a><br/>
This is the Prototype version of the extended script by Guillermo Rauch. As with the previous script, this script has been converted and operates like the original. An extended and upgraded version will be posted later on this week, if you have any commen</li>
</ul><img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/272646632" height="1" width="1"/>]]></content:encoded><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.interiders.com/2008/02/11/prototextboxlist-meets-autocompletion/"&gt;Proto!TextboxList meets Autocompletion | InteRiders&lt;/a&gt;&lt;br/&gt;
This is the Prototype version of the extended script by Guillermo Rauch. As with the previous script, this script has been converted and operates like the original. An extended and upgraded version will be posted later on this week, if you have any commen&lt;/li&gt;
&lt;/ul&gt;</description><feedburner:origLink>http://del.icio.us/javierRomero#2008-04-17</feedburner:origLink></item><item><title>Links for 2008-04-16 [del.icio.us]</title><link>http://feeds.javier-romero.com/~r/JavierRomero/~3/271927537/javierRomero</link><pubDate>Thu, 17 Apr 2008 00:00:00 -0500</pubDate><guid isPermaLink="false">http://del.icio.us/javierRomero#2008-04-16</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<ul>
<li><a href="http://encosia.com/2008/04/16/why-do-aspnet-ajax-page-methods-have-to-be-static/">Why do ASP.NET AJAX page methods have to be static? | Encosia</a><br/>
Dozens of variations on the title of this post are some of the most common searches that bring people here to Encosia. Unfortunately, the search engines all point to a post that doesn’t answer the question. It’s also a frequent question raised on the</li>
<li><a href="http://encosia.com/2007/07/11/why-aspnet-ajax-updatepanels-are-dangerous/">Why ASP.NET AJAX UpdatePanels are dangerous | Encosia</a><br/>
If you’re like me, it’s hard to resist the lure of tossing a half dozen UpdatePanels on every page and reveling in AJAX goodness. The UpdatePanel makes AJAX trivially easy for anyone to implement, even without knowledge of what’s actually going on b</li>
</ul><img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/271927537" height="1" width="1"/>]]></content:encoded><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://encosia.com/2008/04/16/why-do-aspnet-ajax-page-methods-have-to-be-static/"&gt;Why do ASP.NET AJAX page methods have to be static? | Encosia&lt;/a&gt;&lt;br/&gt;
Dozens of variations on the title of this post are some of the most common searches that bring people here to Encosia. Unfortunately, the search engines all point to a post that doesn’t answer the question. It’s also a frequent question raised on the&lt;/li&gt;
&lt;li&gt;&lt;a href="http://encosia.com/2007/07/11/why-aspnet-ajax-updatepanels-are-dangerous/"&gt;Why ASP.NET AJAX UpdatePanels are dangerous | Encosia&lt;/a&gt;&lt;br/&gt;
If you’re like me, it’s hard to resist the lure of tossing a half dozen UpdatePanels on every page and reveling in AJAX goodness. The UpdatePanel makes AJAX trivially easy for anyone to implement, even without knowledge of what’s actually going on b&lt;/li&gt;
&lt;/ul&gt;</description><feedburner:origLink>http://del.icio.us/javierRomero#2008-04-16</feedburner:origLink></item><item><title>Links for 2008-04-14 [del.icio.us]</title><link>http://feeds.javier-romero.com/~r/JavierRomero/~3/270462838/javierRomero</link><pubDate>Tue, 15 Apr 2008 00:00:00 -0500</pubDate><guid isPermaLink="false">http://del.icio.us/javierRomero#2008-04-14</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<ul>
<li><a href="http://learn.iis.net/page.aspx/387/using-visual-studio-2008-with-iis-70/">IIS.net : Learn IIS7: Using Visual Studio 2008 with IIS 7.0: Development Tools: Developing on IIS 7.0</a></li>
<li><a href="http://www.emmaalvarez.com/2008/04/most-useful-50-css-tips-and-tools-for.html">Emma Alvarez Site: Most Useful 50 CSS Tips And Tools For Webmasters</a><br/>
The style of a website is defined by the CSS. CSS describes text fonts, if images must have borders or shadows, etc. Simply changing the CSS styles, you can change the appearance of your website completely, without changing the contents (text, images...).</li>
<li><a href="http://devintelligence.com/cs/blogs/netadventures/archive/2008/04/08/6-free-online-editors-for-your-asp-net-site.aspx">.Net Adventures : 6 free online editors for your asp.net site</a></li>
</ul><img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/270462838" height="1" width="1"/>]]></content:encoded><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://learn.iis.net/page.aspx/387/using-visual-studio-2008-with-iis-70/"&gt;IIS.net : Learn IIS7: Using Visual Studio 2008 with IIS 7.0: Development Tools: Developing on IIS 7.0&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.emmaalvarez.com/2008/04/most-useful-50-css-tips-and-tools-for.html"&gt;Emma Alvarez Site: Most Useful 50 CSS Tips And Tools For Webmasters&lt;/a&gt;&lt;br/&gt;
The style of a website is defined by the CSS. CSS describes text fonts, if images must have borders or shadows, etc. Simply changing the CSS styles, you can change the appearance of your website completely, without changing the contents (text, images...).&lt;/li&gt;
&lt;li&gt;&lt;a href="http://devintelligence.com/cs/blogs/netadventures/archive/2008/04/08/6-free-online-editors-for-your-asp-net-site.aspx"&gt;.Net Adventures : 6 free online editors for your asp.net site&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><feedburner:origLink>http://del.icio.us/javierRomero#2008-04-14</feedburner:origLink></item><item><title>Links for 2008-04-03 [del.icio.us]</title><link>http://feeds.javier-romero.com/~r/JavierRomero/~3/263762818/javierRomero</link><pubDate>Fri, 04 Apr 2008 00:00:00 -0500</pubDate><guid isPermaLink="false">http://del.icio.us/javierRomero#2008-04-03</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<ul>
<li><a href="http://www.codethinked.com/post/2008/03/Setting-up-authentication-in-aspnet-MVC.aspx">Setting up authentication in asp.net MVC</a><br/>
wanted to setup user authentication in asp.net MVC, and I wanted it to tie in with the built-in IIdentity and IPrincipal support that is already in asp.net, but I did not want to have to setup asp.net membership services. I wanted to have my own user obje</li>
<li><a href="http://www.singingeels.com/Articles/RealTime_Progress_Bar_With_ASPNET_AJAX.aspx">SingingEels : Real-Time Progress Bar With ASP.NET AJAX</a><br/>
Due to the disconnected nature of the web, developers have often wondered how to display certain metrics such as a real-time progress bar. This article will show you how to easily build a real progress bar that actually reports progress of a process runni</li>
<li><a href="http://blogs.msdn.com/johnwpowell/archive/2008/03/23/10-tips-to-boost-your-productivity-with-c-and-visual-studio-2008.aspx">John W Powell : 10 Tips to Boost Your Productivity with C# and Visual Studio 2008</a><br/>
It's an obvious and trivial thing, but the timesaving will add up, especially for those actions you perform tens or hundreds of times a day such as building and debugging.  Here are some basic bindings every Visual Studio developer should know:</li>
<li><a href="http://www.hanselman.com/blog/HowToSetAnIISApplicationOrAppPoolToUseASPNET35RatherThan20.aspx">Scott Hanselman's Computer Zen - How to set an IIS Application or AppPool to use ASP.NET 3.5 rather than 2.0</a><br/>
A question that comes up a lot is this: How do I tell my IIS Application or Virtual Directory to use ASP.NET 3.5 rather than ASP.NET 2.0?</li>
</ul><img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/263762818" height="1" width="1"/>]]></content:encoded><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.codethinked.com/post/2008/03/Setting-up-authentication-in-aspnet-MVC.aspx"&gt;Setting up authentication in asp.net MVC&lt;/a&gt;&lt;br/&gt;
wanted to setup user authentication in asp.net MVC, and I wanted it to tie in with the built-in IIdentity and IPrincipal support that is already in asp.net, but I did not want to have to setup asp.net membership services. I wanted to have my own user obje&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.singingeels.com/Articles/RealTime_Progress_Bar_With_ASPNET_AJAX.aspx"&gt;SingingEels : Real-Time Progress Bar With ASP.NET AJAX&lt;/a&gt;&lt;br/&gt;
Due to the disconnected nature of the web, developers have often wondered how to display certain metrics such as a real-time progress bar. This article will show you how to easily build a real progress bar that actually reports progress of a process runni&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/johnwpowell/archive/2008/03/23/10-tips-to-boost-your-productivity-with-c-and-visual-studio-2008.aspx"&gt;John W Powell : 10 Tips to Boost Your Productivity with C# and Visual Studio 2008&lt;/a&gt;&lt;br/&gt;
It's an obvious and trivial thing, but the timesaving will add up, especially for those actions you perform tens or hundreds of times a day such as building and debugging.  Here are some basic bindings every Visual Studio developer should know:&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.hanselman.com/blog/HowToSetAnIISApplicationOrAppPoolToUseASPNET35RatherThan20.aspx"&gt;Scott Hanselman's Computer Zen - How to set an IIS Application or AppPool to use ASP.NET 3.5 rather than 2.0&lt;/a&gt;&lt;br/&gt;
A question that comes up a lot is this: How do I tell my IIS Application or Virtual Directory to use ASP.NET 3.5 rather than ASP.NET 2.0?&lt;/li&gt;
&lt;/ul&gt;</description><feedburner:origLink>http://del.icio.us/javierRomero#2008-04-03</feedburner:origLink></item><item><title>Links for 2008-03-25 [del.icio.us]</title><link>http://feeds.javier-romero.com/~r/JavierRomero/~3/258097684/javierRomero</link><pubDate>Wed, 26 Mar 2008 00:00:00 -0500</pubDate><guid isPermaLink="false">http://del.icio.us/javierRomero#2008-03-25</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<ul>
<li><a href="http://geeks.ms/blogs/jmaguilar/archive/2008/03/24/diez-preguntas-b-225-sicas-con-respuesta-sobre-asp-net-mvc.aspx">Diez preguntas b&aacute;sicas (con respuesta) sobre ASP.Net MVC - Variable not found en Geeks.ms</a><br/>
Varios lectores y amigos me han hecho llegar algunas cuestiones sobre el nuevo ASP.Net MVC Framework, y en vez de responder de forma individual, creo que es más interesante realizar un post recopilatorio e intentar que las respuestas puedan ayudar a más</li>
<li><a href="http://www.alistapart.com/articles/signupforms">A List Apart: Articles: Sign Up Forms Must Die</a><br/>
I’ll just come out and say this: sign-up forms must die. In the introduction to this book I described the process of stumbling upon or being recommended to a web service. You arrive eager to dive in and start engaging and what’s the first thing that g</li>
</ul><img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/258097684" height="1" width="1"/>]]></content:encoded><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://geeks.ms/blogs/jmaguilar/archive/2008/03/24/diez-preguntas-b-225-sicas-con-respuesta-sobre-asp-net-mvc.aspx"&gt;Diez preguntas b&amp;aacute;sicas (con respuesta) sobre ASP.Net MVC - Variable not found en Geeks.ms&lt;/a&gt;&lt;br/&gt;
Varios lectores y amigos me han hecho llegar algunas cuestiones sobre el nuevo ASP.Net MVC Framework, y en vez de responder de forma individual, creo que es más interesante realizar un post recopilatorio e intentar que las respuestas puedan ayudar a más&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.alistapart.com/articles/signupforms"&gt;A List Apart: Articles: Sign Up Forms Must Die&lt;/a&gt;&lt;br/&gt;
I’ll just come out and say this: sign-up forms must die. In the introduction to this book I described the process of stumbling upon or being recommended to a web service. You arrive eager to dive in and start engaging and what’s the first thing that g&lt;/li&gt;
&lt;/ul&gt;</description><feedburner:origLink>http://del.icio.us/javierRomero#2008-03-25</feedburner:origLink></item><item>
      <title>VIDEO: Nuevas certificaciones para desarrolladores con Visual Studio 2008.</title>
      <description>&lt;p&gt;
&lt;a href="http://www.jasoft.org/blog/PermaLink,guid,a22335e7-501c-46ad-a68d-f535a8d6f7cc.aspx"&gt;
Jose Manuel Alarc&amp;oacute;n&lt;/a&gt; public&amp;oacute; un art&amp;iacute;culo sobre la evoluci&amp;oacute;n de las nuevas certificaciones para Visual Studio 2008 y de qu&amp;eacute; manera podr&amp;iacute;an afectar un proceso actual de certificaci&amp;oacute;n.
&lt;/p&gt;
&lt;p&gt;
Me result&amp;oacute; sorprendente la fecha de lanzamiento del examen para ASP.NET (21 de mayo) y algunas otras cosas...
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;&lt;a href="http://www.campusmvp.com/campusmvp/videos/CertifVS2008/" target="_blank"&gt;&lt;img src="http://www.mordorblog.com/image.axd?picture=cert2008.jpg" border="0" alt="" /&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Puedes &lt;a href="http://www.campusmvp.com/campusmvp/videos/CertifVS2008/"&gt;ver el video aqu&amp;iacute;&lt;/a&gt; y &lt;a href="http://www.jasoft.org/blog/PermaLink,guid,a22335e7-501c-46ad-a68d-f535a8d6f7cc.aspx"&gt;Enlace al post completo&lt;/a&gt; 
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=hhA5sP"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=hhA5sP" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=ldNwhrD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=ldNwhrD" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=XDpa4Wd"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=XDpa4Wd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=lsCs58D"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=lsCs58D" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=T01XYRd"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=T01XYRd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=qILdiMD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=qILdiMD" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/226317471" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/226317471/post.aspx</link>
      <author>Javier</author>
      <comments>http://www.mordorblog.com/post/2008/01/VIDEO-Nuevas-certificaciones-para-desarrolladores-con-Visual-Studio-2008.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=539729a4-c8e2-4ebd-a571-fc50c5e648e8</guid>
      <pubDate>Mon, 28 Jan 2008 09:11:00 -0500</pubDate>
      <category>C#</category>
      <category>WPF</category>
      <category>ASP.NET</category>
      <category>.NET</category>
      <category>Certificaciones</category>
      <category>Visual Studio</category>
      <dc:publisher>Javier</dc:publisher>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=539729a4-c8e2-4ebd-a571-fc50c5e648e8</pingback:target>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=539729a4-c8e2-4ebd-a571-fc50c5e648e8</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2008/01/VIDEO-Nuevas-certificaciones-para-desarrolladores-con-Visual-Studio-2008.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=539729a4-c8e2-4ebd-a571-fc50c5e648e8</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=539729a4-c8e2-4ebd-a571-fc50c5e648e8</feedburner:origLink></item>
    <item>
      <title>Escribiendo código a la defensiva y manejando excepciones,</title>
      <description>&lt;p&gt;
Desde el lanzamiento de .NET y su aplicaci&amp;oacute;n al desarrollo de aplicaciones Web (ASP.NET), uno de los principios esenciales es el desarrollar c&amp;oacute;digo seguro, pues qu&amp;eacute; puede significar eso?
&lt;/p&gt;
&lt;p&gt;
No solamente es evitar inyecciones al c&amp;oacute;digo de tipo SQL, sino tambien implementar una serie de pol&amp;iacute;ticas que eviten el mal uso de este c&amp;oacute;digo, y sobre todo hacer que nuestras aplicaciones no se &amp;quot;caigan&amp;quot; de forma catastr&amp;oacute;fica (l&amp;eacute;ase la t&amp;iacute;pica pantalla de error de .NET) frente al usuario.
&lt;/p&gt;
&lt;p&gt;
Dentro de nuestra organizaci&amp;oacute;n&amp;nbsp; hemos tratado e imprimir una serie de reglas en el desarrollo de nuestras aplicaciones de las cuales enumero algunas:
&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;&lt;strong&gt;Nunca conf&amp;iacute;es en el input del usuario:&lt;br /&gt;
	&lt;/strong&gt;Una de las causas m&amp;aacute;s comunes de errores no controlados, el asumir que el usuario ubicar&amp;aacute; datos congruentes en cualquiera de los mecanismos de ingreso de informaci&amp;oacute;n. De manera que todo &amp;quot;absolutamente todo&amp;quot; es validado a todo nivel, desde las formas ASP.NET hasta la capa de datos.&lt;br /&gt;
	&lt;br /&gt;
	&lt;/li&gt;
	&lt;li&gt;&lt;strong&gt;Nunca permitas que la interfaz de usuario &amp;quot;se caiga&amp;quot;:&lt;/strong&gt;&lt;br /&gt;
	El usuario no deber&amp;iacute;a perder la interacci&amp;oacute;n con la aplicaci&amp;oacute;n. Si se llegase a generar una excepci&amp;oacute;n, no deber&amp;iacute;a ser el fin del mundo!, de esta manera tratamos de informarle al usuario: &lt;em&gt;Qu&amp;eacute; paso?&lt;/em&gt; &lt;em&gt;Qu&amp;eacute; tipo de excepci&amp;oacute;n es?&lt;/em&gt;, &lt;em&gt;Por qu&amp;eacute; pudo haberse generado el error?&lt;/em&gt; y &lt;em&gt;Qu&amp;eacute; puede hacer para remediarlo?&lt;/em&gt;: Si es un error de input que ubique los valores adecuados o si es un error no manejable por el usuario a qui&amp;eacute;n tiene que contactar para resolverlo.&lt;br /&gt;
	&lt;br /&gt;
	&lt;/li&gt;
	&lt;li&gt;&lt;strong&gt;Capturar la mayor cantidad de excepciones posibles y registrarlas:&lt;br /&gt;
	&lt;/strong&gt;El poder analizar los m&amp;eacute;todos dentro de los componentes, datos o presentaci&amp;oacute;n clasificando excepciones podr&amp;iacute;a resultar una tarea ardua, pero enriquecedora en cuanto a resultados, mucho m&amp;aacute;s si registramos las excepciones generadas, nos ha ayudado much&amp;iacute;simo a resolver problemas insospechados de forma relativamente r&amp;aacute;pida y efectiva. Aqu&amp;iacute; incluyo la clasificaci&amp;oacute;n de excepciones: comenzamos entre las &amp;quot;Excepciones Catastr&amp;oacute;ficas&amp;quot; y el &amp;quot;Resto&amp;quot;, para priorizar... l&amp;oacute;gicamente esta divisi&amp;oacute;n se ampli&amp;oacute; a categorizaci&amp;oacute;n por m&amp;oacute;dulo, importancia, frecuencia, etc. &lt;br /&gt;
	&lt;br /&gt;
	&lt;/li&gt;
	&lt;li&gt;&lt;strong&gt;Verificaci&amp;oacute;n de nulidad de objectos:&lt;br /&gt;
	&lt;/strong&gt;Asumir que el objeto (sea control, instancia de clase, etc) podr&amp;iacute;a ser nulo (&amp;quot;null&amp;quot;) en cualquier momento. Esta estrategia te libera de muchos problemas derivados de la omisi&amp;oacute;n. &lt;br /&gt;
	&lt;br /&gt;
	&lt;/li&gt;
	&lt;li&gt;&lt;strong&gt;I&lt;/strong&gt;&lt;strong&gt;mplementar mecanismos de reporte de Bugs:&lt;/strong&gt;&lt;br /&gt;
	Una vez que la aplicaci&amp;oacute;n est&amp;aacute; en producci&amp;oacute;n, al usuario detectar un bug o excepci&amp;oacute;n, tiene la posibilidad de reportarlo mediante mecanismos de comunicaci&amp;oacute;n con nuestro departamento de soporte. Esencial en aplicaciones de alto desempe&amp;ntilde;o. Seamos razonables, la aplicaci&amp;oacute;n &lt;em&gt;libre de bugs no existe&lt;/em&gt;, por lo tanto lo mejor es tratar de manejarlos, reportarlos e incluirlos dentro del flujo de soporte. Muy buenos resultados, sobre todo hacia la imagen que damos al usuario.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;
Son algunas cosas, pocas, las que he mencionado, pero que ayudan realmente en construir c&amp;oacute;digo realmente seguro y sobre todo enfocado hacia el soporte al usuario asegurando un ciclo de vida lo m&amp;aacute;s correcto posible de la aplicaci&amp;oacute;n.
&lt;/p&gt;
&lt;p&gt;
Espero seguir escribiendo sobre esto en alg&amp;uacute;n post m&amp;aacute;s... saludos.&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=GtMaaf"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=GtMaaf" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=BPxc5SD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=BPxc5SD" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=sY1ORPd"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=sY1ORPd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=8JwQ8WD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=8JwQ8WD" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=sCaWefd"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=sCaWefd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=SuZcTKD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=SuZcTKD" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/223723690" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/223723690/post.aspx</link>
      <author>Javier</author>
      <comments>http://www.mordorblog.com/post/2008/01/Escribiendo-código-a-la-defensiva-y-manejando-excepciones,.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=63e6775c-e7ee-461b-9e68-fbb80177ec5e</guid>
      <pubDate>Tue, 22 Jan 2008 10:17:00 -0500</pubDate>
      <category>ASP.NET</category>
      <category>Project Management</category>
      <category>.NET</category>
      <category>Metodologia</category>
      <dc:publisher>Javier</dc:publisher>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=63e6775c-e7ee-461b-9e68-fbb80177ec5e</pingback:target>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=63e6775c-e7ee-461b-9e68-fbb80177ec5e</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2008/01/Escribiendo-código-a-la-defensiva-y-manejando-excepciones,.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=63e6775c-e7ee-461b-9e68-fbb80177ec5e</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=63e6775c-e7ee-461b-9e68-fbb80177ec5e</feedburner:origLink></item>
    <item>
      <title>links for 2008-01-22</title>
      <description>&lt;ul class="delicious"&gt;
	&lt;li&gt;
		&lt;div class="delicious-link"&gt;&lt;a href="http://devlicio.us/blogs/steve_wright/archive/2008/01/20/creating-a-yellow-fade-with-asp-net-ajax-toolkit.aspx"&gt;Creating a Yellow Fade with ASP.NET AJAX Toolkit - Stephen Wright&lt;/a&gt;&lt;/div&gt;
		&lt;div class="delicious-tags"&gt;(tags: &lt;a href="http://del.icio.us/javierRomero/.net"&gt;.net&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/asp.net"&gt;asp.net&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/code"&gt;code&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/programming"&gt;programming&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/ajax"&gt;ajax&lt;/a&gt;)&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
		&lt;div class="delicious-link"&gt;&lt;a href="http://devlicio.us/blogs/derik_whittaker/archive/2008/01/18/try-catch-in-sql-2005-is-your-friend.aspx"&gt;Try-Catch in Sql 2005 is your friend. - Derik Whittaker&lt;/a&gt;&lt;/div&gt;
		&lt;div class="delicious-tags"&gt;(tags: &lt;a href="http://del.icio.us/javierRomero/sql"&gt;sql&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/sql2005"&gt;sql2005&lt;/a&gt;)&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
		&lt;div class="delicious-link"&gt;&lt;a href="http://blog.dotnetclr.com/archive/2008/01/20/add-columns-to-sql-server-tables-on-the-fly.aspx"&gt;Add columns to SQL server tables on the fly&lt;/a&gt;&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
		&lt;div class="delicious-link"&gt;&lt;a href="http://weblogs.asp.net/jgalloway/archive/2008/01/19/writing-a-custom-asp-net-profile-class.aspx"&gt;Writing a custom ASP.NET Profile class - Jon Galloway&lt;/a&gt;&lt;/div&gt;
		&lt;div class="delicious-extended"&gt;We made heavy use of the ASP.NET membership and profile system for Video.Show (a Silverlight 1.0 video community website system, available on CodePlex). In addition to storing basic profile information, we created a custom profile with some additional fie&lt;/div&gt;
		&lt;div class="delicious-tags"&gt;(tags: &lt;a href="http://del.icio.us/javierRomero/asp.net"&gt;asp.net&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/profile"&gt;profile&lt;/a&gt;)&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
		&lt;div class="delicious-link"&gt;&lt;a href="http://davidhayden.com/blog/dave/archive/2008/01/19/SQLServer2005BestPracticesAnalyzerJanuary2008.aspx"&gt;SQL Server 2005 Best Practices Analyzer (January 2008)&lt;/a&gt;&lt;/div&gt;
		&lt;div class="delicious-extended"&gt;The SQL Server 2005 Best Practices Analyzer ( January 2008 ) appears to be a significant update. It contains many new and updated rules for Analysis Services, a few important rules for the Relational Engine, and a couple bug fixes for the UI and command l&lt;/div&gt;
		&lt;div class="delicious-tags"&gt;(tags: &lt;a href="http://del.icio.us/javierRomero/sqlserver"&gt;sqlserver&lt;/a&gt;)&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
		&lt;div class="delicious-link"&gt;&lt;a href="http://davidhayden.com/blog/dave/archive/2008/01/19/SandcastleJanuary2008ReleaseCodePlex.aspx"&gt;Sandcastle January 2008 Release on CodePlex - Generate MSDN Style Documentation for .NET and ASP.NET Applications&lt;/a&gt;&lt;/div&gt;
		&lt;div class="delicious-extended"&gt;Sandcastle is now on CodePlex and has a January 15, 2008 Release Date. I am still using a really old version during my build process and should probably upgrade at some point.&lt;/div&gt;
		&lt;div class="delicious-tags"&gt;(tags: &lt;a href="http://del.icio.us/javierRomero/sandcastle"&gt;sandcastle&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/help"&gt;help&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/.net"&gt;.net&lt;/a&gt;)&lt;/div&gt;
	&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=Bn4xJE"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=Bn4xJE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=BcjAS2D"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=BcjAS2D" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=sFfd7wd"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=sFfd7wd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=SSRpmlD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=SSRpmlD" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=aem1Jvd"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=aem1Jvd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=UoEaihD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=UoEaihD" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/223723691" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/223723691/post.aspx</link>
      <author>javier</author>
      <comments>http://www.mordorblog.com/post/2008/01/links-for-2008-01-22.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=e6d2724b-d2ef-4710-abbb-9314ac93225b</guid>
      <pubDate>Tue, 22 Jan 2008 04:27:00 -0500</pubDate>
      <dc:publisher>javier</dc:publisher>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=e6d2724b-d2ef-4710-abbb-9314ac93225b</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=e6d2724b-d2ef-4710-abbb-9314ac93225b</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2008/01/links-for-2008-01-22.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=e6d2724b-d2ef-4710-abbb-9314ac93225b</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=e6d2724b-d2ef-4710-abbb-9314ac93225b</feedburner:origLink></item>
    <item>
      <title>links for 2008-01-18</title>
      <description>&lt;ul class="delicious"&gt;
	&lt;li&gt;
		&lt;div class="delicious-link"&gt;&lt;a href="http://blogs.msdn.com/sburke/archive/2008/01/16/configuring-visual-studio-to-debug-net-framework-source-code.aspx"&gt;Shawn Burke's Blog : Configuring Visual Studio to Debug .NET Framework Source Code&lt;/a&gt;&lt;/div&gt;
		&lt;div class="delicious-extended"&gt;It's finally here - the launch of the .NET Reference Source project.  This post (hopefully!) contains everything you need to know.  Over the past few weeks, we ran a pilot of this feature and collected lots of great data that helped us work through some i&lt;/div&gt;
		&lt;div class="delicious-tags"&gt;(tags: &lt;a href="http://del.icio.us/javierRomero/2008"&gt;2008&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/code"&gt;code&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/development"&gt;development&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/download"&gt;download&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/framework"&gt;framework&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/source"&gt;source&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/vs2008"&gt;vs2008&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/debug"&gt;debug&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/.net"&gt;.net&lt;/a&gt; &lt;a href="http://del.icio.us/javierRomero/programming"&gt;programming&lt;/a&gt;)&lt;/div&gt;
	&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=IGXmoM"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=IGXmoM" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=FU4AjbD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=FU4AjbD" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=Dac2NBd"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=Dac2NBd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=h5La5zD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=h5La5zD" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=GMXbuhd"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=GMXbuhd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=76I3uxD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=76I3uxD" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/219305962" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/219305962/post.aspx</link>
      <author>javier</author>
      <comments>http://www.mordorblog.com/post/2008/01/links-for-2008-01-18.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=be28ea49-fa20-4263-9b75-c55bc6cb7513</guid>
      <pubDate>Fri, 18 Jan 2008 04:25:22 -0500</pubDate>
      <dc:publisher>javier</dc:publisher>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=be28ea49-fa20-4263-9b75-c55bc6cb7513</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=be28ea49-fa20-4263-9b75-c55bc6cb7513</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2008/01/links-for-2008-01-18.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=be28ea49-fa20-4263-9b75-c55bc6cb7513</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=be28ea49-fa20-4263-9b75-c55bc6cb7513</feedburner:origLink></item>
    <item>
      <title>Ordenando (Sort) Colecciones con tipos genéricos y Métodos Anónimos</title>
      <description>&lt;p&gt;
Ordenar una colecci&amp;oacute;n, podr&amp;iacute;a tomarse como una de las tareas m&amp;aacute;s triviales dentro del desarrollo de algo: Sobrescribir el m&amp;eacute;todo &lt;em&gt;Sort(&lt;/em&gt;), implementar&lt;em&gt; IComparer&lt;/em&gt; o &lt;em&gt;IComparable&lt;/em&gt;, etc. Pero a veces en aras del tiempo necesitas hacerlo de forma a&amp;uacute;n m&amp;aacute;s r&amp;aacute;pida, esencialmente con colecciones &amp;quot;inocuas&amp;quot; (llamo a esto una simple collecci&amp;oacute;n que implementa &lt;em&gt;List&amp;lt;object&amp;gt;&lt;/em&gt; ej: &lt;em&gt;OrderCollection :&amp;nbsp;List&amp;lt;Order&amp;gt;&lt;/em&gt;). En ese momento es que encontr&amp;eacute; un uso realmente pr&amp;aacute;ctico a la combinaci&amp;oacute;n de &lt;a href="http://msdn2.microsoft.com/en-us/library/512aeb7t.aspx" target="_blank"&gt;Tipos Gen&amp;eacute;ricos&lt;/a&gt;&amp;nbsp;y &lt;a href="http://msdn2.microsoft.com/en-us/library/0yw3tz5k(VS.80).aspx" target="_blank"&gt;M&amp;eacute;todos An&amp;oacute;nimos&lt;/a&gt;: &lt;strong&gt;utilizarlos para ordenar una colecci&amp;oacute;n&lt;/strong&gt;. 
&lt;/p&gt;
&lt;p&gt;
En primer lugar tomemos una clase &lt;em&gt;Order&lt;/em&gt; la cual contiene las&amp;nbsp;propiedades: &lt;em&gt;Id&lt;/em&gt;, &lt;em&gt;CreatedDate&lt;/em&gt; y &lt;em&gt;Value&lt;/em&gt;. (los nombres se han tomado simplemente para t&amp;eacute;rminos de explicaci&amp;oacute;n) definida as&amp;iacute;: 
&lt;/p&gt;
&lt;div class="csharpcode"&gt;
&lt;pre class="alt"&gt;
[Serializable]
&lt;/pre&gt;
&lt;pre&gt;
    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; Order
&lt;/pre&gt;
&lt;pre class="alt"&gt;
    {
&lt;/pre&gt;
&lt;pre&gt;
        &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt; _Id;
&lt;/pre&gt;
&lt;pre class="alt"&gt;
        &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;decimal&lt;/span&gt; _Value;
&lt;/pre&gt;
&lt;pre&gt;
        &lt;span class="kwrd"&gt;private&lt;/span&gt; DateTime _CreatedDate;
&lt;/pre&gt;
&lt;pre class="alt"&gt;
&amp;nbsp;
&lt;/pre&gt;
&lt;pre&gt;
        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt; Id
&lt;/pre&gt;
&lt;pre class="alt"&gt;
        {
&lt;/pre&gt;
&lt;pre&gt;
            get { &lt;span class="kwrd"&gt;return&lt;/span&gt; _Id; }
&lt;/pre&gt;
&lt;pre class="alt"&gt;
            set { _Id = &lt;span class="kwrd"&gt;value&lt;/span&gt;; }
&lt;/pre&gt;
&lt;pre&gt;
        }
&lt;/pre&gt;
&lt;pre class="alt"&gt;
&amp;nbsp;
&lt;/pre&gt;
&lt;pre&gt;
        &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;decimal&lt;/span&gt; Value
&lt;/pre&gt;
&lt;pre class="alt"&gt;
        {
&lt;/pre&gt;
&lt;pre&gt;
            get { &lt;span class="kwrd"&gt;return&lt;/span&gt; _Value; }
&lt;/pre&gt;
&lt;pre class="alt"&gt;
            set { _Value = &lt;span class="kwrd"&gt;value&lt;/span&gt;; }
&lt;/pre&gt;
&lt;pre&gt;
        }
&lt;/pre&gt;
&lt;pre class="alt"&gt;
&amp;nbsp;
&lt;/pre&gt;
&lt;pre&gt;
        &lt;span class="kwrd"&gt;public&lt;/span&gt; DateTime CreatedDate
&lt;/pre&gt;
&lt;pre class="alt"&gt;
        {
&lt;/pre&gt;
&lt;pre&gt;
            get { &lt;span class="kwrd"&gt;return&lt;/span&gt; _CreatedDate; }
&lt;/pre&gt;
&lt;pre class="alt"&gt;
            set { _CreatedDate = &lt;span class="kwrd"&gt;value&lt;/span&gt;; }
&lt;/pre&gt;
&lt;pre&gt;
        }
&lt;/pre&gt;
&lt;pre class="alt"&gt;
    }
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;
Y&amp;nbsp;adem&amp;aacute;s se define la colecci&amp;oacute;n de items de tipo &lt;em&gt;Order&lt;/em&gt;: 
&lt;/p&gt;
&lt;div class="csharpcode"&gt;
&lt;pre class="alt"&gt;
&lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; OrderCollection: List&amp;lt;Order&amp;gt; { }
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;
Para uso pr&amp;aacute;ctico&amp;nbsp;en un reporte espec&amp;iacute;fico necesitas ordenar la lista de &amp;oacute;rdenes que has obtenido por la propiedad&amp;nbsp;&lt;em&gt;CreatedDate&lt;/em&gt;,&amp;nbsp;all&amp;iacute; entran&amp;nbsp;los m&amp;eacute;todos an&amp;oacute;nimos, inserto el c&amp;oacute;digo para luego explicar:&amp;nbsp; 
&lt;/p&gt;
&lt;div class="csharpcode"&gt;
&lt;pre class="alt"&gt;
&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; BindOrders()
&lt;/pre&gt;
&lt;pre&gt;
{
&lt;/pre&gt;
&lt;pre class="alt"&gt;
    &lt;span class="rem"&gt;//Obtener las &amp;oacute;rdenes de la DB.&lt;/span&gt;
&lt;/pre&gt;
&lt;pre&gt;
    OrderCollection orders = Orders.GetAllOrders();
&lt;/pre&gt;
&lt;pre class="alt"&gt;
&amp;nbsp;
&lt;/pre&gt;
&lt;pre&gt;
    &lt;span class="rem"&gt;//Sort - Orden por CreatedDate&lt;/span&gt;
&lt;/pre&gt;
&lt;pre class="alt"&gt;
    orders.Sort(
&lt;/pre&gt;
&lt;pre&gt;
        &lt;span class="kwrd"&gt;delegate&lt;/span&gt;(Order x, Order y)
&lt;/pre&gt;
&lt;pre class="alt"&gt;
        {
&lt;/pre&gt;
&lt;pre&gt;
            &lt;span class="kwrd"&gt;return&lt;/span&gt; Comparer&amp;lt;DateTime&amp;gt;.Default.Compare
&lt;/pre&gt;
&lt;pre class="alt"&gt;
                (x.CreatedDate, x.CreatedDate);
&lt;/pre&gt;
&lt;pre&gt;
        }
&lt;/pre&gt;
&lt;pre class="alt"&gt;
        );
&lt;/pre&gt;
&lt;pre&gt;
&amp;nbsp;
&lt;/pre&gt;
&lt;pre class="alt"&gt;
    &lt;span class="rem"&gt;//Asignaci&amp;oacute;n&lt;/span&gt;
&lt;/pre&gt;
&lt;pre&gt;
    Repeater rptOrders = FindControls(&lt;span class="str"&gt;&amp;quot;rptOrders&amp;quot;&lt;/span&gt;) &lt;span class="kwrd"&gt;as&lt;/span&gt; Repeater;
&lt;/pre&gt;
&lt;pre class="alt"&gt;
    &lt;span class="kwrd"&gt;if&lt;/span&gt; (rptOrders != &lt;span class="kwrd"&gt;null&lt;/span&gt;)
&lt;/pre&gt;
&lt;pre&gt;
    {
&lt;/pre&gt;
&lt;pre class="alt"&gt;
        rptOrders.DataSource = orders;
&lt;/pre&gt;
&lt;pre&gt;
        rptOrders.DataBind();
&lt;/pre&gt;
&lt;pre class="alt"&gt;
    }
&lt;/pre&gt;
&lt;pre&gt;
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;
&lt;strong&gt;Pues qu&amp;eacute; hemos hecho aqui?&lt;/strong&gt; Espero ya hayas encontrado el punto clave y no tengas que leer el resto. 
&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;
	&lt;div&gt;
	Utilizamos la sobrecarga del m&amp;eacute;todo&lt;em&gt; Sort()&lt;/em&gt; para utilizar un delegado, a este delegado se le asignan los par&amp;aacute;metros &lt;em&gt;x &lt;/em&gt;&amp;amp; &lt;em&gt;y&lt;/em&gt; como objetos de Tipo &lt;em&gt;Order&lt;/em&gt;. 
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;div&gt;
	Creamos el m&amp;eacute;todo an&amp;oacute;nimo para ese delegado, all&amp;iacute; sin m&amp;aacute;s ni m&amp;aacute;s. Com&amp;uacute;nmente deber&amp;iacute;amos generar otro m&amp;eacute;todo que maneje la delegaci&amp;oacute;n... pero podemos hacerlo all&amp;iacute;. 
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;div&gt;
	Retornamos en ese m&amp;eacute;todo an&amp;oacute;nimo la comparaci&amp;oacute;n de los objetos generada mediante la implementaci&amp;oacute;n de &lt;em&gt;Comparer&amp;lt;DateTime&amp;gt;&lt;/em&gt; que crea una instancia &amp;quot;gen&amp;eacute;rica&amp;quot; de &lt;em&gt;Comparer&lt;/em&gt; con el tipo &lt;em&gt;DateTime&lt;/em&gt;. 
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;div&gt;
	El compare recibe las propiedades del objeto &lt;em&gt;x&lt;/em&gt; &amp;amp; &lt;em&gt;y&lt;/em&gt; para realizar la comparaci&amp;oacute;n. 
	&lt;/div&gt;
	&lt;/li&gt;
	&lt;li&gt;
	&lt;div&gt;
	Listo. 
	&lt;/div&gt;
	&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;
Este mecanismo &lt;a href="http://msdn.microsoft.com/msdnmag/issues/06/00/C20/default.aspx" target="_blank"&gt;&amp;quot;elegante&amp;quot; como denominar&amp;iacute;an algunos&lt;/a&gt; podr&amp;iacute;a permitirnos realizar muchas funciones de sort sin requerir ir a modificar las clases bases, especialmente si no tienes acceso al c&amp;oacute;digo fuente base. Como el caso de un custom framework. De esta manera podr&amp;iacute;amos tomar cualquier propiedad para realizar el &lt;em&gt;Sort().&lt;/em&gt; 
&lt;/p&gt;
&lt;p&gt;
Espero que este ejemplo simple y peque&amp;ntilde;o pueda &lt;strong&gt;ayudarlos y aliviarles&lt;/strong&gt; una jornada de trabajo, tal como me pas&amp;oacute; a m&amp;iacute;. 
&lt;/p&gt;
&lt;p&gt;
Happy Coding. 
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=KzLemz"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=KzLemz" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=gNt35KD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=gNt35KD" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=lgSInad"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=lgSInad" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=7KxyLnD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=7KxyLnD" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=T9xmmAd"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=T9xmmAd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=7DrKI7D"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=7DrKI7D" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/219305963" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/219305963/post.aspx</link>
      <author>Javier</author>
      <comments>http://www.mordorblog.com/post/2008/01/Ordenando-(Sort)-Colecciones-con-tipos-genéricos-y-Métodos-Anónimos.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=ff833166-b641-4c84-ac61-f12147d51a42</guid>
      <pubDate>Wed, 16 Jan 2008 16:36:00 -0500</pubDate>
      <category>C#</category>
      <category>ASP.NET</category>
      <category>.NET</category>
      <category>Visual Studio</category>
      <dc:publisher>Javier</dc:publisher>
      <dc:description>Ordenar una colección, podría tomarse como una de las tareas más triviales dentro del desarrollo de algo: Sobrescribir el método Sort(), implementar IComparer o IComparable, etc. Pero a veces en aras del tiempo necesitas hacerlo de forma aún más rápida, esencialmente con colecciones "inocuas" (llamo a esto una simple collección que implementa List&lt;object&gt; ej: OrderCollection : List&lt;Order&gt;). En ese momento es que encontré un uso realmente práctico a la combinación de Tipos Genéricos y Métodos Anónimos: utilizarlos para ordenar una colección.</dc:description>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=ff833166-b641-4c84-ac61-f12147d51a42</pingback:target>
      <slash:comments>2</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=ff833166-b641-4c84-ac61-f12147d51a42</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2008/01/Ordenando-(Sort)-Colecciones-con-tipos-genéricos-y-Métodos-Anónimos.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=ff833166-b641-4c84-ac61-f12147d51a42</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=ff833166-b641-4c84-ac61-f12147d51a42</feedburner:origLink></item>
    <item>
      <title>Problemas al enviar correos a Hotmail/Live con System.Net.MailMessage</title>
      <description>&lt;p&gt;
Al realizar alguna aplicaci&amp;oacute;n la cual ten&amp;iacute;a que enviar un mensaje de email a Hotmail o Windows Live, casi siempre el mensaje se ubicaba dentro de la carpeta spam del cliente de correo.
&lt;/p&gt;
&lt;p&gt;
Un problema que ten&amp;iacute;a a &lt;a href="http://elcafedejoe.com/"&gt;nuestro jefe de proyectos&lt;/a&gt; bastante malhumorado, y por m&amp;aacute;s que implement&amp;aacute;bamos soluciones de registro en Dns, validaci&amp;oacute;n de IP, etc... el problema segu&amp;iacute;a present&amp;aacute;ndose.
&lt;/p&gt;
&lt;p&gt;
Pues acabo de leer en &lt;a href="http://geeks.ms/blogs/lruiz/archive/2008/01/15/problemas-al-enviar-correos-a-hotmail-live-con-system-net-mailmessage.aspx"&gt;Geek.ms la soluci&amp;oacute;n&lt;/a&gt;:&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
En la que explica que el problema est&amp;aacute; en la transici&amp;oacute;n de la clase &lt;strong&gt;MailMessage&lt;/strong&gt; from &lt;strong&gt;System.Web.Mail&lt;/strong&gt; to &lt;strong&gt;System.Net.Mail &lt;/strong&gt;en
algunos cambios que han realizado hacen que las cabeceras del mail se
envien en min&amp;uacute;sculas y que provocan que el servidor de correo los trate
como spam.
&lt;/p&gt;
&lt;p&gt;
La soluci&amp;oacute;n est&amp;aacute; en instalar el SP1 de NET 2.0 o pasarse a NET 3.5 que ya ha sido corregido.
&lt;/p&gt;
&lt;p&gt;
Espero que esto deje tranquilo a algunos...
&lt;/p&gt;
&lt;p&gt;
Happy Coding.&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=P3HPlE"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=P3HPlE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=x9Ky3jD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=x9Ky3jD" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=VwA8PGd"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=VwA8PGd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=bG8QZXD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=bG8QZXD" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=zv8UFtd"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=zv8UFtd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=tNGGG8D"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=tNGGG8D" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/217059757" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/217059757/post.aspx</link>
      <author>Javier</author>
      <comments>http://www.mordorblog.com/post/2008/01/Problemas-al-enviar-correos-a-HotmailLive-con-SystemNetMailMessage.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=ee35eb77-1c83-414c-b210-2ec0f67f570c</guid>
      <pubDate>Tue, 15 Jan 2008 09:25:00 -0500</pubDate>
      <category>ASP.NET</category>
      <category>General</category>
      <category>.NET</category>
      <category>Visual Studio</category>
      <dc:publisher>Javier</dc:publisher>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=ee35eb77-1c83-414c-b210-2ec0f67f570c</pingback:target>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=ee35eb77-1c83-414c-b210-2ec0f67f570c</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2008/01/Problemas-al-enviar-correos-a-HotmailLive-con-SystemNetMailMessage.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=ee35eb77-1c83-414c-b210-2ec0f67f570c</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=ee35eb77-1c83-414c-b210-2ec0f67f570c</feedburner:origLink></item>
    <item>
      <title>Credo para el Desarrollador que trabaja en equipo</title>
      <description>&lt;p&gt;
Cuando se construye un equipo, como ahora en mi oficina. Se debe pensar que es muy importante manejar la cultura de equipo de tal manera que se pueda ser lo m&amp;aacute;s productivo posible. A trav&amp;eacute;s del tiempo trabajando con equipos con difierentes disciplinas se podr&amp;iacute;a ubicar un lista de actitudes e ideas que beneficien al equipo de desarrollo. Se la podr&amp;iacute;a denominar el &lt;em&gt;&lt;strong&gt;Credo de Desarrollo&lt;/strong&gt;&lt;/em&gt;.&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
Este es un art&amp;iacute;culo que &lt;a href="http://theruntime.com/blogs/ericwise/archive/2008/01/07/my-team-s-developer-creedo.aspx"&gt;Eric Wase ha publicado&lt;/a&gt; y me permito reproducir en su extensi&amp;oacute;n.&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;Yo &amp;lt;Tu nombre&amp;gt; soy un&amp;nbsp; desarrollador.
&lt;/p&gt;
&lt;p&gt;
Entiendo que la raz&amp;oacute;n por la cual yo existo, es para &lt;strong&gt;servir y resolver las necesidades de los usuarios&lt;/strong&gt;.&amp;nbsp; Tomar&amp;eacute; los requerimientos del usuario seriamente y ser&amp;eacute; un apasionado del servicio al cliente. No mostrar&amp;eacute; ningun desd&amp;eacute;n por el usuario que no entienda lo que yo hago y siempre tratar&amp;eacute; de cruzar el puente entre el mundo t&amp;eacute;cnico y el del usuario para poder comprenderlo mejor. Al lograr entender al usuario puedo &lt;strong&gt;ganarme su confianza&lt;/strong&gt;, y con esta confianza tendr&amp;eacute; un &lt;strong&gt;socio valioso&lt;/strong&gt; en el proceso de desarrollo.
&lt;/p&gt;
&lt;p&gt;
Entiendo que &lt;strong&gt;cada uno de los miembros del staff de IT &lt;/strong&gt;es importante para lograr alcanzar mis metas. Los administradores de Bases de Datos protegen mis datos y me ayudan a asegurar el desempe&amp;ntilde;o. Los Administradores de Red aseguran que mis respaldos (backups) est&amp;aacute;n seguros y que tengo los accesos, permisos, software y sistemas adecuados y funcionando para realizar mi trabajo. &lt;strong&gt;No formar&amp;eacute; un &amp;quot;gueto&amp;quot; de desarrolladores&lt;/strong&gt; ni tendr&amp;eacute; una mentalidad &amp;quot;&lt;strong&gt;nosotros vs ellos&lt;/strong&gt;&amp;quot;. Apoyar&amp;eacute; a los miembros de mi equipo que no sean desarrolladores como si fuera otro cliente o compa&amp;ntilde;ero.
&lt;/p&gt;
&lt;p&gt;
Entiendo que &lt;strong&gt;cada uno de los desarrolladores de mi equipo es mi compa&amp;ntilde;ero&lt;/strong&gt;. Como compa&amp;ntilde;eros, ellos tendr&amp;aacute;n mi respeto y as&amp;iacute; lograr&amp;eacute; tener el de ellos. Con una relaci&amp;oacute;n &lt;strong&gt;basada en confianza y respeto&lt;/strong&gt;, no voy a temer al formular preguntas, plantear inquietudes, o de otro modo ayudar a mis compa&amp;ntilde;eros en la creaci&amp;oacute;n de c&amp;oacute;digo de alta calidad. Considero cualquier &lt;strong&gt;conflicto intelectual como una funci&amp;oacute;n saludable y natural &lt;/strong&gt;de los equipos para encontrar la mejor ruta de acci&amp;oacute;n para completar una tarea. Cuando el conflicto haya concluido y una direcci&amp;oacute;n haya sido decidida por el equipo, apoyar&amp;eacute; de todo coraz&amp;oacute;n el enfoque adoptado, incluso si mi sugerencia no fue la &amp;quot;ganadora&amp;quot;.
&lt;/p&gt;
&lt;p&gt;
Entiendo que el &lt;strong&gt;ego en todas sus formas es destructivo y perjudicial &lt;/strong&gt;para el equipo. Voy a recordar que el equipo es el propietario del c&amp;oacute;digo, no el individuo. A pesar de que deber&amp;iacute;a sentirme orgulloso de mis logros personales, siempre recordar&amp;eacute; darle cr&amp;eacute;dito a la ayuda que el equipo me haya dado para cumplir estos logros, y nunca mostrar&amp;eacute; egoismo sobre mi c&amp;oacute;digo y t&amp;eacute;cnicas hacia mis compa&amp;ntilde;eros. Voy a alentar a mis compa&amp;ntilde;eros a entender mi c&amp;oacute;digo y siempre sentar como bienvenidas cualquier cr&amp;iacute;tica constructiva. Me doy cuenta de que todo el c&amp;oacute;digo puede ser mejorado y t&lt;strong&gt;omar&amp;eacute; la cr&amp;iacute;tica como una oportunidad para el debate intelectual&lt;/strong&gt; y una experencia de aprendizaje, mas no como algo personal. 
&lt;/p&gt;
&lt;p&gt;
Entiendo que mi campo de acci&amp;oacute;n est&amp;aacute; en constante crecimiento y evoluci&amp;oacute;n. Voy a &lt;strong&gt;crear oportunidades para explorar nuevos conceptos&lt;/strong&gt; y estar&amp;eacute; abierto a nuevas Ideas. No me cerrar&amp;eacute; en patrones particulares o pr&amp;aacute;cticas de desarrollo en las cuales me siento a gusto pero que no son apropiadas en ciertas situaciones. Cuando uso patrones y pr&amp;aacute;cticas particulares, voy a sopesar cuidadosamente los beneficios e inconvenientes de dichos patrones y tomar&amp;eacute; las decisiones que sean siempre lo mejor para el equipo. Aunque guste de aprender cosas nuevas, me resistir&amp;eacute; a usar herramientes y pr&amp;aacute;cticas de desarrollo s&amp;oacute;lo porque son nuevas o &amp;quot;avanzadas&amp;quot;, si es que no &lt;strong&gt;agregan valor real &lt;/strong&gt;al c&amp;oacute;digo, servicio o producto que estoy haciendo. &amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
Tengo como idea principal que a pesar de que soy el primero en escribir alg&amp;uacute;n c&amp;oacute;digo en particular, &lt;strong&gt;no voy a ser el &amp;uacute;ltimo en mantenerlo, administrarlo o hacerle cambios&lt;/strong&gt;. Voy a tratar de mantener mi c&amp;oacute;digo legible, bien documentado y que tenga la menor complejidad posible. No asumir&amp;eacute; que ya que conozco de una herramienta o patr&amp;oacute;n de desarrollo el resto de desarrolladores lo conocer&amp;aacute;. Documento cuidadosamente los usos y justificativos para usar un patr&amp;oacute;n o herramienta para que los que vengan detr&amp;aacute;s de m&amp;iacute; &lt;strong&gt;puedan entender mejor lo que yo estaba tratando de lograr&lt;/strong&gt; con este c&amp;oacute;digo. Nunca construir&amp;eacute; c&amp;oacute;digo &amp;quot;obscuro&amp;quot; o dif&amp;iacute;cil de entender, solo por intentar lograr &amp;quot;un empleo seguro&amp;quot; o &lt;strong&gt;demostrar lo listo que soy&lt;/strong&gt;.
&lt;/p&gt;
&lt;p&gt;
L&amp;eacute;elo Completo: &lt;a href="http://theruntime.com/blogs/ericwise/archive/2008/01/07/my-team-s-developer-creedo.aspx"&gt;My Team&amp;#39;s Developer Credo en - Eric Wase Blog&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=B42LB6"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=B42LB6" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=mGGyWHD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=mGGyWHD" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=VLX4nYd"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=VLX4nYd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=P2OlFjD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=P2OlFjD" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=l6EfQgd"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=l6EfQgd" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=tIYpZsD"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=tIYpZsD" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/216488396" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/216488396/post.aspx</link>
      <author>Javier</author>
      <comments>http://www.mordorblog.com/post/2008/01/Credo-para-el-Desarrollador-que-trabaja-en-equipo.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=e5f71d77-1fb9-446c-a005-ffeba8c7ea23</guid>
      <pubDate>Mon, 14 Jan 2008 10:26:00 -0500</pubDate>
      <category>Team Foundation Server</category>
      <category>ASP.NET</category>
      <category>Project Management</category>
      <category>General</category>
      <category>.NET</category>
      <category>Metodologia</category>
      <dc:publisher>Javier</dc:publisher>
      <dc:description>Cuando se construye un equipo, como ahora en mi oficina. Se debe pensar que es muy importante manejar la cultura de equipo de tal manera que se pueda ser lo más productivo posible. A través del tiempo trabajando con equipos con difierentes disciplinas se podría ubicar un lista de actitudes e ideas que beneficien al equipo de desarrollo. Se la podría denominar el Credo de Desarrollo.</dc:description>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=e5f71d77-1fb9-446c-a005-ffeba8c7ea23</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=e5f71d77-1fb9-446c-a005-ffeba8c7ea23</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2008/01/Credo-para-el-Desarrollador-que-trabaja-en-equipo.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=e5f71d77-1fb9-446c-a005-ffeba8c7ea23</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=e5f71d77-1fb9-446c-a005-ffeba8c7ea23</feedburner:origLink></item>
    <item>
      <title>Larga vida a Sourcesafe!</title>
      <description>&lt;img src="http://www.mordorblog.com/image.axd?picture=vssafe.jpg" alt="Visual Sourcesafe" title="Visual Sourcesafe" /&gt;
&lt;p&gt;
Mientras todo el centro de atenci&amp;oacute;n sobre control de versiones estuvo puesto sobre Team Foundation Server durante los dos &amp;uacute;ltimos a&amp;ntilde;os, es sumamente importante recordar al viejo amigo &lt;a href="http://msdn2.microsoft.com/en-us/vs2005/aa718670.aspx"&gt;Visual Sourcesafe&lt;/a&gt; quien a&amp;uacute;n existe y es m&amp;aacute;s esta siendo usado por miles de equipo de desarrollo alrededor del mundo.
&lt;/p&gt;
&lt;p&gt;
Una actualizaci&amp;oacute;n est&amp;aacute; disponible ahora para Visual Sourcesafe 2005 que permitir&amp;aacute; que pueda seguir siendo usado con Visual Studio 2008 sin problemas. Esta actualizaci&amp;oacute;n est&amp;aacute; disponible de forma gratuita para quienes sean usuarios con licencia de Visual Sourcesafe. Este update tambi&amp;eacute;n incluye algunas mejoras adicionales como soporte total para Windows Vista y la correcci&amp;oacute;n de algunos bugs.
&lt;/p&gt;
&lt;p&gt;
Esta actualizaci&amp;oacute;n esta disponible &lt;a href="http://support.microsoft.com/kb/943847"&gt;aqu&amp;iacute;&lt;/a&gt; y todas las novedades a encontrarse con este update est&amp;aacute;n en un &lt;a href="http://blogs.msdn.com/richardb/archive/2007/12/11/sourcesafe-2005-update-is-available-for-download.aspx"&gt;post del blog de Richard Berg&lt;/a&gt;. &amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
Despu&amp;eacute;s de haber descargado durante las &amp;uacute;ltimas 4 semanas ISOs de 3, 4 GB, es refrescante ver ahora un simple update de 3.5MB jejeje.&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=7q9h32"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=7q9h32" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=qN6ev5C"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=qN6ev5C" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=n0Zw4ac"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=n0Zw4ac" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=5F2mbRC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=5F2mbRC" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=ZKLUnzc"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=ZKLUnzc" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=K0azfTC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=K0azfTC" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/199966336" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/199966336/post.aspx</link>
      <author>Javier</author>
      <comments>http://www.mordorblog.com/post/2007/12/Larga-vida-a-Sourcesafe.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=106eea24-8b87-46fe-b743-b8e8e52c0be4</guid>
      <pubDate>Thu, 13 Dec 2007 08:08:00 -0500</pubDate>
      <category>Team Foundation Server</category>
      <category>Project Management</category>
      <category>.NET</category>
      <category>Visual Studio</category>
      <dc:publisher>Javier</dc:publisher>
      <dc:description>Mientras todo el centro de atención sobre control de versiones estuvo puesto sobre Team Foundation Server durante los dos últimos años, es sumamente importante recordar al viejo amigo Visual Sourcesafe quien aún existe y es más esta siendo usado por miles de equipo de desarrollo alrededor del mundo.</dc:description>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=106eea24-8b87-46fe-b743-b8e8e52c0be4</pingback:target>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=106eea24-8b87-46fe-b743-b8e8e52c0be4</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2007/12/Larga-vida-a-Sourcesafe.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=106eea24-8b87-46fe-b743-b8e8e52c0be4</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=106eea24-8b87-46fe-b743-b8e8e52c0be4</feedburner:origLink></item>
    <item>
      <title>ASP.NET MVC Design Philosophy</title>
      <description>&lt;p&gt;
&lt;a href="http://haacked.com/images/haacked_com/WindowsLiveWriter/ASP.NETMVCDesignPhilosophy_1509B/Rodin-Denker-Kyoto_2.jpg" title="Left Slipper"&gt;Eilon Lipton&lt;/a&gt;, el desarrollador l&amp;iacute;der del proyecto ASP.NET MVC comparte algunos de sus &lt;a href="http://weblogs.asp.net/leftslipper/archive/2007/12/10/asp-net-mvc-design-philosophy.aspx"&gt;pensamientos sobre la filosof&amp;iacute;a de dise&amp;ntilde;o&lt;/a&gt; alrededor de la figura del nuevo framework. 
&lt;/p&gt;
  
&lt;p&gt;
A pesar de que existen muchos art&amp;iacute;culos y post que describen lo que es este framework y c&amp;oacute;mo realizar tareas, lo realmente &amp;uacute;til es tener informaci&amp;oacute;n a la mano que nos permita tomar decisiones al momento de tratar de implementar este framework. As&amp;iacute; como determinar la mejor estrategia para realizar el &amp;quot;salto&amp;quot; de nuestras aplicaciones utilizando las nuevas caracter&amp;iacute;sticas que Microsoft nos presenta.
&lt;/p&gt;
&lt;p&gt;
Una de las caracter&amp;iacute;sticas que m&amp;aacute;s me interesan es el incluir el &amp;quot;mindset&amp;quot; de pruebas al desarrollar sitios y aplicaciones web. A pesar que ya existen formas de hacerlo, hac&amp;iacute;a falta algo que nos obligue a hacerlo... para muchos quienes trabajamos desarrollando aplicaciones web, el tema de pruebas no es muy tomado en cuenta.
&lt;/p&gt;
&lt;p&gt;
Estoy seguro que ser&amp;aacute; de gran utilidad... l&amp;eacute;anlo, realmente despeja muchas dudas.
&lt;/p&gt;
&lt;h3&gt;&lt;a href="http://weblogs.asp.net/leftslipper/archive/2007/12/10/asp-net-mvc-design-philosophy.aspx"&gt;ASP.NET MVC Design Philosophy&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;
&lt;a href="http://weblogs.asp.net/leftslipper/default.aspx"&gt;Eilon Lipton&amp;#39;s Blog&amp;nbsp;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=5XPn6Q"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=5XPn6Q" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=nlS2O7C"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=nlS2O7C" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=m9VX57c"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=m9VX57c" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=om0b78C"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=om0b78C" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=WBglq8c"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=WBglq8c" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=NtyCHwC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=NtyCHwC" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/198627175" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/198627175/post.aspx</link>
      <author>Javier</author>
      <comments>http://www.mordorblog.com/post/2007/12/ASPNET-MVC-Design-Philosophy.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=a9bb8053-7d18-4ce7-9bdb-32abfe0b352f</guid>
      <pubDate>Tue, 11 Dec 2007 09:00:00 -0500</pubDate>
      <category>C#</category>
      <category>General</category>
      <category>Metodologia</category>
      <category>Visual Studio</category>
      <dc:publisher>Javier</dc:publisher>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=a9bb8053-7d18-4ce7-9bdb-32abfe0b352f</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=a9bb8053-7d18-4ce7-9bdb-32abfe0b352f</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2007/12/ASPNET-MVC-Design-Philosophy.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=a9bb8053-7d18-4ce7-9bdb-32abfe0b352f</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=a9bb8053-7d18-4ce7-9bdb-32abfe0b352f</feedburner:origLink></item>
    <item>
      <title>ASP.NET 3.5 Extensions CTP Preview Lanzado ...</title>
      <description>&lt;p&gt;
&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/12/09/asp-net-3-5-extensions-ctp-preview-released.aspx"&gt;Lo he le&amp;iacute;do en el blog de Scott Gu&lt;/a&gt;, lo que muchos est&amp;aacute;bamos esperando la versi&amp;oacute;n CTP de los ASP.NET 3.5 Extensions. 
&lt;/p&gt;
&lt;p&gt;
La estrella de este Release: El framework para desarrollo de aplicaciones ASP.NET utilizando MVC (Model, View, Controller). El mismo Scott nos ten&amp;iacute;a al tanto con algunas cosas realmente interesantes de este framework. 
&lt;/p&gt;
&lt;p&gt;
Este primer release incluye: 
&lt;/p&gt;
&lt;ul&gt;
	&lt;font face="arial" size="2"&gt;
	&lt;li&gt;&lt;u&gt;ASP.NET AJAX Improvements&lt;/u&gt;: New ASP.NET AJAX features in the ASP.NET 3.5 Extensions release include better browser history support (back/forward button integration, and server-side history management support), improved AJAX content linking support with permalinks, and additional JavaScript library improvements. &lt;/li&gt;&lt;/font&gt;
&lt;/ul&gt;
&lt;font face="arial" size="2"&gt;&lt;/font&gt;
&lt;ul&gt;
	&lt;font face="arial" size="2"&gt;
	&lt;li&gt;&lt;u&gt;ASP.NET MVC:&lt;/u&gt; This model view controller (MVC) framework for ASP.NET provides a structured model that enables a clear separation of concerns within web applications, and makes it easier to unit test your code and support a TDD workflow. It also helps provide more control over the URLs you publish in your applications, and more control over the HTML that is emitted from them. &lt;/li&gt;&lt;/font&gt;
&lt;/ul&gt;
&lt;font face="arial" size="2"&gt;&lt;/font&gt;
&lt;ul&gt;
	&lt;font face="arial" size="2"&gt;
	&lt;li&gt;&lt;u&gt;ASP.NET Dynamic Data Support&lt;/u&gt;: The ASP.NET 3.5 Extensions release delivers new features that enable faster creation of data driven web sites.&amp;nbsp; It provides a rich scaffolding framework, and will enable rapid data driven site development using both ASP.NET WebForms and ASP.NET MVC. &lt;/li&gt;&lt;/font&gt;
&lt;/ul&gt;
&lt;font face="arial" size="2"&gt;&lt;/font&gt;
&lt;ul&gt;
	&lt;font face="arial" size="2"&gt;
	&lt;li&gt;&lt;u&gt;ASP.NET Silverlight Support&lt;/u&gt;: With the ASP.NET 3.5 Extensions release we&amp;#39;ll deliver support for easily integrating Silverlight within your ASP.NET applications.&amp;nbsp; Included will be new controls that make it easy to integrate Silverlight video/media and interactive content within your sites. &lt;/li&gt;&lt;/font&gt;
&lt;/ul&gt;
&lt;font face="arial" size="2"&gt;&lt;/font&gt;
&lt;ul&gt;
	&lt;font face="arial" size="2"&gt;
	&lt;li&gt;&lt;u&gt;ADO.NET Data Services&lt;/u&gt;: In parallel with the ASP.NET Extensions release we will also be releasing the ADO.NET Entity Framework.&amp;nbsp; This provides a modeling framework that enables developers to define a conceptual model of a database schema that closely aligns to a real world view of the information.&amp;nbsp; We will also be shipping a new set of data services (codename &amp;quot;Astoria&amp;quot;) that make it easy to expose REST based API endpoints from within your ASP.NET applications. &lt;/li&gt;&lt;/font&gt;
&lt;/ul&gt;
&lt;p&gt;
Descarga el&lt;a href="http://asp.net/downloads/3.5-extensions/"&gt; CTP de ASP.NET 3.5 Extensions Ac&amp;aacute;.&lt;/a&gt; 
&lt;/p&gt;
&lt;p&gt;
Para tener a la mano la informaci&amp;oacute;n que el mismo Scott ha publicado: 
&lt;/p&gt;
&lt;ul&gt;
	&lt;font face="arial" size="2"&gt;
	&lt;li&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/10/14/asp-net-mvc-framework.aspx" target="_blank"&gt;ASP.NET MVC Framework (Part 0): What is it?&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/11/13/asp-net-mvc-framework-part-1.aspx" target="_blank"&gt;ASP.NET MVC Framework (Part 1): Building an MVC Application&lt;/a&gt;&amp;nbsp; &lt;/li&gt;
	&lt;li&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/12/03/asp-net-mvc-framework-part-2-url-routing.aspx" target="_blank"&gt;ASP.NET MVC Framework (Part 2): URL Routing&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/12/06/asp-net-mvc-framework-part-3-passing-viewdata-from-controllers-to-views.aspx" target="_blank"&gt;ASP.NET MVC Framework (Part 3): Passing ViewData from Controllers to Views&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/12/09/asp-net-mvc-framework-part-4-handling-form-edit-and-post-scenarios.aspx" target="_blank"&gt;ASP.NET MVC Framework (Part 4): Handling Form Edit and Post Scenarios&lt;/a&gt; &lt;/li&gt;
	&lt;li&gt;&lt;a href="http://www.hanselman.com/blog/ASPNET35ExtensionsPlusMVCHowToScreencast.aspx" target="_blank"&gt;Scott Hanselman&amp;#39;s ASP.NET MVC First Look Screencast&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://haacked.com/archive/2007/12/07/tdd-and-dependency-injection-with-asp.net-mvc.aspx" target="_blank"&gt;TDD and Dependency Injection with the ASP.NET MVC Framework&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://haacked.com/archive/2007/12/09/writing-unit-tests-for-controller-actions.aspx" target="_blank"&gt;Writing Unit Tests for Controller Actions&lt;/a&gt;&lt;/li&gt;&lt;/font&gt;
&lt;/ul&gt;
Mucho que aprender estos d&amp;iacute;as as&amp;iacute; que .. Happy Coding!&lt;br /&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=NX8xtM"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=NX8xtM" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=xS5tUMC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=xS5tUMC" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=kCqyKcc"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=kCqyKcc" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=8p7e3PC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=8p7e3PC" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=GjQjBRc"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=GjQjBRc" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=ovc8pgC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=ovc8pgC" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/198070658" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/198070658/post.aspx</link>
      <author>Javier</author>
      <comments>http://www.mordorblog.com/post/2007/12/ASPNET-35-Extensions-CTP-Preview.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=9086196b-e2c2-41a8-a91b-9a1422c6a140</guid>
      <pubDate>Mon, 10 Dec 2007 08:58:00 -0500</pubDate>
      <category>C#</category>
      <category>ASP.NET</category>
      <category>Project Management</category>
      <category>AJAX</category>
      <category>.NET</category>
      <category>Visual Studio</category>
      <dc:publisher>Javier</dc:publisher>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=9086196b-e2c2-41a8-a91b-9a1422c6a140</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=9086196b-e2c2-41a8-a91b-9a1422c6a140</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2007/12/ASPNET-35-Extensions-CTP-Preview.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=9086196b-e2c2-41a8-a91b-9a1422c6a140</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=9086196b-e2c2-41a8-a91b-9a1422c6a140</feedburner:origLink></item>
    <item>
      <title>VIDEO: Lambda Expression. Para qué son buenos... por qué utilizarlos.</title>
      <description>&lt;p&gt;
Ya est&amp;aacute; &lt;a href="http://msdn.microsoft.com/vstudio/"&gt;Visual Studio&lt;/a&gt; con nosotros, y estoy m&amp;aacute;s que seguro que est&amp;aacute;s a punto de dar el salto al uso de &lt;a href="http://msdn2.microsoft.com/netframework/aa904594.aspx"&gt;LINQ&lt;/a&gt;. Antes de eso ser&amp;iacute;a necesario entender qu&amp;eacute; es una &lt;strong&gt;Lambda Expression&lt;/strong&gt; y c&amp;oacute;mo usarla. 
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://youtube.com/watch?v=yzEnCOKQGsY"&gt;Este video de DavidmBush que encontr&amp;eacute; en YouTube&amp;nbsp; &lt;/a&gt;define de manera bastante pr&amp;aacute;ctica y simple tanto la conceptualizaci&amp;oacute;n como su uso.&amp;nbsp;
&lt;/p&gt;
&lt;div&gt;
&lt;div&gt;
&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" width="425" height="373"&gt;
	&lt;param name="height" value="373" /&gt;
	&lt;param name="width" value="425" /&gt;
	&lt;param name="wmode" value="transparent" /&gt;
	&lt;param name="src" value="http://www.youtube.com/v/yzEnCOKQGsY&amp;amp;rel=1&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;border=1" /&gt;
	&lt;embed type="application/x-shockwave-flash" height="373" width="425" wmode="transparent" src="http://www.youtube.com/v/yzEnCOKQGsY&amp;amp;rel=1&amp;amp;color1=0x2b405b&amp;amp;color2=0x6b8ab6&amp;amp;border=1"&gt;&lt;/embed&gt;
&lt;/object&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;
&amp;nbsp;Algunas precisiones que luego de ver el video puedo puntualizar: 
&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;La afirmaci&amp;oacute;n de que las &lt;strong&gt;Expresiones Lambda &lt;/strong&gt;y&lt;strong&gt; m&amp;eacute;todos an&amp;oacute;nimos&lt;/strong&gt; hacen tu c&amp;oacute;digo dificil de leer y mantener es realmente inadecuada. Yo soy de la idea de que mientras menos c&amp;oacute;digo escribes siempre es mas facil realizar cualquier labor despu&amp;eacute;s.&lt;/li&gt;
	&lt;li&gt;El verdadero USO y APROVECHAMIENTO de estas caracter&amp;iacute;sticas est&amp;aacute; en C#. La definici&amp;oacute;n y uso que VB.NET hace de las expresiones lambda realmente me decepciona.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
Si quieres revisar algo m&amp;aacute;s sobre esto:
&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2007/04/08/new-orcas-language-feature-lambda-expressions.aspx"&gt;
	New &amp;quot;Orcas&amp;quot; Language Feature: Lambda Expressions &lt;/a&gt;v&amp;iacute;a ScottGu.&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://msdn.microsoft.com/msdnmag/issues/04/05/C20/"&gt;Create Elegant Code with Anonymous Methods, Iterators, and Partial Classes&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://weblogs.asp.net/dwahlin/archive/2007/04/23/The-Power-of-Anonymous-Methods-in-C_2300_.aspx"&gt;
	The Power of Anonymous Methods in C#&lt;/a&gt; via Dan Wahlin&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://www.theserverside.net/tt/articles/showarticle.tss?id=AnonymousMethods"&gt;Introduction to C# Anonymous Methods&lt;/a&gt; v&amp;iacute;a Patric Smacchia.&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://www.developer.com/net/csharp/article.php/3598381"&gt;The New Lambda Expressions Feature in C# 3.0&lt;/a&gt; via developer.com&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=wwfyfa"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=wwfyfa" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=M0tRnoC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=M0tRnoC" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=C2zfNvc"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=C2zfNvc" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=oOP3jVC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=oOP3jVC" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=Epu4Rbc"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=Epu4Rbc" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=NCkRQOC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=NCkRQOC" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/196391295" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/196391295/post.aspx</link>
      <author>Javier</author>
      <comments>http://www.mordorblog.com/post/2007/12/VIDEO-Lambda-Expression-Para-que-son-buenos-por-que-utilizarlos.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=f98a6ed6-bf30-4a48-952d-02f4cbcd8805</guid>
      <pubDate>Thu, 06 Dec 2007 20:15:00 -0500</pubDate>
      <category>C#</category>
      <category>.NET</category>
      <category>Visual Studio</category>
      <dc:publisher>Javier</dc:publisher>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=f98a6ed6-bf30-4a48-952d-02f4cbcd8805</pingback:target>
      <slash:comments>1</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=f98a6ed6-bf30-4a48-952d-02f4cbcd8805</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2007/12/VIDEO-Lambda-Expression-Para-que-son-buenos-por-que-utilizarlos.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=f98a6ed6-bf30-4a48-952d-02f4cbcd8805</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=f98a6ed6-bf30-4a48-952d-02f4cbcd8805</feedburner:origLink></item>
    <item>
      <title>Guerra Open-Source: terrorismo y software libre</title>
      <description>&lt;p&gt;
&lt;a href="http://www.spectrum.ieee.org/nov07/5668"&gt;&lt;img src="http://www.mordorblog.com/image.axd?picture=opensource_communism_s.jpg" border="0" alt="Open source communism" title="Open source communism" hspace="5" vspace="5" align="left" /&gt;&lt;/a&gt;
Sin palabras... 
&lt;/p&gt;
&lt;p&gt;
L&amp;eacute;an el art&amp;iacute;culo original y opinen....
&lt;/p&gt;
&lt;h3&gt;&lt;a href="http://www.spectrum.ieee.org/nov07/5668"&gt;Open Source Warfare&lt;/a&gt; en&amp;nbsp;
IEEE Spectrum Online&lt;br /&gt;
&lt;/h3&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
V&amp;iacute;a &lt;a href="http://geeks.ms/blogs/jalarcon/archive/2007/12/06/guerra-open-source-terrorismo-y-software-libre-161-que-fuerrrrte.aspx"&gt;Geeks.ms&amp;nbsp;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=7VDXmk"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=7VDXmk" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=hY8PuEC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=hY8PuEC" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=srrcKac"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=srrcKac" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=crA9klC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=crA9klC" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=dM10ABc"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=dM10ABc" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=pbhZyTC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=pbhZyTC" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/196267693" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/196267693/post.aspx</link>
      <author>Javier</author>
      <comments>http://www.mordorblog.com/post/2007/12/Guerra-Open-Source-terrorismo-y-software-libre.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=647eaa4e-ca0a-4d4b-b619-c152d69be36a</guid>
      <pubDate>Thu, 06 Dec 2007 15:06:00 -0500</pubDate>
      <category>Blogging </category>
      <category>General</category>
      <category>Metodologia</category>
      <dc:publisher>Javier</dc:publisher>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=647eaa4e-ca0a-4d4b-b619-c152d69be36a</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=647eaa4e-ca0a-4d4b-b619-c152d69be36a</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2007/12/Guerra-Open-Source-terrorismo-y-software-libre.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=647eaa4e-ca0a-4d4b-b619-c152d69be36a</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=647eaa4e-ca0a-4d4b-b619-c152d69be36a</feedburner:origLink></item>
    <item>
      <title>Microsoft Live Labs: Volta, Web development using only the Materials in the Room</title>
      <description>&lt;p&gt;
&lt;a href="http://labs.live.com/volta/download/" target="_blank" title="Download Volta"&gt;&lt;img src="http://www.mordorblog.com/image.axd?picture=volta-hero.jpg" border="0" alt="" width="501" height="210" /&gt;&lt;/a&gt; 
&lt;/p&gt;
&lt;p&gt;
La tecnolog&amp;iacute;a &lt;a href="http://labs.live.com/volta/"&gt;&lt;strong&gt;Volta&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;&amp;nbsp;&lt;/strong&gt;(technology preview) es un set de herramientas para desarrolladores que permite construir aplicaciones web multi-capa, aplicando t&amp;eacute;cnicas familiars y patrones. Suena bastante interesante... demasiado interesante dir&amp;iacute;a yo!. 
&lt;/p&gt;
&lt;p&gt;
Seg&amp;uacute;n textualmente indica el sitio oficial: 
&lt;/p&gt;
&lt;blockquote&gt;
	&lt;p&gt;
	First, design and build your application as a .NET client application, then assign the portions of the application to run on the server and the client tiers late in the development process. The compiler creates cross-browser JavaScript for the client tier, web services for the server tier, and communication, serialization, synchronization, security, and other boilerplate code to tie the tiers together. 
	&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;
En teor&amp;iacute;a los desarrolladores podr&amp;iacute;amos utilizar ya sea web browser o el CLR como clientes y Volta manejar&amp;iacute;a la complejidad del manejo de capas (tier-splitting). Volta comprende herramientas para ejecutar tareas de&amp;nbsp;profiling a&amp;nbsp;todo nivel&amp;nbsp;con la finalidad de realizar refactoring a nivel de arquitectura y optimizaciones de forma simple y r&amp;aacute;pida. 
&lt;/p&gt;
&lt;p&gt;
Me he &lt;a href="http://labs.live.com/volta/download/"&gt;bajado el technology preview&lt;/a&gt; y te anticipo los requerimientos: 
&lt;/p&gt;
&lt;blockquote&gt;
	&lt;p&gt;
	&lt;strong&gt;Design Time Requirements:&lt;/strong&gt; 
	&lt;/p&gt;
	&lt;ul&gt;
		&lt;li&gt;Visual Studio 2008 (Beta 2 [20706.1] or RTM [21022.8]) with .NET Framework 3.5, and &lt;/li&gt;
		&lt;li&gt;A web browser (Internet Explorer 6+ or Firefox 2) for integrated debugging&lt;/li&gt;
	&lt;/ul&gt;
	&lt;p&gt;
	&lt;strong&gt;Client Run Time Requirements:&lt;/strong&gt; 
	&lt;/p&gt;
	&lt;p&gt;
	Volta applications can be compiled target either the full .NET framework runtime version 3.5 or standards-conformant web browsers with JavaScript support. 
	&lt;/p&gt;
	&lt;p&gt;
	&lt;strong&gt;Server Run Time Requirements (Remote Deployment):&lt;/strong&gt; 
	&lt;/p&gt;
	&lt;p&gt;
	On the server tier Volta applications require version 3.5 of the Microsoft .NET framework, Internet Information Services (IIS) version 6 or 7, and ASP.NET. 
	&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h3&gt;Samples&lt;/h3&gt;
&lt;p&gt;
Qu&amp;eacute; ser&amp;iacute;a de la menci&amp;oacute;n a este projecto sin algo de ejemplos, aqu&amp;iacute; los ubico:&amp;nbsp; 
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.mordorblog.com/image.axd?picture=word_worm.png" alt="" hspace="6" vspace="6" width="149" height="107" align="left" /&gt;&lt;a href="http://labs.live.com/volta/samples/WordWorm.html"&gt;&lt;strong&gt;Word Worm&lt;/strong&gt;&lt;/a&gt; 
&lt;/p&gt;
&lt;p&gt;
Una aplicaci&amp;oacute;n de B&amp;uacute;squeda de palabras en Ingl&amp;eacute;s con mecanismo de sugerencias... Realmente sorprendedor... 
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.mordorblog.com/image.axd?picture=ve_sdk.png" alt="" hspace="6" vspace="6" width="149" height="107" align="left" /&gt; 
&lt;/p&gt;
&lt;p&gt;
&lt;span class="videotextmargin"&gt;&lt;a href="http://labs.live.com/volta/samples/VE_Samples.html" target="_blank" class="blueText11"&gt;&lt;strong&gt;Virtual Earth SDK - Volta Style&lt;/strong&gt;&lt;/a&gt;&lt;/span&gt; 
&lt;/p&gt;
&lt;p&gt;
Un subset del actual SDK de Virtual, a diferencia del original, este utiliza Volta, de manera que todo el c&amp;oacute;digo es C#. 
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;h3&gt;Descarga.&lt;/h3&gt;
&lt;p&gt;
Yo no esperar&amp;iacute;a demasiado...&amp;nbsp;siempre es bueno aprender: 
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;&lt;a href="http://labs.live.com/volta/download/"&gt;http://labs.live.com/volta/download/&lt;/a&gt; 
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=6toBdD"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=6toBdD" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=5OpauUC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=5OpauUC" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=xnOjQ0c"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=xnOjQ0c" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=bVAdgyC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=bVAdgyC" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=Pcd54lc"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=Pcd54lc" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=p1OJkKC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=p1OJkKC" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/195813918" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/195813918/post.aspx</link>
      <author>Javier</author>
      <comments>http://www.mordorblog.com/post/2007/12/Microsoft-Live-Labs-Volta,-Web-development-using-only-the-Materials-in-the-Room.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=6c4dad59-99f9-4084-b44a-660f2e175adf</guid>
      <pubDate>Wed, 05 Dec 2007 19:08:00 -0500</pubDate>
      <category>C#</category>
      <category>ASP.NET</category>
      <category>AJAX</category>
      <category>General</category>
      <category>.NET</category>
      <category>Metodologia</category>
      <category>Visual Studio</category>
      <dc:publisher>Javier</dc:publisher>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=6c4dad59-99f9-4084-b44a-660f2e175adf</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=6c4dad59-99f9-4084-b44a-660f2e175adf</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2007/12/Microsoft-Live-Labs-Volta,-Web-development-using-only-the-Materials-in-the-Room.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=6c4dad59-99f9-4084-b44a-660f2e175adf</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=6c4dad59-99f9-4084-b44a-660f2e175adf</feedburner:origLink></item>
    <item>
      <title>9 Principios Éticos en CSS que todo diseñador Web debería seguir</title>
      <description>&lt;p&gt;
Una de las labores que siempre tengo que hacer en mi trabajo diario, es maquetar templates en CSS o validar algunas que hayan sido hechas por parte de mi equipo. Y a veces la respuesta que obtengo cuando encuentro algo que &amp;quot;parece&amp;quot; estar mal implementado o por lo menos no en la forma m&amp;aacute;s &amp;oacute;ptima es que no existen reglas para hacerlo. 
&lt;/p&gt;
&lt;p&gt;
Pues creo yo que hacer las cosas por el lado correcto no es tan dificil como parece. Simplemente hay que tener sentido com&amp;uacute;n y mucho orden. Lo cual deber&amp;iacute;a ser b&amp;aacute;sico en nuestra vida como desarrolladores. 
&lt;/p&gt;
&lt;p&gt;
Pues me encontrado un art&amp;iacute;culo muy interesante en &lt;a href="http://www.noupe.com/how-tos/9-css-ethics-every-designer-should-have.html"&gt;Noupe.com&lt;/a&gt; que indica de forma muy concisa algunos principios sobre el uso de CSS que me parecen b&amp;aacute;sicos y sobre todo lo suficientemente&amp;nbsp;&amp;uacute;tiles como&amp;nbsp;para hacer referencia y compartirlos: 
&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;Indentar reglas heredadas y relacionadas. &lt;/li&gt;
	&lt;li&gt;Agrupar y comentar las declaraciones de estilo. &lt;/li&gt;
	&lt;li&gt;Mantener el estilo en una sola l&amp;iacute;nea. &lt;/li&gt;
	&lt;li&gt;Dividir el Estilo (CSS)&amp;nbsp; en algunas hojas (archivos). &lt;/li&gt;
	&lt;li&gt;Reset elementos. &lt;/li&gt;
	&lt;li&gt;Colocar un esquema de color para referencia. &lt;/li&gt;
	&lt;li&gt;Utilizar nombres &amp;quot;realmente significativos&amp;quot; para el sistema. &lt;/li&gt;
	&lt;li&gt;Ordenar alfab&amp;eacute;ticamente las propiedades de una regla CSS. &lt;/li&gt;
	&lt;li&gt;Mantener una librer&amp;iacute;a de Clases CSS realmente &amp;uacute;tiles. &lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;
Aqu&amp;iacute; deber&amp;iacute;a agregarse el &lt;strong&gt;&lt;em&gt;&amp;quot;Mantener lo m&amp;aacute;s Simple Posible&amp;quot;&lt;/em&gt;&lt;/strong&gt; ya que mientras m&amp;aacute;s simple, ser&amp;aacute; m&amp;aacute;s f&amp;aacute;cil de mantener y sobre todo m&amp;aacute;s facil de encontrar problemas y/o errores. 
&lt;/p&gt;
&lt;p&gt;
No quise traducir todo el art&amp;iacute;culo para que ustedes mejor lo visiten: 
&lt;/p&gt;
&lt;p&gt;
&lt;a href="http://www.noupe.com/how-tos/9-css-ethics-every-designer-should-have.html" title="9 CSS Ethics Every Designer Should Have"&gt;9 CSS Ethics Every Designer Should Have (V&amp;iacute;a Noupe)&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=kTdrBs"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=kTdrBs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=V98Md0C"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=V98Md0C" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=xHu4pZc"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=xHu4pZc" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=QXqHqUC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=QXqHqUC" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=WCRr9Hc"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=WCRr9Hc" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=uzTwgKC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=uzTwgKC" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/195813919" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/195813919/post.aspx</link>
      <author>Javier</author>
      <comments>http://www.mordorblog.com/post/2007/12/9-Principios-Eticos-en-CSS-que-todo-disenador-Web-deberia-seguir.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=6d604ee7-ed6c-4e02-9d08-c46da00eaf06</guid>
      <pubDate>Tue, 04 Dec 2007 18:03:00 -0500</pubDate>
      <category>Blogging </category>
      <category>ASP.NET</category>
      <category>General</category>
      <category>Metodologia</category>
      <dc:publisher>Javier</dc:publisher>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=6d604ee7-ed6c-4e02-9d08-c46da00eaf06</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=6d604ee7-ed6c-4e02-9d08-c46da00eaf06</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2007/12/9-Principios-Eticos-en-CSS-que-todo-disenador-Web-deberia-seguir.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=6d604ee7-ed6c-4e02-9d08-c46da00eaf06</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=6d604ee7-ed6c-4e02-9d08-c46da00eaf06</feedburner:origLink></item>
    <item>
      <title>Acelera Programando con Regionerate, GhostDoc y Refactoring de Visual Studio</title>
      <description>&lt;p&gt;
El poder realizar tareas repetitivas de forma realmente &amp;quot;&amp;aacute;gil&amp;quot; en el d&amp;iacute;a a d&amp;iacute;a podr&amp;iacute;a resultar una tarea marat&amp;oacute;nica. Conocemos lo importante que es el orden dentro del c&amp;oacute;digo de tu aplicaci&amp;oacute;n, orden determinado por la documentaci&amp;oacute;n, utilizaci&amp;oacute;n de mejores pr&amp;aacute;cticas o est&amp;aacute;ndares, etc.
&lt;/p&gt;
&lt;p&gt;
Pues all&amp;iacute;, en esas situaciones la utilizaci&amp;oacute;n de herramientas que nos brinden utilidad &amp;quot;real&amp;quot; se vuelve imprescindible. Y mucho m&amp;aacute;s si dichas herramientas son gratuitas.
&lt;/p&gt;
&lt;p&gt;
En esta ocasi&amp;oacute;n me gustar&amp;iacute;a citar dos: &lt;a href="http://www.roland-weigelt.de/ghostdoc/"&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;&lt;a href="http://www.roland-weigelt.de/ghostdoc/"&gt;GhostDoc&lt;/a&gt;&lt;/strong&gt; (por Roland Weigelt): Un Add-in gratuito para Visual Studio que genera autom&amp;aacute;ticamente comentarios XML para documentaci&amp;oacute;n en C#. Realmente &amp;uacute;til lo utilizo todos los d&amp;iacute;as.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;&lt;a href="http://www.rauchy.net/regionerate/"&gt;Regionerate&lt;/a&gt;&lt;/strong&gt;: Herramienta que nos permite autom&amp;aacute;ticamente aplicar reglas de &amp;quot;layout&amp;quot; sobre el c&amp;oacute;digo C#.
&lt;/p&gt;
&lt;p&gt;
Dentro de tu equipo de desarrollo se pueden plantear las &amp;quot;normas&amp;quot; de codificaci&amp;oacute;n, de manejo de estructura, pero sin herramientas que permitan aliviar el trabajo de seguir estas normas, todo resultar&amp;iacute;a in&amp;uacute;til. Lo s&amp;eacute;, hemos sufrido mucho de eso en mi equipo.
&lt;/p&gt;
&lt;p&gt;
Pues les dejo un &lt;a href="http://www.rauchy.net/regionerate/2007/11/speed-coding-with-regionerate-ghostdoc.html"&gt;video realmente impactante sobre el uso de GhostDoc junto con Regionerate&lt;/a&gt; y las caracter&amp;iacute;sticas de &lt;a href="http://msdn2.microsoft.com/en-us/library/ms379618(vs.80).aspx"&gt;Refactoring de Visual Studio&lt;/a&gt;, Puede ser que existan otras herramientas que ya hagan eso.. pero.. &lt;u&gt;esta es gratuita!.&lt;/u&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Mira el video ac&amp;aacute;:&lt;/strong&gt;
&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://www.rauchy.net/regionerate/2007/11/speed-coding-with-regionerate-ghostdoc.html"&gt;Speed Coding with Regionerate &amp;amp; GhostDoc&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Enlaces para descargas (Download):&lt;/strong&gt;
&lt;/p&gt;
&lt;ul&gt;
	&lt;li&gt;&lt;a href="http://www.rauchy.net/regionerate/2007/05/download.html"&gt;&lt;strong&gt;Regionerate&lt;/strong&gt; Download (last stable version - recommended)&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://www.roland-weigelt.de/ghostdoc/download05.php?version=2.1.2for2005"&gt;&lt;strong&gt;GhostDoc Version 2.1.2&lt;/strong&gt; for Visual Studio 2005&lt;/a&gt;&lt;br /&gt;
	para C#, soporte para Vb.net es &amp;quot;experimental&amp;quot;(?)&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://www.roland-weigelt.de/ghostdoc/download08.php?version=2.1.2for2008"&gt;&lt;strong&gt;GhostDoc Version 
	2.1.2&lt;/strong&gt; for Visual Studio 2008&lt;br /&gt;
	&lt;/a&gt;For C#, support for VB.Net is &amp;quot;experimental&amp;quot;&lt;/li&gt;
	&lt;li&gt;&lt;a href="http://www.roland-weigelt.de/ghostdoc/download03.php?version=1.3.0"&gt;&lt;strong&gt;GhostDoc Version 1.3.0&lt;/strong&gt; for Visual Studio .NET 2003&lt;br /&gt;
	&lt;/a&gt;WinXP, Win2k3, Support for C# only&lt;br /&gt;
	&lt;br /&gt;
	&lt;/li&gt;
&lt;/ul&gt;
&lt;div align="center"&gt;
&lt;script type="text/javascript"&gt;
&lt;!--
amazon_ad_tag = "mordorblog-20";  amazon_ad_width = "468";  amazon_ad_height = "60";  amazon_ad_logo = "hide";  amazon_ad_price = "retail";  amazon_color_border = "F19606";  amazon_color_link = "0655A3";  amazon_color_logo = "FFFFFF";//--&gt;&lt;/script&gt;
&lt;script src="http://www.assoc-amazon.com/s/ads.js" type="text/javascript"&gt;
&lt;/script&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://feeds.javier-romero.com/~a/JavierRomero?a=7TQktZ"&gt;&lt;img src="http://feeds.javier-romero.com/~a/JavierRomero?i=7TQktZ" border="0"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=P3I5CqC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=P3I5CqC" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=llMT8Dc"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=llMT8Dc" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=91AGxXC"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=91AGxXC" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=RMZamBc"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=RMZamBc" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.javier-romero.com/~f/JavierRomero?a=J7miS5C"&gt;&lt;img src="http://feeds.javier-romero.com/~f/JavierRomero?i=J7miS5C" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.javier-romero.com/~r/JavierRomero/~4/195813920" height="1" width="1"/&gt;</description>
      <link>http://feeds.javier-romero.com/~r/JavierRomero/~3/195813920/post.aspx</link>
      <author>Javier</author>
      <comments>http://www.mordorblog.com/post/2007/11/Regionerate-GhostDoc-Refactoring-Visual-Studio.aspx#comment</comments>
      <guid isPermaLink="false">http://www.mordorblog.com/post.aspx?id=ed663487-3179-4a02-84f1-f0d7183b7569</guid>
      <pubDate>Fri, 30 Nov 2007 08:47:00 -0500</pubDate>
      <category>C#</category>
      <category>ASP.NET</category>
      <category>.NET</category>
      <category>Metodologia</category>
      <category>Visual Studio</category>
      <dc:publisher>Javier</dc:publisher>
      <dc:description>El poder realizar tareas repetitivas de forma realmente "ágil" en el día a día podría resultar una tarea maratónica. Conocemos lo importante que es el orden dentro del código de tu aplicación, orden determinado por la documentación, utilización de mejores prácticas o estándares, etc.</dc:description>
      <pingback:server>http://www.mordorblog.com/pingback.axd</pingback:server>
      <pingback:target>http://www.mordorblog.com/post.aspx?id=ed663487-3179-4a02-84f1-f0d7183b7569</pingback:target>
      <slash:comments>0</slash:comments>
      <trackback:ping>http://www.mordorblog.com/trackback.axd?id=ed663487-3179-4a02-84f1-f0d7183b7569</trackback:ping>
      <wfw:comment>http://www.mordorblog.com/post/2007/11/Regionerate-GhostDoc-Refactoring-Visual-Studio.aspx#comment</wfw:comment>
      <wfw:commentRss>http://www.mordorblog.com/syndication.axd?post=ed663487-3179-4a02-84f1-f0d7183b7569</wfw:commentRss>
    <feedburner:origLink>http://www.mordorblog.com/post.aspx?id=ed663487-3179-4a02-84f1-f0d7183b7569</feedburner:origLink></item>
  <lastBuildDate>Thu, 01 May 2008 00:00:00 -0500</lastBuildDate></channel>
</rss>
