<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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:dc="http://purl.org/dc/elements/1.1/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" version="2.0">
  <channel>
    <title>JASoft.org</title>
    <link>http://www.jasoft.org/blog/</link>
    <description>El blog de José Manuel Alarcón Aguín. Programación .NET y mucho más...</description>
    <image>
      <url>http://www.jasoft.org/JASoft.gif</url>
      <title>JASoft.org</title>
      <link>http://www.jasoft.org/blog/</link>
    </image>
    <language>es-es</language>
    <copyright>José Manuel Alarcón Aguín</copyright>
    <lastBuildDate>Tue, 09 Mar 2010 09:04:01 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 1.9.7174.0</generator>
    <managingEditor>jmalarcon_QUITAESTO@jasoft.org</managingEditor>
    <webMaster>jmalarcon_QUITAESTO@jasoft.org</webMaster>
    <item>
      <trackback:ping>http://www.jasoft.org/blog/Trackback.aspx?guid=ca1df326-a4b8-44ef-b334-c2ffc1487836</trackback:ping>
      <pingback:server>http://www.jasoft.org/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.jasoft.org/blog/PermaLink,guid,ca1df326-a4b8-44ef-b334-c2ffc1487836.aspx</pingback:target>
      <dc:creator>José Manuel Alarcon</dc:creator>
      <wfw:comment>http://www.jasoft.org/blog/CommentView,guid,ca1df326-a4b8-44ef-b334-c2ffc1487836.aspx</wfw:comment>
      <wfw:commentRss>http://www.jasoft.org/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=ca1df326-a4b8-44ef-b334-c2ffc1487836</wfw:commentRss>
      <title>Libro de email marketing gratuito: "49 formas de dar en el blanco"</title>
      <guid isPermaLink="false">http://www.jasoft.org/blog/PermaLink,guid,ca1df326-a4b8-44ef-b334-c2ffc1487836.aspx</guid>
      <link>http://www.jasoft.org/blog/PermaLink,guid,ca1df326-a4b8-44ef-b334-c2ffc1487836.aspx</link>
      <pubDate>Tue, 09 Mar 2010 09:04:01 GMT</pubDate>
      <description>&lt;p align=justify&gt;
&lt;img border=2 hspace=10 align=right src="http://www.jasoft.org/blog/content/binary/libro-ome2.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
La semana pasada estuvimos en OMExpo, la feria de marketing on-line más importante
de España, y a todos los que nos visitaron en el Stand les regalamos un ejemplar de
nuestro libro &lt;strong&gt;"The emailing experience: 49 formas de dar en el blanco"&lt;/strong&gt;.
Fué un tremendo éxito y nos agotaron toda la primera edición :-)
&lt;/p&gt;
&lt;p align=justify&gt;
El libro recopila 49 consejos para hacer bien marketing a través de correo electrónico:
desde cuestiones básicas como qué es y para qué sirve, hasta otras avanzadas como
la entregabilidad. Los autores somos &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=ca1df326-a4b8-44ef-b334-c2ffc1487836&amp;amp;url=http%3a%2f%2ftwitter.com%2fmariacapon"" target=_blank&gt;María
Capón&lt;/a&gt;, &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=ca1df326-a4b8-44ef-b334-c2ffc1487836&amp;amp;url=http%3a%2f%2ftwitter.com%2fpiglesias"" target=_blank&gt;Pablo
Iglesias&lt;/a&gt; y &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=ca1df326-a4b8-44ef-b334-c2ffc1487836&amp;amp;url=http%3a%2f%2ftwitter.com%2fjm_alarcon"" target=_blank&gt;José
Manuel Alarcón&lt;/a&gt;.
&lt;/p&gt;
&lt;p align=justify&gt;
Hace unos días sacamos el libro también en &lt;strong&gt;formato electrónico&lt;/strong&gt; para
que puedas descargarlo gratuitamente si no tuviste la oportunidad de obtenerlo en
papel.
&lt;/p&gt;
&lt;p align=justify&gt;
Lo tienes disponible para &lt;strong&gt;lectura on-line&lt;/strong&gt; directamente en Scribd,
para &lt;strong&gt;descarga en PDF&lt;/strong&gt; y también para descarga en los &lt;strong&gt;principales
eBooks&lt;/strong&gt; del mercado en los formatos &lt;strong&gt;.epub y .mobi&lt;/strong&gt;.
&lt;/p&gt;
&lt;p align=justify&gt;
Para descargarlo visita &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=ca1df326-a4b8-44ef-b334-c2ffc1487836&amp;amp;url=http%3a%2f%2fwww.krasis.com%2fmailcast%2f%3fRef%3dJASoft"" target=_blank&gt;nuestra
página de MAILCast&lt;/a&gt;.
&lt;/p&gt;
&lt;p align=justify&gt;
¡Espero que te guste!
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.jasoft.org/blog/aggbug.ashx?id=ca1df326-a4b8-44ef-b334-c2ffc1487836" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
&lt;a href="http://www.jasoft.org"&gt;JASoft.org&lt;/a&gt;: El Blog de Jose Alarcón. Programación
.NET y mucho más.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;S&amp;iacute;gueme en:&lt;/b&gt; &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/jm_alarcon"&gt;Twitter
JM Alarc&amp;oacute;n&lt;/a&gt; | &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/campusMVP"&gt;Twitter
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/facebook.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.facebook.com/campusMVP"&gt;Facebook
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/email.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.campusmvp.com/CampusMVP/Bolet%EDn.htm"&gt;Bolet&amp;iacute;n
campusMVP&lt;/a&gt;</description>
      <comments>http://www.jasoft.org/blog/CommentView,guid,ca1df326-a4b8-44ef-b334-c2ffc1487836.aspx</comments>
      <category>Eventos</category>
    </item>
    <item>
      <trackback:ping>http://www.jasoft.org/blog/Trackback.aspx?guid=537988ed-c28b-41be-bff6-fd6163308565</trackback:ping>
      <pingback:server>http://www.jasoft.org/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.jasoft.org/blog/PermaLink,guid,537988ed-c28b-41be-bff6-fd6163308565.aspx</pingback:target>
      <dc:creator>José Manuel Alarcon</dc:creator>
      <wfw:comment>http://www.jasoft.org/blog/CommentView,guid,537988ed-c28b-41be-bff6-fd6163308565.aspx</wfw:comment>
      <wfw:commentRss>http://www.jasoft.org/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=537988ed-c28b-41be-bff6-fd6163308565</wfw:commentRss>
      <title>Próximo lunes doy una charla on-line sobre ASP.NET Dynamic Data en la UOC</title>
      <guid isPermaLink="false">http://www.jasoft.org/blog/PermaLink,guid,537988ed-c28b-41be-bff6-fd6163308565.aspx</guid>
      <link>http://www.jasoft.org/blog/PermaLink,guid,537988ed-c28b-41be-bff6-fd6163308565.aspx</link>
      <pubDate>Mon, 08 Mar 2010 16:39:19 GMT</pubDate>
      <description>&lt;p align=justify&gt;
&lt;img border=0 hspace=10 align=right src="http://www.jasoft.org/blog/content/binary/dynamic.jpg"&gt;El
próximo lunes día 15 de marzo de 2010, a las 19:30 hora española, voy a impartir una
charla técnica on-line para el DotnetClub de la UOC titulada &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=537988ed-c28b-41be-bff6-fd6163308565&amp;amp;url=http%3a%2f%2fmsevents.microsoft.com%2fCUI%2fWebCastEventDetails.aspx%3fEventID%3d1032439785%26EventCategory%3d4%26culture%3des-ES%26CountryCode%3dES"" target=_blank&gt;"Interfaces
de datos a la velocidad de la luz: ASP.NET Dynamic Data"&lt;/a&gt;.
&lt;/p&gt;
&lt;p align=justify&gt;
Es gratuita y on-line. Os resumo la charla a continuación:
&lt;/p&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir=ltr&gt; 
&lt;p align=justify&gt;
&lt;em&gt;"&lt;span style="FONT-SIZE: 10pt"&gt;&lt;span style="FONT-SIZE: 10pt"&gt;Uno de los trabajos
más aburridos de los programadores es la creación de interfaces de administración
básica de bases de datos. Se trata de los famosos "mantenimientos" que todos nos hemos
visto forzados a hacer. Aunque ASP.NET Web Forms nos proporciona fantásticos controles
para poder crear interfaces de manera rápida de forma declarativa, ¿no sería fantástico
poder automatizar todavía más la creación de estas páginas?. &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt"&gt;&lt;span style="FONT-SIZE: 10pt"&gt;Esto
es precisamente lo que nos ofrece ASP.NET Dynamic Data. Con esta tecnología podremos
crear interfaces a toda velocidad pero teniendo un control preciso de todo lo que
ocurre y pudiendo personalizarlas al máximo.&lt;/span&gt;&lt;/span&gt;"&lt;/em&gt;
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p align=justify&gt;
Si tienes interés en crear interfaces de acceso a datos para la Web a toda velocidad
seguro que te interesa. 
&lt;/p&gt;
&lt;p align=justify&gt;
Anótate en el enlace de arriba.
&lt;/p&gt;
&lt;p align=justify&gt;
Además, hoy por la tarde a las 19:30 estaré en Vigo, en la Casa del Libro, hablando
de marketing, en concreto de &lt;em&gt;Branding&amp;nbsp;&lt;/em&gt;y el libro "En Clave de Marcas".
Otro tema completamente diferente, pero si estás por la zona y te interesa &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=537988ed-c28b-41be-bff6-fd6163308565&amp;amp;url=http%3a%2f%2fwww.amiando.com%2ftmrc_vigo_1mar.html%3fpage%3d372797"" target=_blank&gt;pásate
por allí&lt;/a&gt;.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.jasoft.org/blog/aggbug.ashx?id=537988ed-c28b-41be-bff6-fd6163308565" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
&lt;a href="http://www.jasoft.org"&gt;JASoft.org&lt;/a&gt;: El Blog de Jose Alarcón. Programación
.NET y mucho más.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;S&amp;iacute;gueme en:&lt;/b&gt; &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/jm_alarcon"&gt;Twitter
JM Alarc&amp;oacute;n&lt;/a&gt; | &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/campusMVP"&gt;Twitter
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/facebook.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.facebook.com/campusMVP"&gt;Facebook
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/email.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.campusmvp.com/CampusMVP/Bolet%EDn.htm"&gt;Bolet&amp;iacute;n
campusMVP&lt;/a&gt;</description>
      <comments>http://www.jasoft.org/blog/CommentView,guid,537988ed-c28b-41be-bff6-fd6163308565.aspx</comments>
      <category>Eventos</category>
    </item>
    <item>
      <trackback:ping>http://www.jasoft.org/blog/Trackback.aspx?guid=b1fbddb6-f511-4941-83ee-f29c874f78dd</trackback:ping>
      <pingback:server>http://www.jasoft.org/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.jasoft.org/blog/PermaLink,guid,b1fbddb6-f511-4941-83ee-f29c874f78dd.aspx</pingback:target>
      <dc:creator>José Manuel Alarcon</dc:creator>
      <wfw:comment>http://www.jasoft.org/blog/CommentView,guid,b1fbddb6-f511-4941-83ee-f29c874f78dd.aspx</wfw:comment>
      <wfw:commentRss>http://www.jasoft.org/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=b1fbddb6-f511-4941-83ee-f29c874f78dd</wfw:commentRss>
      <title>Cómo librarte de Google Buzz</title>
      <guid isPermaLink="false">http://www.jasoft.org/blog/PermaLink,guid,b1fbddb6-f511-4941-83ee-f29c874f78dd.aspx</guid>
      <link>http://www.jasoft.org/blog/PermaLink,guid,b1fbddb6-f511-4941-83ee-f29c874f78dd.aspx</link>
      <pubDate>Tue, 23 Feb 2010 09:34:18 GMT</pubDate>
      <description>&lt;p align=justify&gt;
