Plug-in para hacer "Get Latest" al hacer checkout en TFS

Los que ya hayáis trabajado con TFS, sabréis que al hacer un checkout en TFS, a diferencia de Visual Source Safe, no se tra la última versión, si no que es en el checkin, cuando se comprueba lo que subimos, con lo que hay en el servidor para hacer un merge de los cambios. Esto tiene sus detractores y sus defensores, como todo, a mi particularmente no me parece mal este funcionamiento, siempre y cuando tengamos siempre muy claro este funcionamiento para no llevarnos sorpresas.

La gente de Accient ha sacado un plugin para los detractores de esta funcionalidad, por ahora no lo he probado, pero este si que le voy a probar en un entorno de desarrollo en el que una persona me pidió si había algo parecido, aquí os dejo el link: http://blog.accentient.com/PermaLink,guid,4da90c3c-a195-422d-af73-8eb047a4966a.aspx

Videos "How do I …?" para Team System

Aquí os dejo un linka a una nueva serie de videos de aprendizaje para Team System que prometen bastante, por ahora sólo hay dos: How Do I: Customize TeamPlain? y How Do I: Create Custom Work Items in Team Foundation Server?

Os los podéis bajar en varios formatos, MP4, WMV, … incluso para iPod o PSP, así como la posibilidad de bajar sólo el adio, aquí os lo dejo:

«How Do I?» Videos for Visual Studio Team System

Instalando Windows Home Server RC

Esta semana me bajé la RC que anunción por aquí si mal no recuerdo Jorge Serrano, y me he decidido a crearme una máquina virtual con Home Server por probarlo, y me he llevado una «sorpresa» yo ya había leido que estaba basado en Windows 2003, que era lo más lógico, lo que no sabía es que en realidad es un Windows 2003 Small Bussiness Server, ufff, con los malos recuerdos que tengo yo de los Small Bussiness Server, pero bueno, ya os contaré a ver que tal, aquí la prueba del «delito».

HomeServer_Setup

Chat con el equipo de Visual Studio Team System

Aquí os pongo una nueva cita para los que queráis chatear con el equipo de Team system, ya sea para proponer mejoras, dudas, o cualquier cosa, son citas muy interesantes, las dos son el 3 de julio pero a distintas horas, os pongo ya con la hora española y el link al evento:

Bueno supongo que el que más os interesará será la primera cita, a ver si nos vemos por allí (espero poder ir …)

Conflicto entre Micrososft eScrum y el Ajax Control Toolkit

Os pongo un comentario para los que lo hayáis instalado y estéis trabajando con el Ajax Control Toolkit.

El tema está en que la plantiulla de eScrum fue compilada con una versión «antigua» del Ajax Cotnrol Toolkit, y los que tengáis una nueva versión del Toolkit, podéis tener problemas con la plantilla de eScrum, la solución pasa por especificar en el fichero web.config de la plantilla de eScrum, esto ya sabéis que es bastante fácil de realizar, y sólo tenéis que añadir este Xml después del cierre de la sección «configSections», este Xml lo único que hace es obligar a usar a eScrum la versión que tengáis del Control Toolkit, que tendréis que poner donde pone ese «1.0.xxxxx.0»:

<runtime>

      <assemblyBinding xmlns=»urn:schemas-microsoft-com:asm.v1″>

            <dependentAssembly>

                  <assemblyIdentity name=»AjaxControlToolkit»

                        publicKeyToken=»28f01b0e84b6d53e»

                        culture=»neutral»/>

                  <bindingRedirect oldVersion=»1.0.10301.0″ newVersion=»1.0.xxxxx.0″/>

            </dependentAssembly>

      </assemblyBinding>

</runtime>

 

Ojo, según veo en el blog de Rob Caron, la plantilla no ha sido probada con las versiones nuevas del Control Toolkit, pero como el dice, no debería de haber problemas.

Cuidado con el software que a veces compramos

Una característica de la que no disponemos en Team Foundation Server, es la posibilidad de hacer bakcup de uno o varios proyectos y restaurar sólo esos proyectos, la única posibilidad de backup es hacerlo de todo el servidor al completo.

