jueves, 25 de marzo de 2010

Language Pack catalán para SharePoint 2010

El título de esta entrada puede resultar muy llamativo a estas alturas. Sé que hay mucha gente esperando esta noticia –entre ellos, yo mismo- y ya estaréis buscando la dirección de descarga. Más aún cuando veáis esta captura de pantalla:

image

Interesante, ¿no?. Pues lamento deciros que lo que estáis viendo no es lo que os pensáis. No es un fake pero casi. La idea la he tenido delante de mí durante mucho tiempo, pero nunca se me había ocurrido aplicarla a SharePoint, hasta que un compañero me lo preguntó. El asunto era simple: utilizar el traductor online que tengo en mi blog dentro del sitio de SharePoint. Vamos por partes: para empezar estamos hablando de Google Translator. Yo soy partidario del uso de productos Microsoft siempre que sea posible, incluso cuando haya un producto de otro fabricante que esté algo por delante. En este caso tengo que reconocer que el traductor de Google es tan superior al de Microsoft que no he tenido otra alternativa que sucumbir a sus encantos. De todas maneras, en el momento en que las cosas se igualen, prometo cambiarlo ;).

¿Y qué es lo que tengo que hacer para que esto funcione? fácil, basta con añadir el siguiente código en la página maestra (afectará a toda la colección de sitios), en la plantilla de página (afectará a todas las páginas que utilicen dicha plantilla), o en un webpart editor de contenido (afectará a cada página donde añadamos este webpart), dependiendo del alcance que queramos que tenga el traductor.

<div id="google_translate_element"></div>
<script>
function googleTranslateElementInit() {
  new google.translate.TranslateElement({
    pageLanguage: 'es'
  }, 'google_translate_element');
}
</script>
<script src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>

Una vez hecho, al cargar la página veremos algo similar a lo siguiente. En este caso, para la prueba yo he utilizado un editor de contenido, así que sólo podré traducir la página en la que está el webpart.

image

Seleccionando el lenguaje en el desplegable veremos como se traduce automáticamente el contenido de la página. Evidentemente tendréis que tener en cuenta las consideraciones de seguridad que esto implica, ya que de una manera o de otra la información a traducir está viajando para ser traducida. En fin, que si queréis utilizar esto en un proyecto real, tened en cuenta las consideraciones sobre seguridad, así como los temas legales.

miércoles, 24 de marzo de 2010

Nace el grupo de usuarios de SharePoint de Catalunya (SUG.CAT)

De un tiempo a esta parte mi compañero en SUGES Juan Carlos González me invitaba a crear un grupo de SharePoint localizado en el área de Catalunya. La carga de trabajo que he venido soportando los últimos meses tenía paralizada la idea pero, como se suele decir, cuando una cosa te interesa encuentras tiempo para dedicarle y, si no eres capaz de sacar suficiente tiempo, buscas aliados con los que unir fuerzas. Así fue como junto con Edin Kapic, Ignasi Tebé y Ramón Torras reunimos todo lo necesario para lanzar la idea y crear el grupo SUG.CAT en LinkedIn

sugcat

Estoy seguro de que con compañeros de este nivel todo saldrá estupendamente, pero para que esto suceda necesitamos cuanta más ayuda mejor. Es por eso que os invito a uniros al grupo y a participar todo lo que podáis. Si alguno de vosotros está interesado en ser administrador del grupo, poneos en contacto con uno de nosotros cuatro y os recibiremos con los brazos abiertos.

Espero poder daros noticias próximamente sobre eventos presenciales o sobre webcasts que vayamos preparando.

lunes, 22 de marzo de 2010

Entorno de desarrollo en SharePoint

Cuando le preguntas a unos cuantos desarrolladores de SharePoint cuál es el entorno ideal te das cuenta de la cantidad de opciones que existen. Cada uno tiene sus preferencias y defenderá a muerte las virtudes de su elección, o la justificará en función de las limitaciones impuestas por su hardware o por la política de su empresa. Yo, como todos, tengo mis preferencias, y quería compartir con vosotros mis pensamientos al respecto.

Hasta hace relativamente poco trabajábamos en entornos de desarrollo de 32 bits, y no era posible instalar SharePoint en un sistema operativo cliente. Esto nos llevaba a dos opciones:

  • Instalar Windows Server, SharePoint y Visual Studio en nuestra máquina física.
  • Virtualizar utilizando Virtual PC o algún otro producto de terceros.