Por si teníamos ya pocas distracciones en este mundillo digital, ahora va Google y
nos saca una nueva, y además sin habérselo pedido siquiera: &lt;strong&gt;Google Buzz&lt;/strong&gt;.
Se supone que es un mix entre Twitter, Facebook, LinkedIn... y cualquier otra red
social que quieras. Te aparece en un lateral de GMail como una carpeta de correo más,
pero en realidad es un flujo de información constante&amp;nbsp;de chorradas dichas por
cualquiera. Por que esa es otra: es el propio Google el que, según su criterio, te
hace "amigo" en Buzz de otra gente, y viceversa. Vale, puedes cambiar tú de amigos
si quieres pero ¿quién lo ha hecho?
&lt;/p&gt;
&lt;p align=justify&gt;
Hasta hay un chiste con muy mala baba que circula por Internet que dice que Google
va a batir todos los records de ingresos en 2010: cobrará 20 dólares&amp;nbsp;a cada usuario
de GMail&amp;nbsp;para quitarle Buzz ;-)
&lt;/p&gt;
&lt;p align=justify&gt;
A mi me parece una cosa muy poco útil y con Twitter y Facebook ya tengo más que de
sobra. Además, esto es como el &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=b1fbddb6-f511-4941-83ee-f29c874f78dd&amp;amp;url=http%3a%2f%2fwww.theemailingexperience.com%2fES%2fPermaLink%2cguid%2c1ce45adf-c2b7-40ee-9e45-88738c3faff3.aspx"" target=_blank&gt;"double
opt-in vs opt-it"&lt;/a&gt;&amp;nbsp;en el email: que siempre debería pedirse una doble confirmación
para hacer estas cosas y no plantártela por narices. sí, lo sé, te preguntaba si querías
activarlo &lt;strong&gt;&lt;u&gt;cada vez que entrabas &lt;/u&gt;&lt;/strong&gt;en GMail. Un rollo.
&lt;/p&gt;
&lt;p align=justify&gt;
Total, que desactivarlo y deshacerte de él para siempre es muy fácil. Vas a "Ajustes"
y dentro de ahí a la pestaña "Buzz":
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/Buzz_1.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Una vez ahí puedes escoger simplemente no verlo, o bien &lt;strong&gt;pulsar el enlace rojo
y desactivarlo para siempre&lt;/strong&gt;. Al hacerlo te sale esta ventana de advertencia:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/Buzz_2.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
No te dejes amilanar por él: no te afectará para nada a tu cuenta de GMail, Google
reader o cualquier otro servicio de Google que uses, así que no te cortes y dile que
sí ;-)
&lt;/p&gt;
&lt;p align=justify&gt;
&amp;nbsp;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.jasoft.org/blog/aggbug.ashx?id=b1fbddb6-f511-4941-83ee-f29c874f78dd" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
&lt;a href="http://www.jasoft.org"&gt;JASoft.org&lt;/a&gt;: El Blog de Jose Alarcón. Programación
.NET y mucho más.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;S&amp;iacute;gueme en:&lt;/b&gt; &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/jm_alarcon"&gt;Twitter
JM Alarc&amp;oacute;n&lt;/a&gt; | &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/campusMVP"&gt;Twitter
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/facebook.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.facebook.com/campusMVP"&gt;Facebook
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/email.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.campusmvp.com/CampusMVP/Bolet%EDn.htm"&gt;Bolet&amp;iacute;n
campusMVP&lt;/a&gt;</description>
      <comments>http://www.jasoft.org/blog/CommentView,guid,b1fbddb6-f511-4941-83ee-f29c874f78dd.aspx</comments>
      <category>Mundo TIC</category>
    </item>
    <item>
      <trackback:ping>http://www.jasoft.org/blog/Trackback.aspx?guid=dba42c50-617b-4c73-ba87-a5df90298bcc</trackback:ping>
      <pingback:server>http://www.jasoft.org/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.jasoft.org/blog/PermaLink,guid,dba42c50-617b-4c73-ba87-a5df90298bcc.aspx</pingback:target>
      <dc:creator>José Manuel Alarcon</dc:creator>
      <wfw:comment>http://www.jasoft.org/blog/CommentView,guid,dba42c50-617b-4c73-ba87-a5df90298bcc.aspx</wfw:comment>
      <wfw:commentRss>http://www.jasoft.org/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=dba42c50-617b-4c73-ba87-a5df90298bcc</wfw:commentRss>
      <title>Tu sitio o aplicación Web, bien adaptado para iPhone </title>
      <guid isPermaLink="false">http://www.jasoft.org/blog/PermaLink,guid,dba42c50-617b-4c73-ba87-a5df90298bcc.aspx</guid>
      <link>http://www.jasoft.org/blog/PermaLink,guid,dba42c50-617b-4c73-ba87-a5df90298bcc.aspx</link>
      <pubDate>Sat, 20 Feb 2010 12:17:17 GMT</pubDate>
      <description>&lt;p align=justify&gt;
He de confesarlo: me encanta el iPhone de Apple. A la espera del nuevo &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=dba42c50-617b-4c73-ba87-a5df90298bcc&amp;amp;url=http%3a%2f%2fwww.microsoft.com%2fwindowsmobile%2fen-us%2fcmpn%2fwindowsphone7series%2f"" target=_blank&gt;Windows
Phone 7&lt;/a&gt;, del que tengo muchas dudas y hasta que lo vea en la mano y sepa que hay
muchas y buenas aplicaciones, mi favorito sin duda sigue siendo el iPhone 3Gs. Intenté
volver a un HTC Touch hace unos meses cuando me cargué el anterior iPhone y no lo
soporté ni un día. Sólo de pensar en volver al &lt;em&gt;stylus&lt;/em&gt; me dan escalofríos.
Una de las cosas que más me gusta es el navegador Safari que lleva embebido. Ahora
empieza a ser algo más normal que los navegadores móviles visualicen las páginas Web
como en un navegador de escritorio, pero no era así ni mucho menos hasta que apareció
el iPhone 2G (el primero que tuve) hace ya 3 años. Este teléfono de hecho fue el que
sirvió de revulsivo para que el mercado de los Smartphone haya explotado, y ahora
todos siguen la estela a ver si lo imitan. En eso, he de reconocerlo, Windows Phone
7 (al contrario del 6.5), parece que va a ser innovador escapando de las pantallitas
de iconos propias del "ayfon".
&lt;/p&gt;
&lt;p align=justify&gt;
El caso es que cada vez más gente navega desde el móvil y además, según Market Share,
el informe de diciembre de 2009 de &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=dba42c50-617b-4c73-ba87-a5df90298bcc&amp;amp;url=http%3a%2f%2fmetrics.admob.com%2f"" target=_blank&gt;Admob&lt;/a&gt;,
el iPhone arrasa entre los dispositivos móviles a la hora de navegar por Internet,
sobre todo en Europa y Oceanía:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/MObileOS-share.png"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
por lo que es importante ser lo más amigable posible con estos chismes. Dado que la
página se visualiza perfectamente al tener tanto este aparato como los móviles con
Android o -últimamente muchos otros incluyendo Windows Mobile- Opera Mobile, una cosa
que podemos hacer es facilitar que los visitantes nos coloquen como favoritos.
&lt;/p&gt;
&lt;p align=justify&gt;
Cuando navegas a una página con Safari para iPhone, al pulsar el botón "+" de la parte
de abajo te salen estas opciones:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/iPhone1.PNG"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
la segunda de ellas te permite añadir la página como un acceso directo desde el "escritorio"
del teléfono, como un programa más de los disponibles, lo cual es muy útil si accedes
a menudo. Por defecto el aparato hace una captura de pantalla de la página y la usa
como icono a la hora de añadirlo:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/iPhone2.PNG"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
¿Ves algo en el icono anterior? Yo tampoco. Está bien el intento pero no suele servir
de mucho, al menos en los blogs y similares. Tal vez en las páginas corporativas que
tengan algo destacado que se vea en la mini-captura.
&lt;/p&gt;
&lt;p align=justify&gt;
Lo ideal sería que tuviésemos nosotros control sobre el icono que se utiliza. Para
ello hay una forma muy sencilla: crear un gráfico en formato PNG de tamaño 60x60 pixeles,
y colocarlo en la raíz de nuestro sitio web con el nombre especial: "&lt;strong&gt;apple-touch-icon.png&lt;/strong&gt;". 
&lt;/p&gt;
&lt;p align=justify&gt;
Con esto, ahora, a la hora de añadir el acceso directo obtenemos el icono adornado
por el iPhone con un bonito efecto de reflejo 3D y también bordes redondeados:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/iPhone3.PNG"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Para que te hagas una idea de la diferencia, el icono original es este:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img src="http://www.jasoft.org/apple-touch-icon.png"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Y así es como queda una vez colocado en el escritorio del teléfono para un fácil acceso
directo (abajo a la derecha):
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/iPhone4.PNG"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Mola ¿eh?
&lt;/p&gt;
&lt;p align=justify&gt;
Si el gráfico se llama "apple-touch-icon-precomposed.png" en lugar del nombre anterior,
el teléfono no le añadirá ninguno de estos efectos dejándolo como está.
&lt;/p&gt;
&lt;p align=justify&gt;
Si no puedes copiar el icono en el raiz de tu web o si quieres darle un nombre diferente
puedes usar una cabecera META en tu página Web para indicar qué icono quieres usar,
así:
&lt;/p&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir=ltr&gt; 
&lt;p align=justify&gt;
&lt;font color=#808080 face="Courier New"&gt;&lt;strong&gt;&amp;lt;link rel="apple-touch-icon" href="mi_icono.png"/&amp;gt;&lt;/strong&gt;&lt;/font&gt;
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p align=justify&gt;
De manera similar, si se trata de una aplicación, puedes especificar la imagen que
quieres que el iPhone muestre mientras se inicia y se conecta (algo asícomo una Splash
Screen para el chisme) usando una cabecera parecida:
&lt;/p&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir=ltr&gt; 
&lt;p align=justify&gt;
&lt;font color=#808080 face="Courier New"&gt;&lt;strong&gt;&amp;lt;link rel="apple-touch-startup-image"
href="splash.png"&amp;gt;&lt;/strong&gt;&lt;/font&gt;
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p align=justify&gt;
La imagen tiene que ser de 320x460 píxeles de tamaño. Si no la especificas usará la
captura de pantalla de cómo estaba la última vez que la usaste.
&lt;/p&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir=ltr&gt; 
&lt;p align=justify&gt;
&lt;font color=#808080 face="Courier New"&gt;&lt;strong&gt;&amp;lt;meta name="apple-mobile-web-app-capable"
content="yes" /&amp;gt;&lt;/strong&gt;&lt;/font&gt;
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p align=justify&gt;
Si quieres que además la aplicación se muestre a pantalla completa (sin los elementos
propios del navegador) añade esto:
&lt;/p&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir=ltr&gt; 
&lt;p align=justify&gt;
&lt;font color=#808080 face="Courier New"&gt;&lt;strong&gt;&amp;lt;meta name="apple-mobile-web-app-capable"
content="yes" /&amp;gt;&lt;/strong&gt;&lt;/font&gt;
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p align=justify&gt;
Espero que te sea útil si vas a hacer algo para este teléfono.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.jasoft.org/blog/aggbug.ashx?id=dba42c50-617b-4c73-ba87-a5df90298bcc" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
&lt;a href="http://www.jasoft.org"&gt;JASoft.org&lt;/a&gt;: El Blog de Jose Alarcón. Programación
.NET y mucho más.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;S&amp;iacute;gueme en:&lt;/b&gt; &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/jm_alarcon"&gt;Twitter
JM Alarc&amp;oacute;n&lt;/a&gt; | &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/campusMVP"&gt;Twitter
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/facebook.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.facebook.com/campusMVP"&gt;Facebook
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/email.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.campusmvp.com/CampusMVP/Bolet%EDn.htm"&gt;Bolet&amp;iacute;n
campusMVP&lt;/a&gt;</description>
      <comments>http://www.jasoft.org/blog/CommentView,guid,dba42c50-617b-4c73-ba87-a5df90298bcc.aspx</comments>
      <category>Desarrollo Web</category>
    </item>
    <item>
      <trackback:ping>http://www.jasoft.org/blog/Trackback.aspx?guid=27b4d038-7102-4ad6-ba50-d26bc3a98379</trackback:ping>
      <pingback:server>http://www.jasoft.org/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.jasoft.org/blog/PermaLink,guid,27b4d038-7102-4ad6-ba50-d26bc3a98379.aspx</pingback:target>
      <dc:creator>José Manuel Alarcon</dc:creator>
      <wfw:comment>http://www.jasoft.org/blog/CommentView,guid,27b4d038-7102-4ad6-ba50-d26bc3a98379.aspx</wfw:comment>
      <wfw:commentRss>http://www.jasoft.org/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=27b4d038-7102-4ad6-ba50-d26bc3a98379</wfw:commentRss>
      <title>El miércoles que viene evento en la UAM</title>
      <guid isPermaLink="false">http://www.jasoft.org/blog/PermaLink,guid,27b4d038-7102-4ad6-ba50-d26bc3a98379.aspx</guid>
      <link>http://www.jasoft.org/blog/PermaLink,guid,27b4d038-7102-4ad6-ba50-d26bc3a98379.aspx</link>
      <pubDate>Wed, 17 Feb 2010 09:37:04 GMT</pubDate>
      <description>&lt;p&gt;
