<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-7207912301344012238</atom:id><lastBuildDate>Wed, 14 Dec 2011 22:30:57 +0000</lastBuildDate><category>xml externo</category><category>Evento</category><category>DTD</category><category>xml</category><category>Visual Studio</category><category>lifecycle</category><category>herramienta</category><category>Twitter</category><category>raona</category><category>Microsoft</category><category>bug</category><category>dispose</category><category>.Net</category><category>SharePoint</category><category>Semblio</category><category>CEUS</category><category>demo</category><category>validar</category><category>SPDisposeCheck</category><category>C#</category><category>educación</category><category>WebPart</category><category>Moonlight</category><category>Windows Day</category><category>doble postback</category><category>Surface</category><category>ASP.Net</category><category>SharePoint Day</category><category>postback fantasma</category><category>Ciclo de vida</category><category>Blog</category><category>Barcelona</category><category>Silverlight</category><title>Thinking in SharePoint</title><description>Blog sobre desarrollo en la plataforma .Net, centrado en Silverlight y SharePoint</description><link>http://thinking-in-sharepoint.blogspot.com/</link><managingEditor>noreply@blogger.com (Miguel Ocaña)</managingEditor><generator>Blogger</generator><openSearch:totalResults>19</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/ThinkingInSharepoint" /><feedburner:info uri="thinkinginsharepoint" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><geo:lat>40.45975628329196</geo:lat><geo:long>-3.6904191970825195</geo:long><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-1179090060557116084</guid><pubDate>Wed, 11 Nov 2009 18:28:00 +0000</pubDate><atom:updated>2009-11-11T19:28:00.206+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint</category><title>¿Qué son y qué aportan los formularios personalizados a SharePoint?</title><description>&lt;p&gt;SharePoint en sus versiones de &lt;strong&gt;2007&lt;/strong&gt; crea formularios de entrada de datos basándose en los &lt;a href="http://geeks.ms/blogs/jdieguez/archive/2008/01/26/tipo-de-contenido-en-sharepoint.aspx"&gt;Tipos de Contenido&lt;/a&gt; (&lt;strong&gt;Content Types&lt;/strong&gt;) de las listas. Lo hace de forma dinámica de modo que si por ejemplo añadimos una nueva columna de tipo texto, el formulario presentará una nueva caja de texto para que el usuario rellene ese nuevo metadato. &lt;/p&gt;  &lt;p&gt;También se pueden crear formularios personalizados con &lt;a href="http://office.microsoft.com/es-es/infopath/HA101635773082.aspx"&gt;&lt;strong&gt;InfoPath&lt;/strong&gt;&lt;/a&gt;, y los podremos publicar en web en la versión de MOSS 2007, pero en esta ocasión me voy a referir a los formularios que proporciona SharePoint por defecto, siendo &lt;strong&gt;válido&lt;/strong&gt; tanto para &lt;strong&gt;WSS 3.0&lt;/strong&gt; como para &lt;strong&gt;MOSS 2007&lt;/strong&gt;.&lt;/p&gt; Estos formularios muestran las entradas de datos, es decir las cajas de texto, los desplegables, etc... en el orden definido para las columnas en la lista, y uno detrás de otro, por lo que, en el momento en que tengamos más de diez campos, deberemos usar el scroll para desplazarnos por la página, con consecuencias en la &lt;strong&gt;usabilidad&lt;/strong&gt; del mismo: El usuario se verá agobiado ante la obligación de rellenar tantos campos, y si puede pronto dejará de utilizarlo.  &lt;p&gt;Sin embargo, si customizamos estos formularios con &lt;a href="http://office.microsoft.com/es-es/sharepointdesigner/FX100487633082.aspx"&gt;&lt;strong&gt;SharePoint Designer&lt;/strong&gt;&lt;/a&gt;, podemos dar otro aspecto a esta entrada de datos de forma &lt;strong&gt;muy rápida&lt;/strong&gt;. &lt;/p&gt;  &lt;p&gt;Os pongo un ejemplo real de un formulario realizado para un cliente. Siento las manchas negras pero no me permiten revelar datos importantes :)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_BSO4WeDgMKI/SvroIpu8-1I/AAAAAAAAAEY/O9cEMD_GoRc/s1600-h/Untitled%5B7%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Untitled" border="0" alt="Untitled" src="http://lh5.ggpht.com/_BSO4WeDgMKI/SvroJLNaOJI/AAAAAAAAAEc/MlfPbg9zpO0/Untitled_thumb%5B3%5D.png?imgmax=800" width="694" height="662" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Si os fijáis hemos metido unos títulos diferenciando las distintas secciones de entrada de datos del formulario, y no sólo eso, en las dos primeras mostramos datos no editables (Nombre y apellidos, NIF del cliente, etc…) provenientes de una búsqueda previa, evitando que los tenga que volver a rellenar y los posibles fallos que se producirían en ese proceso.&lt;/p&gt;  &lt;p&gt;Pero las posibilidades de personalización no acaban aquí, fijaos en el siguiente formulario:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_BSO4WeDgMKI/SvroJx3QT_I/AAAAAAAAAEg/N9UVMLeuyWU/s1600-h/Untitled2%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Untitled2" border="0" alt="Untitled2" src="http://lh3.ggpht.com/_BSO4WeDgMKI/SvroKf2n29I/AAAAAAAAAEk/NIyNpfhFaCU/Untitled2_thumb%5B2%5D.png?imgmax=800" width="691" height="514" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Esta vez se trata de otro cliente que solicitaba una gestión de reclamaciones en diferentes fases, esto es, las reclamaciones primero entraban en un área en la que se rellenaban ciertos datos, después pasaba a otro departamento que rellenaba otra parte, etc…&lt;/p&gt;  &lt;p&gt;La solución propuesta fue poner una serie de &lt;strong&gt;pestañas&lt;/strong&gt; (con un pequeño javascript), que simbolizaran las distintas situaciones en las que se encontraban las reclamaciones, y cuando abres el formulario, se sitúa en la pestaña que debes rellenar. Siento otra vez las manchas negras, pero es mi obligación.&lt;/p&gt;  &lt;p&gt;Por supuesto, &lt;strong&gt;la mayor ventaja&lt;/strong&gt; de todo es que al editar este formulario no perdemos la lógica que se encuentra tras él, es decir, SharePoint seguirá almacenando los valores introducidos en las columnas o &lt;strong&gt;metadatos&lt;/strong&gt; de nuestro ítem (o documento).&lt;/p&gt;  &lt;p&gt;En la próxima entrada veremos cómo es posible hacer estas modificaciones a los formularios de forma rápida y sin morir en el intento.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-1179090060557116084?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=ocPB8d38Icw:VuaNu_CRQAo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=ocPB8d38Icw:VuaNu_CRQAo:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/ocPB8d38Icw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/ocPB8d38Icw/que-son-y-que-aportan-los-formularios.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/_BSO4WeDgMKI/SvroJLNaOJI/AAAAAAAAAEc/MlfPbg9zpO0/s72-c/Untitled_thumb%5B3%5D.png?imgmax=800" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/11/que-son-y-que-aportan-los-formularios.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-8946619968481492254</guid><pubDate>Thu, 05 Nov 2009 09:31:00 +0000</pubDate><atom:updated>2009-11-05T10:32:22.337+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint</category><category domain="http://www.blogger.com/atom/ns#">raona</category><category domain="http://www.blogger.com/atom/ns#">Microsoft</category><category domain="http://www.blogger.com/atom/ns#">CEUS</category><title>C.E.U.S. V el 17 de Noviembre</title><description>&lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Otro año más se acerca el evento de SharePoint más importante de España, la &lt;strong&gt;Conferencia Española de Usuarios de SharePoint&lt;/strong&gt;, esta vez en su quinta edición, y en la que &lt;a href="http://www.raona.com/es_es/Paginas/Home.aspx"&gt;raona&lt;/a&gt; vuelve a participar como patrocinador oro.&lt;/p&gt;  &lt;p&gt;El evento se realizará el día &lt;strong&gt;17 de Noviembre&lt;/strong&gt;, y como en otras ocasiones, en el Hotel &lt;strong&gt;Eurobuilding&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;También repetimos con la estructura de las charlas, una sesión &lt;strong&gt;por la mañana&lt;/strong&gt; común para todo el mundo con las charlas &lt;strong&gt;más importantes&lt;/strong&gt;, y por la &lt;strong&gt;tarde&lt;/strong&gt; diferentes conferencias sobre varios temas divididas en &lt;strong&gt;8 salas&lt;/strong&gt; diferentes para optar por las que más nos interese. Como novedad de 17.30 a 18.15 habrá una sesión de cierre en la que se hablará sobre &lt;a href="http://www.raona.com/ES_ES/OFFERING/INFORMATIONWORKER/SHAREPOINT/Paginas/Sharepoint-2010.aspx"&gt;&lt;strong&gt;SharePoint 2010&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Esta es la planificación común de la mañana:&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div align="center"&gt;   &lt;table border="1" cellspacing="0" cellpadding="2" width="400" align="center"&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td valign="top" width="197"&gt;           &lt;p align="left"&gt;&lt;em&gt;10:00 – 10:15&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="201"&gt;           &lt;p align="left"&gt;&lt;em&gt;Introducción a CEUS 2009&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="197"&gt;           &lt;p align="left"&gt;&lt;em&gt;10:15 – 10:45&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="201"&gt;           &lt;p align="left"&gt;&lt;em&gt;Caso de Cliente: Caja Castilla la Mancha&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="197"&gt;           &lt;p align="left"&gt;&lt;em&gt;10:45 – 11:15&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="201"&gt;           &lt;p align="left"&gt;&lt;em&gt;Caso de Cliente: Diasa Informática&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="197"&gt;           &lt;p align="left"&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="201"&gt;           &lt;p align="left"&gt;&lt;em&gt;Descanso&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="197"&gt;           &lt;p align="left"&gt;&lt;em&gt;11:30 – 12:00&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="201"&gt;           &lt;p align="left"&gt;&lt;em&gt;Caso de Cliente: Complejo Hospitalario Universitario de A Coruña&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td width="197"&gt;           &lt;h4&gt;&lt;strong&gt;&lt;em&gt;12:00 – 12:30&lt;/em&gt;&lt;/strong&gt;&lt;/h4&gt;         &lt;/td&gt;          &lt;td width="201"&gt;           &lt;h4&gt;&lt;strong&gt;&lt;em&gt;Caso de Cliente: &lt;a href="http://www.ecoembes.com/es/Paginas/portada.aspx"&gt;Ecoembes&lt;/a&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/h4&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="197"&gt;           &lt;p align="left"&gt;&lt;em&gt;12:30 – 13:00&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="202"&gt;           &lt;p align="left"&gt;&lt;em&gt;Caso de Cliente: SUGES – Un año después&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="196"&gt;           &lt;p align="left"&gt;&lt;em&gt;13:00 – 13:15&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="202"&gt;           &lt;p align="left"&gt;&lt;em&gt;Novedades SharePoint&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="196"&gt;           &lt;p align="left"&gt;&lt;em&gt;13:15 – 13:30&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="202"&gt;           &lt;p align="left"&gt;&lt;em&gt;Servicios On-line Complementarios&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="196"&gt;           &lt;p align="left"&gt;&lt;em&gt;13:30 – 13:45&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="202"&gt;           &lt;p align="left"&gt;&lt;em&gt;¿Por qué Exchange 2010?&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td valign="top" width="196"&gt;           &lt;p align="left"&gt;&lt;em&gt;13:45 – 14:00&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td valign="top" width="203"&gt;           &lt;p align="left"&gt;&lt;em&gt;Anticipo Office 2010&lt;/em&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt; &lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Destaco la charla sobre &lt;strong&gt;&lt;a href="http://www.ecoembes.com/es/Paginas/portada.aspx"&gt;Ecoembes&lt;/a&gt;&lt;/strong&gt;, uno de los clientes más importantes de raona, en la que hablarán &lt;strong&gt;Francisco Ariza&lt;/strong&gt; (Subdirector de Organización y Sistemas de Ecoembes) y &lt;strong&gt;Pablo Peris&lt;/strong&gt; (director de proyectos en raona).&lt;/p&gt;  &lt;p&gt;Para las charlas de la tarde y si aceptáis mi sugerencia, os recomiendo &lt;em&gt;El adiós al BI tradicional con Microsoft&lt;/em&gt; en la que hablarán Samuel Casanova y Christian Montenegro, y &lt;em&gt;Gestión de proyectos en un entorno industrial&lt;/em&gt; en la que hablará Jorge Ramo.&lt;/p&gt;  &lt;p&gt;El programa completo y el registro los podéis ver pulsando en la invitación:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.raona.com/es_es/Events/Paginas/CEUS-V.aspx"&gt;&lt;img style="display: block; float: none; margin-left: auto; margin-right: auto" border="0" alt="" src="http://image.email.microsoftemail.com/lib/fec4157370600275/m/1/index58_09_02.jpg" width="600" height="975" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Por último tengo que decir que me será imposible asistir al evento, muy a mi pesar, pero estaré disfrutando del &lt;strong&gt;primer curso de desarrollo sobre SharePoint 2010 que se realiza en Europa&lt;/strong&gt;, por lo que esa semana me encontraré en &lt;strong&gt;Berlín&lt;/strong&gt;. Cuando vuelva me pondré al día con todas las novedades del evento.&lt;/p&gt;  &lt;p&gt;Por supuesto os iré contando todo lo que vaya aprendiendo sobre esta nueva versión de SharePoint aquí en el blog, ¡manteneos atentos!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-8946619968481492254?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=snEKl_tdyGg:UE5CNyezEWM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=snEKl_tdyGg:UE5CNyezEWM:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/snEKl_tdyGg" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/snEKl_tdyGg/ceus-v-el-17-de-noviembre.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/11/ceus-v-el-17-de-noviembre.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-924890208875913089</guid><pubDate>Mon, 02 Nov 2009 21:30:00 +0000</pubDate><atom:updated>2009-11-02T22:31:13.457+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint</category><category domain="http://www.blogger.com/atom/ns#">Twitter</category><category domain="http://www.blogger.com/atom/ns#">Silverlight</category><title>Listas Twitter sobre SharePoint y Silverlight</title><description>&lt;p&gt;Como sabéis &lt;a href="http://twitter.com/ocana"&gt;soy usuario de Twitter&lt;/a&gt; desde hace mucho tiempo (aquí en el blog tenéis mi perfil en el menú de la derecha), y hace poco que se ha incorporado una nueva funcionalidad, la de creación de &lt;strong&gt;listas&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;Esta funcionalidad nos permite clasificar a la gente que seguimos (&lt;strong&gt;following&lt;/strong&gt;) para recibir información relacionada directamente con esos temas, pero también incluye una posibilidad a mi juicio muy interesante: hacer públicas estas listas de usuarios.&lt;/p&gt;  &lt;p&gt;&lt;img style="display: block; float: none; margin-left: auto; margin-right: auto" src="http://www.averyschools.net/averyschools/lib/averyschools/Twitter-Logo.png" width="234" height="234" /&gt;&lt;/p&gt;  &lt;p&gt;Ya nadie duda de la capacidad de Twitter para mostrar la información de forma casi &lt;strong&gt;instantánea&lt;/strong&gt; al momento en que sucede, si quieres enterarte de una noticia, seguir un evento, etc… lo mejor es consultar en twitter, y la herramienta cada día cobra más fuerza como nos demuestra la última funcionalidad del buscador &lt;strong&gt;Bing&lt;/strong&gt;, &lt;a href="http://www.bing.com/twitter"&gt;la búsqueda en Twitter&lt;/a&gt;, o la próxima actualización de xBox 360, que &lt;a href="http://www.vidaextra.com/eventos/facebook-twitter-y-lastfm-llegan-a-xbox-e3-2009"&gt;añade twitter a nuestra consola&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Pues sin más quiero compartir con vosotros &lt;strong&gt;mis listas&lt;/strong&gt; de usuarios de &lt;strong&gt;SharePoint&lt;/strong&gt; y de &lt;strong&gt;Silverlight&lt;/strong&gt;, con gente que creo que merece la pena seguir si se quiere estar al día en estos temas que evolucionan tan rápidamente:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://twitter.com/ocana/sharepoint" href="http://twitter.com/ocana/sharepoint"&gt;http://twitter.com/ocana/sharepoint&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://twitter.com/ocana/silverlight" href="http://twitter.com/ocana/silverlight"&gt;http://twitter.com/ocana/silverlight&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;¡Espero que os sean de utilidad!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-924890208875913089?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=oTSOtQZLs44:s3RWBtR46Mo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=oTSOtQZLs44:s3RWBtR46Mo:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/oTSOtQZLs44" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/oTSOtQZLs44/listas-twitter-sobre-sharepoint-y.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/11/listas-twitter-sobre-sharepoint-y.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-4627159197987189888</guid><pubDate>Tue, 27 Oct 2009 20:32:00 +0000</pubDate><atom:updated>2009-10-27T21:32:51.078+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">bug</category><category domain="http://www.blogger.com/atom/ns#">Visual Studio</category><category domain="http://www.blogger.com/atom/ns#">.Net</category><title>Visual Studio 2010 Beta 2 – The application cannot start</title><description>&lt;p&gt;Estas semanas las novedades llevan un ritmo imparable, por un lado aparecen millones de Post sobre la nueva versión de SharePoint, &lt;a href="http://sharepoint2010.microsoft.com/Pages/default.aspx"&gt;&lt;strong&gt;SharePoint 2010&lt;/strong&gt;&lt;/a&gt;, presentada en la &lt;a href="http://www.mssharepointconference.com/Pages/default.aspx"&gt;&lt;strong&gt;SharePoint Conference&lt;/strong&gt; de Las Vegas&lt;/a&gt;. Desde entonces la información no ha parado de fluir: tutoriales, primeros ejemplos con versiones a las que no todo el mundo tiene acceso, etc..&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_BSO4WeDgMKI/SudY8MHo6oI/AAAAAAAAAEI/_eOUFxG-rUw/s1600-h/logo_vstudio%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px" title="logo_vstudio" border="0" alt="logo_vstudio" src="http://lh5.ggpht.com/_BSO4WeDgMKI/SudY8gtHNhI/AAAAAAAAAEM/1V_C36B4u90/logo_vstudio_thumb%5B1%5D.png?imgmax=800" width="328" height="52" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Pero por otra parte ha habido otro gran anuncio, la liberación de la&lt;strong&gt; Beta 2 de Visual Studio 2010&lt;/strong&gt;, con un montón de novedades, mucha mejor optimización, y que podéis &lt;a href="http://msdn.microsoft.com/es-es/vstudio/dd582936%28en-us%29.aspx"&gt;descargar desde aquí&lt;/a&gt;. Me permito aconsejaros que sigáis el tutorial que publica mi amigo &lt;a href="http://twitter.com/rdiazconcha"&gt;Rodrigo Díaz Concha&lt;/a&gt; en &lt;a href="http://rdiazconcha.com/?p=399"&gt;su blog&lt;/a&gt; para que no tengáis sorpresas desagradables sobre todo con &lt;strong&gt;Silverlight 3&lt;/strong&gt;, y es que es lo que tienen las versiones beta, que nos encontramos con problemas inesperados como el que me he encontrado esta tarde al intentar arrancar la aplicación:&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;The application cannot start&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Ni más ni menos…&amp;#160; así que me dispuse a reparar la instalación… Sin éxito. después de dos reinicios incluidos todo seguía igual.&lt;/p&gt;  &lt;p&gt;Por suerte no he sido el único que ha tenido este problema y &lt;a href="http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=499244"&gt;Aquí&lt;/a&gt; encontré la solución:&lt;/p&gt;  &lt;p&gt;Desde consola ir a la ruta: &lt;strong&gt;C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;desde ahí ejecutar &lt;strong&gt;devenv /resetuserdata&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;¡Espero haber podido ahorraros algún susto! :)&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-4627159197987189888?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=rzW3lvuicao:rUUguwqvnUo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=rzW3lvuicao:rUUguwqvnUo:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/rzW3lvuicao" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/rzW3lvuicao/visual-studio-2010-beta-2-application.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://lh5.ggpht.com/_BSO4WeDgMKI/SudY8gtHNhI/AAAAAAAAAEM/1V_C36B4u90/s72-c/logo_vstudio_thumb%5B1%5D.png?imgmax=800" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/10/visual-studio-2010-beta-2-application.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-7266911284559790872</guid><pubDate>Fri, 16 Oct 2009 16:06:00 +0000</pubDate><atom:updated>2009-10-16T23:58:48.641+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Barcelona</category><category domain="http://www.blogger.com/atom/ns#">SharePoint</category><category domain="http://www.blogger.com/atom/ns#">Evento</category><category domain="http://www.blogger.com/atom/ns#">Silverlight</category><title>Presentación Silverlight Evento UX</title><description>Dado que en el próximo evento, tal y como comentaba &lt;a href="http://thinking-in-sharepoint.blogspot.com/2009/10/evento-sobre-silverlight-y-surface.html"&gt;en el post anterior&lt;/a&gt;, hablaré sobre Silverlight, &lt;a href="http://soy-user-interface.blogspot.com/"&gt;Víctor&lt;/a&gt; y yo hemos decidido que &lt;strong&gt;el movimiento se demuestra andando&lt;/strong&gt;, así que nuestra presentación la hemos realizado &lt;strong&gt;íntegramente en Silverlight&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;Por supuesto el valor está en el contenido de nuestra charla, ¡así que no os la perdáis!&lt;br /&gt;&lt;br /&gt;&lt;iframe style="WIDTH: 700px; HEIGHT: 400px" src="http://silverlight.services.live.com/invoke/108822/EventoUX/iframe.html" frameborder="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;Si estáis intersados en &lt;strong&gt;cómo se hizo&lt;/strong&gt; esta presentación, podemos poner el código o hacer algunos tutoriales al respecto, sólo tenéis que pedirlo :)&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#ff0000;"&gt;&lt;strong&gt;Actualización&lt;/strong&gt;&lt;/span&gt;: El modo pantalla completa de la presentación no funciona correctamente en la versión puesta en el blog, ya que lo estoy introduciendo como un iframe con un tamaño fijo. He optado por deshabilitar el botón.&lt;br /&gt;Para ver la versión redimensionable, accede directamente a la presentación &lt;a href="http://silverlight.services.live.com/invoke/108822/EventoUX/iframe.html?pragma=no-cache"&gt;desde este link&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-7266911284559790872?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=UzNGvq5_too:B0XOBhxhrAk:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=UzNGvq5_too:B0XOBhxhrAk:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/UzNGvq5_too" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/UzNGvq5_too/presentacion-silverlight-evento-ux.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/10/presentacion-silverlight-evento-ux.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-3286871939344290107</guid><pubDate>Tue, 06 Oct 2009 14:13:00 +0000</pubDate><atom:updated>2009-10-06T17:48:19.362+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Barcelona</category><category domain="http://www.blogger.com/atom/ns#">Surface</category><category domain="http://www.blogger.com/atom/ns#">Evento</category><category domain="http://www.blogger.com/atom/ns#">Silverlight</category><title>Evento sobre Silverlight y Surface</title><description>&lt;p class="MsoNormal" style="text-align: left;"&gt;El próximo 21 de Octubre en Barcelona se celebra un evento sobre Experiencia de Usuario con Silverlight y tecnología Microsoft en el que tengo una ponencia sobre la integración de Silverlight con SharePoint, allí hablaremos no sólo sobre estas tecnologías en concreto, sino sobre cuál es el modelo de trabajo habitual entre el diseñador y el desarrollador.&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="text-align: left;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="text-align: left;"&gt;Si os interesa estáis invitados : )&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="text-align: center;" align="center"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="text-align: center;" align="center"&gt;&lt;span style=""&gt;&lt;a href="http://ems6.net/r/?E=XTC-DW5J-U4R4V-DD-HHFQ-K9U" title="Registro Gratuito - Plazas Limitadas"&gt;&lt;span style="text-decoration: none;color:blue;" &gt;&lt;img id="_x0000_i1025" src="http://www.raona.com/es_es/Events/PublishingImages/uxinvitation.jpg" style="border-style: none;" alt="Registro Gratuito - Plazas Limitadas" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-3286871939344290107?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=mHoNPgaocBE:S8iHDLRwRq8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=mHoNPgaocBE:S8iHDLRwRq8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/mHoNPgaocBE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/mHoNPgaocBE/evento-sobre-silverlight-y-surface.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/10/evento-sobre-silverlight-y-surface.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-1587377801462970489</guid><pubDate>Sun, 10 May 2009 19:25:00 +0000</pubDate><atom:updated>2009-05-12T21:23:54.320+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">SharePoint Day</category><category domain="http://www.blogger.com/atom/ns#">SharePoint</category><category domain="http://www.blogger.com/atom/ns#">raona</category><title>Sharepoint Day</title><description>&lt;a style="font-weight: bold;" href="http://www.microsoft.com/es/es/default.aspx"&gt;Microsoft &lt;/a&gt;y &lt;a style="font-weight: bold;" href="http://www.raona.com/"&gt;raona &lt;/a&gt;organizan otro año más el evento &lt;a href="http://www.raona.com/es_es/Events/Paginas/SharePointDay_Bcn.aspx"&gt;&lt;span style="font-weight: bold;"&gt;SharePoint Day&lt;/span&gt;&lt;/a&gt;, esta vez con el subtítulo &lt;span style="font-weight: bold; font-style: italic;"&gt;Sácale partido, invierte en productividad&lt;/span&gt;, os dejo con la descripción:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.raona.com/es_es/Events/Paginas/SharePointDay_Mad.aspx"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 450px; height: 109px;" src="http://4.bp.blogspot.com/_BSO4WeDgMKI/SgnLop3OL5I/AAAAAAAAADI/7tnKtIeRSNg/s320/CropperCapture%5B2%5D.Png" alt="" id="BLOGGER_PHOTO_ID_5335019132889739154" border="0" /&gt;&lt;/a&gt;&lt;span style="font-style: italic;"&gt;&lt;strong&gt;Microsoft Office SharePoint Server 2007&lt;/strong&gt; es ya un producto consolidado y extendido en el tejido empres&lt;/span&gt;&lt;span style="font-style: italic;"&gt;arial. Sin embargo, no siempre es bien conocido, explotado o amortizado. Durante el &lt;strong&gt;SharePoint Day&lt;/strong&gt; de este año, los ingenieros de raona nos invitan a &lt;strong&gt;rebajar costes aumentando nuestra productividad&lt;/strong&gt;. &lt;strong&gt;Soluciones empaquetadas, fáciles y baratas de implantar&lt;/strong&gt;, combinaciones de productos sobre las que la mayoría de las empresas ya tienen derecho de uso, y los servicios “en la nube” son algunas de las aproximaciones para lograr nuestra meta.&lt;/span&gt;"&lt;br /&gt;&lt;br /&gt;Para los asistentes al evento, que se celebrará tanto en &lt;a href="http://www.raona.com/es_es/Events/Paginas/SharePointDay_Mad.aspx"&gt;Madrid&lt;/a&gt; como en &lt;a href="http://www.raona.com/es_es/Events/Paginas/SharePointDay_Bcn.aspx"&gt;Barcelona&lt;/a&gt;, en las respectivas sedes de Microsoft, yo seré uno de los ponentes de la charla, donde os presentaremos nuestros &lt;span style="font-weight: bold;"&gt;casos de éxito&lt;/span&gt; en integraciones de &lt;span style="font-weight: bold;"&gt;SharePoint y Silverlight&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;¡No dudéis en asistir! ¡y ya sabéis que responderé cualquier duda del evento tanto en los comentarios como por email!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-1587377801462970489?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=x3a2JyzeutU:TmuaTYA5enc:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=x3a2JyzeutU:TmuaTYA5enc:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/x3a2JyzeutU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/x3a2JyzeutU/sharepoint-day.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_BSO4WeDgMKI/SgnLop3OL5I/AAAAAAAAADI/7tnKtIeRSNg/s72-c/CropperCapture%5B2%5D.Png" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/05/sharepoint-day.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-8841111658005103692</guid><pubDate>Tue, 05 May 2009 07:15:00 +0000</pubDate><atom:updated>2009-05-05T10:12:05.065+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Silverlight</category><category domain="http://www.blogger.com/atom/ns#">Moonlight</category><title>Moonlight 2.0 preview</title><description>Tras un parón en el blog sobre todo por motivos de tiempo, vuelvo a la carga con Moonlight otra vez.&lt;br /&gt;&lt;br /&gt;En &lt;a href="http://thinking-in-sharepoint.blogspot.com/2009/03/silverlight-en-linux-moonlight.html"&gt;mi entrada anterior&lt;/a&gt; hablábamos de esta versión de &lt;span style="font-weight: bold;"&gt;Silverlight &lt;/span&gt;1.0 para &lt;span style="font-weight: bold;"&gt;Linux&lt;/span&gt;, y ayer, 4 de mayo, apenas dos meses y medio después, se ha presentado la &lt;span style="font-weight: bold;"&gt;versión 2.0&lt;/span&gt; de Silverlight para sistemas Unix, por ahora en preview, en la que podemos ver los tremendos avances que han hecho los chicos del proyecto &lt;a href="http://mono-project.com/Main_Page"&gt;&lt;span style="font-weight: bold;"&gt;Mono&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Lo más destacable de esta versión, es que &lt;span style="font-weight: bold;"&gt;REALMENTE &lt;/span&gt;están lanzando un plugin para el navegador que incorpora una máquina virtual de Mono (&lt;span style="font-weight: bold;"&gt;Mono VM&lt;/span&gt;), a diferencia de la versión 1.0, que estaba basada en Javascript.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://primates.ximian.com/%7Emiguel/pictures/path3191.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 180px; height: 176px;" src="http://primates.ximian.com/%7Emiguel/pictures/path3191.png" alt="" border="0" /&gt;&lt;/a&gt;Esta Mono VM interpreta el mismo código que el &lt;a href="http://thinking-in-sharepoint.blogspot.com/2009/03/silverlight-en-linux-moonlight.html"&gt;&lt;span style="font-weight: bold;"&gt;CoreCLR&lt;/span&gt;&lt;/a&gt;, por lo que se obtendrá el mismo resultado que obtendríamos en una máquina Windows (o al menos así será con el tiempo, ya que esta versión Preview aún no pasa todos los test de Microsoft).&lt;br /&gt;&lt;br /&gt;Esto a su vez significa por ejemplo que podemos contar con &lt;span style="font-weight: bold;"&gt;todos los controles&lt;/span&gt; Silverlight incluidos en el sdk, ya que se visualizarán correctamente todos los botones, listbox, etc... sin tener que reimplementarlos :)&lt;br /&gt;&lt;br /&gt;Pero ahí no se acaban las novedades, esta versión 2.0 incluye &lt;span style="font-weight: bold;"&gt;streaming adaptativo&lt;/span&gt; (que soporta seeking y elección de la calidad), &lt;span style="font-weight: bold;"&gt;DeepZoom &lt;/span&gt;(del que hablamos &lt;a href="http://thinking-in-sharepoint.blogspot.com/2009/02/que-es-silverlight.html"&gt;en una entrada anterior&lt;/a&gt;), e incluso se han adelantado y ya han incluido características de la próxima versión que aún se encuentra en beta para Windows.&lt;br /&gt;&lt;br /&gt;Estas &lt;span style="font-weight: bold;"&gt;características de la versión 3.0&lt;/span&gt; incluyen:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Soporte de aplicaciones fuera del navegador.&lt;/li&gt;&lt;li&gt;Funciones de easing para animaciones.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;La clase &lt;a href="http://community.irritatedvowel.com/blogs/pete_browns_blog/archive/2009/03/18/Silverlight-3-_1320_-The-Bitmap-API-_2F00_-WriteableBitmap.aspx"&gt;WriteableBitmap&lt;/a&gt;.&lt;/li&gt;&lt;li&gt;Un SaveFileDialog.&lt;/li&gt;&lt;li&gt;Api extendida del DeepZoom.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Ya sólo queda felicitar a la gente de Mono, que como vemos han hecho unos avances increíbles en apenas dos meses, y animarles para que sigan a ese ritmo.&lt;br /&gt;&lt;br /&gt;Para los que quieran probar esta versión &lt;a href="http://go-mono.com/moonlight-preview/"&gt;éste es el enlace de descarga&lt;/a&gt;.&lt;br /&gt;Para los que quieran ir un paso más allá y echarle un ojo al código fuente, &lt;a href="http://ftp.novell.com/pub/mono/sources/moon/moonlight-1.9.0.tar.bz2"&gt;el enlace de descarga es éste otro&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Nota&lt;/span&gt;: La versión Preview aún ocupa 8.8 megas, y no los 3.9 que debería, esto es debido a que se incluyen puntos de interrupción para facilitar la depuración y el envío de bugs a la gente de Mono, ya que su intención es sacar &lt;span style="font-weight: bold;"&gt;actualizaciones &lt;/span&gt;del plugin &lt;span style="font-weight: bold;"&gt;cada semana&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Fuentes&lt;/span&gt;&lt;span style="font-style: italic;"&gt;:&lt;/span&gt;&lt;br /&gt;&lt;a href="http://tirania.org/blog/archive/2009/May-04.html"&gt;http://tirania.org/blog/archive/2009/May-04.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.squeedlyspooch.com/blog/"&gt;http://www.squeedlyspooch.com/blog/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-8841111658005103692?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=Q8tDDu6ryIY:sfajJ4lJmdQ:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=Q8tDDu6ryIY:sfajJ4lJmdQ:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/Q8tDDu6ryIY" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/Q8tDDu6ryIY/moonlight-20-preview.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/05/moonlight-20-preview.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-6223970389517597553</guid><pubDate>Sun, 08 Mar 2009 15:11:00 +0000</pubDate><atom:updated>2009-03-08T20:32:16.635+01:00</atom:updated><title>Silverlight en Linux: Moonlight</title><description>Continuando con la explicación de "&lt;span style="font-weight: bold;"&gt;¿qué es &lt;/span&gt;&lt;a style="font-weight: bold;" href="http://silverlight.net/"&gt;Silverlight&lt;/a&gt;?" que comencé &lt;a style="font-weight: bold;" href="http://thinking-in-sharepoint.blogspot.com/2009/02/que-es-silverlight.html"&gt;en mi anterior post&lt;/a&gt;, hoy vamos a hablar sobre otras de sus características:&lt;br /&gt;&lt;blockquote&gt;Silverlight es un plugin &lt;span style="font-weight: bold;"&gt;multinavegador &lt;/span&gt;y &lt;span style="font-weight: bold;"&gt;multiplataforma&lt;/span&gt;.&lt;/blockquote&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BSO4WeDgMKI/SbQYP8hu5eI/AAAAAAAAAC4/MyiynbBDPkc/s1600-h/microsoft_silverlight.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 101px; height: 111px;" src="http://4.bp.blogspot.com/_BSO4WeDgMKI/SbQYP8hu5eI/AAAAAAAAAC4/MyiynbBDPkc/s320/microsoft_silverlight.jpg" alt="" id="BLOGGER_PHOTO_ID_5310896522801374690" border="0" /&gt;&lt;/a&gt;¿Cómo se consigue esto? se consigue gracias a que el plugin de Silverlight incluye una versión reducida del &lt;a href="http://es.wikipedia.org/wiki/CLR"&gt;CLR&lt;/a&gt; (la máquina virtual de .Net), también llamada &lt;span style="font-weight: bold;"&gt;CoreC&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;LR&lt;/span&gt;, así como un subconjunto de clases de la &lt;a href="http://en.wikipedia.org/wiki/Base_Class_Library"&gt;BCL&lt;/a&gt; (Base Class Library), todo ello en &lt;span style="font-weight: bold;"&gt;apenas 4,5MB&lt;/span&gt;, un peso realmente pequeño y que sorprende al ver todo lo que incluye.&lt;br /&gt;&lt;br /&gt;Bien, ahora ya sabemos que para que funcione en otras plataformas, sólo es necesaria una implementación de la máquina virtual, pero... ¿Ahí termina el soporte de Microsoft?&lt;br /&gt;&lt;br /&gt;La respuesta es no, Microsoft está apostando realmente fuerte por esta tecnología, y actualmente Silverlight es soportado en los navegadores &lt;a href="http://www.microsoft.com/spain/windows/products/winfamily/ie/default.mspx"&gt;&lt;span style="font-weight: bold;"&gt;IE&lt;/span&gt;&lt;/a&gt;, &lt;a href="http://www.mozilla-europe.org/es/firefox/"&gt;&lt;span style="font-weight: bold;"&gt;Firefox&lt;/span&gt;&lt;/a&gt;, &lt;a href="http://www.google.com/chrome/index.html?hl=es"&gt;&lt;span style="font-weight: bold;"&gt;Chrome&lt;/span&gt;&lt;/a&gt;, &lt;a href="http://www.apple.com/es/safari/"&gt;&lt;span style="font-weight: bold;"&gt;Safari&lt;/span&gt;&lt;/a&gt;, y &lt;a href="http://www.opera.com/"&gt;&lt;span style="font-weight: bold;"&gt;Opera&lt;/span&gt;&lt;/a&gt;, por otra parte, si hablamos de plataformas, Silverlight es soportado también en &lt;span style="font-weight: bold;"&gt;Linux &lt;/span&gt;y &lt;span style="font-weight: bold;"&gt;Mac OS &lt;/span&gt;(tanto en PPC como en Intel).&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BSO4WeDgMKI/SbQS4NjzMmI/AAAAAAAAACo/RWLtBSGfOMs/s1600-h/moonlight_logo.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 104px; height: 131px;" src="http://2.bp.blogspot.com/_BSO4WeDgMKI/SbQS4NjzMmI/AAAAAAAAACo/RWLtBSGfOMs/s320/moonlight_logo.png" alt="" id="BLOGGER_PHOTO_ID_5310890617498448482" border="0" /&gt;&lt;/a&gt;Microsoft se encuentra actualmente involucrado colaborando en el desarrollo de la implementación de Silverlight para Linux (y para otros sistemas operativos basados en Unix), llamada &lt;a style="font-weight: bold;" href="http://www.mono-project.com/Moonlight"&gt;Moonlight&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Moonlight &lt;/span&gt;forma parte del proyecto &lt;a style="font-weight: bold;" href="http://www.mono-project.com/Main_Page"&gt;Mono&lt;/a&gt;, una implementación multiplataforma y open source del framework .Net.&lt;br /&gt;&lt;br /&gt;Como fruto de este trabajo, desde hace dos semanas se encuentra disponible la &lt;a href="http://www.novell.com/news/press/moonlight-shines-on-the-linux-desktop/"&gt;versión 1.0 de Moonlight&lt;/a&gt;, y ya se encuentran trabajando en la próxima versión.&lt;br /&gt;&lt;br /&gt;También se encuentran &lt;a href="http://blogs.msdn.com/somasegar/archive/2009/03/06/interoperability-eclipse-tools-for-silverlight.aspx"&gt;disponible desde este mismo viernes&lt;/a&gt; las &lt;span style="font-weight: bold; font-style: italic;"&gt;Eclipse Tools for Silverlight&lt;/span&gt;, un plugin de código abierto para &lt;a href="http://www.eclipse.org/"&gt;Eclipse&lt;/a&gt;, que podemos &lt;a href="http://www.eclipse4sl.org/"&gt;descargar desde aquí&lt;/a&gt;,&lt;br /&gt;&lt;br /&gt;Vemos que los avances en esta tecnología se suceden muy rápidamente, así que intentaré traeros desde aquí todas las novedades para que sigamos aprendiendo sobre esta nueva e interesante teconología.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-6223970389517597553?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=UNpRwpNvoes:PjQZWxJk9f4:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=UNpRwpNvoes:PjQZWxJk9f4:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/UNpRwpNvoes" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/UNpRwpNvoes/silverlight-en-linux-moonlight.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_BSO4WeDgMKI/SbQYP8hu5eI/AAAAAAAAAC4/MyiynbBDPkc/s72-c/microsoft_silverlight.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/03/silverlight-en-linux-moonlight.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-3137805600616272727</guid><pubDate>Mon, 02 Mar 2009 19:16:00 +0000</pubDate><atom:updated>2009-03-07T13:15:16.326+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Windows Day</category><category domain="http://www.blogger.com/atom/ns#">Evento</category><category domain="http://www.blogger.com/atom/ns#">Microsoft</category><title>Evento online: Windows Day - Tecnologías para derribar paredes</title><description>Esta semana entrada rapidita, que aún estoy recuperándome del &lt;a href="http://silverlight-tour.com.mx/"&gt;Silverlight Tour&lt;/a&gt;, y del &lt;a href="http://www.raona.com/"&gt;aniversario de la empresa&lt;/a&gt;, visita express a Barcelona incluida.&lt;br /&gt;&lt;br /&gt;Por eso sólo quiero recordaros que mañana día &lt;span style="font-weight: bold;"&gt;3 de Marzo&lt;/span&gt; se celebra el evento online &lt;span style="font-weight: bold;"&gt;Windows Day - Tecnologías para derribar paredes&lt;/span&gt;, para América latina y España.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.microsoft.com/latam/windowsday/"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 305px; height: 392px;" src="http://www.microsoft.com/latam/windowsday/images/windowsday/ws_gracias.png" alt="" border="0" /&gt;&lt;/a&gt;Esta es la descripción que encontramos en Microsoft:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.microsoft.com/latam/windowsday/images/windowsday/"&gt;&lt;/a&gt;&lt;blockquote&gt;Descubre novedades acerca de las tecnologías de implementación, administración y de desarrollo de aplicaciones en desktops con Windows Vista y con Windows 7: cómo mejorar el rendimiento, cuándo virtualizar, cómo optimizar los escritorios, incrementar la seguridad, resolver el acceso a datos y &lt;span style="font-weight: bold;"&gt;cómo crear las mejores interfaces de usuario&lt;/span&gt;. Demos y expertos en vivo respondiendo tus preguntas.&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;Sin duda una oportunidad interesante para aprender cosas nuevas, yo me quedaré con toda la parte de wpf y desarrollo de aplicaciones RIA, pero echadle un ojo a &lt;a href="http://www.microsoft.com/latam/windowsday/preshow.aspx"&gt;la agenda&lt;/a&gt;, y no dudéis en apuntaros desde &lt;a href="http://www.microsoft.com/latam/windowsday/"&gt;la web oficial&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-3137805600616272727?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=2e_WjSXvuqE:VEZNo9Su_uo:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=2e_WjSXvuqE:VEZNo9Su_uo:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/2e_WjSXvuqE" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/2e_WjSXvuqE/evento-online-windows-day-tecnologias.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/03/evento-online-windows-day-tecnologias.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-3926878097036846056</guid><pubDate>Sat, 21 Feb 2009 11:39:00 +0000</pubDate><atom:updated>2009-02-21T13:53:08.953+01:00</atom:updated><title>Visual Studio 2008 extensions for Windows SharePoint Services 3.0, v1.3 - Feb 2009 CTP</title><description>Aunque muchos de nosotros ya miramos hacia la futura versión de nuestra herramienta de trabajo, &lt;a href="http://www.microsoft.com/presspass/press/2008/sep08/09-29VS10PR.mspx"&gt;Visual Studio 2010&lt;/a&gt;, y sus prometidas &lt;a href="http://blogs.msdn.com/sharepoint/archive/2008/11/10/visual-studio-2010-tools-for-sharepoint-announced-at-teched-emea-developers-2008.aspx"&gt;mejoras que incluirá para el desarrollo en SharePoint&lt;/a&gt;, aún se puede mejorar mucho más la versión 2008, como nos demuestra la gente de Microsoft en esta nueva versión &lt;span style="font-weight: bold;"&gt;CTP&lt;/span&gt; (Community Technology Preview) de las &lt;span style="font-style: italic;"&gt;Visual Studio 2008 extensions for Windows SharePoint Services 3.0, v1.3&lt;/span&gt;  (&lt;span style="font-weight: bold;"&gt;VSeWSS 1.3&lt;/span&gt; para los amigos).&lt;br /&gt;&lt;br /&gt;Veamos qué nos ofrece esta versión:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Soporte para desarrollo y despliegue en &lt;span style="font-weight: bold;"&gt;64 bit&lt;/span&gt; (x64)&lt;/li&gt;&lt;li&gt;Nuevos &lt;span style="font-weight: bold;"&gt;menús &lt;/span&gt;para Visual Studio: &lt;span style="font-weight: bold;"&gt;Package, Retract y Quick Deploy&lt;/span&gt;, que nos permitirán empaquetar la solución sin desplegarla, desactivar y eliminar una solución activa en SharePoint, y desplegar rápidamente una solución.&lt;/li&gt;&lt;li&gt;Nuevos comandos para realizar lo anterior por consola.&lt;/li&gt;&lt;li&gt;Mejoras al &lt;a href="http://www.clikear.com/SharePoint_Basico_caracteristicafeature_16781.aspx"&gt;crear nuevas características&lt;/a&gt; (&lt;span style="font-style: italic;"&gt;Features&lt;/span&gt;):&lt;/li&gt;&lt;ul&gt;&lt;li&gt;Permitiendo definir el alcance (&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;Web&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Site&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Web Application&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Farm&lt;/span&gt;&lt;/span&gt;).&lt;/li&gt;&lt;li&gt;Permitiendo crear &lt;span style="font-style: italic; font-weight: bold;"&gt;Feature Receivers&lt;/span&gt; (que permiten ejecutar código propio cuando se instala, desinstala, activa o desactiva una característica).&lt;/li&gt;&lt;li&gt;Opcionalmente creando &lt;span style="font-style: italic;"&gt;elements.xml&lt;/span&gt; para nuestras características.&lt;/li&gt;&lt;li&gt;Permitiendo hacer "&lt;span style="font-style: italic;"&gt;Drag &amp;amp; Drop&lt;/span&gt;" de elements entre características.&lt;/li&gt;&lt;/ul&gt;&lt;li&gt;Se permite &lt;span style="font-weight: bold;"&gt;renombrar WebParts&lt;/span&gt;. Desde mi punto de vista algo realmente útil, que había que hacer cambios en bastantes sitios).&lt;/li&gt;&lt;li&gt;Soporte para &lt;span style="font-weight: bold;"&gt;despliegue automático de otros ensamblados&lt;/span&gt; (assemblies) de los que dependa nuestra solución.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Resolución de conflictos&lt;/span&gt; al desplegar soluciones desde Visual Studio, como por ejemplo los típicos errores de &lt;span style="font-weight: bold;"&gt;WebParts duplicadas&lt;/span&gt;.&lt;/li&gt;&lt;li&gt;¡Muchas más!&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Sin duda se trata de una gran cantidad de mejoras, ¡sólo nos queda esperar la versión de lanzamiento!&lt;br /&gt;&lt;br /&gt;Os dejo con la descarga:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=b2c0b628-5cab-48c1-8cae-c34c1ccbdc0a&amp;amp;DisplayLang=en"&gt;Descargar VSeWSS1.3&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-3926878097036846056?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=tv2wET1BDnk:DJhCkUpWTuY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=tv2wET1BDnk:DJhCkUpWTuY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/tv2wET1BDnk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/tv2wET1BDnk/visual-studio-2008-extensions-for.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/02/visual-studio-2008-extensions-for.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-1980409295991139850</guid><pubDate>Tue, 17 Feb 2009 09:28:00 +0000</pubDate><atom:updated>2009-02-17T13:04:04.943+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Silverlight</category><title>¿Qué es SilverLight?</title><description>Mucha gente aún se pregunta qué es &lt;a style="font-style: italic; font-weight: bold;" href="http://silverlight.net/"&gt;SilverLight&lt;/a&gt;, desde &lt;a href="http://www.microsoft.com/silverlight/default.aspx"&gt;la web de Microsoft&lt;/a&gt; obtenemos esta definición:&lt;blockquote&gt;&lt;span style="font-style: italic;"&gt;Microsoft Silverlight&lt;/span&gt; es un &lt;span style="font-weight: bold;"&gt;plug-in multinavegador, multiplataforma y multidispositivo &lt;/span&gt;para la distribución de la nueva generación de experiencias multimedia basadas en .NET, y &lt;span&gt;de &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;aplicaciones interactivas&lt;/span&gt; "ricas" para la Web.&lt;br /&gt;A través del soporte de &lt;span style="font-weight: bold;"&gt;.NET&lt;/span&gt;, de &lt;span style="font-weight: bold;"&gt;vídeo en HD&lt;/span&gt;, de &lt;span style="font-weight: bold;"&gt;streaming&lt;/span&gt; avanzado y efectivo en coste, y la incomparable interactividad que ofrece la tecnología &lt;a href="http://memorabilia.hardrock.com/"&gt;&lt;span style="font-weight: bold;"&gt;Deep Zoom&lt;/span&gt;&lt;/a&gt;, empresas y negocios podrán alcanzar nuevos mercados a través de la Web, escritorio, y dispositivos.&lt;/blockquote&gt;Es una definición con una clara orientación comercial, pero cumple con su función, por lo que en estos momentos todo el mundo habrá hecho la asociación: &lt;span style="font-style: italic; font-weight: bold;"&gt;"Silverlight es como &lt;a href="http://es.wikipedia.org/wiki/Adobe_Flash"&gt;Flash&lt;/a&gt;, pero de Microsoft"&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Sin duda ese es el gran reto de Microsoft, introducir Silverlight en un mercado donde la competencia es muy fuerte, donde la penetración de Flash llega al 95% de los navegadores, o donde &lt;a href="http://cl.sun.com/sunnews/feature/2007/070508/"&gt;JavaFX&lt;/a&gt; ya cuenta con la base de mercado de su máquina virtual.&lt;br /&gt;&lt;br /&gt;Por suerte Microsoft está apostando fuerte por esta tecnología, y ya ha llegado a conseguir un 25% de cuota de mercado (50% en algunos países), gracias a iniciativas como la &lt;a href="http://www.error500.net/articulo/juegos-olimpicos-pekin-en-internet-nbc-con-silverlight"&gt;retransmisión de las últimas olimpiadas&lt;/a&gt;, o la retransmisión de la &lt;a href="http://www.pic2009.org/"&gt;toma de posesión de Barack Obama&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 153px; height: 169px;" src="http://3.bp.blogspot.com/_BSO4WeDgMKI/SZdJAOohTZI/AAAAAAAAAB0/Ex24dYOqFDs/s320/silverlight.gif" alt="" id="BLOGGER_PHOTO_ID_5302787354528927122" border="0" /&gt;Pero bueno, dejándonos de números, podríamos destacar de Silverlight sobre todo la &lt;span style="font-weight: bold;"&gt;facilidad de programación&lt;/span&gt;, el uso de la plataforma .NET implica poder utilizar cualquiera de los lenguajes a los que estemos acostumbrados a programar, como &lt;span style="font-weight: bold;"&gt;C#&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;VB.NET&lt;/span&gt;, u otros lenguajes como &lt;span style="font-weight: bold;"&gt;Python &lt;/span&gt;o &lt;span style="font-weight: bold;"&gt;Ruby&lt;/span&gt;, así como la ventaja de disponer de herramientas muy buenas, como &lt;a href="http://es.wikipedia.org/wiki/Microsoft_Visual_Studio"&gt;Visual Studio&lt;/a&gt; o &lt;a href="http://www.microsoft.com/expression/products/Overview.aspx?key=blend"&gt;Expression Blend 2&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;La separación en dos productos también nos permite separar el &lt;span style="font-weight: bold;"&gt;trabajo gráfico&lt;/span&gt; del &lt;span style="font-weight: bold;"&gt;diseñador&lt;/span&gt;, de la &lt;span style="font-weight: bold;"&gt;lógica de negocio &lt;/span&gt;de la aplicación, normalmente trabajo del &lt;span style="font-weight: bold;"&gt;desarrollador&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Otra de las ventajas que destacan de Silverlight es su &lt;span style="font-weight: bold;"&gt;rendimiento&lt;/span&gt;, debido en gran parte al uso de aceleración por hardware vía &lt;span style="font-weight: bold;"&gt;DirectX&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 229px;" src="http://3.bp.blogspot.com/_BSO4WeDgMKI/SZdK098aItI/AAAAAAAAAB8/or2UwbHVWDU/s320/Silverlight+Showcase.png" alt="" id="BLOGGER_PHOTO_ID_5302789360093635282" border="0" /&gt;&lt;br /&gt;Pasemos ahora a la acción, y veamos algunos de los &lt;span style="font-weight: bold;"&gt;ejemplos de Silverlight&lt;/span&gt;, para observar cuál es el verdadero potencial de esta tecnología:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;El ejemplo más típico de&lt;span style="font-weight: bold;"&gt; Deep Zoom&lt;/span&gt;: &lt;a href="http://memorabilia.hardrock.com/"&gt;Hard Rock Memorabilia&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Este es uno de los ejemplos que más me gustan: &lt;a href="http://www.windowsvista.si/main.htm?lang=1033"&gt;Un simulador de &lt;span style="font-weight: bold;"&gt;Windows Vista&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Galería de &lt;a href="http://silverlight.net/Showcase/"&gt;&lt;span style="font-weight: bold;"&gt;casos de éxito de Silverlight&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://silverlight.net/themes/silverlight/community/gallerydetail.aspx?cat=sl2"&gt;&lt;span style="font-weight: bold;"&gt;Galería de ejemplos&lt;/span&gt;&lt;/a&gt; de Silverlight&lt;/li&gt;&lt;/ul&gt;Tras este primer acercamiento (creo que necesario) a Silverlight, en próximos posts me extenderé más en la parte de "&lt;span style="font-weight: bold;"&gt;multinavegador, multiplataforma y multidispositivo&lt;/span&gt;&lt;span&gt;" que encontábamos en la definición&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;Actualización:&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;Edito para añadir el siguiente ejemplo, también muy impresionante:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://photosynth.net/silverlight/photosynth.aspx?cid=ae29c242-92bd-4a20-b92b-db3ca57eeb6e"&gt;Silverlight PhotoSynth Viewer&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Se trata de un visor Silverlight para &lt;a href="http://photosynth.net/default.aspx"&gt;PhotoSynth&lt;/a&gt;, otra tecnología de Microsoft que permite hacer recreaciones en 3D a partir de fotos, y que se también se usó para &lt;a href="http://www.fayerwayer.com/2009/01/con-photosynth-podremos-ver-la-toma-de-posesion-de-obama-en-3d/"&gt;inmortalizar en 3D la toma de posesión de Obama&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;El visor es sólo una demostración, pero hace un buen uso del DeepZoom.&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-1980409295991139850?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=ELNUxqf0BZw:RIQzBtMHlC8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=ELNUxqf0BZw:RIQzBtMHlC8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/ELNUxqf0BZw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/ELNUxqf0BZw/que-es-silverlight.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_BSO4WeDgMKI/SZdJAOohTZI/AAAAAAAAAB0/Ex24dYOqFDs/s72-c/silverlight.gif" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/02/que-es-silverlight.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-5470678569061776758</guid><pubDate>Tue, 10 Feb 2009 09:05:00 +0000</pubDate><atom:updated>2009-02-10T10:05:00.926+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">DTD</category><category domain="http://www.blogger.com/atom/ns#">xml externo</category><category domain="http://www.blogger.com/atom/ns#">validar</category><category domain="http://www.blogger.com/atom/ns#">xml</category><category domain="http://www.blogger.com/atom/ns#">C#</category><category domain="http://www.blogger.com/atom/ns#">.Net</category><title>Validación de un XML externo contra una DTD propia</title><description>Hay ocasiones en las que tenemos que leer información que se nos proporciona a través de un XML, los motivos pueden ser muy diversos, pero siempre se nos plantea un problema: ¿Cómo asegurarnos de que el archivo que leemos tiene la estructura deseada?&lt;br /&gt;&lt;br /&gt;La respuesta es clara: validando el documento contra una DTD.&lt;br /&gt;&lt;br /&gt;La plataforma .Net nos proporciona métodos sencillos para ello, siempre que &lt;span style="font-weight: bold;"&gt;la DTD&lt;/span&gt; se encuentre &lt;span style="font-weight: bold;"&gt;incluida en el mismo&lt;/span&gt;, o que al menos el documento &lt;span style="font-weight: bold;"&gt;incluya la cabecera &lt;/span&gt;&lt;p&gt;&lt;span style="color: rgb(0, 0, 255);font-size:85%;" &gt;&lt;span style="color: rgb(0, 0, 255);font-size:85%;" &gt;&lt;span style="font-family:Courier New;"&gt;&lt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-size:85%;" &gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style="color: rgb(128, 0, 0);font-size:85%;" &gt;DOCTYPE&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-size:85%;" &gt; &lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-size:85%;" &gt;NombreDoc&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-size:85%;" &gt; SYSTEM &lt;/span&gt;&lt;span style="font-size:85%;"&gt;"&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-size:85%;" &gt;NombreDTD.dtd&lt;/span&gt;&lt;span style="font-size:85%;"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 0, 255);font-size:85%;" &gt;&lt;span style="font-family:Courier New;"&gt;&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;donde se referencia al archivo que contiene la dtd. Por ejemplo, &lt;a href="http://support.microsoft.com/kb/307379"&gt;aquí nos dice Microsoft cómo hacerlo&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Pero en ocasiones estos xml deben ser proporcionados o modificados por usuarios o personal técnico no experto.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Máxima de la programación&lt;/span&gt;:&lt;br /&gt;&lt;blockquote&gt;No podemos fiarnos de que los datos proporcionados por el usuario sean correctos &lt;/blockquote&gt;Así que vamos a facilitarles la vida, ellos modificarán o escribirán el xml, y nosotros nos encargamos de validarlo contra una dtd propia.&lt;br /&gt;&lt;br /&gt;Si nuestra dtd se encontrara en un archivo externo, podríamos optar por la opción de añadir la linea DOCTYPE en la cabecera si no la tiene, y volver a leer el documento.&lt;br /&gt;&lt;br /&gt;Yo propongo un &lt;span style="font-weight: bold;"&gt;método que valida un documento a partir de una dtd dada en un string&lt;/span&gt; devolviendo el XmlDocument resultante.&lt;br /&gt;&lt;br /&gt;Es un método que uso frecuentemente en el desarrollo web (Ya sabéis que hacemos &lt;a href="http://www.raona.com"&gt;las mejores intranets con SharePoint&lt;/a&gt;), por lo que la ubicación del archivo a validar se introduce como una url relativa al servidor.&lt;br /&gt;&lt;br /&gt;El código de la función tendría el siguiente aspecto (lo comento sobre la marcha):&lt;br /&gt;&lt;code&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;br /&gt;private &lt;/span&gt;&lt;span style="color: rgb(102, 204, 204);"&gt;XmlDocument &lt;/span&gt;LoadAndValidateXML(&lt;span style="color: rgb(0, 0, 153);"&gt;string &lt;/span&gt;dtd, &lt;span style="color: rgb(0, 0, 153);"&gt;string &lt;/span&gt;urlXML)&lt;br /&gt;{&lt;br /&gt;&lt;/code&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;/span&gt;&lt;code&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;&lt;/span&gt;&lt;span style="color: rgb(102, 204, 204);"&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;//Devolveremos null si no existe&lt;/span&gt;&lt;br /&gt;XmlDocument &lt;/span&gt;xmlDoc&lt;/code&gt;&lt;code&gt; = &lt;span style="color: rgb(0, 0, 153);"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;code&gt;&lt;span style="color: rgb(0, 0, 153);"&gt;if &lt;/span&gt;(&lt;span style="color: rgb(102, 204, 204);"&gt;File&lt;/span&gt;.Exists(MapPathSecure(urlXML)))&lt;br /&gt;                {&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;//Leemos el archivo como una cadena a la que añadimos nuestra dtd&lt;/span&gt;&lt;br /&gt;                      &lt;span style="color: rgb(102, 204, 204);"&gt;StreamReader &lt;/span&gt;sr = &lt;span style="color: rgb(0, 0, 153);"&gt;new &lt;/span&gt;&lt;span style="color: rgb(102, 204, 204);"&gt;StreamReader&lt;/span&gt;(MapPathSecure(urlXML));&lt;br /&gt;                      &lt;span style="color: rgb(0, 0, 153);"&gt;string &lt;/span&gt;xmlString = sr.ReadToEnd();&lt;br /&gt;                      xmlString = dtd + xmlString;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;//Preparamos las opciones necesarias para la validación&lt;/span&gt;&lt;br /&gt;                      &lt;span style="color: rgb(102, 204, 204);"&gt;XmlReaderSettings &lt;/span&gt;xmlSettings = &lt;span style="color: rgb(0, 0, 153);"&gt;new &lt;/span&gt;XmlReaderSettings();&lt;br /&gt;                      xmlSettings.ValidationType = &lt;span style="color: rgb(102, 204, 204);"&gt;ValidationType&lt;/span&gt;.DTD;&lt;br /&gt;                      xmlSettings.ProhibitDtd = &lt;span style="color: rgb(0, 0, 153);"&gt;false&lt;/span&gt;;&lt;br /&gt;                      xmlSettings.NameTable = &lt;span style="color: rgb(0, 0, 153);"&gt;new &lt;/span&gt;&lt;span style="color: rgb(102, 204, 204);"&gt;NameTable&lt;/span&gt;();&lt;br /&gt;&lt;br /&gt;                      &lt;span style="color: rgb(102, 204, 204);"&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;//Preparamos la lectura del string como xml con las opciones anteriores&lt;/span&gt;&lt;br /&gt;StringReader &lt;/span&gt;input = &lt;span style="color: rgb(0, 0, 153);"&gt;new &lt;/span&gt;&lt;span style="color: rgb(102, 204, 204);"&gt;StringReader&lt;/span&gt;(xmlString);&lt;br /&gt;                      &lt;span style="color: rgb(102, 204, 204);"&gt;XmlTextReader &lt;/span&gt;reader = new &lt;span style="color: rgb(102, 204, 204);"&gt;XmlTextReader&lt;/span&gt;(input);&lt;br /&gt;                      &lt;span style="color: rgb(102, 204, 204);"&gt;XmlReader &lt;/span&gt;xmlReader = &lt;span style="color: rgb(102, 204, 204);"&gt;XmlReader&lt;/span&gt;.Create(reader, xmlSettings);&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;//Creamos el XmlDocument que contendrá el resultado en caso positivo&lt;/span&gt;&lt;br /&gt;xmlDoc                              &lt;/code&gt;&lt;code&gt;&lt;/code&gt;&lt;code&gt;= new &lt;span style="color: rgb(102, 204, 204);"&gt;XmlDocument&lt;/span&gt;();&lt;br /&gt;&lt;br /&gt;                      &lt;span style="color: rgb(0, 0, 153);"&gt;try&lt;/span&gt;&lt;br /&gt;                      {&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;//Intentamos validar&lt;/span&gt;&lt;br /&gt;                            xmlDoc.Load(xmlReader);&lt;br /&gt;                      }&lt;br /&gt;                      &lt;span style="color: rgb(0, 0, 153);"&gt;catch &lt;/span&gt;(&lt;span style="color: rgb(102, 204, 204);"&gt;Exception &lt;/span&gt;ex)&lt;br /&gt;                      {&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;//Devolveremos null si algo ha ido mal&lt;/span&gt;&lt;br /&gt;xmlDoc = &lt;span style="color: rgb(0, 0, 153);"&gt;null&lt;/span&gt;;&lt;br /&gt;&lt;br /&gt;                            &lt;span style="color: rgb(0, 153, 0);"&gt;//Tratar aquí la excepción&lt;/span&gt;&lt;br /&gt;                      }&lt;br /&gt;                      &lt;span style="color: rgb(0, 0, 153);"&gt;finally&lt;/span&gt;&lt;br /&gt;{&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;//Siempre cerramos el stream&lt;/span&gt;&lt;br /&gt;                            xmlReader.Close();&lt;br /&gt;                      }&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;    &lt;span style="color: rgb(0, 0, 153);"&gt;return &lt;/span&gt;xmlDoc;&lt;br /&gt;&lt;br /&gt;}&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Por último sólo me queda recordaros que este método sólo &lt;span style="font-weight: bold;"&gt;valida&lt;/span&gt; que el documento tenga la &lt;span style="font-weight: bold;"&gt;estructura&lt;/span&gt; que nosotros queremos, pero &lt;span style="font-weight: bold;"&gt;NO valida los datos incluidos&lt;/span&gt;, por lo que siempre deberemos tomar las medidas de seguridad adecuadas para tratar la entrada de datos del usuario.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-5470678569061776758?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=O82bsiGeTVw:Tc7NUgDCIBs:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=O82bsiGeTVw:Tc7NUgDCIBs:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/O82bsiGeTVw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/O82bsiGeTVw/validacion-de-un-xml-externo-contra-una.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/02/validacion-de-un-xml-externo-contra-una.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-3349736132845786158</guid><pubDate>Sat, 07 Feb 2009 09:32:00 +0000</pubDate><atom:updated>2009-02-11T20:07:08.558+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">demo</category><category domain="http://www.blogger.com/atom/ns#">Semblio</category><category domain="http://www.blogger.com/atom/ns#">Microsoft</category><category domain="http://www.blogger.com/atom/ns#">educación</category><title>¡Prueba una demo de Microsoft Semblio!</title><description>&lt;span style="font-weight: bold;"&gt;Bienvenidos a Microsoft Semblio!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Hace apenas unos días &lt;a href="http://www.microsoft.com/presspass/press/2009/feb09/02-03SemblioPR.mspx"&gt;Microsoft comunicaba&lt;/a&gt; la aparición de una nueva tecnología: &lt;span style="font-weight: bold;"&gt;Microsoft Semblio&lt;/span&gt;, hoy tenemos la oportunidad de probarlo por nosotros mismos&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BSO4WeDgMKI/SY3PK_UJOyI/AAAAAAAAABc/DFMMRuhHA6Q/s1600-h/CropperCapture%5B51%5D.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 360px; height: 201px;" src="http://4.bp.blogspot.com/_BSO4WeDgMKI/SY3PK_UJOyI/AAAAAAAAABc/DFMMRuhHA6Q/s320/CropperCapture%5B51%5D.jpg" alt="" id="BLOGGER_PHOTO_ID_5300120124186508066" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Microsoft Semblio nos proporciona una serie de herramientas especialmente dirigidas a la comunidad educativa para crear material de aprendizaje, fácilmente distribuible, interactivo y visualmente muy atractivo debido a que está basado en &lt;span style="font-weight: bold;"&gt;WPF&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Estas interfaces ricas nos permiten por ejemplo:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Experimentar los conceptos&lt;/span&gt; que se van explicando textualmente, consiguiendo así una mayor asimilación.&lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Hacer anotaciones&lt;/span&gt; sobre el libro electrónico.&lt;/li&gt;&lt;li&gt;Realizar &lt;span style="font-weight: bold;"&gt;preguntas &lt;/span&gt;al lector para asegurarnos de que ha entendido lo explicado anteriormente.&lt;/li&gt;&lt;/ul&gt;Todo ello intentando hacer la experiencia lo más interesante posible para el estudiante.&lt;br /&gt;&lt;br /&gt;Si aún no os hacéis una idea de lo que se puede conseguir con estas herramientas, os remito al &lt;a href="http://www.microsoft.com/learningspace/semblio/Default.aspx"&gt;vídeo que aparece en la web de Semblio&lt;/a&gt;, aunque será mucho mejor que lo experimentemos nosotros mismos en nuestro ordenador:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Prueba la demo de Microsoft Semblio&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Esta demo nos permitirá estudiar cómo afecta el calor y la presión a las partículas de un gas, para ello seguiremos estos pasos:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;a href="http://download.microsoft.com/download/C/F/5/CF56684B-E619-4C30-87BC-25023731F152/Semblio%20GasLab%2012-18-08.zip"&gt;Descarga la demostración desde este link&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Descomprímela&lt;/li&gt;&lt;li&gt;Ejecuta la aplicación &lt;span style="font-style: italic; font-weight: bold;"&gt;Player.exe&lt;/span&gt;. Ésta nos va a permitir cargar y ejecutar nuestros archivos .semblio&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Haz click en&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;Load from File&lt;/span&gt; &lt;/span&gt;y selecciona el archivo &lt;span style="font-weight: bold; font-style: italic;"&gt;GasLab.semblio&lt;/span&gt; (se encuentra en la misma carpeta que el player). Tras esto aparecerá en la lista de archivos Semblio que podemos ejecutar.&lt;/li&gt;&lt;li&gt;Selecciona la demostración GasLab.semblio de la lista y haz click en uno de los 3 botones de abajo (apenas hay diferencias entre los 3 players disponibles)&lt;/li&gt;&lt;li&gt;Disfruta de la demo!&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.microsoft.com/learningspace/semblio/images/howItWorks/screenshot1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 290px; height: 216px;" src="http://www.microsoft.com/learningspace/semblio/images/howItWorks/screenshot1.jpg" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Nota importante:&lt;/span&gt; Para el funcionamiento de la demo es necesario disponer de la última versión del .Net framework, que puedes descargar desde aquí: &lt;a href="http://www.microsoft.com/downloadS/details.aspx?familyid=AB99342F-5D1A-413D-8319-81DA479AB0D7&amp;amp;displaylang=es"&gt;.Net framework 3.5 SP1&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Como vemos la aplicación visor carga archivos &lt;span style="font-weight: bold;"&gt;.semblio&lt;/span&gt;, archivos comprimidos en &lt;span style="font-weight: bold;"&gt;zip&lt;/span&gt; (podemos renombrarlo a .zip para abrirlo) que contienen las dlls y los &lt;span style="font-weight: bold;"&gt;xaml &lt;/span&gt;que son utilizados.&lt;br /&gt;&lt;br /&gt;Si queremos seguir experimentando el &lt;span style="font-weight: bold;"&gt;sdk ya está disponible&lt;/span&gt; para su descarga, aquí os dejo el enlace: &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=d22204fc-ab74-4d99-a5bd-bd56b32ff59f&amp;amp;DisplayLang=en"&gt;descargar Semblio SDK&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Por último quiero decir que una de las cosas que caracteriza a &lt;a href="http://www.raona.com/"&gt;&lt;span style="font-weight: bold;"&gt;raona&lt;/span&gt;&lt;/a&gt; es su apuesta por las nuevas tecnologías, como &lt;span style="font-weight: bold;"&gt;SharePoint&lt;/span&gt; o &lt;span style="font-weight: bold;"&gt;Silverlight&lt;/span&gt;, o la mezcla de ambas para conseguir resultados de calidad como en el desarrollo de&lt;span style="font-weight: bold;"&gt; intranets&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;colaborativas&lt;/span&gt;, área en la que trabajo, así que nos encargaremos de profundizar en estas nuevas herramientas que nos proporciona Microsoft para evolucionar y adelantarnos a las necesidades de nuestros clientes.&lt;br /&gt;&lt;br /&gt;Así que seguiremos atentos a las noticias referentes a Semblio desde &lt;a href="http://cs.mseducommunity.com/Community%20Server/blogs/Semblio_Community_Blog/Default.aspx"&gt;el blog oficial&lt;/a&gt;!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-3349736132845786158?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=5Ojm90Medh0:D38vFubeB_8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=5Ojm90Medh0:D38vFubeB_8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/5Ojm90Medh0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/5Ojm90Medh0/prueba-una-demo-de-microsoft-semblio.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_BSO4WeDgMKI/SY3PK_UJOyI/AAAAAAAAABc/DFMMRuhHA6Q/s72-c/CropperCapture%5B51%5D.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/02/prueba-una-demo-de-microsoft-semblio.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-2092669081578519309</guid><pubDate>Tue, 03 Feb 2009 09:15:00 +0000</pubDate><atom:updated>2009-02-03T10:28:20.215+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">bug</category><category domain="http://www.blogger.com/atom/ns#">doble postback</category><category domain="http://www.blogger.com/atom/ns#">ASP.Net</category><category domain="http://www.blogger.com/atom/ns#">postback fantasma</category><title>Doble Postback o Refresco Fantasma</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BSO4WeDgMKI/SYScMMVgm6I/AAAAAAAAABM/TI1BhH3XnU4/s1600-h/bug.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 225px; height: 300px;" src="http://3.bp.blogspot.com/_BSO4WeDgMKI/SYScMMVgm6I/AAAAAAAAABM/TI1BhH3XnU4/s320/bug.jpg" alt="" id="BLOGGER_PHOTO_ID_5297530794978352034" border="0" /&gt;&lt;/a&gt;Hace un par de semanas me encontré con un problema, esta vez no relacionado con SharePoint, sino directamente con el desarrollo web en &lt;span style="font-weight: bold;"&gt;ASP.Net&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Uno de esos problemas tontos que pueden retrasar tu trabajo, y cuya solución es una auténtica chorrada, pero que en el momento que sucede puede llegar a desesperarte y volverte loco.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Situación&lt;/span&gt;:&lt;br /&gt;Estoy testeando una webpart de reciente creación, y en una de las muchas modificaciones, sucede algo extraño.... tras pulsar un botón, el servidor parece que no detecta dicho postback, y decide mostrar el webpart como si se acabara de iniciar por primera vez. &lt;span style="font-weight: bold;"&gt;Lo peor&lt;/span&gt; de todo, parece que sucede &lt;span style="font-weight: bold;"&gt;aleatoriamente &lt;/span&gt;en alguna pulsación del botón.&lt;br /&gt;&lt;br /&gt;Acto seguido, &lt;span style="font-weight: bold;"&gt;depuración&lt;/span&gt;:&lt;br /&gt;Y es aquí cuando encuentras que, aleatoriamente, tras algún postback vuelve a surgir un &lt;span style="font-style: italic; font-weight: bold;"&gt;Refresco Fantasma&lt;/span&gt;, haciendo que la página se recargue como si fuera la primera vez que se visualizara.&lt;br /&gt;&lt;br /&gt;Siguiente paso, &lt;strike&gt;Google&lt;/strike&gt; &lt;span style="font-weight: bold;"&gt;MSN Live Search&lt;/span&gt;:&lt;br /&gt;Como buen profesional, el siguiente paso a pensar es: &lt;span style="font-style: italic;"&gt;"Seguro que a alguien ya le ha pasado, vamos a buscar esto en internet y no perdamos tiempo"&lt;/span&gt;, pero entonces es cuando te das cuenta de lo difícil que es buscar el problema... Doble postback? Postback fantasma? Difícil, ya que el problema es que la segunda vez no se trata de un postback. Refresco fantasma quizá?&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Solución&lt;/span&gt;:&lt;br /&gt;Viendo que lo anterior no ha funcionado, hacemos una depuración más exhaustiva, y es entonces cuando nos echamos las manos a la cabeza al descubrir que el único problema es... que no habíamos puesto ninguna ruta a la imagen de un ImageButton.&lt;br /&gt;&lt;br /&gt;Increíble pero cierto, ASP.net hace una petición para &lt;span style="font-weight: bold;"&gt;descargar la imagen&lt;/span&gt; correspondiente al botón en la ruta indicada, y &lt;span style="font-weight: bold;"&gt;al no indicarse ninguna ruta&lt;/span&gt; (en este caso porque estaba testeando la aplicación y no lo creí importante), se toma como ruta &lt;span style="font-weight: bold;"&gt;la página actual&lt;/span&gt;, provocando un refresco, que evidentemente, NO es un postback.&lt;br /&gt;&lt;br /&gt;Es algo que todos deberíamos haber sabido, pero pasa. Con esta entrada intentaremos recordar qué hacer para no perder tiempo la próxima vez que se produzca esta situación.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Alguien más al que le ha pasado&lt;/span&gt;: &lt;a href="http://ddkonline.blogspot.com/2008/02/aspnet-double-postback-bug-strikes.html"&gt;David Klein's Corner&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-2092669081578519309?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=_DkOo-6Qd0w:uh8LRZ4sbtI:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=_DkOo-6Qd0w:uh8LRZ4sbtI:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/_DkOo-6Qd0w" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/_DkOo-6Qd0w/doble-postback-o-refresco-fantasma.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_BSO4WeDgMKI/SYScMMVgm6I/AAAAAAAAABM/TI1BhH3XnU4/s72-c/bug.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/02/doble-postback-o-refresco-fantasma.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-9177704183008174554</guid><pubDate>Thu, 29 Jan 2009 23:07:00 +0000</pubDate><atom:updated>2009-01-31T20:19:08.027+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">dispose</category><category domain="http://www.blogger.com/atom/ns#">SPDisposeCheck</category><category domain="http://www.blogger.com/atom/ns#">SharePoint</category><category domain="http://www.blogger.com/atom/ns#">herramienta</category><title>SPDisposeCheck</title><description>Desde &lt;a href="http://geeks.ms/blogs/ciin/archive/2009/01/29/spdisposecheck-liberado-en-msdn-code-gallery.aspx"&gt;el blog del CIIN&lt;/a&gt; me entero de esta noticia rápida pero importante, sobre todo por su utilidad.&lt;br /&gt;&lt;blockquote&gt;Microsoft  acaba de liberar en MSDN Code Gallery la utilidad &lt;a href="http://code.msdn.microsoft.com/SPDisposeCheck"&gt;SPDisposeCheck&lt;/a&gt;. Esta  utilidad permite revisar las soluciones que hayamos implementado en SharePoint  para asegurar que se está haciendo de manera correcta el disposado de objetos y  evitar de esta forma que se consuma más memoria de la necesaria. Sin duda, una  herramienta imprescindible que evitará más de un quebradero de cabeza&lt;/blockquote&gt;Pues aquí tenéis &lt;a href="http://download.microsoft.com/download/B/4/D/B4D279A0-E159-40BF-A5E8-F49ABDBE95C7/SPDisposeCheck.msi"&gt;el enlace directo a la descarga&lt;/a&gt;.&lt;br /&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-9177704183008174554?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=24zvh35cfnQ:1LxExepCZYY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=24zvh35cfnQ:1LxExepCZYY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/24zvh35cfnQ" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/24zvh35cfnQ/spdisposecheck.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/01/spdisposecheck.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-2846613893999421193</guid><pubDate>Tue, 27 Jan 2009 09:16:00 +0000</pubDate><atom:updated>2009-01-27T10:44:32.281+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">WebPart</category><category domain="http://www.blogger.com/atom/ns#">SharePoint</category><category domain="http://www.blogger.com/atom/ns#">lifecycle</category><category domain="http://www.blogger.com/atom/ns#">Ciclo de vida</category><title>Ciclo de Vida de las WebParts SharePoint</title><description>Uno de los aspectos más importantes a la hora del desarrollo de &lt;span style="font-weight: bold;"&gt;WebParts &lt;/span&gt;para SharePoint es conocer su &lt;span style="font-weight: bold;"&gt;ciclo de vida&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Esto nos afecta sobre todo a la hora de saber en qué método o en qué evento debemos añadir nuestro código, como veremos a continuación:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Constructor&lt;/span&gt;, &lt;span style="font-style: italic; font-weight: bold;"&gt;OnInit&lt;/span&gt;, &lt;span style="font-style: italic; font-weight: bold;"&gt;OnLoad&lt;/span&gt;: Se suceden en este orden, pueden servir para inicializar variables.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;CreateChildControls&lt;/span&gt;: Lo sobrescribimos para añadir y rellenar los controles ASP.NET que mostremos, también es el momento de conectar dichos controles a los posibles eventos (onClick, etc..).&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;LoadViewState &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;(Sólo si PostBack)&lt;/span&gt;: Este paso es &lt;span style="font-weight: bold;"&gt;el más importante&lt;/span&gt;, ya que solemos olvidarnos de que hasta este preciso momento, no tenemos a nuestra disposición los valores seleccionados en los controles antes del PostBack.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Eventos &lt;span style="font-style: italic;"&gt;OnClick&lt;/span&gt;&lt;/span&gt;: Otro momento &lt;span style="font-weight: bold;"&gt;importante&lt;/span&gt;, ya que solemos pensar que nuestros manejadores de eventos se ejecutarán lo primero, pero en realidad se producen en este momento.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;ConnectionConsumer&lt;/span&gt;: Si nuestra WebPart es conectable a otras (implementando las interfaces adecuadas), la llamada al método se produce en este lugar.&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;OnPreRender&lt;/span&gt;: Nuestra última oportunidad para añadir lógica a nuestra webpart antes de que se rendericen los controles. Se usa mucho, ya que en este momento se dispone del ViewState.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Render&lt;/span&gt;: Lo modificaremos sólo si queremos escribir nosotros mismos el html, o si queremos dibujar nuestros controles en pantalla de forma diferente.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Y esto es todo, la mayoría de las veces haremos uso sólo de CreateChildControls y OnPreRender, pero es necesario saber de qué información podemos disponer en qué momentos.&lt;br /&gt;&lt;br /&gt;Próximamente contaré algún error típico en el que podemos caer, y cómo solventar alguno de los problemas que a priori pueden aparecer debido a este ciclo de vida.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Fuentes&lt;/span&gt;: &lt;a href="http://www.sharepointblogs.com/sharepointdiary/archive/2006/05/24/sharepoint-webpart-development-and-sharepoint-portal-web-part-life-cycle.aspx"&gt;sharepointdiary's blog&lt;/a&gt;, &lt;a href="http://platinumdogs.wordpress.com/2008/10/14/sharepoint-webpart-lifecycle-events/"&gt;platinumdogs&lt;/a&gt;, &lt;a href="http://msmvps.com/blogs/sundar_narasiman/archive/2008/02/14/web-part-life-cycle-events.aspx"&gt;Sundar Narasiman's Blog&lt;/a&gt;, &lt;a href="http://blogs.thesitedoctor.co.uk/tim/2006/06/30/Complete+Lifecycle+Of+An+ASPNet+Page+And+Controls.aspx"&gt;The site doctor (Tim Gaunt)&lt;/a&gt;, &lt;a href="http://iremote.blogspot.com/2007/08/webparts-conectadas-y-el-ciclo-de-vida.html"&gt;I Remote&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-2846613893999421193?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=8nXnSFmtLUk:kl61tPzj8JY:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=8nXnSFmtLUk:kl61tPzj8JY:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/8nXnSFmtLUk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/8nXnSFmtLUk/ciclo-de-vida-de-las-webparts.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/01/ciclo-de-vida-de-las-webparts.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-8134376924343265857</guid><pubDate>Tue, 27 Jan 2009 09:00:00 +0000</pubDate><atom:updated>2009-02-07T12:35:17.282+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Blog</category><title>Propósito del blog</title><description>Bienvenidos a &lt;span style="font-style: italic; font-weight: bold;"&gt;Thinking in SharePoint&lt;/span&gt;, un nuevo blog en el que intentaré transmitir mis conocimientos sobre la plataforma &lt;span style="font-weight: bold;"&gt;.Net&lt;/span&gt;, centrándome sobre todo en el &lt;span style="font-weight: bold;"&gt;desarrollo&lt;/span&gt; tanto para &lt;span style="font-weight: bold;"&gt;SharePoint&lt;/span&gt; como para &lt;span style="font-weight: bold;"&gt;Silverlight&lt;/span&gt;, &lt;a href="http://www.raona.com/"&gt;áreas en las que trabajo&lt;/a&gt;, pero sin descuidar los últimos avances relacionados con las demás tecnologías &lt;span style="font-weight: bold;"&gt;Microsoft&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Mi propósito no es otro más que &lt;span style="font-weight: bold;"&gt;ser útil a mis lectores&lt;/span&gt;, y devolver aunque sea mínimamente la ayuda que yo he recibido de la comunidad SharePoint, así como aportar mi granito de arena al cada vez más grande grupo de gente que trabaja con Silverlight.&lt;br /&gt;&lt;br /&gt;Dicho esto, sólo queda empezar a andar.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;ThinkingInSharePointBlog.Start();&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-8134376924343265857?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=eYNsPpWGAck:SUGQsa769PM:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=eYNsPpWGAck:SUGQsa769PM:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/eYNsPpWGAck" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/eYNsPpWGAck/proposito-del-blog.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/01/proposito-del-blog.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7207912301344012238.post-5006388377554546682</guid><pubDate>Wed, 14 Jan 2009 16:20:00 +0000</pubDate><atom:updated>2009-01-18T12:35:35.246+01:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Blog</category><title>Nuevo SPBlog</title><description>&lt;code&gt;&lt;span style="color: rgb(51, 204, 255);"&gt;SPBlog&lt;/span&gt; ThinkingInSharePointBlog = &lt;span style="color: rgb(51, 204, 255);"&gt;SPContext&lt;/span&gt;.Current.Internet.Blogs.add("Thinking in SharePoint");&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7207912301344012238-5006388377554546682?l=thinking-in-sharepoint.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=lyODGbu10iM:jC19IYep3c8:yIl2AUoC8zA"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=yIl2AUoC8zA" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?a=lyODGbu10iM:jC19IYep3c8:qj6IDK7rITs"&gt;&lt;img src="http://feeds.feedburner.com/~ff/ThinkingInSharepoint?d=qj6IDK7rITs" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/ThinkingInSharepoint/~4/lyODGbu10iM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/ThinkingInSharepoint/~3/lyODGbu10iM/nuevo-spblog.html</link><author>noreply@blogger.com (Miguel Ocaña)</author><thr:total>0</thr:total><feedburner:origLink>http://thinking-in-sharepoint.blogspot.com/2009/01/nuevo-spblog.html</feedburner:origLink></item></channel></rss>