Por lo que veo, ha habido una compañía que anunciaba una herramienta para hacer precisamente esto, esto yo lo había visto, pero hoy me llega una noticia, en la que se recoge una opinión de una persona que compró este producto y que por lo visto no le ha servido para mucho, y bueno, una persona que visita mucho los foros de MSDN de Team system, ha estado indagando un poco más acerca de esta compañía (http://teamfoundation.blogspot.com/2007/06/tfs-ripoff-or-back-up-your-money.html) y parece que tiene unos cuantos «agujeros negros», entre otros, que el sitio de la compañía que hacia este producto está tiempo online, que en la página de la compañía no ponía ni precio, ni se podía descargar una versión de prueba (esto lo comprobé yo en su momento de ahí que no lo pudiese probar J), no ha encontrado feed-back de usuariso (excepto lo del foro de MSDN aquí), y algunas cosas más que podéis ver en su el link del blog de EugeneZ.

Sin entrar a valorar este caso concreto, que sin duda tiene muchos puntos negros pero no dispongo de toda la información, lo que recomiendo a todo el mundo, es lo mismo que Eugene dice en su blog, y es, intentar siempre conseguir una versión de prueba para evaluar el producto, buscar referencias, y como siempre valorar, cuando el precio es alto, si proviene de una compañía con respaldo o no, muchas veces nos podemos permitir comprarnos esa pequeña aplicación de bajo coste que promete muchas cosas, y que luego no cumple ninguna, pero cuando el precio es alto, o las consecuencias de un fallo son muy significativas para nosotros, tenemos que andarnos con cuidado.

Configurando el Smtp en Team Foundation Server a posteriori

Hoy me ha llamado un compañero para preguntarme como podía activar las alertas de su TFS, el tema está en que durante la instalación, el no introdujo ningún servidor Smtp para el envío de las alertas, y no hay ningún sitio en las propiedades de un TFS (desde el Team Explorer), donde introducir esta información, y como he pensado que podía ser interesante para más gente, pues os lo pongo también por aquí, lo cierto es que es un caso bastante habitual, instalas un TFS para hacer pequeñas pruebas, lo pones al principio sin TFS por las prisas de la instalación, no haber puesto ningún Smtp en el servidor, etc, y necesitas ponerlo a posteriori, así que aquí van unos pasos para configurarlo.


Lo primero es abrir el directorio (en el servidor): «%ProgramFiles%Microsoft Visual Studio 2005 Team Foundation ServerWeb ServicesServices», y abrimos el fichero web.config. Dentro de la sección de «<appSettings>», hay un par de claves que vamos a modificar:



  • emailNotificationFromAddress: aquí ponemos la dirección que queremos que tenga como remitente los correos que manden las alertas.

  • smtpServer: y aquí el nombre de nuestro servidor Smtp.

Y con esto ya lo tenemos configurado J, cerramos el fichero, y ya podemos configurar las alertas enviadas a correo, y probar a lanzar algún evento que dispare una alerta, y comprobar que el correo nos llega.


Y ya sabéis, si algo falla en el sistema de eventos, el primer sitio a mirar es el visor de eventos.

Conector de Team Foundation Server con Project Server 2007

Bueno parece que los VSTS Rangers de Microsoft se han puesto las pilas con esto, que era algo muy solicitado por los usuarios, y han sacado un nuevo conector de TFS con Project server 2007, lo cierto es que yo no he probado el que existía hasta ahora, desrrollado por Avanade, por falta de tiempo :(, pero bueno aquñi tenéis uno nuevo, desarrollado por Microsoft para la última versión de Prject 2007 (será esta la diferencia?).

La sincronización funciona en ambos sentidos, y se sincronizan las tareas y los recursos , y dicen que en un futuro se integrará este conector directamente con las futuras versiones de TFS, vaya, que es el camino que van a seguir.

Lo tenéis disponible en codeplex: pstfsconnector.

Una última advertencia, este conector, al ser gratuito, lógicamente, no incluye CAL de acceso a TFS, por tanto, la gente que utilize este conector para sincronizarse con TFS, necesitan una licencia de acceso comprada aparte (la información acerca de las licencias aquí)

Y eso es todo, a falta de que algún siglo de estos pueda probarlo 🙁

Algunas novedades en VSTS Developer Edition de Orcas

Bueno últimamente no escribo mucho, y menos aún sobre TFS y similares, lo cierto es que estoy hasta arriba con un tema bastante interesante que ya contaré más adelante, y una de las cosas que estoy haciendo es probando Orcas, por ahora sólo partes de la versión de desarrolladores, y bueno aprovecho para comentar algunas cosas que he estado probando.


La primera novedad, el menú «developer» desde el que accedemos a las funcionalidades específicas de esta versión, interesante para no andar buscando por otros menús:


menu-developer


Empezemos por una que me ha gustado, por su rapidez y sencillez de uso, y que no teníamos hasta ahora, y son las métricas de código, bien esto nos va a dar varias medidas:



  • Índice de mantenibilidad (hmm existe este palabro??), pues nada nos dice cuan mantenible es nuestro código, a mayor valor aquí, mejor.

  • «Cyclomatic complexity», nos da un índice de «complejidad» es un poco complicado de explicar en poco espacio, por eso aquí os dejo un link a su descripción. A menor valor aquí (menor complejidad) mejor.

  • Profundidad de herencia, a mayor valor aquí peor, ya que al tener mayor profundidad de herencia, tendremos más «incertidumbre» respecto al comportamiento de una clase.

  • «Class coupling» nos muestra el número total de tipos referenciados.

  • Líneas de código 🙂 no comments.

Y bueno el uso es bien sencillo, lo podemos hacer por solución o por proyecto, simplemente seleccionamos un proyecto/solución en el explorador de soluciones, botón derecho y «Generate Code Metrics», con lo que obtenemos esta pantalla en la parte inferior del Visual Studio:


code-metrics


Como véis es muy parecida a la de cobertura de código y podemos ir desplegando para ver más detalle, además la columna del indice de «mantenibilidad» un icono de color verde, que cambia a rojo cuando el índice sea bajo (los valores por los cuales se producirá el cambio aún no los tienen definitivos).


Bueno una nueva funcionalidad muy útil y muy fácil de usar.


Alguna otra nueva funcionalidad interesante, pues bueno, en la parte de análisis de código estático, han añadido una opción que también me ha gustado mucho, y es la de suprimir de los resultados de análisis de código estático el código generado (tableadapters, etc) que, bueno, digo yo, que eso ya lo harán en Microsoft para comprobar el código que generan sus herramientas 🙂


Y ya por último, el profiler, aquí ha habido algún que otro cambio también, a nivel de uso, es muy parecido al que ya tenemos, hay alguna diferencia en el wizard, pero bueno nada que signifique un problema.


Alguna novedad también en la configuración del profiler, como es el poder recolectar contadores de Windows (no los específicos de CPU como en el 2005). También hay una novedad durante la ejecución de las sesiones de profiling, es la opción de poner marcas antes y despues de la ejecución de un escenario para obtener medidas de tiempo de ejecución de un determinado escenario que queramos (me parece que del profiler tendré que hablar más largo y tendido más adelante jeje).


Y la que quería comentar, que me ha gustado es la funcionalidad de obtener los «Hot Path» (es el icono de las llamas en la captura) en las vista de «call tree» , esta funcionalidad nos permite de un modo visual, ver donde están los puntos «negros» de nuestro código, indicando donde tenemos la mayor penalización de rendimiento, y como una imagen vale más que mil palabras, y como seguro que del profiler (eso espero) hablo más adelante, aquí os dejo una captura:


profiler_hot_path


En este caso podríamos ver, como tenemos un «problema» en la función «reduce» es el número de de llamadas a la función «GetUpperBound», que además tieme el mayor tiempo exclusivo de ejecución (bueno quizá no se ve muy bien, pero podéis creerme).


En fin, me dejo muchas cosas en el tintero lo se 🙁 pero tampoco me quiero extender mucho, que bastante ladrillo me ha salido ya, si os interesa alguna parte en específico, comentadmelo e intentaré ir hablando más en detalle.

Compatibilidad en politicas de checkin entre Visual Studio 2005 y Orcas

Para los que ya estáis empezando a probar Orcas, pero sin embargo seguís conviviendo en un entorno con otros proyectos Visual Studio 2005, si estáis usando políticas de checkin construidas por vosotros tendréis problemas de compatibilidad.


El tema es que las políticas de checkin compiladas con la versión 8.0 (2005), son compatibles a nivel de código fuente, pero a nivel binario no son compatibles, por tanto, tendréis que recompilar las políticas que estéis usando, recordad también, que aunque las políticas se configuran a nivel de servidor en lso proyectos de Team Foundation Server, se evalúan a nivel de cliente, y se ejecutan buscando la clave del registro que tiene el path al assembly que tiene la política, por tanto, para que se evalúen correctamente en Orcas, hay que añadir la clave de registro adecuada para Orcas, si para VS 2005 era: «MicrosoftVisual Studio8.0Team FoundationSource ControlCheckin Policies», para Orcas es: «MicrosoftVisual Studio9.0Team FoundationSource ControlCheckin Policies» apuntando al assembly recompilado con Orcas.


En el servidor no tendremos que reconfigurar nada, ya que lo único que tiene, es la configuración de las políticas a ejecutar, y como ya he comantado, es el cliente el que se encarga de localizar el assembly y ejecutar la política de checkin.


Si queréis saber más, esta información la he sacado de aquí, una vez que empecé a tener problemas con una política propia de una demo J http://blogs.msdn.com/tfsvcs/archive/2007/05/07/compatibility-of-check-in-policies-between-whidbey-and-orcas.aspx