&lt;img border=0 hspace=10 align=left src="http://www.krasis.com/mailcast/img/libro-mailcast.jpg"&gt;El
próximo miércoles día 24 a las 18:30 de la tarde, estaré en la Universidad Autónoma
de Madrid hablando con los estudiantes de informática acerca de muchas cosas interesantes
de la vida tecnológica :-) 
&lt;/p&gt;
&lt;p&gt;
Esta charla/encuentro coincide con el &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=27b4d038-7102-4ad6-ba50-d26bc3a98379&amp;amp;url=http%3a%2f%2fwww.krasis.com%2fmailcast%2fomexpo.htm"" target=_blank&gt;&lt;strong&gt;OMExpo&lt;/strong&gt;&lt;/a&gt; (antiguo
Online Marketing España) y con Expo e-learning, por lo que habrá mucha gente por la
zona.
&lt;/p&gt;
&lt;p&gt;
Si estás cerca, &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=27b4d038-7102-4ad6-ba50-d26bc3a98379&amp;amp;url=http%3a%2f%2fwww.facebook.com%2fevent.php%3feid%3d304452913314"" target=_blank&gt;&lt;strong&gt;¡Apùntate!&lt;/strong&gt;&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
Ah!, y por cierto, si vas a estar en OMExpo, pásate por nuestro stand (el 92) y sólo
por hacerlo te regalaremos nuestro último libro lleno de consejos prácticos para desarrollar
campañas de email marketing exitosas. Toda la info &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=27b4d038-7102-4ad6-ba50-d26bc3a98379&amp;amp;url=http%3a%2f%2fwww.krasis.com%2fmailcast%2fomexpo.htm"" target=_blank&gt;aquí&lt;/a&gt;.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.jasoft.org/blog/aggbug.ashx?id=27b4d038-7102-4ad6-ba50-d26bc3a98379" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
&lt;a href="http://www.jasoft.org"&gt;JASoft.org&lt;/a&gt;: El Blog de Jose Alarcón. Programación
.NET y mucho más.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;S&amp;iacute;gueme en:&lt;/b&gt; &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/jm_alarcon"&gt;Twitter
JM Alarc&amp;oacute;n&lt;/a&gt; | &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/campusMVP"&gt;Twitter
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/facebook.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.facebook.com/campusMVP"&gt;Facebook
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/email.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.campusmvp.com/CampusMVP/Bolet%EDn.htm"&gt;Bolet&amp;iacute;n
campusMVP&lt;/a&gt;</description>
      <comments>http://www.jasoft.org/blog/CommentView,guid,27b4d038-7102-4ad6-ba50-d26bc3a98379.aspx</comments>
      <category>Eventos</category>
    </item>
    <item>
      <trackback:ping>http://www.jasoft.org/blog/Trackback.aspx?guid=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832</trackback:ping>
      <pingback:server>http://www.jasoft.org/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.jasoft.org/blog/PermaLink,guid,12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832.aspx</pingback:target>
      <dc:creator>José Manuel Alarcon</dc:creator>
      <wfw:comment>http://www.jasoft.org/blog/CommentView,guid,12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832.aspx</wfw:comment>
      <wfw:commentRss>http://www.jasoft.org/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <title>Microsoft Free SEO Toolkit: optimiza tus webs para los buscadores</title>
      <guid isPermaLink="false">http://www.jasoft.org/blog/PermaLink,guid,12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832.aspx</guid>
      <link>http://www.jasoft.org/blog/PermaLink,guid,12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832.aspx</link>
      <pubDate>Sun, 14 Feb 2010 18:23:28 GMT</pubDate>
      <description>&lt;p align=justify&gt;