Con la aparición de Windows 7 y de Windows Server 2008 R2 surgió una nueva posibilidad, consistente en instalar directamente uno de estos sistemas operativos sobre un disco virtual (.VHD). Hace ya algún tiempo publiqué esta entrada acerca de cómo realizar este proceso. Desde que publiqué el artículo ésta ha sido mi elección, porque te da la mayoría de las ventajas de trabajar con un entorno virtualizado, a la hora que se salta la mayor de las limitaciones, a mi juicio. Esta limitación es, evidentemente, el hardware. Si tienes un sistema operativo instalado desde el cual haces funcionar máquinas virtuales una parte de tu memoria RAM total queda ocupada por el primer sistema operativo. Además, si necesitas acceder a dispositivos externos, en función del sistema de virtualización que estuvieras utilizando tenías unos problemas u otros. Con las características gráficas pasa algo similar. ¿Habéis probado a desarrollar algo para WPF, Silverlight o Surface desde una máquina alojada en un servidor de Hyper-V?

Hace unos meses me cotaba mucho convencer a alguien de que esta forma de trabajar era adecuada. Normalmente, la gente que trabajaba con productos de servidor, como SharePoint no solía necesitar altas capacidades gráficas, y en un portátil con 4GB, dedicando 2GB a SharePoint tenían de sobra, mientras que la gente que trabajaba con WPF, Silverlight o Surface no estaba acostumbrada a trabajar de manera virtualizada. Al final, los pocos privilegiados que, como yo, tenían la oportunidad de trabajar en los dos terrenos éramos los que más valorábamos esta nueva opción de virtualización.

Últimamente todo esto ha cambiado. Ya no hay evento al que asista en el que no se haga referencia a instalación de sistema operativo en disco duro virtual. ¿Qué es lo que ha cambiado? Para mí han habido dos elementos fundamentales: SharePoint 2010 y Visual Studio 2010. El primero de ellos es un producto con el que necesitaremos arquitecturas de 64 bits para trabajar, mientras que el segundo está desarrollado sobre WPF, con las necesidades gráficas que esto implica. Si bien es cierto que SharePoint 2010 se puede instalar (sólo algunas versiones) sobre un sistema operativo cliente (Vista o 7 –64 bits-),  es importante disponer de un entorno lo más similar a lo que nos encontraremos en producción. Dicho todo esto, parece claro que las opciones más recomendables deberían ser:

  • Virtualizar utilizando Hyper-V o algún otro producto de terceros que soporte 64 bits.
  • Instalar Windows 7 (o Vista), SharePoint y Visual Studio en nuestra máquina física.
  • Instalar Windows Server, SharePoint y Visual Studio en nuestra máquina física.
  • Instalar Windows Server, SharePoint y Visual Studio en un disco virtual.
  • Yo, por lo que ya he explicado, me quedo con la última opción, pero estoy abierto a otras opiniones si me convencéis de sus ventajas respecto a mi elección.

    Por cierto, ¿qué pasa cuando tenemos muchos VHDs creados para diferentes proyectos y queremos seleccionar uno de ellos a la hora de arrancar? Si habéis seguidos los pasos de la entrada que indico al principio de este post la pantalla de inicio de sistema únicamente indicará el nombre del sistema operativo. Para cambiar esto, la manera más fácil es utilizar el comando bcdedit. Si abrimos un comando de sistema privilegiado y ejecutamos el comando indicado nos aparecerá una lista de grupos como el siguiente:

    Windows Boot Loader
    -------------------
    identifier              {1bff685e-0067-11df-8690-e6a56e5f9542}
    device                  vhd=[D:]\vhd\WS2008R2.40GB.FIXED.vhd
    path                    \Windows\system32\winload.exe
    description             Windows Server 2008 R2
    locale                  en-US
    inherit                 {bootloadersettings}
    recoverysequence        {1bff685f-0067-11df-8690-e6a56e5f9542}
    recoveryenabled         Yes
    osdevice                vhd=[D:]\vhd\WS2008R2.40GB.FIXED.vhd
    systemroot              \Windows
    resumeobject            {1bff685d-0067-11df-8690-e6a56e5f9542}
    nx                      OptOut
    hypervisorlaunchtype    Auto
    ems                     Yes

    Si queremos cambiar el nombre Windows Server 2008 R2 en la lista por WS2008R2 + SharePoint 2010, por ejemplo, ejecutaríamos:

    bcdedit /set {1bff685d-0067-11df-8690-e6a56e5f9542} description "WS2008R2 + SharePoint 2010"

    Pero, más fácil todavía, si arrancáis el sistema operativo el nombre del cual queréis cambiar, podéis utilizar este comando:

    bcdedit /set {current} description "WS2008R2 + SharePoint 2010"

    Así no tenéis que preocuparos por el GUID que necesitáis utilizar.