&lt;img border=0 hspace=10 align=right src="http://www.jasoft.org/blog/content/binary/SEOToolKit0.jpg"&gt;Hoy
en día si no apareces en las primeras posiciones en los resultados de las principales
búsquedas relacionadas con tu actividad, es como si no existieras. Si analizas los &lt;em&gt;logs &lt;/em&gt;del
servidor puedes comprobar que un altísimo porcentaje del tráfico que entra en tu Web
es directamente procedente de buscadores. En España, además, el cuasi-monopolio en
esto lo tiene Google, por lo que casi se puede afirmar que si no apareces en Google
no existes. Hay gente que no se da cuenta del verdadero poder que tienen estas herramientas
de búsqueda y lo que podrían hacer si decidieran sesgar un poco sus resultados.
&lt;/p&gt;
&lt;p align=justify&gt;
En los últimos años se ha desarrollado ampliamente el concepto y las técnicas de &lt;strong&gt;SEO&lt;/strong&gt;: &lt;em&gt;&lt;a href="http://www.jasoft.org/blog/ct.ashx?id=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832&amp;amp;url=http%3a%2f%2fen.wikipedia.org%2fwiki%2fSearch_engine_optimization"" target=_blank&gt;Search
Engine Optimization&lt;/a&gt;&lt;/em&gt;, u &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832&amp;amp;url=http%3a%2f%2fes.wikipedia.org%2fwiki%2fSearch_engine_optimization"" target=_blank&gt;Optimización
para Motores de Búsqueda&lt;/a&gt;. Existen técnicas SEO lícitas y por lo tanto aprobadas
por los buscadores, y también &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832&amp;amp;url=http%3a%2f%2felladodelmal.blogspot.com%2f2009%2f10%2fseo-para-gente-de-moral-relajada-i-de.html"" target=_blank&gt;técnicas
ilícitas&lt;/a&gt; que pueden funcionar una temporada pero que cuand te pille el buscador
te penalizará tanto que tu web se verá relegada al olvido. Aparte de estas técnicas
más o menos elaboradas, hay muchas otras cuestiones que nuestro código HTML y la estructura
de la página pueden cumplir para mejorar la consideración que de la misma tienen Google,
Bing, Yahoo! y compañía. Por ello es muy importante que nuestro código HTML generado
cumpla con multitud de normas, que no haya enlaces rotos, que tengamos un archivo &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832&amp;amp;url=http%3a%2f%2fen.wikipedia.org%2fwiki%2fSitemaps"" target=_blank&gt;sitemap.xml&lt;/a&gt;,
etc... Son multitud de factores los que debemos tener en cuenta, y si aunque seamos
expertos SEO puede ser una tarea imposible tener todo controlado.
&lt;/p&gt;
&lt;p align=justify&gt;
Para ayudarnos con esto Microsoft ha sacado una excelente herramienta gratuita llamada &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832&amp;amp;url=http%3a%2f%2fwww.microsoft.com%2fweb%2fseo%2fdefault.aspx"" target=_blank&gt;SEO
Toolkit&lt;/a&gt;. En este artículo vamos a analizarla y explicar sus funcionalidades para
que puedas sacarle partido enseguida y mejores el posicionamiento de tus Webs.
&lt;/p&gt;
&lt;p align=justify&gt;
Antes de nada quiero dejar claro que esta herramienta, aún siendo de Microsoft y con
una interfaz bastante liosa de poner a andar, &lt;strong&gt;funcionará con cualquier web
creada con cualquier lenguaje y en cualquier sistema&lt;/strong&gt;.
&lt;/p&gt;
&lt;h3 align=justify&gt;Instalación y puesta en marcha
&lt;/h3&gt;
&lt;p align=justify&gt;
Instalar el SEO Toolkit es un tanto lioso. Para ello debemos descargarnos antes la
herramienta &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832&amp;amp;url=http%3a%2f%2fwww.microsoft.com%2fweb%2fgallery%2finstall.aspx%3fappid%3dseotoolkit"" target=_blank&gt;Microsoft
Web Platform&lt;/a&gt;, que nos permite gestionar desde su interfaz infinidad de herramientas
de desarrollo Web y proyectos Open Source. Te descargas el ejecutable e instalas el
Microsoft Web Platform. Tendrás que bucarlos en tu menú de inicio y lanzarlo. Esta
herramienta te presenta listas de herramientas clasificadas en categorías, las cuales
puedes elegir e instalar según tus necesidades. En mi opinión, esta herramienta es
un tostón y prefiriría una buena Web con las mismas herramientas clasificadas, pudiendo
descargar individualmente cada una de ellas según la necesite. Pero Microsoft tendrá
sus razones para haberlo hecho así.
&lt;/p&gt;
&lt;p align=justify&gt;
En este caso, para localizar el SEO Toolkit en la herramienta y poder instalarlo,
tenemos que ir a la pestaña de "Web Platform", sección "Web Server" y elegir su personalización:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/SEOToolKit1.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Al hacerlo se nos muestra una lista de herramientas entre las que tenemos la que estamos
buscando:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/SEOToolKit2.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
OJO: el SEO Toolkit no es una herramienta individual, sino que trabaja desde dentro
de la interfaz de gestión de IIS 7.0 o superior, por lo que tendremos que tener instalado
este servidor Web en nuestro equipo antes de poder ponerlo en marcha.
&lt;/p&gt;
&lt;p align=justify&gt;
En mi opinión esto es una gran lástima pues a Microsoft le hubiera sido incluso más
fácil hacer del SEO Toolkit un programa independiente y no hacerlo depender de IIS,
teniendo en cuenta además que funciona con cualquier Web remota o local, de IIS, de
Apache o cualquier otro servidor,&amp;nbsp;y no sólo con IIS. Pero bueno, dado que es
gratuita habrán pensado que así al menos te hacen ver su propio servidor un poco.
En cualquier caso todos los males sean esos :-)
&lt;/p&gt;
&lt;p align=justify&gt;
Pulsa "instalar" en la ventana de la figura anterior y ¡Listo!. Eso sí, es un poco
desconcertante, ya que cuando termina la instalación, no tenemos mensaje de aviso
alguno ni tampoco encontraremos un acceso directo a la herramienta en nuestro menú
de inicio. Para utilizarla tendremos que abrir la herramienta de gestión de IIS y
localizarlo en la página de gestión del servidor o de cualquiera de las Webs que tengamos
definidas:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;a href="http://www.jasoft.org/blog/ct.ashx?id=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832&amp;amp;url=http%3a%2f%2fwww.jasoft.org%2fblog%2fcontent%2fbinary%2fSEOToolKit3.jpg"" target=_blank&gt;&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/SEOToolKit3_p.jpg"&gt;&lt;/a&gt;
&lt;br&gt;
&lt;strong&gt;&lt;font size=1&gt;Pulsa para aumentar&lt;/font&gt;&lt;/strong&gt;
&lt;/p&gt;
&lt;h3&gt;Funcionalidad de la herramienta
&lt;/h3&gt;
&lt;p&gt;
Cuando hacemos doble-clic sobre el icono se abre la herramienta, que nos brinda tres
opciones:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=1 src="http://www.jasoft.org/blog/content/binary/SEOToolKit4.jpg"&gt;
&lt;/p&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir=ltr&gt; 
&lt;p align=justify&gt;
· &lt;strong&gt;Análisis de sitios&lt;/strong&gt;: Permite analizar sitios existentes y generar
completísimos informes orientados al SEO, así como lanzar consultas sobre esos resultados,
exportarlos, compararlos, etc... Es en lo que nos vamos a centrar en este artículo.
&lt;/p&gt;
&lt;p align=justify&gt;
· &lt;strong&gt;Sitemaps&lt;/strong&gt;: ayuda a generar y gestionar archivos Sitemap para nuestra
Web, de forma que ayudemos a los buscadores (especialmente Google) a indexarlos adecuadamente.
&lt;/p&gt;
&lt;p align=justify&gt;
· &lt;strong&gt;Robots&lt;/strong&gt;: el archivo &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832&amp;amp;url=http%3a%2f%2fen.wikipedia.org%2fwiki%2fRobots_exclusion_standard"" target=_blank&gt;robots.txt&lt;/a&gt; de
una web define qué partes de la misma deben a evitar los robots de búsqueda (o arañas)
de los buscadores. Esta característica nos ayuda a crear este tipo de archivos.
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;h3 align=justify&gt;Análisis de sitios con SEO Toolkit
&lt;/h3&gt;
&lt;p align=justify&gt;
Si creamos un nuevo análisis nos aparecerá una ventana en la que se nos pide que ajustemos
unos parámetros básicos a partir de los cuales el software empezará a actuar:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/SEOToolKit5.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Lo único que es necedsario introducir es un nombre para el análisis así como la URL
de la que queremos partir para comenzar el análisis (en este caso he usado nuestra
página de &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832&amp;amp;url=http%3a%2f%2fwww.campusmvp.com"" target=_blank&gt;www.campusmvp.com&lt;/a&gt;).
En los ajustes avanzados podemos decidir el máximod de recursos a descargar, el tamaño
máximo a descargar de un determinado archivo (para evitar descargar archivos pesados
innecesariamente), si seguimos o no los enlaces que están marcados con &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832&amp;amp;url=http%3a%2f%2fen.wikipedia.org%2fwiki%2fNofollow"" target=_blank&gt;el
atributo "nofollow"&lt;/a&gt;, y si debemos hacer caso omiso o no de la &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832&amp;amp;url=http%3a%2f%2fen.wikipedia.org%2fwiki%2fNoindex"" target=_blank&gt;etiqueta
meta "noindex"&lt;/a&gt;. Mirecomendación sería marcar estas dos últimas casillas, pues
es cómo se comportará la araña de Google.&amp;nbsp;
&lt;/p&gt;
&lt;p align=justify&gt;
La lista desplegable de enlaces externos sirve para decidir qué tipo de URL vamos
a considerar como tales, es decir, cuáles están fuera de la web actual y cuáles no.
&lt;/p&gt;
&lt;p align=justify&gt;
Es posible establecer usuario y clave para que el sistema funcione con sitios web
no públicos, protegidos con credenciales de acceso.
&lt;/p&gt;
&lt;p align=justify&gt;
Una vez que pulsamos el botón de "OK" se lanza un proceso que tardará más o menos
en función del tamaño de la web analizada y que, a todos los efectos, simula el proceso
que llevaría a cabo la araña de un buscador cuando está indexando el sitio web en
cuestión. Nuestro particular robot de búsqueda analiza todo lo que va descargando
y lo compara contra una base de datos de normas SEO para generar finalmente un informe.
&lt;/p&gt;
&lt;p align=justify&gt;
Lo primero que vemos al terminar es el resumen del análisis:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/SEOToolKit6.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
No te agobies si te salen muchas violaciones de buenas prácticas SEO. Es de lo más
normal. Es casi imposible que no se te escape algo, y muchas cosas, si bien son recomendables,
no son imprescindibles ni mucho menos. Otras sí ;-)
&lt;/p&gt;
&lt;p align=justify&gt;
Como vemos en la figura anterior se nos muestra un resumen de todas las buenas prácticas
que estamos incumpliendo, y cuántas veces. Si hacemos doble-clic sobre cualquiera
de los elementos de esa lista se abre una ventana de detalle, que nos indicará muchísima
información sobre cada violación: en qué lugar se produce, por qué es importante,
cómo está formado el código, qué podemos hacer para solucionarlo, etc...
&lt;/p&gt;
&lt;p align=justify&gt;
Encontrarás la mayoría de las normas de lo más útil, así que repásalas con calma.
&lt;/p&gt;
&lt;p align=justify&gt;
En los otros apartados del lateral puededs profundizar en otra información relacionada.
El primero, &lt;strong&gt;"Violations"&lt;/strong&gt;, tenemos la lista completa de problemas
detectados que veíamos de manera resumida en la figura anterior.
&lt;/p&gt;
&lt;p align=justify&gt;
El &lt;strong&gt;apartado "Content"&lt;/strong&gt; se nos muestran los contenidos del sitio Web
agrupados por tipos de archivo, carpetas, y otros criterios. Nos sirve para darnos
cuenta de cómo está organizado el sitio.
&lt;/p&gt;
&lt;p align=justify&gt;
El &lt;strong&gt;apartado "Performance"&lt;/strong&gt; se nos muestra una visión del rendimiento
de descarga de la Web en el momento en que fue capturada. Así podemos ver los tiempos
y tamaños de descarga y nos puede ayudar a indetificar páginas con problemas, o archivos
muy pesados que pueden interferir en el buen trabajo de la aplicación o sitio. La
herramienta ya nos apunta de entrada los archivos problemáticos or que se descargan
lentamente. Podemos ver la información por carpetas, tipos de archivo, páginas demasiado
saturadas de elementos. 
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/SEOToolKit8.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Finalmente el &lt;strong&gt;apartado "Links"&lt;/strong&gt; es muy interesante porque nada como
los enlaces influye más en el posicionamiento de las páginas. Así podemos ver las
relaciones existentes entre nuestras páginas, cuáles son las más enlazadas, la profundidad
de los enlaces, las redirecciones (las arñas no suelen pasar de la segunda redirección,
por lo que tienen especial importancia), lo &lt;strong&gt;enlaces rotos&lt;/strong&gt; (también
importantísimos), etc...
&lt;/p&gt;
&lt;h3 align=justify&gt;Consultas
&lt;/h3&gt;
&lt;p align=justify&gt;
Todos estos apartados nos ayudarán a solucionar multitud de fallos y a mejorar el
código del sitio Web de forma que se posicione mejor ante los ojos de los todo poderosos
buscadores. No obstante para empezar a veces puede resultar difícil si tenemos muchas
cosas a las que atender. Qué duda cabe que la vista por defecto, la de resumen, nos
ayudará mucho, pero si queremos profundizar o si necesitamos localizar recursos concretos
las herramientas de consulta integradas en SEO Toolkit nos van a resultar de gran
ayuda.
&lt;/p&gt;
&lt;p align=justify&gt;
Dentro del menú desplegable de laparte superior tenemos el apartado "Query", que nos
permite crear nuevas consultas de los recursos descargados por nuestra araña y también
de las reglas que se han transgredido en el sitio. Así, podremos elegir uno entre
múltiples campos de filtrado (dependiendo del tipo de consulta que hagamos), el tipo
de comparación a realizar, y el parámetroa comparar, combinando varias condiciones
simultáneamente:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/SEOToolKit11.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Por ejemplo, si tenemos un enlace roto y queremos averiguar todas las páginas apuntan
a éste, podemos hacer una consulta gráfica como esta:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/SEOToolKit7.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Es posible agrupar los resultados. Tenemos la posibilidad de exportar los resultados
de la consulta o guardarla para su reutilización posterior. Como vemos de lo más útil.
&lt;/p&gt;
&lt;h3 align=justify&gt;Exportar
&lt;/h3&gt;
&lt;p align=justify&gt;
Todos los resultados de la actividad de la araña y el correspondiente informe total
es posible exportarlo a formato CSV (archivo de texto con valores separados por comas),
para abrirlocómodamente en Excel y poder procesar por nosotros mismos los resultados,
generar informes para clientes, filtrar con las características de Excel, etc... Algo
que personalmente encuentro muy útil.
&lt;/p&gt;
&lt;h3 align=justify&gt;Comparar
&lt;/h3&gt;
&lt;p align=justify&gt;
Dado que la herramienta nos dará muchas indicaciones y que seguramente vamos a hacerle
caso a muchas de ellas, cambiando la Web, resulta de especial interés la herramienta
de comparación que trae:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/SEOToolKit10.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
De esta forma, tras haber aplicado los consejos SEO obtenidos por el análisis anterior,
podemos pasar de nuevo la araña sobre la misma web y generar otro nuevo informe. Si
los comparamos obtendremos un análisis de las mejoras introducidas que nos servirá
para darnos cuenta de la influencia de las medidas introducidas.
&lt;/p&gt;
&lt;h3 align=justify&gt;En resumen
&lt;/h3&gt;
&lt;p align=justify&gt;
El SEO Toolkit es una herramienta gratuita de Microsoft que nos ayudará a mejorar
mucho la posición de nuestra web en los buscadores, ahorrándonos muchas horas de estudio
propias de un SEO. A pesar de su dificultad para ponerla en marcha para los no técnicos
(necesitarás IIS 7.0 o superior) merece la pena instalar y pasar su araña a nuestros
sitios para que los analice.
&lt;/p&gt;
&lt;p align=justify&gt;
Aunque nunca va a sustituir los servicios de un buen SEO y además la posición en los
resultados de búsqeuda no dependen únicamente (ni mucho menos) de la calidad de nuestro
código sino que es más un factor relacionado con la &lt;strong&gt;relevancia&lt;/strong&gt; de
nuestro sitio, desde luego nos ayudará a partir de una buena base, y puede sustituir
(y mejorar) a la mayoría de los SEO aficionados que nos vamos a encontrar por ahí:
desconfía de las empresas o "expertos" que tanto te optimizan la página para SEO,
como te diseñan la Web, te la programan y te dan el hosting si se tercia ;-)
&lt;/p&gt;
&lt;p align=justify&gt;
¡Espero que te resulte útil!
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.jasoft.org/blog/aggbug.ashx?id=12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
&lt;a href="http://www.jasoft.org"&gt;JASoft.org&lt;/a&gt;: El Blog de Jose Alarcón. Programación
.NET y mucho más.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;S&amp;iacute;gueme en:&lt;/b&gt; &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/jm_alarcon"&gt;Twitter
JM Alarc&amp;oacute;n&lt;/a&gt; | &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/campusMVP"&gt;Twitter
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/facebook.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.facebook.com/campusMVP"&gt;Facebook
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/email.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.campusmvp.com/CampusMVP/Bolet%EDn.htm"&gt;Bolet&amp;iacute;n
campusMVP&lt;/a&gt;</description>
      <comments>http://www.jasoft.org/blog/CommentView,guid,12bb0cf7-3a3f-4ac2-8dc1-11ac46dd6832.aspx</comments>
      <category>Herramientas</category>
    </item>
    <item>
      <trackback:ping>http://www.jasoft.org/blog/Trackback.aspx?guid=4f8fef78-f250-49ad-8ce5-2ae2e23b2245</trackback:ping>
      <pingback:server>http://www.jasoft.org/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.jasoft.org/blog/PermaLink,guid,4f8fef78-f250-49ad-8ce5-2ae2e23b2245.aspx</pingback:target>
      <dc:creator>José Manuel Alarcon</dc:creator>
      <wfw:comment>http://www.jasoft.org/blog/CommentView,guid,4f8fef78-f250-49ad-8ce5-2ae2e23b2245.aspx</wfw:comment>
      <wfw:commentRss>http://www.jasoft.org/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=4f8fef78-f250-49ad-8ce5-2ae2e23b2245</wfw:commentRss>
      <title>Objetos dinámicos en .NET 4.0: ExpandoObject</title>
      <guid isPermaLink="false">http://www.jasoft.org/blog/PermaLink,guid,4f8fef78-f250-49ad-8ce5-2ae2e23b2245.aspx</guid>
      <link>http://www.jasoft.org/blog/PermaLink,guid,4f8fef78-f250-49ad-8ce5-2ae2e23b2245.aspx</link>
      <pubDate>Sat, 06 Feb 2010 19:57:14 GMT</pubDate>
      <description>&lt;p align=justify&gt;
.NET 4.0 dispone de soporte para tiempo de ejecución de lenguajes dinámicos, el DLR
(Dynamic Language Runtime). El propósito del DLR es permitir que los lenguajes de
tipo dinámico -como PHP, JavaScript, Ruby, Python, Lisp&amp;nbsp;o Groovy, por citar unos
cuantos- puedan ejecutarse en la plataforma y además interactuar con código escrito
en un lenguaje .NET -como C# o VB.
&lt;/p&gt;
&lt;p align=justify&gt;
El DLR introduce en el framework una serie de clases dinámicas de comportamiento dinámico
que ayudan mucho a la hora de interactuar con estos lenguajes o acceder a COM, pero
que abren la puerta a crear monstruos de código si son mal utilizados. De hecho gurús
de la plataforma como mi buen amigo &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=4f8fef78-f250-49ad-8ce5-2ae2e23b2245&amp;amp;url=http%3a%2f%2fgeeks.ms%2fblogs%2fohernandez%2f"" target=_blank&gt;Octavio
Hernández&lt;/a&gt;, reniegan de esta característica ;-)
&lt;/p&gt;
&lt;p align=justify&gt;
Lo cierto es que en general yo no recomendaría el uso de las clases dinámicas, pero
sí que pueden llegar a ser útiles en algunas ocasiones. Por ello en este artículo
voy a presentar la más útil y fácil de usar de todas, la clase &lt;strong&gt;&lt;em&gt;ExpandoObject&lt;/em&gt;&lt;/strong&gt;.
&lt;/p&gt;
&lt;p align=justify&gt;
&lt;strong&gt;&lt;font size=3&gt;Añadiendo miembros dinámicamente&lt;/font&gt;&lt;/strong&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Este objeto es, en realidad, una colección genérica bien disfrazada con "azucar sintáctico"
de manera que en lugar de andar escribiendo .Add y .Remove con el nombre de los miembros,
se pueden escribir directamente en el código y el compilador hace caso omiso de ellos,
posponiendo la comprobación de su existencia al tiempo de ejecución. Lo entenderemos
mejor con un ejemplo:
&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;//Creo el objeto
dynamic Persona1 = new System.Dynamic.ExpandoObject();
//le añado algunas propiedades
Persona1.Nombre = "JM";
Persona1.Apellidos = "Alarcón aguín";
Persona1.Edad = 37;&lt;/pre&gt;
&lt;p align=justify&gt;
Fijémonos en lo que hemos hecho aquí: primero hemos declarado una nueva clase de tipo
ExpandoObject, la cual está en el espacio de nombres &lt;strong&gt;&lt;em&gt;System.Dynamic&lt;/em&gt;&lt;/strong&gt;.
Si hubiésemos escrito simplemente el nombre de la clase VS2010 nos da ya la opción
de añadir el "using" correspondiente en la parte de arriba del código:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/Expando1.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Hay que fijarse también en una cosa importante: en C# debemos declarar el tipo de
la variable que va a contener el objeto como &lt;strong&gt;&lt;em&gt;dynamic&lt;/em&gt;&lt;/strong&gt;. Fíjate
en que lo lleva delante. Este nuevo tipo de C# se puede considerar que es casi idéntico
al tipo &lt;em&gt;Object&lt;/em&gt;, pero su principal diferencia es que cuando declaramos una
variable con dynamic, el compilador se salta la comprobación estática de tipos durante
la compilación. De esta forma el compilador no "rompe" cuando compilamos si intentamos
utilizar una propiedad o método de la clase dinámica aunque éstos no existan. En VB
no es necesario un tipo especial porque este lenguaje soporta &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=4f8fef78-f250-49ad-8ce5-2ae2e23b2245&amp;amp;url=http%3a%2f%2fmsdn.microsoft.com%2fen-us%2flibrary%2f0tcf61s1(VS.100).aspx"" target=_blank&gt;el
enlazado de tipos postergado&lt;/a&gt;.
&lt;/p&gt;
&lt;p align=justify&gt;
Bien, una vez creado el objeto dinámico podemos empezar a añadirle propiedades con
sólo escribirlas, como se ve en las líneas anteriores, tras la declaración. Así, al
nuevo objeto le añadimos una propiedad &lt;em&gt;Nombre&lt;/em&gt;, otra &lt;em&gt;Apellidos&lt;/em&gt; y
otra &lt;em&gt;Edad&lt;/em&gt; simplemente poniendo un punto y escribiéndola. Es decir, como si
ya existiera de antemano, cosa que no es así. En la práctica lo que conseguimos es
que si la propiedad existe que se asigne, pero si no existe se crea dinnámicamente
y se asigna, es decir se van creando propiedades sobre la marcha.
&lt;/p&gt;
&lt;p align=justify&gt;
Si ahora escribo:
&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;Console.WriteLine("Persona: {0} {1}, Edad: {2}", Persona1.Nombre, Persona1.Apellidos, Persona1.Edad);&lt;/pre&gt;
&lt;p align=justify&gt;
Obtendré por pantalla sin problemas el nombre y apellidos, seguidos de la edad anotadas
en este nuevo objeto dinámico.
&lt;/p&gt;
&lt;p align=justify&gt;
Los tipos apropiados para las propiedades se infieren del valor que se le pasa al
asignarla. Así en el ejemplo, para el nombre y apellidos tendremos tipos &lt;em&gt;string&lt;/em&gt;,
y un &lt;em&gt;int &lt;/em&gt;para le &lt;em&gt;Edad&lt;/em&gt;. Además el tipo cambia también dinámicamente.
Por ejemplo si asigno el valor 37 a la propiedad &lt;em&gt;Edad&lt;/em&gt; su tipo será un &lt;em&gt;Int&lt;/em&gt;.
Sin embargo si acto seguido le asigno, por ejemplo, 10E10 (un número muy grande),
automáticamente la propiedad cambia y ahora es de tipo &lt;em&gt;double&lt;/em&gt;. Exactamente
igual que pasaría en JavaScript u otro lenguaje dinámico tradicional.
&lt;/p&gt;
&lt;p align=justify&gt;
Podemos crear propiedades de objetos dinámicos que a su vez son también objetos dinámicos.
Por ejemplo:
&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;Persona1.Domicilio = new ExpandoObject();
Persona1.Domicilio.Ciudad = "Vigo";
&lt;/pre&gt;
&lt;p align=justify&gt;
De este modo acabo de crear una propiedad &lt;em&gt;Domicilio&lt;/em&gt; que es dinámica y le
he creado a su vez una propiedad &lt;em&gt;Ciudad&lt;/em&gt;. Así puede escribir &lt;em&gt;Persona1.Domicilio.Ciudad&lt;/em&gt; para
obtener el valor "Vigo".
&lt;/p&gt;
&lt;p align=justify&gt;
Estos tipos dinámicos, aunque están soportados por el entorno de Visual Studio 2010,
no nos ofrecen (al menos en la Beta2) soporte para &lt;em&gt;Intellisense&lt;/em&gt;, en el sentido
de que una vez definida la propiedad, esta no aparece en la ayuda contextual cuando
volvemos a usar el objeto y ponemos un punto:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/Expando2.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Como vemos, nos indica que lo que escribamos a continuación del punto será interpretado
en tiempo de ejecución, no al compilar, y por tanto no nos muestra ayuda al respecto.
&lt;/p&gt;
&lt;p align=justify&gt;
Con esto es muy facil, por ejemplo, crear un nuevo objeto dinámico dinámicamente (valga
la redundancia) a partir de datos contenidos en algún lado. El ejemplo típico es cargar
un archivo XML e ir recorriendo sus nodos e ir asignando a su vez propiedades alobjeto
dinámico. Así podremos acceder más fácilmente a los datos desde el código pudiendo
escribir notaciónn común de objetos (nombres y puntos) para acceder a ellas en lugar
de estar escribiendo sintaxisd más complejas para leer valores de nodos o atributos
XML. También nos valdría de modo similar para interpretar JSON.
&lt;/p&gt;
&lt;p align=justify&gt;
Una aplicación especialmente interesante es a la hora de definir vistas de ASP.NET
MVC 2.0&amp;nbsp;de manera dinámica, &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=4f8fef78-f250-49ad-8ce5-2ae2e23b2245&amp;amp;url=http%3a%2f%2fhaacked.com%2farchive%2f2009%2f08%2f26%2fmethod-missing-csharp-4.aspx"" target=_blank&gt;como
explica Phil Haack en este post&lt;/a&gt; (inglés).
&lt;/p&gt;
&lt;p align=justify&gt;
Además de propiedades es posible definir también métodos dinámicamente, si bien éstos
son de menor utilidad ya que deberán ser estáticos y por lo tanto no pueden acceder
al resto de propiedades del objeto.
&lt;/p&gt;
&lt;p align=justify&gt;
Por ejemplo:
&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;Persona1.Saludar = new Func&amp;lt;STRING, bool&amp;gt;((sSaludo) =&amp;gt;
{
    Console.WriteLine(sSaludo);
    return true;
});
&lt;/pre&gt;
&lt;p align=justify&gt;
Con esto creamos un nuevo método &lt;em&gt;Saludar&lt;/em&gt;, y podemos escribir: Persona1.Saludar("Hola")
para obtener ese mensaje por pantalla en este caso simple. El método se crea con una
expresión Lambda por lo que siempre deve devolver algo. En este caso como no nos interesa
para nada el valor devuelto he optado por devolver un booleano sin más. Ya digo que
no tienen demasiada utilidad.
&lt;/p&gt;
&lt;p align=justify&gt;
Si llamamos a la función sin pasarle el número de parámetros apropiado no se nos quejará
el compilador y podremos generar el ejecutale. Sin embargo a la hora de ejecutar la
aplicación romperá miserablemente:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/Expando3.jpg"&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;&lt;font size=3&gt;Enumeración y eliminación de miembros&lt;/font&gt;&lt;/strong&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Hasta ahora hemos visto lo fácil que es crear un miembro, pero claro, nos será útil
solamente si sabemos de antemano qué miembros están disponibles. ¿Cómo podemos averiguarlo?.
Esto puede ser útil para, en el caso de crearlo a partir de un origen de datos arbitrario,
poder enumerarlos y comprobar que existen un mínimo determinado de ellos, o simplemente
para poder hacer introspección de los objetos. Siempre podríamos usar reflexión pero
sin embargo no habríamos ganado demasiado ¿verdad?.
&lt;/p&gt;
&lt;p&gt;
Fijémonos en la definición de la clase &lt;em&gt;ExpandoObject&lt;/em&gt; (en C#):
&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;public sealed class ExpandoObject : IDynamicMetaObjectProvider, 
    IDictionary&amp;lt;string, Object&amp;gt;, 
    ICollection&amp;lt;KeyValuePair&amp;lt;string, Object&amp;gt;&amp;gt;, 
    IEnumerable&amp;lt;KeyValuePair&amp;lt;string, Object&amp;gt;&amp;gt;, 
    IEnumerable, INotifyPropertyChanged&lt;/pre&gt;
&lt;p align=justify&gt;
Como vemos implementa una interfaz &lt;em&gt;IDictionary&lt;/em&gt; genérica y también una &lt;em&gt;ICollection&lt;/em&gt; e &lt;em&gt;IEnumerable&lt;/em&gt;.
Es decir, en el fondo se trata ni más ni menos de &lt;strong&gt;una colección genérica&lt;/strong&gt; capaz
de albergar cualquier cosa. Los miembros que vamos añadiendo se incorporan a una colección
interna. Por lo tanto para poder enumerarlos sólo hay que hacer uso del objeto como
una colección o un diccionario:
&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;IDictionary&amp;lt;String, Object&amp;gt; miembros = (IDictionary&amp;lt;string, Object&amp;gt;)Persona1;
foreach (System.Collections.Generic.KeyValuePair&amp;lt;String, Object&amp;gt; miembro in miembros)
{
    Console.WriteLine("{0}: {1}", miembro.Key, miembro.Value);
}
&lt;/pre&gt;
&lt;p align=justify&gt;
O de manera más directa y entendible:
&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;foreach(var miembro in (IDictionary&amp;lt;string, Object&amp;gt;)Persona1)
{
    Console.WriteLine("{0}: {1}", miembro.Key, miembro.Value);
}
&lt;/pre&gt;
&lt;p align=justify&gt;
Como vemos simplemente hacemos un "cast" a la interfaz &lt;strong&gt;&lt;em&gt;IDictionary &lt;/em&gt;&lt;/strong&gt;y
a partir de ese momento lo manejamos como cualquier otra colección de objetos cuya
clave es de tipo texto. Gracias ello podemos añadir nuevos miembros usando el método &lt;em&gt;&lt;strong&gt;Add&lt;/strong&gt;&lt;/em&gt; del
diccionario, pero, lo más importante, podemos eliminarlos usando el método &lt;em&gt;&lt;strong&gt;Remove&lt;/strong&gt;&lt;/em&gt;,
por ejemplo:
&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;&lt;STRING, Object&gt;((IDictionary)Persona1).Remove("Nombre");
&lt;/pre&gt;
&lt;p align=justify&gt;
En la que me he cargado la propiedad &lt;em&gt;Nombre&lt;/em&gt;.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;&lt;font size=3&gt;Detectando cambios en propiedades&lt;/font&gt;&lt;/strong&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Si nos fijamos en la definición de la clase vemos que implementa una interfaz &lt;strong&gt;&lt;em&gt;INotifyPropertyChanged&lt;/em&gt;&lt;/strong&gt;.
Ésta define un evento llamado &lt;em&gt;&lt;strong&gt;PropertyChanged&lt;/strong&gt;&lt;/em&gt; que nos sirve
para detectar el momento en que cambia una propiedad o se asigna por primera vez.
Así, podemosdefinir una función como esta:
&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;private static void DetectarCambios(object sender, PropertyChangedEventArgs e)
{
    Console.WriteLine("Se ha asignado la propiedad '{0}'", e.PropertyName);
}
&lt;/pre&gt;
&lt;p align=justify&gt;
y detectar los cambios en miembros simplemente estableciendo esa propiedad de la interfaz,
así:
&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;((INotifyPropertyChanged)Persona1).PropertyChanged += new PropertyChangedEventHandler(DetectarCambios);
&lt;/pre&gt;
&lt;p align=justify&gt;
No acaba de ser del todo útil porque no nos deja averiguar qué valor se ha asignado
(aunque es fácil de determinar usando la colección interna como acabamos de ver hace
un momento, pero puede ayudarnos en algunos casos. No obstante si queremos crear objetos
dinámicos y tener control absoluto sobre cómo se crean sus miembros en lugar de &lt;em&gt;ExpandoObject&lt;/em&gt; deberíamos
usar &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=4f8fef78-f250-49ad-8ce5-2ae2e23b2245&amp;amp;url=http%3a%2f%2fmsdn.microsoft.com%2fen-us%2flibrary%2fsystem.dynamic.dynamicobject(VS.100).aspx"" target=_blank&gt;la
clase &lt;strong&gt;&lt;em&gt;DynamicObject&lt;/em&gt;&lt;/strong&gt;&lt;/a&gt;.
&lt;/p&gt;
&lt;p align=justify&gt;
&lt;strong&gt;&lt;font size=3&gt;Colecciones de objetos dinámicos&lt;/font&gt;&lt;/strong&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Para terminar con este interesante tema me gustaría comentar cómo se crean colecciones
de objetos dinámicos. Consideremos el siguiente código:
&lt;/p&gt;
&lt;pre class="brush: csharp;"&gt;dynamic vecinitos = new List&amp;lt;dynamic&amp;gt;();

vecinitos.Add(new ExpandoObject());
vecinitos[0].Nombre = "Homer";
vecinitos[0].Apellidos = "Simpson";
vecinitos[0].Ropa = "Camisa blanca, pantalones azules";

//No son objetos iguales
vecinitos.Add(new ExpandoObject());
vecinitos[1].Nombre = "Ned";
vecinitos[1].Apellidos = "Flanders";

foreach (var vecinito in vecinitos)
{
    Console.WriteLine("{0} {1}", vecinito.Nombre, vecinito.Apellidos);
}
&lt;/pre&gt;
&lt;p align=justify&gt;
Vemos que la lista genérica se crea del tipo &lt;em&gt;dynamic&lt;/em&gt;, y no del tipo &lt;em&gt;ExpandoObject&lt;/em&gt;.
Esto es normal ya que de esta forma estamos acogiendo objetos dinámicos de cualquier
tipo y no sólo de esta clase particular. Aunque en este ejemplo concreto funcionaría
perfectamente&amp;nbsp;haberla definido con &lt;em&gt;ExpandoObject&lt;/em&gt;, en general usaremos &lt;em&gt;dynamic&lt;/em&gt; (u &lt;em&gt;Object&lt;/em&gt; en
VB) porque así nos aseguramos que vengan de donde vengan los objetos de la lista ésta
funcionará sin problema.
&lt;/p&gt;
&lt;p align=justify&gt;
A continuación definimos cada elemento añadido la lista de forma que creamos dinámicamente
sus propiedades. Finalmente los recorremos en un bucle para mostrar sus propiedades.
&lt;/p&gt;
&lt;p align=justify&gt;
Si en el bucle hubiésemos usado esta línea de código en ugar de la anterior:
&lt;/p&gt;
&lt;pre class="brush; csharp;"&gt;Console.WriteLine("{0} {1}", vecinito.Nombre, vecinito.Apellidos, vecinito.Ropa);
&lt;/pre&gt;
&lt;p align=justify&gt;
Lo que hubiera pasado es que la primera vuelta (la de Homer) hubiera funcionado bien,
pero como en el segundo elemento (Flanders) no hemos definido la propiedad ropa hubiésemos
obtenido un error en tiempo de ejecución. Con esto quiero dejar claro que aunque se
defina una propiedad para uno de los objetos, ésta no queda definida en los demás,
ya que son objetos absolutamente independientes, así que hay que tener cuidado y no
dar por hecho que una determinada propiedad va a existir para un objeto dinámico concreto.
&lt;/p&gt;
&lt;p align=justify&gt;
&lt;strong&gt;&lt;font size=3&gt;En resumen&lt;/font&gt;&lt;/strong&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
Los objetos dinámicos creados a partir de la clase &lt;em&gt;ExpandoObject&lt;/em&gt; están pensados
para trabajar con lenguajes dinámicos desde C# y VB. Ello además nos proporciona una
nueva herramienta que podemos usar en otro tipo de desarrollos aunque no estén relacionados
con los lenguajes dinámicos. Eso sí: debemos usarlos con sumo cuidado y sólo en situaciones
que estén muy justificadas, porque de otra manera correremos el riesgo cierto de cometer
muchos errores difíciles de detectar. De hecho una de las ventanas de los lenguajes
tipados frente a los dinámicos es que es mucho más difícil meter la pata porque debes
tener claro todo el rato qué tipo de información estás manejando. Así que ¡cuidado!.
&lt;/p&gt;
&lt;p align=justify&gt;
Los objetos &lt;em&gt;ExpandoObject&lt;/em&gt; son en realidad una forma fácil de acceder colecciones
genéricas, por lo que debemos tener con ellos el mismo cuidado que con las colecciones.
Así que cuando escribamos una propiedad con la notación del punto debes recordar que
por debajo lo único que estás haciendo es añadir un elemento a una colección. Tenlo
en mente todo el rato.
&lt;/p&gt;
&lt;p align=justify&gt;
He dejado todo el código de este artículo &lt;a href="http://www.jasoft.org/blog/ct.ashx?id=4f8fef78-f250-49ad-8ce5-2ae2e23b2245&amp;amp;url=http%3a%2f%2fwww.jasoft.org%2fdescargas%2fObjetosDinamicos.zip"&gt;en
un ZIP&lt;/a&gt; para que puedas descargarlo y haer tus propios experimentos con estos objetos
dinámicos y ver cómo se comportan.
&lt;/p&gt;
&lt;p align=justify&gt;
¡Espero que te resulte útil!
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.jasoft.org/blog/aggbug.ashx?id=4f8fef78-f250-49ad-8ce5-2ae2e23b2245" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
&lt;a href="http://www.jasoft.org"&gt;JASoft.org&lt;/a&gt;: El Blog de Jose Alarcón. Programación
.NET y mucho más.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;S&amp;iacute;gueme en:&lt;/b&gt; &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/jm_alarcon"&gt;Twitter
JM Alarc&amp;oacute;n&lt;/a&gt; | &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/campusMVP"&gt;Twitter
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/facebook.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.facebook.com/campusMVP"&gt;Facebook
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/email.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.campusmvp.com/CampusMVP/Bolet%EDn.htm"&gt;Bolet&amp;iacute;n
campusMVP&lt;/a&gt;</description>
      <comments>http://www.jasoft.org/blog/CommentView,guid,4f8fef78-f250-49ad-8ce5-2ae2e23b2245.aspx</comments>
      <category>Programación</category>
      <category>Visual Studio</category>
    </item>
    <item>
      <trackback:ping>http://www.jasoft.org/blog/Trackback.aspx?guid=d72c289a-996d-4917-8f53-d33f41df8c7e</trackback:ping>
      <pingback:server>http://www.jasoft.org/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.jasoft.org/blog/PermaLink,guid,d72c289a-996d-4917-8f53-d33f41df8c7e.aspx</pingback:target>
      <dc:creator>José Manuel Alarcon</dc:creator>
      <wfw:comment>http://www.jasoft.org/blog/CommentView,guid,d72c289a-996d-4917-8f53-d33f41df8c7e.aspx</wfw:comment>
      <wfw:commentRss>http://www.jasoft.org/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=d72c289a-996d-4917-8f53-d33f41df8c7e</wfw:commentRss>
      <title>¿Por qué tenemos dos claves para acceder al almacenamiento de Azure?</title>
      <guid isPermaLink="false">http://www.jasoft.org/blog/PermaLink,guid,d72c289a-996d-4917-8f53-d33f41df8c7e.aspx</guid>
      <link>http://www.jasoft.org/blog/PermaLink,guid,d72c289a-996d-4917-8f53-d33f41df8c7e.aspx</link>
      <pubDate>Thu, 28 Jan 2010 20:37:10 GMT</pubDate>
      <description>&lt;p align=justify&gt;
Si has utilizado en producción Windows azure, y en concreto su almacenamiento local
para tablas, blobx y colas (Windows Azure Storage), habrás observado que cuando defines
una cuenta de almacenamiento dispones de dos claves de seguridad para acceder a las
mismas, una primaria y otra secundaria:
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/AzureStorageDosClaves.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
¿Por qué hay dos claves, para qué sirven y cómo se relacionan?
&lt;/p&gt;
&lt;p align=justify&gt;
La verdad es que es un sistema interesante. Ambas claves son equivalentes y ambas
sirven para acceder a la cuenta de almacenamiento, así que podemos utilizar una u
otra indistintamente. Generalmente usaremos la primera y la desplegaremos en nuestra
aplicación Azure, dentro de sus propiedades de configuración.
&lt;/p&gt;
&lt;p align=justify&gt;
Al tener dos claves lo que conseguimos es que no exista ni un segundo de parada de
nuestra aplicación si necesitamos cambiarla. 
&lt;/p&gt;
&lt;p align=justify&gt;
Supongamos que estamos usando la primera clave y alguien nos la roba y tiene acceso
también al almacenamiento. ¿Cómo procederíamos para cambiarla y no parar el servicio?
&lt;/p&gt;
&lt;p align=justify&gt;
El procedimiento sería el siguiente:
&lt;/p&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir=ltr&gt; 
&lt;p align=justify&gt;
1.- Cambiamos el archivo de configuración de la aplicación Azure para que pasemos
a utilizar la segunda de las claves. Este cambio es instantáneo y no es necesario
desplegar de nuevo la aplicación. A partir de este momento se está usando la segunda
clave y la primera no nos hace falta.
&lt;/p&gt;
&lt;p align=justify&gt;
2.- Vamos a la pantalla anterior y pulsamos el botón de regenerar la primera clave.
A partir de ese mismo instante la clave anterior queda invalidada y el que nos la
haya robado no podrá utilizarla.
&lt;/p&gt;
&lt;p align=justify&gt;
3.- Opcionalmente, volvemos a cambiar la configuración para usar la nueva clave primera,
aunque no es necesario y podemos quedarnos con la segunda el tiempo que necesitemos,
haciendo el procedimiento en sentido inverso si se viese comprometida.
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p dir=ltr align=justify&gt;
Como vemos este pequeño truco es realmente útil para no interrumpir en ningún momento
el funcionamiento de la aplicación Azure, cosa que sí tendríamos que hacer en caso
de que sólo existiera una clave.
&lt;/p&gt;
&lt;p dir=ltr align=justify&gt;
Espero que lo encuentres útil :-)
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.jasoft.org/blog/aggbug.ashx?id=d72c289a-996d-4917-8f53-d33f41df8c7e" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
&lt;a href="http://www.jasoft.org"&gt;JASoft.org&lt;/a&gt;: El Blog de Jose Alarcón. Programación
.NET y mucho más.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;S&amp;iacute;gueme en:&lt;/b&gt; &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/jm_alarcon"&gt;Twitter
JM Alarc&amp;oacute;n&lt;/a&gt; | &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/campusMVP"&gt;Twitter
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/facebook.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.facebook.com/campusMVP"&gt;Facebook
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/email.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.campusmvp.com/CampusMVP/Bolet%EDn.htm"&gt;Bolet&amp;iacute;n
campusMVP&lt;/a&gt;</description>
      <comments>http://www.jasoft.org/blog/CommentView,guid,d72c289a-996d-4917-8f53-d33f41df8c7e.aspx</comments>
      <category>Azure</category>
    </item>
    <item>
      <trackback:ping>http://www.jasoft.org/blog/Trackback.aspx?guid=d071b2ce-4117-414e-a7e9-71008b19350e</trackback:ping>
      <pingback:server>http://www.jasoft.org/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.jasoft.org/blog/PermaLink,guid,d071b2ce-4117-414e-a7e9-71008b19350e.aspx</pingback:target>
      <dc:creator>José Manuel Alarcon</dc:creator>
      <wfw:comment>http://www.jasoft.org/blog/CommentView,guid,d071b2ce-4117-414e-a7e9-71008b19350e.aspx</wfw:comment>
      <wfw:commentRss>http://www.jasoft.org/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=d071b2ce-4117-414e-a7e9-71008b19350e</wfw:commentRss>
      <slash:comments>6</slash:comments>
      <title>Una reflexión para jefes, responsables, directores... y también para profesionales TIC</title>
      <guid isPermaLink="false">http://www.jasoft.org/blog/PermaLink,guid,d071b2ce-4117-414e-a7e9-71008b19350e.aspx</guid>
      <link>http://www.jasoft.org/blog/PermaLink,guid,d071b2ce-4117-414e-a7e9-71008b19350e.aspx</link>
      <pubDate>Sun, 17 Jan 2010 18:20:06 GMT</pubDate>
      <description>&lt;p align=justify&gt;
Una situación muy común en las empresas cuando les hablas de formación se produce
cuando los responsables de RRHH/Equipos/Proyectos te dicen que &lt;strong&gt;no forman a
su gente porque si lo hacen luego éstos se les marchan a la competencia&lt;/strong&gt;.
Pasa constantemente.
&lt;/p&gt;
&lt;p align=justify&gt;
Es cierto que la formación mejora la empleabilidad de la gente. De eso no hay duda.
Pero el que se vayan o se queden depende fundamentalmente de que la empresa ponga
los medios y -sobre todo- las condiciones para "fidelizar" al empleado, y que por
lo tanto éste desee permanecer en ella, porque está motivado, tiene posibilidades
de mejorar y sobre todo se sienta realizado en el plano laboral. 
&lt;/p&gt;
&lt;p align=justify&gt;
Si un trabajador se marcha tras la formación es que &lt;strong&gt;ya deseaba irse antes
de la formación&lt;/strong&gt;. Es decir, no existe una relación de causalidad entre formar
a una persona y que se quiera marchar de la empresa, como es obvio. Es más, el hecho
de que la empresa no les brinde la oportunidad de formarse &lt;strong&gt;es una razón más
para querer abandonarla&lt;/strong&gt;, pues no se apuesta por esa persona. Claro que la
persona también tiene que ser de una determinada forma, y es este tipo de trabajador
al que se debiera apoyar.
&lt;/p&gt;
&lt;p align=justify&gt;
En la actual sociedad competitiva y globalizada, donde las barreras de entrada a muchos
negocios y actividades se han reducido o, directamente, han desaparecido, las empresas
deben saber responder con celeridad a los cambios. Es más, deben en realidad tratar
de adelantarse a los cambios y tendencias. En el ámbito tecnológico en el que nos
movemos la audiencia de mi blog y yo, la única constante es el cambio.
&lt;/p&gt;
&lt;p align=justify&gt;
La verdadera formación continua no sólo se trata del aprendizaje de una determinada
disciplina técnica o competencia, sino que implica también "vivir en el mundo", comprender
lo que te rodea, estar al tanto de los cambios y tendencias importantes que influyen
o influirán a tu trabajo. Sólo de este modo podrán los trabajadores ayudar a su empresa
a mejorar,&amp;nbsp;a anticiparse, a ser diferente.
&lt;/p&gt;
&lt;p align=justify&gt;
Obviamente esto implica no sólo&amp;nbsp;que&amp;nbsp;la&amp;nbsp;empresa brinde la oportunidad
de hacerlo, sino también trabajadores que tengan interés por ello. Estas personas
son algo más que trabajadores, son &lt;strong&gt;profesionales&lt;/strong&gt;.
&lt;/p&gt;
&lt;p align=justify&gt;
Lo que expongo se aplica a cualquier trabajo que implique la realización de tareas
que no sean mecánicas. En el caso de trabajadores de "cuello blanco" -los que se han
dado en llamar "trabajadores del conocimiento"- son la práctica totalidad de los puestos. 
&lt;/p&gt;
&lt;p align=justify&gt;
En el caso concreto de los técnicos TIC esto último es especialmente cierto. El que
se haya metido a programador, administrador de sistemas, etc.. pensando en que no
se va a formar hasta el fin de sus días está muy equivocado. Sorprende entrevistar
a recien titulados en informática que creen que por haber estudiado esta carrera ya
saben todo lo que necesitan. También existe otra categoría de informáticos, muy común,
cuya única formación es buscar en Internet la solución concreta al problema concreto
que tienen en cada momento, pero sin ir más allá. ¿Cuántos programadores conoces que
dicen que al terminar su jornada laboral no quieren tocar un ordenador?.
&lt;/p&gt;
&lt;p align=justify&gt;
No son precisamente estos últimos aquellos que las empresas deben cuidar y apostar
por su formación. 
&lt;/p&gt;
&lt;p align=justify&gt;
Pienso que las empresas, más que preocuparse porque si forman a los trabajadores éstos
se les van a marchar, &lt;strong&gt;deberían preocuparse porque si no los forman, a lo mejor,
se les quedan&lt;/strong&gt;. Y esto sí que será un problema a largo plazo ;-)
&lt;/p&gt;
&lt;p align=justify&gt;
En fin, esta es&amp;nbsp;mi reflexión personal para una tarde domingo lluviosa, sin nada
mejor que hacer, y espero que se me haya entendido&amp;nbsp;:-)
&lt;/p&gt;
&lt;p align=center&gt;
&lt;img border=0 src="http://www.jasoft.org/blog/content/binary/Empleado Malo.jpg"&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.jasoft.org/blog/aggbug.ashx?id=d071b2ce-4117-414e-a7e9-71008b19350e" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
&lt;a href="http://www.jasoft.org"&gt;JASoft.org&lt;/a&gt;: El Blog de Jose Alarcón. Programación
.NET y mucho más.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;S&amp;iacute;gueme en:&lt;/b&gt; &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/jm_alarcon"&gt;Twitter
JM Alarc&amp;oacute;n&lt;/a&gt; | &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/campusMVP"&gt;Twitter
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/facebook.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.facebook.com/campusMVP"&gt;Facebook
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/email.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.campusmvp.com/CampusMVP/Bolet%EDn.htm"&gt;Bolet&amp;iacute;n
campusMVP&lt;/a&gt;</description>
      <comments>http://www.jasoft.org/blog/CommentView,guid,d071b2ce-4117-414e-a7e9-71008b19350e.aspx</comments>
      <category>Mundo TIC</category>
    </item>
    <item>
      <trackback:ping>http://www.jasoft.org/blog/Trackback.aspx?guid=677a103f-489a-4f72-9e0d-60a6e25cc8c6</trackback:ping>
      <pingback:server>http://www.jasoft.org/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.jasoft.org/blog/PermaLink,guid,677a103f-489a-4f72-9e0d-60a6e25cc8c6.aspx</pingback:target>
      <dc:creator>José Manuel Alarcon</dc:creator>
      <wfw:comment>http://www.jasoft.org/blog/CommentView,guid,677a103f-489a-4f72-9e0d-60a6e25cc8c6.aspx</wfw:comment>
      <wfw:commentRss>http://www.jasoft.org/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=677a103f-489a-4f72-9e0d-60a6e25cc8c6</wfw:commentRss>
      <title>En Krasis buscamos técnico de marketing y comercial ¿sabes de alguien?</title>
      <guid isPermaLink="false">http://www.jasoft.org/blog/PermaLink,guid,677a103f-489a-4f72-9e0d-60a6e25cc8c6.aspx</guid>
      <link>http://www.jasoft.org/blog/PermaLink,guid,677a103f-489a-4f72-9e0d-60a6e25cc8c6.aspx</link>
      <pubDate>Wed, 13 Jan 2010 12:58:09 GMT</pubDate>
      <description>&lt;p align=justify&gt;
&lt;img style="WIDTH: 242px; HEIGHT: 270px" border=0 hspace=10 alt="Únete a nosotros" align=right src="http://www.krasis.com/krasis/img/unete.jpg"&gt;
&lt;/p&gt;
&lt;p align=justify&gt;
En Krasis estamos buscando personas motivadas para incorporarse a nuestro equipo de
Marketing:
&lt;/p&gt;
&lt;p align=justify&gt;
&lt;img style="WIDTH: 8px; HEIGHT: 11px" border=0 hspace=5 alt="" align=absMiddle src="http://www.krasis.com/krasis/img/flecha.gif"&gt;&lt;strong&gt;Técnico
de Marketing Formación - Vigo - Enero 2010&lt;/strong&gt;
&lt;/p&gt;
&lt;blockquote style="MARGIN-RIGHT: 0px" dir=ltr&gt; 
&lt;p align=justify&gt;
El candidato se responsabilizará de las tareas de Marketing del área de Formación.
Entre sus tareas estarán:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;div align=justify&gt;Identificación de posibles clientes
&lt;/div&gt;
&lt;li&gt;
&lt;div align=justify&gt;Ejecución y seguimiento de campañas de marketing.
&lt;/div&gt;
&lt;li&gt;
&lt;div align=justify&gt;Análisis de mercado y seguimiento de la competencia.
&lt;/div&gt;
&lt;li&gt;
&lt;div align=justify&gt;Coordinación de campañas de publicidad.
&lt;/div&gt;
&lt;li&gt;
&lt;div align=justify&gt;Relación con clientes.
&lt;/div&gt;
&lt;li&gt;
&lt;div align=justify&gt;Relación con Microsoft y partners.
&lt;/div&gt;
&lt;li&gt;
&lt;div align=justify&gt;Gestión del presupuesto de MK asignado.
&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p align=justify&gt;
Buscamos a una persona en el &lt;strong&gt;área de Vigo&lt;/strong&gt;, de &lt;strong&gt;carácter resolutivo&lt;/strong&gt;,
con experiencia en &lt;strong&gt;marketing on-line&lt;/strong&gt;, buen nivel de &lt;strong&gt;inglés&lt;/strong&gt; y
especial &lt;strong&gt;gusto por Internet&lt;/strong&gt; y los medios digitales. Idealmente el
candidato provendría del sector y conocería el ámbito de las certificaciones y formación
en tecnología Microsoft, pero no es indispensable. 
&lt;br&gt;
&lt;br&gt;
¡Incorporación inmediata!&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;strong&gt;Escríbenos &lt;/strong&gt;un
email con el asunto "TM_VGO_011309" a&lt;img style="WIDTH: 104px; HEIGHT: 19px" border=0 hspace=0 alt="" align=absMiddle src="http://www.krasis.com/krasis/img/infomail.gif"&gt;
&lt;/p&gt;
&lt;/blockquote&gt;&lt;img width="0" height="0" src="http://www.jasoft.org/blog/aggbug.ashx?id=677a103f-489a-4f72-9e0d-60a6e25cc8c6" /&gt;
&lt;br /&gt;
&lt;hr /&gt;
&lt;a href="http://www.jasoft.org"&gt;JASoft.org&lt;/a&gt;: El Blog de Jose Alarcón. Programación
.NET y mucho más.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;S&amp;iacute;gueme en:&lt;/b&gt; &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/jm_alarcon"&gt;Twitter
JM Alarc&amp;oacute;n&lt;/a&gt; | &lt;img src="http://www.jasoft.org/twitter.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://twitter.com/campusMVP"&gt;Twitter
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/facebook.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.facebook.com/campusMVP"&gt;Facebook
campusMVP&lt;/a&gt; | &lt;img src="http://www.jasoft.org/email.gif" border="0" valign="absmiddle" hspace="5" /&gt;&lt;a target=_blank class="TitleLinkStyle" href="http://www.campusmvp.com/CampusMVP/Bolet%EDn.htm"&gt;Bolet&amp;iacute;n
campusMVP&lt;/a&gt;</description>
      <comments>http://www.jasoft.org/blog/CommentView,guid,677a103f-489a-4f72-9e0d-60a6e25cc8c6.aspx</comments>
      <category>Off-Topic</category>
    </item>
  </channel>
</rss>